Compliance
Flight logs and pilot currency, ready for an audit.
Flight logs and pilot currency, ready for an audit.
/app/compliance · ready · accent #0E9AA7
Append-only flight logs written when a mission ends, pilot certificates with expiry warnings and monthly report drafts.
Pages
Each module has at most four pages under /app/compliance.
| Page | Path | Kind | What it shows |
|---|---|---|---|
| Overview | /app/compliance | Dashboard | Readiness goals (complete logs, valid certificates, pilots current), a certificate runway and pilot hours with change. |
| Flight logs | /app/compliance/flight-logs | List | Every flight with unit, site, pilot, duration, distance and maximum altitude. |
| Pilots | /app/compliance/pilots | Library | Certificate, number, expiry and hours per pilot. |
| Reports | /app/compliance/reports | AI | The month’s flights, hours, incidents, certificates and maintenance as a draft report. |
| Integrations | /app/compliance/integrations | integrations | The connectors this module takes data from, with status, last sync and what each one feeds in. |
Opening
The dashboard opens with its own layout, Audit readiness, built for this module's data:
- Goal rings: complete logs, valid certificates, pilots current
- Certificate runway over the next 180 days
- Pilot hours leaderboard with change against the 30 days before
Features
- Append-only flight logs
- Pilot certificates with expiry
- Monthly report drafts
Who can do what
Everyone with view on Compliance can read its pages. Changes need edit; the actions below that need publish are the ones with real-world effect. Agents are capped at edit, so they can never run a publish action.
| Action | What it does | Needs |
|---|---|---|
pilot.save | Add or update a pilot and certificate | edit |
Compliance has no publish actions: edit is enough for every change here.
Any action not listed needs publish (the app fails closed).
Integrations
Every module has an Integrations page (/app/compliance/integrations) next to its data pages. It lists the connectors below with their status and last sync. Owners and admins connect, test or disconnect them through the shared Connections flow (the same dialog as Settings → Connections); everyone else sees the page read-only. No external calls are made in this build: in the demo the statuses are generated, and in local database mode a saved connector stays pending.
| Connection | Used for | Status | Verify before launch |
|---|---|---|---|
| Airspace authorisation | Authorisations attached to flight logs | planned | Country rules and provider onboarding |
| AI models | The Reports page | mock | Provider API keys, catalog prices (none verified yet), credit metering, prompt review |
See Connections for the full list.