← Airside Labs Aviation ToolsCONTENT HISTORY

Update to Airside Labs Aviation Tools

Snapshot Sep 30, 2026 · 23:01 UTC · version 1.1.0

Collection source: not recorded for this historical snapshot.

WHAT CHANGED · RULE-BASED ANALYSIS

First saved snapshot

No earlier snapshot is available to establish a change.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "name": "aviation-identity",
  "description": "Resolve and cross-check aviation identifiers (airports, airlines, aircraft types, registrations, flight designators) with the Airside Labs Aviation Tools, on the right date, and report confidence and sources honestly.",
  "included_files": [],
  "skill_md_contents": "---\nname: aviation-identity\ndescription: Resolve and cross-check aviation identifiers (airports, airlines, aircraft types, registrations, flight designators) with the Airside Labs Aviation Tools, on the right date, and report confidence and sources honestly.\n---\n\n# Aviation identity: resolve, date, cross-check\n\nUse this workflow whenever a question names an airport, airline, aircraft type, registration or\nflight number and the answer depends on which entity that identifier means.\n\n## Steps\n\n1. **Fix the date first.** If the question is about the past, pass `as_of` (YYYY-MM-DD) on every\n   call. Airport codes move (ATH, HKG) and airline two-letter designators are reused (SN was\n   Sabena, then Brussels Airlines). Without a date the tools answer for today, which is silently\n   wrong for historical data.\n2. **Resolve each identifier** with the matching tool: `resolve_airport`, `resolve_airline`,\n   `resolve_aircraft_type`, `resolve_registration`, `parse_flight_identifier`. Prefer ICAO\n   identifiers (four-letter airports, three-letter airlines) when carrying a result forward; they\n   are not recycled the way IATA codes are.\n3. **Read `status` and `confidence` before the value.** `resolved` at 1.0 is a unique match.\n   0.7 to 0.99 came through an alias or a historical record; say so. 0.4 to 0.69 means\n   `alternates` is populated: ask the user which one rather than choosing. `ambiguous` with a\n   `country_hint` available: call again with the hint. `unresolved` is a real answer, not an\n   error; do not invent one.\n4. **Cross-check** when identifiers come from more than one source (a registration from a\n   movement message and an address from a surveillance track, a flight number and an airline):\n   call `validate_identifiers` with all of them and the date. `contradicted` means at least one\n   check failed; never average it away. `consistent_where_checkable` with\n   `unverifiable_count` above zero is partial coverage, not a pass: say which checks were silent.\n5. **Cite.** Every field in `best` has an entry in `provenance` with a source id and retrieval\n   date. Quote the source when the answer will be relied on.\n\n## Output requirements\n\n- State the date the answer applies to.\n- Give the resolved entity with both code systems where the tool returns them.\n- Name the confidence band in words (exact match, via alias, one of several candidates).\n- If anything was unresolved, ambiguous or unverifiable, say so in the first sentence, not the last.\n\n## Do not\n\n- Use these tools for live status, schedules, slots, fleet lists or routes; they answer identity\n  questions only.\n- Present an unresolved result as a hint that the thing does not exist; coverage is not global.\n- Drop the date from a follow-up question because the first call had one.\n\n## Example\n\nUser: \"Which airline was SN in 1995, and is BA117 a British Airways flight?\"\n\n1. `resolve_airline` with identifier `SN`, `as_of` `1995-06-01`: read `status`; if `ambiguous`,\n   report the best candidate and the alternate with the tool's reason.\n2. `validate_identifiers` with airline `BA`, flight `BA117`, `as_of` today: report the verdict\n   and the checks.\n3. Answer with the date, the entities, the confidence in words, and the sources.\n"
}

SHA-256: 0a71ce736690b798bff8f8e7a0afd036d87c254cff8c94f4c21a3b06e47d3aeb