Skip to content

Link verified aircraft callsigns and make arrival updates trustworthy - #13

Merged
SayamDev merged 1 commit into
mainfrom
codex/flight-tracking-trust
Oct 21, 2026
Merged

SayamDev merged 1 commit into
mainfrom
codex/flight-tracking-trust

Conversation

@SayamDev

Copy link
Copy Markdown
Owner

Problem and resulting behavior

A ticket flight such as RK1712 can broadcast an unrelated alphanumeric callsign (RUK87AL in the supplied screenshot). Prefix conversion cannot infer that association, so a journey may keep using its booking time even while a tracker shows the aircraft airborne.

Saved pickups now offer an explicit, validated, per-journey callsign link. The booking flight number and time remain unchanged; route and different-day checks still apply. Changing the link aborts superseded requests and recalculates via the existing deterministic engine. Changing the booking date clears the link. Numeric Ryanair UK designators also map RK → RUK without guessing alphanumeric aliases.

Arrival updates compare the booking and latest available estimate, show source/observation age, distinguish estimated on-stand time (including taxi) from booking arrival, and disclose stale observations. The set-off recommendation stays first. Coverage and update details are expandable; controls support keyboard/touch. No new prediction formula.

A freshly published file can no longer make an hour-old, invalid or future-dated aircraft observation usable. This closes a source-age trust gap rather than claiming each new estimate is more accurate.

Data decisions and limitations

  • Retain current shared snapshots, request cadence, quotas and privacy boundary. No new endpoint, key, account, dependency, paid API or visitor-to-flight-provider requests.
  • Current adsb.lol documentation deprecates the public API; re-api is feeder-only with key/IP restrictions. No silent migration or broader dependency on it. Documented in DATA-SOURCES/COSTS.
  • Coverage remains roughly 460 km; snapshots usually refresh about every 15 minutes and can be late. There is no worldwide/second-by-second map, licensed Flightradar24 integration or official landing forecast. Outside coverage/no match, available schedule or booking remains the fallback.
  • RUK87AL was absent from the currently published snapshot during verification; a live estimate for that aircraft is not claimed. Tests replay changing positions and verify the engine responds.

Validation

  • 47 test files / 459 tests pass; lint, strict typecheck, production build and diff checks pass.
  • Regression cases cover explicit association versus no invented alias, changing positions through the deterministic pickup engine, stale/future timestamps, other-day matching, booking-date link reset, validation, and superseded request cancellation for callsign/time edits.
  • Production-preview UI: link/save/recalculation plus desktop and 390px mobile layout. No simulated live observations inserted.
  • Find Skills: verified installed Vercel React Best Practices and Web Design Guidelines; no skill installed. README, architecture, data/cost and handoff documentation updated.

@SayamDev
SayamDev merged commit 2c76229 into main Oct 21, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant