docs(simulation): record S1 target bootstrap and UI gates
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
# SIM S1 target bootstrap — 2026-07-24
|
||||
|
||||
## Result
|
||||
|
||||
`PASS` for the exact S1 source-generation/bootstrap boundary. This proves that
|
||||
the committed S1A/S1B contracts, repository, application service, worker guard
|
||||
and process-supervisor tests execute inside the accepted `MissionCore-Sim`
|
||||
target. It does not accept the stock-rover provider lifecycle, PX4 commands,
|
||||
telemetry, frames, watchdog behavior or S1 as a whole.
|
||||
|
||||
## Exact source generation
|
||||
|
||||
- Mission Core commit: `630d1ae`.
|
||||
- Branch: `feat/simulation-polygon-s1`.
|
||||
- Archive: `NODEDC_MISSION_CORE-s1-630d1ae.tgz`.
|
||||
- Archive SHA-256:
|
||||
`0ca5d3ffb008add6e793428e96b88920fdc65fa8d9982e5018ce7a4e83958dae`.
|
||||
- Source:
|
||||
`/mnt/d/NDC_MISSIONCORE/simulation/source/NODEDC_MISSION_CORE-630d1ae`.
|
||||
- Cache:
|
||||
`/mnt/d/NDC_MISSIONCORE/simulation/cache/mission-core-s1/`.
|
||||
|
||||
The archive was produced with `git archive` from the exact commit and an
|
||||
explicit path set. The pre-existing S0 source and evidence generations were not
|
||||
modified.
|
||||
|
||||
## Target and storage
|
||||
|
||||
- WSL distribution: `MissionCore-Sim`.
|
||||
- Python: `3.12.3`.
|
||||
- Kernel: WSL2 Linux `6.18.33.1-microsoft-standard-WSL2`, x86-64.
|
||||
- Mutable source, cache and evidence: D-only.
|
||||
- D free bytes at bootstrap: `392483127296`.
|
||||
- Evidence:
|
||||
`/mnt/d/NDC_MISSIONCORE/simulation/artifacts/s1/bootstrap/20260724T150000Z-630d1ae`.
|
||||
|
||||
## Validation
|
||||
|
||||
```text
|
||||
PYTHONPATH=src python3 -m pytest -q \
|
||||
tests/test_simulation_s1_run_store.py \
|
||||
tests/test_simulation_s1_orchestrator.py
|
||||
```
|
||||
|
||||
Result:
|
||||
|
||||
```text
|
||||
20 passed in 14.73s
|
||||
```
|
||||
|
||||
The evidence generation retains environment and source identity, target pytest
|
||||
output, source-file SHA-256 values, an empty process-residue record, an evidence
|
||||
digest index and `verdict=pass`.
|
||||
|
||||
## Accepted and open boundaries
|
||||
|
||||
Accepted:
|
||||
|
||||
- exact committed S1 source executes on the target worker;
|
||||
- the D-only source/cache/artifact split is viable;
|
||||
- local process-group tests stop without retained test processes;
|
||||
- S1 requires neither a global Python package install nor Docker.
|
||||
|
||||
Still open:
|
||||
|
||||
- concrete Gazebo/PX4/XRCE/ROS provider specifications;
|
||||
- product-owned loopback target namespace;
|
||||
- real-provider health and deterministic shutdown;
|
||||
- restart-safe PID/start-token reconciliation;
|
||||
- live pause/resume/step/reset;
|
||||
- Ackermann/Differential command mapping;
|
||||
- canonical `VehicleState`, frame conversion and failsafe evidence.
|
||||
Reference in New Issue
Block a user