Queue via fly-to + Relocate; remove dedicated queue input (ISS-053, v0.32.0) #63

Merged
kamilkrzywda merged 1 commits from feat/queue-via-fly-to-relocate into master 2026-09-21 02:07:45 +02:00
Owner

What changed (ISS-053 — "Queue should be done by clicking 'fly to…' on 'on board' and by 'Relocate'; it doesn't need dedicated input")

Routing rule: grounded → /fly, flying → /queue (client-side only; no server or API changes):

  • The per-cargo-row "Fly to {dest}" button in the On board blocks is now enabled for both states and picks its endpoint by plane state — while flying it appends the package's destination to that plane's queue (auto-chains on landing); grounded it departs immediately as before.
  • Relocate now lists ALL planes (not just grounded) and applies the same conditional: relocating a flying plane queues the leg instead of 409-ing. The map airport popup is intentionally untouched (still grounded-only /fly).
  • The dedicated "Add to queue" select + button in each on-board block's Queue sub-section is deleted, along with its shared queueAddDestIcao state. Queued leg rows and their per-leg Cancel buttons remain.

Tests

  • e2e/queue.spec.ts test 1 now adds its queued leg through the Relocate section (the removed control's only UI consumer).
  • e2e/two-planes.spec.ts per-plane-queues test adds the starter's second leg via API (grounded+queued → /fly by design, so no UI append path there).
  • No new endpoints → OpenAPI path list unchanged. Local: tsc clean · vitest 327/32 files · playwright list 52 tests in 14 files (all baseline-exact; e2e verified in CI).

Completes ISS-053.

## What changed (ISS-053 — "Queue should be done by clicking 'fly to…' on 'on board' and by 'Relocate'; it doesn't need dedicated input") **Routing rule: grounded → `/fly`, flying → `/queue`** (client-side only; no server or API changes): - The per-cargo-row **"Fly to {dest}"** button in the On board blocks is now enabled for both states and picks its endpoint by plane state — while flying it appends the package's destination to that plane's queue (auto-chains on landing); grounded it departs immediately as before. - **Relocate** now lists ALL planes (not just grounded) and applies the same conditional: relocating a flying plane queues the leg instead of 409-ing. The map airport popup is intentionally untouched (still grounded-only `/fly`). - The **dedicated "Add to queue" select + button** in each on-board block's Queue sub-section is deleted, along with its shared `queueAddDestIcao` state. Queued leg rows and their per-leg Cancel buttons remain. ## Tests - `e2e/queue.spec.ts` test 1 now adds its queued leg through the Relocate section (the removed control's only UI consumer). - `e2e/two-planes.spec.ts` per-plane-queues test adds the starter's second leg via API (grounded+queued → `/fly` by design, so no UI append path there). - No new endpoints → OpenAPI path list unchanged. Local: tsc clean · vitest 327/32 files · playwright list 52 tests in 14 files (all baseline-exact; e2e verified in CI). Completes ISS-053.
kamilkrzywda added 1 commit 2026-09-21 01:57:24 +02:00
Queue via fly-to + Relocate; remove dedicated queue-add input (ISS-053, v0.32.0)
CI / build + unit + e2e (pull_request) Successful in 10m18s
89ad09a04d
- LeftPane fly-to button enabled for any plane state; posts to /queue when the plane is flying, else /fly
- Relocate lists ALL planes (relocatable); relocate-go posts to /queue for a flying selected plane, else /fly
- Delete queue-add select + Add-to-queue button and shared queueAddDestIcao state; leg rows/cancel kept
- e2e/queue.spec.ts test 1 adds its queued leg via the Relocate section (starter is flying)
- e2e/two-planes.spec.ts per-plane-queues test adds the starter's second leg via API POST /queue
kamilkrzywda scheduled this pull request to auto merge when all checks succeed 2026-09-21 01:57:41 +02:00
kamilkrzywda merged commit 4e585cbed1 into master 2026-09-21 02:07:45 +02:00
kamilkrzywda deleted branch feat/queue-via-fly-to-relocate 2026-09-21 02:07:45 +02:00
Sign in to join this conversation.