qwen-code/docs
Shaojin Wen 5d5a2d9c31
fix(cli): graft the review anchor forward across fail-closed rounds (#9932)
* fix(cli): graft the review anchor forward across fail-closed rounds

A review round that failed to close cleanly withheld its incremental
anchor on purpose, but recovery read only the winning marker — so one
non-clean round dropped the incremental state permanently, and every
later round re-read the whole diff, with no path back on its own.

Recovery now grafts the anchor forward from the most recent earlier own
marker that carries one: the withhold is about the fail-closed round's
own range, while an earlier round's "clean up to sha" stays true, and
scoping the next round sha..HEAD re-covers exactly the gap. The graft is
own-account-only, needs a known identity, a complete work list and a
strictly earlier source round, and the rendered ledger section says
"anchoring at" with the certifying round's provenance instead of
claiming the winning round "reviewed at" it. The persisted side file
carries the graft provenance, and the chain self-check treats a grafted
anchor as usable only when its certifier matches the running model, so
the two-consecutive-withholds disclosure still fires when a cross-model
graft cannot break the loop.

Fixes #9902

* fix(cli): make grafted-anchor wording true in every state it renders (#9902)

* fix(cli): never let a grafted anchor license an upToDate stop (#9902)

* fix(cli): refuse the graft over a partial own marker the merge never counts (#9902)

A foreign winner's own-side dropped count reaches the graft's
completeness guard only through the merge branch, which an own latest
marker parsing to zero findings never enters — so a partial own marker
(version-drifted entries rejected by the admission test, or a
hand-edited list) left its dropped invisible and the graft retired
findings that are in no work list. Read the own marker's dropped
directly in that shape and refuse.

Also give the mechanism-health disclosure's onset clause the same
usability qualifier its termination clause carries: a graft that landed
but the running round cannot use does not spare the full re-read, so
the onset must not promise otherwise.

---------

Co-authored-by: qwen-code-dev-bot <qwen-code-dev@service.alibaba.com>
2026-08-25 12:22:44 +00:00
..
assets feat: support workspace display names (#7179) 2026-07-20 15:16:44 +00:00
design refactor(web-shell): extract shared contexts (#9954) 2026-08-25 11:37:59 +00:00
developers fix(core): make permissions.allow restrict the tool schemas sent to the model (#9829) 2026-08-25 11:57:24 +00:00
e2e-tests fix(cli): Recover sessions across archive races (#9513) 2026-08-22 14:01:59 +00:00
images fix(web-shell): render built-in tag icons (#7024) 2026-07-17 15:33:34 +00:00
plans feat(computer-use): replace built-in tools with bundled skill (#9856) 2026-08-24 11:05:23 +00:00
superpowers feat(cli): reference prior sessions via @ and add completion tabs (#7302) 2026-07-24 06:11:48 +00:00
users fix(cli): graft the review anchor forward across fail-closed rounds (#9932) 2026-08-25 12:22:44 +00:00
verification/abort-controller-refactor fix(core): stop AbortSignal listener leak in long sessions (MaxListenersExceededWarning) (#4366) 2026-05-26 14:21:49 +08:00
_meta.ts feat: refactor docs 2025-12-05 10:51:57 +08:00
index.md fix: lint issues 2025-12-19 15:52:11 +08:00