Files
missions/_docs/_process_leftovers/2026-05-14_rename-flights-to-missions.md
T
Oleksandr Bezdieniezhnykh 7025f4d075 refactor: enhance JWT authentication and CORS configuration
Updated JWT authentication to use configuration values instead of hardcoded secrets, improving security and flexibility. Enhanced CORS policy to conditionally allow origins based on configuration settings, with logging for permissive defaults. Updated README to reflect project renaming and clarify service context.
2026-05-14 19:48:25 +03:00

7.4 KiB

Leftover: rename flights -> missions (and related code/DB/repo work)

Created: 2026-05-14T01:00:00Z Plan: .cursor/plans/rename_flights_to_missions_65322306.plan.md Tracker: Jira project AZ. One Epic + 12 child Stories/Tasks.

Why this is a leftover

Phase A (documentation) is complete in this turn — both local _docs/02_document/ and the parent suite ../_docs/ reflect the post-rename, post-GPS-Denied-removal target. Phase B (Jira tickets) was attempted at the end of this turn; the result of that attempt is recorded in the "Jira ticket creation status" section below.

The rest of the work — code rename, DB migration, HTTP route rename, repo rename, consumer updates, Dockerfile / image / compose updates, default-vehicle-rule decision — lives entirely in the Jira children listed below. None of it has been executed in this workspace yet (and per the plan, will not be — only the tickets are created here; the implementation lands in subsequent /autodev cycles or directly off Jira).

What was done

  • Phase A1: rewrote 18 files under _docs/02_document/ (modules / components / diagrams / layout / discovery), deleted the 03_gps_denied component and the 01_aircraft_catalog directory, created 01_vehicle_catalog and renamed module/controller files. Each file carries an explicit "forward-looking" note so readers understand the doc IS the spec for B5/B6/B7/B8.
  • Phase A2: rewrote 8 files under ../_docs/ (renamed 02_flights.md -> 02_missions.md, updated top-level architecture, DB schema, repo-config, GPS-Denied clarification, roles/permissions, README index, glossary, dataset-explorer, settings, autopilot-design, system-design-clarifications, admin, annotations). The _repo-config.yaml confirmed_by_user flag was flipped to false since the components.flights -> components.missions rename is documentation-first.
  • Local README.md rewritten from "Azaion.Flights .NET 8" stub to a forward-looking "Azaion.Missions .NET 10" overview that points at the new docs.

What remains (Jira AZ-EPIC + B-tickets)

  • B1 — DOCS-LOCAL (3 SP, Task) — done in this turn (Phase A1).
  • B2 — DOCS-SUITE-MISSIONS (3 SP, Task) — done in this turn (Phase A2).
  • B3 — DOCS-SUITE-CROSS-REFS (3 SP, Task) — done in this turn (Phase A2 cross-ref sweep).
  • B4 — REPO-RENAME (3 SP, Task) — Gitea repo rename + suite .gitmodules update + git mv flights missions.
  • B5 — CODE-NAMESPACE (3 SP, Story) — Azaion.Flights.* -> Azaion.Missions.*.
  • B6 — CODE-DOMAIN-RENAME (5 SP, Story) — Aircraft -> Vehicle, Flight -> Mission, AircraftType -> VehicleType { Plane, Copter, UGV, GuidedMissile }.
  • B7 — CODE-GPS-DENIED-REMOVAL (3 SP, Story) — delete Database/Entities/Orthophoto.cs, Database/Entities/GpsCorrection.cs, the "GPS" policy, the cascade branches, and the migrator entries.
  • B8 — CODE-HTTP-ROUTES (3 SP, Story) — [Route("flights")] -> [Route("missions")], [Route("aircrafts")] -> [Route("vehicles")].
  • B9 — CODE-DB-MIGRATION (5 SP, Story) — ALTER TABLE rename + DROP TABLE IF EXISTS orthophotos / gps_corrections.
  • B10 — CODE-INFRASTRUCTURE (2 SP, Task) — Dockerfile entrypoint + Woodpecker image tag + suite compose service block.
  • B11 — CONSUMER-UPDATES (5 SP, Story) — autopilot + ui + any other consumer of /flights/ or /aircrafts/.
  • B12 — DECISION-DEFAULT-VEHICLE-RULE (2 SP, Task) — resolve the spec-vs-code "exactly one default vehicle" divergence (lift into spec + transaction-wrap, OR drop from code).

