Mission 0A — SWE work factory V1
Repository-local orchestration layer so long autonomous engineering missions don't lose state, drift scope, or falsely declare success. Deliberately boring: Markdown + JSON artifacts + one Node CLI. No DB, no dashboard, no framework, no multi-agent platform.
Lifecycle
QUEUED → RUNNING → VERIFYING → DONE / FAILED / BLOCKED
Commands (package.json scripts)
swe:status — list/detail missions
swe:start — QUEUED → RUNNING; refuses on dirty tree or a second non-terminal mission
swe:checkpoint — ingest compact checkpoint md, stamp SHA + git state
swe:verify — run mission-required project checks (allowlisted: npm run <script> / node tests/*.mjs / node scripts/*.mjs), never duplicated validation logic
swe:finish — DONE only with green verification on current HEAD; writes REPORT.md
swe:resume — reconstruct context packet for a fresh session (mission + latest checkpoint + git state); BLOCKED → RUNNING
Artifacts
missions/TEMPLATE.md
missions/<id>/mission.md — JSON frontmatter (id, verification[], …) + narrative sections
missions/<id>/state.json, checkpoints/NNN.md, logs/, REPORT.md
Safety
Fail closed: no force-push, no reset --hard, no discarding unrelated uncommitted changes, no production secrets/data. Verification command allowlist. ChatGPT-via-Playwright optional + advisory only, never secrets.
V1 boundary
One non-terminal mission at a time; the queue is pre-authored mission files — no autonomous generation of future work.
Dogfood
Run a harmless validation mission through start → checkpoint → verify → finish → report + resume simulation.
Mission 0A — SWE work factory V1
Repository-local orchestration layer so long autonomous engineering missions don't lose state, drift scope, or falsely declare success. Deliberately boring: Markdown + JSON artifacts + one Node CLI. No DB, no dashboard, no framework, no multi-agent platform.
Lifecycle
QUEUED → RUNNING → VERIFYING → DONE / FAILED / BLOCKED
Commands (package.json scripts)
swe:status— list/detail missionsswe:start— QUEUED → RUNNING; refuses on dirty tree or a second non-terminal missionswe:checkpoint— ingest compact checkpoint md, stamp SHA + git stateswe:verify— run mission-required project checks (allowlisted:npm run <script>/node tests/*.mjs/node scripts/*.mjs), never duplicated validation logicswe:finish— DONE only with green verification on current HEAD; writes REPORT.mdswe:resume— reconstruct context packet for a fresh session (mission + latest checkpoint + git state); BLOCKED → RUNNINGArtifacts
missions/TEMPLATE.mdmissions/<id>/mission.md— JSON frontmatter (id, verification[], …) + narrative sectionsmissions/<id>/state.json,checkpoints/NNN.md,logs/,REPORT.mdSafety
Fail closed: no force-push, no
reset --hard, no discarding unrelated uncommitted changes, no production secrets/data. Verification command allowlist. ChatGPT-via-Playwright optional + advisory only, never secrets.V1 boundary
One non-terminal mission at a time; the queue is pre-authored mission files — no autonomous generation of future work.
Dogfood
Run a harmless validation mission through start → checkpoint → verify → finish → report + resume simulation.