The problem:
Bahn operations run thousands of cross-border car deliveries. Most orders are fine; a few break — missed pickups, site access unclear, a car stopped on the road. Today a person holds that chain in their head, and AI chat bots that act without a decide surface make it worse. Ops need a room that shows only what needs a person, with enough to decide, not another wall of forms.
What we built:
A working control room on the challenge starter (Next.js + Postgres, synthetic packet):
- Needs a person — home is an exception queue. Each card shows why it surfaced, a Decide cue, and on-road agent status in plain language. Healthy orders stay off this list.
- Browse by lane — secondary Kanban for fleet health (route, progress, badges) when you need the wider picture.
- Order record — situation in seconds: what happened, provenance (Primary tracker · full provenance folds below), cheap agent steps, Approve/Reject, and an explicit Next: after a human decides.
- One real on-road agent — cheap background pass first (read, gather, skip what is not ready); stops and hands structured proposals when judgement or financial commitment is required. Never auto-books a ferry, changes a delivery promise, or sends a customer message without Approve.
- Pitch + Build notes — in-app path for judges: 40/30/30 talking points with live deep links, plus how we used coding agents (asked / checked / threw away / did not take the first answer).
How it works (and what's AI about it):
- Product AI: a real LLM agent loop with tools in a synthetic world (mocked driver, prices, maps). Fleet pass runs qualifying orders, skips pending, surfaces proposals only when a person must decide.
- Build AI: Spec Kit (specify → plan → tasks → implement) plus coding agents. We asked for exception-first UX and approval gates; checked constitution gates and the live UI; threw away jump CTAs, timeline chrome, and bloated multi-line event paragraphs that failed the at-a-glance test; refused first answers that added noise or skipped the human Next: step.
What's next:
- Short demo video (exception → provenance → Approve) and a public cloneable repo with README.
- Deeper on-road tool coverage and clearer agent traces for review.
- Keep home as Needs a person; grow agent freedom only behind earned trust and the same Approve gate.


