Repository navigation
feat(webview): durable per-view viewStates pipeline (N2, split 2/3 of #1546) - #2227
easonLiangWorldedtech wants to merge 1 commit into
Conversation
Split unit N2 of Zoo-Code-Org#1546: viewStates read/write queue, claim rekey, prune, clear, load/save and export/import sanitization on top of N1 identity. Buffer/mutation/history content remains for N3.
Review statusThanks for contributing. This comment tracks the review sequence and the next action. Current step: Resolve the merge conflicts. The review sequence resumes after the branch is mergeable. Review-state labels are managed by this workflow; do not edit them manually. |
|
Important Review skippedAuto reviews are limited based on label configuration. 🏷️ Required labels (at least one): 1
Please check the settings in the CodeRabbit UI or the
|
Split unit N2 of #1546 (F1a — durable per-view viewStates pipeline)
Second unit of the split plan recorded in the tracking issue (fork issue 41). Depends on N1 (identity/claim); the buffer/mutation/write-path content is not included.
Scope (contract point)
persistedViewStateWriteQueue, fresh-read merge on save, 50-entry prune, corrupt-value guard.viewStates(ContextProxyomit,importExportskip).ProviderSettingsNotFoundErrorhandling used by the identity/adoption path.Explicitly NOT in this unit
viewLocalStatebuffer, mutation hooks,setValue/setValuespersistence + rollback, non-awaitingpostMessageToWebview, reset/history-restore writes (N3).Budget (own delta vs the parent unit)
git diff vps2/n1-view-identity..<head>: 326 insertions, 428 deletions (~754 a+d) → under the 1,000 hard cap.05d01f33dis intentionally larger; measure this unit against its parent, notmain.Evidence
ClineProvider.spec.ts+ContextProxy.spec.ts+importExport.spec.ts+ProviderSettingsManager.spec.ts: 362 passed.tsc --noEmit: clean (0 errors).Stack / merge order
F0 (#1528) → N1 → N2 (this PR) → N3 → F1b (#1550) → F1c (#1552) → F3 (#1560) → F4/F5/F6/F7. Base is
main; merge strictly in order.Refs: #1546, tracking issue 41 (fork).