docs(project): complete PI-110 task record

This commit is contained in:
2026-08-23 22:44:01 +08:00
parent 934ba02718
commit 54d8bb2e4a

View File

@@ -8,7 +8,7 @@
- Worktree: D:\Datas\OthersProjects\makelore-pi-renderer-store-b7e2c4a1
- Base commit: a0722574f3b36cb73ec8833787711e6bef1c5c54
- Owner: codex-root
- Status: In Progress
- Status: Done
## Scope
@@ -127,6 +127,9 @@
summary identity under hidden streaming.
- PI-120/130/140 boundaries remain unchanged. No Chat page or legacy OpenCode
store consumer was changed by PI-110.
- Implementation commits: `36626c8` (Renderer store/shared seam), `1abb2ff`
(gap recovery + snapshot optimistic overlay), and `934ba02` (durable Snapshot
UI identity reconciliation).
## Verification
@@ -146,7 +149,8 @@
Renderer -> composite Electron declaration dependency.
- `pnpm run lint:check`: passed with zero errors and the same six unrelated
Renderer warnings in `ExecutionGraphCard.tsx`, Home, and Makelore.
- `pnpm test`: 211 files / 2275 passed / 2 skipped (2277 total).
- Final `pnpm test` at `934ba02`: 211 files / 2277 passed / 2 skipped (2279
total).
- `pnpm run build:vite`: Renderer, Electron Main, Preload, and release utility
production builds passed; existing dynamic-import and large-chunk warnings
remain.
@@ -162,13 +166,19 @@
replay and missing-durable-node overlay, then found one remaining P1 where a
Snapshot already containing the durable node adopted the server id. That
reproduction is now fixed by `clientRequestId` id reconciliation before
request cleanup, with the focused regression above. Final fixed-range
re-review remains required before PI-110 can be marked Done.
request cleanup, with the focused regression above.
- Planner final review of `a072257...934ba02`: Standards PASS / 0 findings and
Spec PASS / 0 findings. Independent reproduction ended with `node-1`, the
durable `sourceEntryId`, zero pending requests, and exactly one prompt call;
no Conversation leakage, retry loop, or mutation replay was found.
## Follow-ups
- PI-120 should bind the Composer/timeline to this store without restoring any
read from `src/stores/opencode.ts`.
- Planner dependency computation identifies `{PI-120}` as the next exact Ready
Frontier after this task reaches `ready_for_integration`; PI-130/140 remain
locked by their declared dependencies.
## Promotion Candidates
@@ -176,7 +186,8 @@
the strict Snapshot/Patch reducer in `shared/`, with Main and Renderer
importing/re-exporting that single implementation rather than depending on
Electron composite build artifacts or copying normalization logic. Evidence:
clean `pnpm run typecheck`, shared/Main function identity regression, 8-file
75-test impacted suite, and full 211-file unit/build verification. Future
clean `pnpm run typecheck`, shared/Main function identity regression, final
8-file / 77-test impacted suite, and 211-file / 2277-passed full unit/build
verification. Future
impact: PI-120/130 can consume product DTOs without vendor/Main imports; any
contract amendment must retain Main/Renderer reducer equivalence.