fix: preserve Pi projection continuity

This commit is contained in:
2026-08-23 08:40:58 +08:00
parent 3599064bc4
commit 4bbe3f8b1e
7 changed files with 248 additions and 9 deletions

View File

@@ -8,7 +8,7 @@
- Worktree: D:\Datas\OthersProjects\makelore-pi-event-projector-91c6a7e4
- Base commit: e79aeffffab16c4c5570971e24d1a20997be681d
- Owner: codex
- Status: Completed
- Status: Completed — pending planner re-review
## Scope
@@ -72,6 +72,16 @@
## Outcome
- Planner review of candidate `3599064` returned **Needs Fix** with two local,
deterministic P1 gaps: same-generation hydration regressed `cursor.seq` to
zero, and retry failure/summary-retry Pi 0.84.2 events were not completely
projected. PI-060 was reopened; PI-070 remains locked until re-review.
- The follow-up closes both findings: same-generation hydration preserves the
current cursor while a genuinely new generation starts at zero; listener
envelopes remain strictly monotonic across checkpoint/settle. Exact Pi
0.84.2 failed auto-retry and all three summarization-retry events now project
bounded retry traces and redacted failure state, with `agent_settled`
preserving `terminalReason: failed`.
- Added a Main-private `PiEventProjector` for exact Pi 0.84.2 live RPC
shapes. It projects stable message/content-index streams, cumulative tool
output, authoritative `toolResult`, retry/turn/compaction boundaries, queue,
@@ -100,7 +110,7 @@
- `corepack pnpm run lint:check` — passed with 0 errors; the repository's 6
pre-existing React warnings remain outside this task.
- `corepack pnpm run typecheck` — passed.
- `corepack pnpm test` — passed, 195 files / 2181 tests.
- `corepack pnpm test` — passed after the review fixes, 195 files / 2184 tests.
- `corepack pnpm run build:vite` — passed for Renderer, Electron Main,
Preload, and release utility outputs; existing chunk-size/dynamic-import
warnings remain.
@@ -111,12 +121,14 @@
`realTurnVerified=false`; real Provider validation is Explicitly Waived /
Accepted Risk. macOS execution remains deferred to PI-150 and is not Pass.
- Focused projector/runtime suite — passed, including all 15 `pi-*.test.ts`
files / 78 tests after an isolated Windows temporary-file `rename EPERM`
files / 81 tests after an isolated Windows temporary-file `rename EPERM`
was rerun successfully; the later full suite passed without recurrence.
- `git diff --check` — passed.
## Follow-ups
- Re-submit the cumulative PI-060 commits for planner review. Do not start
PI-070 until the planner marks the two review findings closed and PI-060 Done.
- PI-070 owns registered extension tool-detail schemas and interaction response
behavior; PI-060 deliberately keeps unknown/custom payloads hidden or in
bounded metadata-only diagnostics.