What isn't reasonable, though, is where the server knows that flight ABC123 lands daily at Airport A, but tells us instead that it's a flight from X to Y. That's the part that needs fixing, urgently.
Exactly, and that's the why I would prefer, that the mechanism should (In my humble opinion) work as following:
Tracking new Flight ID and having Information of TO und LND: Add Info to Database. Well, I guess it may be a good idea to wait until the TO LND paring will be tracked for about three to five times. This will make the information more reliable, but will cause problems with charter flights.
Tracking known Flight ID and TO and LND matches with Data in Database: Do nothing (of course).
Tracking known Flight ID and TO and LND do not match Database Info: Monitor this flight. After three or five Times with same TO and LND Airports update the Database with new Info.
Tracking known or unknown ID with no route Info in the Database and only one of the two (Landing and Take-Off ) known: After seeing an AirCraft with Callsign XYZ123 Landing or Taking Off at a particular Airport for about three to five times
add this Info to the Database. This is especially referring to the local Database.
Why? Because I guess that the information of the destination
or the origin is of interest especially if I can't get both Information at the moment. Doing it that way I am able to get at least 1/2 (1/3...) of the route information.
If the last time a particular flight ID was tracked lies more than two or three month in the past: generate an request for updated information and download this information and add it to local Database.
And finally there could be added a plausibility check. Means: If a flight with EGGL as origin and LFPG as destination is tracked several times flying over north/east Germany or south/west of Spain the route information can't be true any more. In this case the route information should be terminated from the Database. "Show no info instead of false info" is -in my opinion- the better way.
A List of these dump-list routes should be downloaded and integrated in the local Database every month.