Skip to main content

AEROSIM-TS-101

Project task

Expose the required mapping for the selected input method

Selecting a supported input method shows its complete required control mapping before launch.

AEROSIM-TS-101Canonical ID TASK-0101
Verified flow state
Done
Owner
AeroSim Architecture and Delivery
Component
Web Application — Input controller
Repository
corp-v1-aerosim/corp-v1-aerosim

Delivery scope

Define InputMethodId, ControlActionId, and ControlMapping records; derive the pre-flight mapping view from the same versioned profile consumed by the flight input controller; require one binding for each essential action; and invalidate confirmation whenever method, device identity, mapping version, or binding changes.

Implementation contract

Implementation artifacts

  • applications/web/src/input/control-profile.ts
  • applications/web/src/preflight/controls/ControlMappingPanel.tsx
  • applications/web/test/preflight/control-mapping-panel.spec.tsx

Inputs

  • The declared input compatibility matrix and versioned control profiles.
  • A selected supported input method and optional connected-device identifier.

Outputs

  • A complete ordered mapping of essential ControlActionId values to physical bindings.
  • A ControlProfileDraft carrying methodId, deviceId, mappingVersion, and confirmation state.

Failure boundaries

  • Unsupported method, duplicate essential binding, missing essential action, or profile-version mismatch produces an explicit profile validation code and cannot be confirmed.
  • Disconnecting or changing the selected device invalidates the current confirmation.

Excluded scope

  • Player-defined remapping and profile persistence between browser sessions are not included.
  • This task displays mapping data but does not accept live diagnostic samples.

Verification steps

  • Run applications/web/test/preflight/control-mapping-panel.spec.tsx for every method in the declared matrix.
  • Assert the displayed essential-action bindings equal the controller profile records exactly.
  • Remove an action, duplicate a binding, change mappingVersion, and change device identity; assert confirmation is unavailable or invalidated.

Traceability

Requirements

Dependencies

UI/UX applicability

non_visual

This Task owns technical or behavioral acceptance and does not claim direct visual conformance to the approved UI/UX package.

Acceptance evidence

Verified delivery: application PR #142 reviewed head 4d45d4b merged as 8b4a33ce. Deterministic near/mid/far geometry and material profiles use governed thresholds and hysteresis, support direct distance jumps, retain the last valid profile on invalid distance, reject unsafe configuration, and do not mutate committed aircraft or camera state. Focused tests pass 5/5; web tests pass 1,119/1,119 plus browser suites; lint, typecheck, build, audit, candidate runs 4412-4413, and integration/publication runs 4414-4415 passed. Release completion verified on product 1.0.0.0 at GitOps revision 5d3712d89dfbf7dacd993348e55f497d126c7bf9 with Argo Synced/Healthy, exact image digests, authenticated API/database access, and three-world configured-flight acceptance.

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.