Oh dear — not a happy camper….
This is not a bug in the system, but a feature of the system. The app is not automated to the degree that a cancelled bus service can be flagged on the spot. It has to pass through at least two human decision-making processes before it’s removed from the app. In the most simple terms, the system works in such a way that inaccurate information is an inevitable by-product. Similarly, the app struggles to account for buses that are held up in traffic: “When a bus is held in traffic, the predicted arrival time on the RTPI unit will reflect this as it is determined by the bus’ distance between its location and the bus stop and it is not possible to determine the duration of the period of congestion.” So while your bus could be 10 minutes away, on a busy main road full of traffic, the app could tell you that it is two or three minutes away, based purely on its distance.
Google demonstrates their (extremely cool) privacy-preserving machine learning train/test architecture with a comic