feat(sessions): sessionForkFrom - branch conversations from a common ancestor (#33)

- task schema: optional sessionForkFrom (source session name); requires
  session target; self-fork rejected
- runner: resolves source newest .jsonl (fail 4 if none/outside dataRoot);
  passes MOSAIC_SESSION_FORK + MOSAIC_SESSION_DIR; result records lineage
- pi adapter: --fork <source> --session-dir <target> when forking;
  ephemeral default unchanged; plain session resume unchanged
- compose passthrough; RELEASE -> 0.0.7 (adapter changed)
- suite +9 cases (58 total): plumbing via mock stderr, validation
  negatives, live fork - child recalls ancestor code word, ancestor
  session file untouched

Closes #33
This commit is contained in:
2026-09-03 06:43:02 -05:00
parent c038706eed
commit 88d9cf750f
6 changed files with 92 additions and 11 deletions
+8 -4
View File
@@ -7,14 +7,13 @@ update this file to the next action). No ambiguity, no re-planning.
## Next action
Owner review of M10 (retention) — then name the next target.
Owner review of M11 (session forking) — then name the next target.
## Queue (ordered, not started)
1. Second real adapter (parked — owner focused on Pi)
2. Auto-apply policy for worker patches (substrate now exists)
3. Session forking from a common ancestor (pi JSONL trees make this native)
4. UX/DX backlog #31 (grep highlight vs status colors — likely closed by owner's unalias)
2. Auto-apply policy for worker patches (substrate exists)
3. UX/DX backlog #31 (grep highlight vs status colors — likely closed by owner's unalias)
## Rules
@@ -28,6 +27,11 @@ Owner review of M10 (retention) — then name the next target.
## Completed log
- 2026-09-03 — M9 mission capability policy (#30) — merged, least-privilege intersection
- 2026-09-03 — test UX: green OK/red FAIL status colors (#31 adjacent) — terminal-only, pipe-safe
- 2026-09-03 — M10 run-record retention (#32) — merged, prune keep-N/dry-run/receipt, 49/24/14 + verify green
- 2026-09-03 — M11 session forking (#33) — merged, child recalls ancestor context, ancestor untouched, 58/24/14 + verify green; release 0.0.7 activated
- 2026-09-03 — M9 mission capability policy (#30) — merged, least-privilege intersection
- 2026-09-03 — test UX: green OK/red FAIL status colors (#31 adjacent) — terminal-only, pipe-safe
- 2026-09-03 — M10 run-record retention (#32) — merged, prune keep-N/dry-run/receipt, 49/24/14 + verify green