Skip to main content

AEROSIM-TS-156

Project task

Make every flight recovery control ordinarily operable

Direct Restart, Menu/Resume, and dialog-scoped Menu/Restart are visible topmost hit targets and work through ordinary user input with scoped semantic role/name queries and no forced click.

AEROSIM-TS-156Canonical ID TASK-0156
Verified flow state
Done
Owner
AeroSim Architecture and Delivery
Component
Web Application — restart and flight-menu interaction
Repository
corp-v1-aerosim/corp-v1-aerosim

Delivery scope

Place and stack direct recovery controls inside the runtime interaction layer; preserve the already working ordinary dialog-scoped Menu Restart behavior; verify Menu/Resume and Menu/Restart against the same authoritative state contract. Scope semantic role/name queries to the relevant control region/dialog so duplicate RESTART FLIGHT names do not create ambiguous automation. This is the exact existing governed recovery interaction semantics, not a broader interaction commitment.

Implementation contract

Implementation artifacts

  • corp-v1-aerosim/corp-v1-aerosim:applications/web/src/App.tsx
  • corp-v1-aerosim/corp-v1-aerosim:applications/web/src/flight/views/ChaseFlightView.tsx
  • corp-v1-aerosim/corp-v1-aerosim:applications/web/src/flight/views/ChaseFlightView.css
  • corp-v1-aerosim/corp-v1-aerosim:applications/web/src/flight/menu/FlightMenu.tsx
  • corp-v1-aerosim/corp-v1-aerosim:applications/web/e2e/flight-recovery-controls.browser.spec.ts

Inputs

  • RootAtSkic authorized Wave 33 correction work in Discord message 1549867630800666695 and then asked the exact completeness question in message 1549881095363760179; this admission supplies the missing repair Tasks without modifying the separately claimed TASK-0149.
  • Deployed application source ab085692e2ed70bdb6525044b4ca91cc48a27478 for product 1.0.0.1; release 1.0.0.1 remains deployed, human acceptance FAILED, production REJECTED, and a replacement release is required.
  • Ordinary-user UAT evidence: /opt/data/corp-v1-aerosim-releases/workspace/uat-1.0.0.1-training-airfield-rerun/report.md and report.json (12/12 failed), /opt/data/corp-v1-aerosim-releases/workspace/uat-1.0.0.1-coastal-range/uat-report.md and uat-report.json (12/12 failed), and /opt/data/corp-v1-aerosim-releases/workspace/uat-1.0.0.1-mountain-valley/report.md and report.json (12/12 failed). All three runs prohibit forced clicks, hidden-input interaction, DOM/state mutation, direct API setup, or other bypass.
  • Diagnosed root-cause records: /opt/data/cache/delegation/subagent-summary-0-20260916_203916_911368.txt, /opt/data/cache/delegation/subagent-summary-1-20260916_203916_911707.txt, /opt/data/cache/delegation/subagent-summary-2-20260916_203916_911857.txt.
  • Root-cause summary 2 lines 40-49: direct control-panel RESTART FLIGHT is below a fixed z-index 100 viewport; elementFromPoint returns CANVAS and ordinary clicks are intercepted. Mountain Valley UAT reproduced this in 12/12 journeys.
  • Root-cause summary 2 lines 58-65 and Training Airfield rerun line 27: MENU is clickable and ordinary dialog-scoped Menu Restart passed 12/12; the defect is the covered direct restart, not Menu Restart or router unmount.

Outputs

  • Direct Restart, Menu/Resume, and dialog-scoped Menu/Restart have visible, correctly stacked, bounded hit targets at every supported viewport.
  • Ordinary clicks produce the exact authoritative resume/restart transition and semantic role/name queries are scoped to the direct-control region or open dialog.

Failure boundaries

  • Fail when any acceptance click is forced, dispatched directly, enabled by DOM/style mutation, or lands on canvas/attribution instead of the visible control.
  • Fail when documentation or tests claim Menu Restart fails; ordinary dialog-scoped Menu Restart is a working baseline that must be preserved.
  • Fail when an unscoped duplicate-name locator is treated as a product failure instead of scoping the existing names to their control region/dialog.

Excluded scope

  • No application implementation is performed by this admission change.
  • Do not rewrite TASK-0149, infer a router-retention defect, report working Menu Restart as failed, classify static STALL SPEED 140 KT specification text as an active warning, or broaden governed interaction scope beyond the exact interaction semantics stated here.

Verification steps

  • Tests first: reproduce topmost-hit-target interception with elementFromPoint and ordinary click before changing stacking/placement.
  • At every supported viewport, assert the centre and representative edge points of Direct Restart, Menu, Resume, and dialog Restart resolve to the intended visible control; perform each ordinary action and verify sequence/attempt state.
  • No force-click, direct click-handler invocation, DOM/style mutation, hidden input, API setup, or browser bypass is acceptance evidence.

Traceability

Requirements

Dependencies

Acceptance evidence

Verified delivery: application PR #212 reviewed head 3407dd4252ca4493cb1dc7888b22fbfca1041b41 merged as 61da4c6c5ab7be346e27c7b36024f1d59988929a; candidate CI run 5235 attempt 3, integration validation run 5255, and immutable image publication run 5254 passed. Browser acceptance reproduced the covered direct Restart with elementFromPoint before repair, then passed 2/2 ordinary-click journeys at 1440x900 and 1280x720 with centre and edge hit-target checks for Direct Restart, Menu, Resume, and dialog Restart, no force click or DOM mutation, sequence reset, and camera reset to Chase.

Current evidence boundary

No current implementation, acceptance, release, or deployment evidence is claimed for this planned Task. Any prior implementation may be used only as prototype and discovery evidence.