{"type":"meta","schema":"session-state/v1","slug":"autonomy-p0-chaos-scaffold","topic":"P0 of autonomy epic — test/chaos fault-injection harness + chaos adapter per spec/CHAOS-SUITE.md","created":"2026-07-08","exec_mode":"ship","scheduler":"sequential","land_mode":"merge-to-main","base_branch":"main","gate0_mode":"strict","depends_on":[],"status_enum":["BLOCKED","PENDING","WORKING","WRITTEN","REVIEWED","COMMITTED"],"truth_rule":"this file is ground truth for INTENT (goals/task list); git is ground truth for DONE-NESS — reconcile statuses against git, never trust a COMMITTED line with no commit","report_rule":"at session end emit brief: done / blocked / deferred / canceled"}
{"type":"goal","text":"executable chaos acceptance harness: fault-injecting wrapper + scenario runner + all C1-C15 scenarios authored with phase-gated assertions; ungated set green against existing engine"}
{"type":"anchor","path":"spec/CHAOS-SUITE.md","what":"canonical spec — wrapper vocabulary, scenario format, assertions, phase gate map"}
{"type":"anchor","path":"spec/IMPLEMENTER-NOTES.md","what":"READ FIRST — identity model, invariants, working protocol"}
{"type":"anchor","path":"docs/plans/2026-07-08-autonomy-p0-chaos-scaffold.md","what":"plan — pinned per-task contracts (### Task N)"}
{"type":"task","id":"w1.t1","wave":1,"phase":0,"seat":"coder","tier":"medium","desc":"chaos wrapper test/chaos/wrappers/chaos.sh — wrapper-contract-conformant, CHAOS_* env fault vocabulary per spec/CHAOS-SUITE.md; no vars = trivially-succeeding agent (plan Task 1)","status":"PENDING","deps":[],"requires_decision":null,"files":["test/chaos/wrappers/chaos.sh"],"blocker":null}
{"type":"task","id":"w1.t2","wave":1,"phase":0,"seat":"coder","tier":"medium","desc":"scenario runner test/chaos/run.sh + fixture builder test/chaos/lib.sh — declarative scenarios, journal+git assertions only, phase-gated skip support, fail-closed on unknown keys (plan Task 2)","status":"PENDING","deps":[],"requires_decision":null,"files":["test/chaos/run.sh","test/chaos/lib.sh"],"blocker":null}
{"type":"task","id":"w2.t1","wave":2,"phase":0,"seat":"coder","tier":"low","desc":"register chaos preset in presets/adapters.json; dialect must exist in events.schema enum; presets/_validate.mjs green (plan Task 3)","status":"PENDING","deps":["w1.t1"],"requires_decision":null,"files":["presets/adapters.json"],"blocker":"waiting on w1.t1"}
{"type":"task","id":"w2.t2","wave":2,"phase":0,"seat":"coder","tier":"high","desc":"author ALL scenarios C1-C15 from spec/CHAOS-SUITE.md verbatim (spec is test source); currently-ungated assertions must PASS against existing engine, later-phase assertions marked gated (plan Task 4)","status":"PENDING","deps":["w1.t1","w1.t2"],"requires_decision":null,"files":["test/chaos/scenarios/"],"blocker":"waiting on wave 1"}
{"type":"task","id":"w3.t1","wave":3,"phase":0,"seat":"coder","tier":"low","desc":"wire chaos suite into run-tests.sh; full suite green, zero unexplained warnings (plan Task 5)","status":"PENDING","deps":["w2.t2"],"requires_decision":null,"files":["run-tests.sh"],"blocker":"waiting on w2.t2"}
