2.2 KiB
2.2 KiB
Why
Generated Run currently comes online, registers, and then waits for Platform to assign lifecycle jobs before a game process can exist. That inverts the intended ownership model: Run is the machine-side lifecycle owner, Platform should follow Run-reported facts, and plugins should only declare how Run initializes, installs dependencies, verifies readiness, and starts the game.
What Changes
- BREAKING Treat generated Run startup as an autonomous lifecycle bootstrap driven by plugin-declared lifecycle assets and the server deployment definition embedded in the generated package.
- Stop using accepted generated Run registration as a Platform trigger to enqueue
process.startorprocess.statusreconciliation jobs. - Add a bounded autonomous lifecycle plan to generated Run distribution build input so the independent Run package can self-bootstrap without waiting for
/run/jobs/claimwork. - Keep Platform as the registry, authorization, audit, and projection surface: Platform receives Run heartbeats, logs, lifecycle reports, and process facts, then updates visible server state from those Run-owned facts.
- Preserve Platform-owned distribution builds and component key security; generated Runs still never receive distribution-build authority.
Capabilities
New Capabilities
run-autonomous-lifecycle-owner: Generated Run owns plugin-declared bootstrap/start behavior and Platform follows Run-reported observed state.
Modified Capabilities
platform-side-distribution-builds: Generated Run packages must include the bounded autonomous lifecycle plan required for Run to bootstrap itself.
Impact
AGENTS.md,platform/protocol/*, and OpenSpec contracts must stop describing Platform as the lifecycle bootstrap dispatcher for generated Runs.platform/distribution build input and tests gain an autonomous lifecycle plan sourced from plugin lifecycle declarations and server deployment settings.platform/service/control.gostops enqueueing registration-time lifecycle/status jobs for generated Runs.- The independent
runrepository must implement plan consumption and autonomous execution; this repository must not re-add arun/source tree.