1.9 KiB
1.9 KiB
Mission Cell Directory Spec
This document defines the foundational Mission Cell filesystem contract for Lazarus Pit. It is a grounded M6 foundation slice, not the full Mission Cell runtime.
Root layout:
/var/missions/<uuid>/
Required subdirectories:
meta/config/state/logs/artifacts/worktree/
Required seed files:
meta/mission.jsonconfig/cell.jsonstate/heartbeat.jsonlogs/daemon.log
Intent of each path
meta/mission.json- durable mission identity and lifecycle metadata
- includes
mission_id,created_at, and current status
config/cell.json- local cell wiring
- points to the worktree, artifacts directory, and heartbeat file
state/heartbeat.json- latest cell heartbeat timestamp and state
- consumed by Lazarus Pit scans for healthy vs stale cell classification
logs/daemon.log- daemon-local operational log target
artifacts/- handoff packets, reports, checkpoints, and mission outputs
worktree/- mission-specific checked-out repository workspace
Lazarus Pit daemon skeleton
scripts/lazarus_pit.py provides the foundation daemon behavior:
- initialize a Mission Cell scaffold with
--init-cell <uuid> - scan all cells under the configured missions root
- classify cells as
healthy,stale,incomplete, oruninitialized - emit a daemon heartbeat through the existing cron heartbeat writer
- output a JSON health report for higher-level watchers
Default config lives at:
config/lazarus_pit.json
Example bootstrap
python3 scripts/lazarus_pit.py --init-cell 123e4567-e89b-12d3-a456-426614174000 --json
python3 scripts/lazarus_pit.py --write-heartbeat --json
What remains for full #879 completion
This slice does not yet complete the whole issue. Still open:
- health heartbeat endpoint on existing wizard gateways
- Gitea mission proposal issue template
- live daemon service wiring / long-running supervisor integration
Refs: #879