feat(memory): add approval-gated turn distillation - #1266
Conversation
6e766e8 to
58f5880
Compare
Update: rebased onto the latest develop and resolved the P1-A/P1-B stack conflictThis PR was originally stacked on the pre-merge P1-A commit afdf1a4. P1-A was later squash-merged as ba36b1c with additional maintainer changes, so GitHub could not recognize the old P1-A patch as shared history and reported conflicts. The branch has now been rebuilt as a single P1-B commit (58f5880) on top of upstream/develop@7085c506. What changed during the conflict resolution:
Validation completed after the rebase:
|
Incremental reliability hardening (
|
Quality Gates follow-upThe latest Quality Gates failure was caused by an incomplete settings contract in this PR, not by the previously observed Windows TUI job.
Commit Local verification:
A new PR Checks run has started for the updated head SHA. |
dff4e3d to
c1a2779
Compare
|
Rebased this PR onto The rebase applied without textual conflicts. Combined upstream and P1-B changes brought Local verification: Kun focused tests 83/83; desktop/settings/IPC focused tests 150/150; typecheck, build, full lint (0 errors, 30 warnings), production audit, file-lines, diff check, and OpenSpec strict all passed. Release-workflow tests passed 8/8 with Git Bash in the child-process PATH. The PR description now reflects the current implementation and removes the obsolete P1-A draft dependency. Full tests and platform packaging are running on PR Checks 33949941868. Manual UI/video evidence remains pending and is not marked complete. |
Windows update-handoff smoke follow-upPushed The preceding run passed Quality gates, Linux, macOS, Windows TUI, Windows NSIS creation, and installer smoke. Its failure was specifically The smoke retained the original spawned This patch:
Local validation: release/handoff tests 28/28, runtime handoff/identity/process-safety tests 37/37, typecheck, production build, full lint (0 errors, 30 existing warnings), file-lines, syntax checks, and diff check passed. A separately explored broad Extension desktop smoke test still fails in the existing workflow-contract assertion ( The old CI logs do not prove whether PID 5868 was actually reused or genuinely remained alive. This fixes the demonstrable PID-only assertion flaw and makes a genuine residual child failure explicit. Production Runtime and Memory behavior are unchanged. The new PR Checks run 33953100945 is in progress and must validate the packaged Windows result; full-suite/platform success is not claimed yet. |
985a4ae to
0d386bc
Compare
XingYu-Zhong
left a comment
There was a problem hiding this comment.
Reproduced and fixed the two approval concurrency defects. Candidate state now goes through the shared Manager; canonical commits atomically revalidate timestamps, record fingerprints, lifecycle, and duplicates. File, Manager HTTP, and SQLite regressions pass, including same-millisecond edits, concurrent duplicate approvals, and lost-reply recovery. Full desktop tests and new-head CI Quality gates pass. Interactive renderer acceptance used isolated fixture data. Merge remains contingent on the remaining platform and PR gate checks.
66e2810 to
05be97f
Compare
Wait for the original Manager and Runtime child processes instead of probing reusable numeric PIDs. Verify in-app preflight exits before launching the candidate, retain bounded failure diagnostics, and run handoff regressions in the regular PR test path.
Route pending candidate state through the shared Manager instead of runtime-local caches. Revalidate target fingerprints, lifecycle, and exact duplicates inside the canonical Memory mutation queue; preserve manual edits and reconcile lost commit replies without duplicate writes. Cover the file, Manager HTTP, and SQLite paths.
05be97f to
3b2067a
Compare
Verify PR candidate provenance against the tested merge commit, workflow run, installer bytes, and update metadata. Keep draft-release tag checks as the default and reject PR-only evidence during public release verification.
3b2067a to
f224774
Compare
…tion Accept Windows PowerShell UTF-8 BOMs in pending-state readers and the native acceptance harness. Keep native GUI launches on the same OS credential policy as automatic installer relaunches, preserving existing DPAPI keys rather than forcing an incompatible file-key fallback.
40a5970 to
33bf9ec
Compare
Require capture-specific native GUI exit evidence and the original launcher exit code instead of waiting indefinitely for Playwright close transport completion. Reject missing or abnormal exits and PID reuse, and allow independent Manager cleanup to proceed after verified GUI shutdown.
Summary
When Memory distillation is explicitly enabled, completed user turns can produce durable Memory suggestions. Each candidate requires independent approval before writing. The feature defaults off and targets workspace scope.
Changes
developat7324725c3(including provider-save/updater lifecycle fixes and desktop startup readiness), retaining its packaging and release checks alongside the exact-child handoff regression suite.Maintainer concurrency fixes
Upgrade acceptance integration
Tests
developat7324725c3.7bb8dc580b74c46ae7cc685626b1f8fdffd55455: CI 34002494302 passed. Quality gates, all four platform packaging/handoff jobs, native Windows GUI upgrade acceptance (normal, busy, rollback, manual), and the final PR gate passed.Validation
OpenSpec archival remains pending until merge and acceptance are complete.