Scope
Port charon/cmd/run.go (~221 LOC) — the pluto run CLI command that boots a full distributed-validator node. This is the user-facing entry point for actually running Pluto.
Dependencies
app/app.go wiring must land first (this issue's parent integration anchor)
Scope details
- Parse
RunConfig from flags + env + cluster lock
- Instantiate the app graph
- Wire signal handling (Ctrl+C, SIGTERM) to graceful shutdown
- Support
--simnet mode using app/vmock
Acceptance
pluto run --help matches charon run --help flag-for-flag
- 4-node compose smoke test:
pluto run boots, peers, completes one slot
- Graceful shutdown drains in-flight duties
cargo clippy --workspace --all-targets --all-features -- -D warnings clean
Milestone
🎯 This is the Phase 4 gate. When this works, Pluto is a runnable node.
Scope
Port
charon/cmd/run.go(~221 LOC) — thepluto runCLI command that boots a full distributed-validator node. This is the user-facing entry point for actually running Pluto.Dependencies
app/app.gowiring must land first (this issue's parent integration anchor)Scope details
RunConfigfrom flags + env + cluster lock--simnetmode usingapp/vmockAcceptance
pluto run --helpmatchescharon run --helpflag-for-flagpluto runboots, peers, completes one slotcargo clippy --workspace --all-targets --all-features -- -D warningscleanMilestone
🎯 This is the Phase 4 gate. When this works, Pluto is a runnable node.