feat(simulation): add S1 worker lifecycle ownership
This commit is contained in:
@@ -125,3 +125,25 @@ own provider processes, transmit a PX4 setpoint, execute heartbeat/watchdog
|
||||
failsafe behavior, or qualify navigation/safety behavior. The target
|
||||
orchestrator must place the caller-supplied repository root under the accepted
|
||||
D-only worker boundary.
|
||||
|
||||
## S1B ownership foundation
|
||||
|
||||
`k1link.simulation.orchestrator` now owns the application lifecycle through a
|
||||
transport-neutral worker port. Start and stop requests are persisted with
|
||||
idempotency identity, one active run owns a worker at a time, and
|
||||
pause/resume/step/reset cannot bypass run-state validation. Provider start
|
||||
failure, S0 profile drift, stop residue and restart interruption all become
|
||||
explicit run events and terminal failures.
|
||||
|
||||
`k1link.simulation.process_supervisor` provides the worker-local POSIX ownership
|
||||
primitive: shell-free argv, dedicated provider PGIDs, run-scoped logs, atomic
|
||||
process registry, partial-start rollback and ascending shutdown order matching
|
||||
the accepted S0 dependency graph. `k1link.simulation.worker` binds that
|
||||
primitive to the exact accepted S0 profile digest and canonical D-only S1 run
|
||||
artifact and process-runtime layouts.
|
||||
|
||||
This is not target-worker acceptance. Provider specifications, loopback network
|
||||
namespace creation, live readiness probes, restart-safe PID/start-token
|
||||
reconciliation and Gazebo world-control/PX4 command adapters remain open. The
|
||||
worker port deliberately fixes ownership semantics without prematurely fixing
|
||||
the eventual transport.
|
||||
|
||||
Reference in New Issue
Block a user