feat(simulation): add provider-neutral worker profile

This commit is contained in:
DCCONSTRUCTIONS
2026-07-25 00:29:00 +03:00
parent 5abd07d2bf
commit 37c24b5fa8
21 changed files with 1275 additions and 121 deletions
@@ -35,9 +35,10 @@ reports easy to misuse.
5. Simulation Orchestrator is the sole process-lifecycle owner. Gazebo and PX4
do not run inside the Mission Core web process, and the browser has no direct
PX4 channel.
6. Gazebo `/clock` is authoritative in closed-loop simulation. ROS 2 uses
simulated time and PX4 uXRCE-DDS time synchronization is disabled for this
profile.
6. Each admitted closed-loop provider profile declares exactly one
authoritative simulation clock. The accepted stock profile uses Gazebo
`/clock`; ROS 2 uses simulated time and PX4 uXRCE-DDS time synchronization
is disabled for that profile.
7. Mission Core uses ENU/FLU. PX4 uses NED/FRD. Exactly one adapter boundary
converts frames and requires golden tests.
8. The first command boundary permits only rover speed+steering and
@@ -67,6 +68,10 @@ reports easy to misuse.
[ADR 0016](0016-distributed-product-edge-and-worker-topology.md). Native
Gazebo GUI is worker-local diagnostics; the operator product remains the
browser Control Station over canonical state.
18. Provider roles, capabilities, clock and canonical frames follow
[ADR 0017](0017-provider-neutral-simulation-and-unreal-evaluation.md).
Gazebo remains the regression baseline; Unreal is an unevaluated
high-fidelity provider family, not a replacement product architecture.
## Consequences