← All departuresFlt 02 / [ 2026 ]
Crew Ops Advisor
Air Crew hackathon · airline crew-control decision support
- Role
- Team member — engine, agent loop and workspace
- Year
- 2026
- Type
- Hackathon project
- Status
- Hackathon · Team
- Links
- GitHub ↗
01 / 06 · Ranked cover options for a pairing after a captain is lost
A controller describes a disruption in plain words; the system says who can legally cover it, what each option costs, and why everyone else was ruled out.
(01)Problem
When a captain is lost two hours before report, a crew-control desk has minutes to find a legal, affordable replacement — and an AI that invents a single number in that moment is worse than no AI at all.
(02)Approach
- 01Deterministic Python computes every figure; the language model only chooses which question to ask and explains the result.
- 02A claim gate — enforced in code, not in a prompt — lets the model state only what a validator returned.
- 03Every excluded candidate carries the rule that stopped them, and 'not callable' is kept distinct from 'illegal'.
- 04Zero dependencies anywhere, including the chat pane: the standard library talks to any OpenAI-compatible endpoint.
(03)What I built
- Ranked cover recommendations with cost and the rules that cleared each option.
- 'Why not them?' drill-downs for all ruled-out crew, duty-week timeline with rest gaps, joint plans for simultaneous sick calls.
- A CLI and a browser workspace that both work without a model key — every recovery is still reachable.
- Scoreboards and tests that grade the engine, the agent loop and the UI separately, with honest caveats.
(04)Results
- gradable questions answered by the engine
- 36/36
- scenario checks, incl. 19 exclusions byte-for-byte
- 19/19
- agent-loop and claim-gate tests
- 28/28
- headless-browser checks of the workspace
- 119/119
(05)Stack
- Python 3.10+ (stdlib only)
- LLM agent loop
- Claim gate
- Vanilla JS workspace
- jsdom tests
- OpenAI-compatible API
