Skip to main content

AEROSIM-TS-30

Project task

Add deterministic motion and collision regressions

Repeated runs from identical initial state and fixed inputs produce equivalent motion and collision results within declared tolerances.

AEROSIM-TS-30Canonical ID TASK-0030
Verified flow state
Done
Owner
AeroSim Architecture and Delivery
Component
Web Application — deterministic physics regression suite
Repository
corp-v1-aerosim/corp-v1-aerosim

Delivery scope

Record one immutable aircraft initial state and 240-tick control sequence, execute it repeatedly through FixedStepClock and Rapier, compare per-tick position/rotation/velocity and collision sequences, and prove render-frame partitioning cannot alter authoritative results. Primary files: packages/flight-core/tests/fixtures/fixed-flight-sequence.json, applications/web/tests/physics/deterministic-flight.test.ts, applications/web/tests/physics/variable-frame-authority.test.ts.

Implementation contract

Implementation artifacts

  • packages/flight-core/tests/fixtures/fixed-flight-sequence.json
  • applications/web/tests/physics/deterministic-flight.test.ts
  • applications/web/tests/physics/variable-frame-authority.test.ts

Inputs

  • fixed-flight-sequence.json containing initialState and indexed SimulationInput samples
  • Frame schedules 240×1/60, 120×1/30, and jittered elapsed times summing to four seconds

Outputs

  • Normalized 240-tick trajectory and ordered collision-event snapshot
  • Regression comparison using 1e-6 position/velocity and 1e-7 quaternion tolerances

Failure boundaries

  • Fail at the first tick whose component exceeds its declared tolerance and print tick, field, expected, and actual.
  • Fail if reset retains a body handle, collision pair, accumulator remainder, or prior input.

Excluded scope

  • Cross-browser floating-point equivalence beyond declared tolerances and certification-grade flight-model validation are excluded.

Verification steps

  • pnpm --filter @aerosim/web test -- deterministic-flight.test.ts variable-frame-authority.test.ts
  • Run the fixture ten times and across all three frame schedules; compare normalized trajectories and collision snapshots.

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: original application PR #48 merged reviewed head 80f73cd83cccbd9fb1ba8f01b6f1e8b426a17b40 as b38e562d52640e11cb7e1eeb6bb8af021f09a480; the task-owned immutable 240-tick fixture and regression suites are present in current integration; focused tests pass 9/9 across ten repetitions and three frame schedules; later verification PR #125 contained no code delta and reconfirmed full validation, publication, and integration in runs 4222, 4223, 4230, and 4231. 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.