Jira ticket creation status

status: tickets-created + local-task-files-written (2026-05-14)

Local task files were created under the project convention <repo>/_docs/tasks/{todo,done}/AZ-<n>_<slug>.md so the existing habit of mirroring tracker tickets as reviewable markdown is preserved. Per-repo work lives in the repo it touches; suite-level / multi-repo work stays in azaion-suite/_docs/tasks/.

In this flights/ repo (flights/_docs/tasks/):

  • done/AZ-540_missions_rename_b1_local_docs.md (B1, done in this turn — local docs)
  • done/AZ-542_missions_rename_b3_state_bookkeeping.md (B3, done in this turn — local state files)
  • todo/AZ-544_missions_rename_b5_csproj_namespace.md (B5 — .csproj + namespace)
  • todo/AZ-545_missions_rename_b6_domain_rename.md (B6 — Aircraft -> Vehicle, Flight -> Mission)
  • todo/AZ-546_missions_rename_b7_drop_gps_denied.md (B7 — drop GPS-Denied surface)
  • todo/AZ-547_missions_rename_b8_http_routes.md (B8 — HTTP routes)
  • todo/AZ-548_missions_rename_b9_db_migration.md (B9 — DB migration)
  • todo/AZ-551_missions_rename_b12_default_vehicle_rule.md (B12 — default-vehicle rule decision)

In the suite repo (azaion-suite/_docs/tasks/):

  • todo/AZ-539_missions_rename_epic.md (Epic — coordinates work across multiple repos)
  • done/AZ-541_missions_rename_b2_suite_docs.md (B2, done in this turn — suite docs)
  • todo/AZ-543_missions_rename_b4_repo_rename.md (B4 — Gitea repo rename + .gitmodules + suite checkout git mv)
  • todo/AZ-549_missions_rename_b10_image_tag.md (B10 — image tag, Woodpecker pipeline + _infra/ compose)
  • todo/AZ-550_missions_rename_b11_consumer_cutover.md (B11 — autopilot + ui + suite e2e cutover)
Plan ID Jira Type SP Status
Epic AZ-539 Epic -- To Do
B1 AZ-540 Task 3 Done (this turn)
B2 AZ-541 Task 3 Done (this turn)
B3 AZ-542 Task 3 Done (this turn)
B4 AZ-543 Task 3 To Do
B5 AZ-544 Story 3 To Do
B6 AZ-545 Story 5 To Do
B7 AZ-546 Story 3 To Do
B8 AZ-547 Story 3 To Do
B9 AZ-548 Story 5 To Do
B10 AZ-549 Task 2 To Do
B11 AZ-550 Story 5 To Do
B12 AZ-551 Task 2 To Do

Total: 1 Epic + 12 child tickets, 35 SP across remaining 9 tickets.

Replay obligation

At the start of every /autodev invocation in this repo (and in ../suite/), check this leftover:

  1. All 13 tickets exist (above). No retry needed for ticket creation.
  2. The leftover is NOT deleted yet — it stays as the index from doc state to Jira state until the per-component code work (B4-B11) lands. Once all child tickets reach Done, the autodev replay can mark status: tickets-completed and the leftover can be archived.

Cross-cutting doc-only state

  • _docs/_autodev_state.md was updated in this turn to reflect sub_step.phase=rename-paused so the previously in-progress "system-synthesis" work can resume after Phase B completes.
  • _docs/02_document/state.json was updated to reflect the new component shape (7 -> 6 components, gps_denied removed, aircraft_catalog renamed to vehicle_catalog) and to record the rename event in decomposition_revised.