sync local pi changes

This commit is contained in:
alex wiesner
2026-04-09 23:14:57 +01:00
parent 18245c778e
commit ec378ebd28
128 changed files with 22510 additions and 3436 deletions

View File

@@ -0,0 +1,30 @@
# Context Manager Task 6 Fix 2 Report
## Status
Done. Fixed the remaining branch rehydration and `/ctx-mode` persistence regressions and verified them with targeted and full test runs.
## Changes
- Updated `.pi/agent/extensions/context-manager/index.ts` rehydration to restore the latest valid snapshot ledger as the base state and replay only tracked messages that occur after that snapshot entry.
- Kept empty-ledger startup behavior when a branch has no valid snapshot.
- Preserved live in-memory mode changes during `turn_end` so `/ctx-mode aggressive` wins over an older persisted snapshot mode before the next snapshot is appended.
- Strengthened `.pi/agent/extensions/context-manager/src/extension.test.ts` with integration-style regressions for:
- `session_tree` on a snapshot-only branch producing a hidden packet from snapshot-backed ledger state.
- `/ctx-mode aggressive` persisting `mode: "aggressive"` and the corresponding aggressive-zone token classification on the next `turn_end`.
## Tests
- `cd /home/alex/dotfiles/.worktrees/context-manager-extension/.pi/agent/extensions/context-manager && npx tsx --test src/extension.test.ts`
- `cd /home/alex/dotfiles/.worktrees/context-manager-extension/.pi/agent/extensions/context-manager && npm test`
## Files Changed
- `.pi/agent/extensions/context-manager/index.ts`
- `.pi/agent/extensions/context-manager/src/extension.test.ts`
- `.pi/reviews/context-manager-task6-fix-2-report.md`
## Self-review Findings
- Snapshot-only branches now retain snapshot ledger contents for packet injection and command inspection instead of dropping to an empty ledger.
- Rehydration no longer replays pre-snapshot transcript entries, which avoids rebuilding stale state on top of a newer snapshot.
- The `/ctx-mode` fix is narrowly scoped to `turn_end`; public commands and extension hook API stay unchanged.
## Concerns
- None with the fix itself.
- The worktree still contains unrelated untracked historical review files under `.pi/reviews/`; they were left untouched and excluded from the focused commit.