sync local pi changes
This commit is contained in:
41
.pi/reviews/context-manager-task3-fix-report.md
Normal file
41
.pi/reviews/context-manager-task3-fix-report.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# Context Manager Task 3 Fix Report
|
||||
|
||||
## Status
|
||||
- Done
|
||||
- Fixed the Task 3 review findings in the extractor and strengthened coverage around extractor/ledger interaction.
|
||||
|
||||
## Changes
|
||||
1. **Stopped cross-slice subject collisions in extracted memory**
|
||||
- Updated `.pi/agent/extensions/context-manager/src/extract.ts` so synthetic subjects for decisions, constraints, and active tasks include the source `entryId` (for example `decision-u1-0`).
|
||||
- This keeps independently extracted facts from different transcript slices in separate ledger slots without changing public APIs or the ledger merge contract.
|
||||
|
||||
2. **Refined user-constraint scoping**
|
||||
- Added a small `inferConstraintScope()` heuristic.
|
||||
- User constraints now default to `branch` scope unless they include durable session-wide signals.
|
||||
- Branch-local cues such as `this branch`, `for now`, `in this file`, or explicit file references stay branch-scoped.
|
||||
- Durable cues such as `whole session`, `across branches`, `MVP`, or `context window` stay session-scoped.
|
||||
|
||||
3. **Strengthened regression coverage**
|
||||
- Expanded `.pi/agent/extensions/context-manager/src/extract.test.ts` to verify source metadata, stable per-slice subject generation, extractor/ledger interaction, and the refined scope heuristic.
|
||||
- Added regression coverage proving independently extracted constraints, decisions, and active tasks all remain active after `mergeCandidates()`.
|
||||
|
||||
## Tests
|
||||
- Focused extractor tests:
|
||||
- `cd /home/alex/dotfiles/.worktrees/context-manager-extension/.pi/agent/extensions/context-manager && npx tsx --test src/extract.test.ts`
|
||||
- Result: 4 tests passed
|
||||
- Full extension suite:
|
||||
- `cd /home/alex/dotfiles/.worktrees/context-manager-extension/.pi/agent/extensions/context-manager && npm test`
|
||||
- Result: 15 tests passed
|
||||
|
||||
## Files Changed
|
||||
- Modified: `.pi/agent/extensions/context-manager/src/extract.ts`
|
||||
- Modified: `.pi/agent/extensions/context-manager/src/extract.test.ts`
|
||||
- Created: `.pi/reviews/context-manager-task3-fix-report.md`
|
||||
|
||||
## Self-Review Findings
|
||||
- The fix stays focused on Task 3 behavior and keeps all public function signatures unchanged.
|
||||
- No ledger changes were needed; Task 2 deterministic merge behavior remains covered by the existing ledger tests and the full suite still passes.
|
||||
- The new interaction test exercises the real extractor-to-ledger path that the review flagged as missing.
|
||||
|
||||
## Concerns
|
||||
- The extractor still uses heuristic subject generation for independently extracted items, so semantically related decisions restated in different messages will coexist unless a future task adds stronger semantic matching. That is intentional for this focused fix and avoids the reported overwrite bug.
|
||||
Reference in New Issue
Block a user