deepseek-harness/docs
kingwl 14f7976e3d fix(mode): an approved exit leaves plan mode at the step boundary, not mid-batch
Review finding: the exit tool's direct mode/set append flipped the
folded mode while the loop could still execute further tool calls from
the SAME assistant response — a same-batch exit_plan_mode + write pair
would sail past tools/pre-execute under 'default' even though the
request was assembled under the plan-shaped header. That broke the
design's own invariant (a step's executions run under the mode its
assembly folded), which the pending-intent flush was built to hold for
user flips.

The tool now records the switch as a pending intent like every other
writer, flushed at this step's end (still in-turn); pending intents
carry a narrate flag so the exit's flush stays silent — the tool result
is its narration — while user flips keep the coalesced boundary notice.
The gate, folding the logged mode only, now provably covers the whole
batch: regression test pins approve-then-write-in-the-same-batch as
denied, and the widened toolset still arrives on the next step.

The recorded scenarios are re-recorded: the fixture now shows mode/set
landing after step/end, before the widened fallback header.
2026-07-10 10:35:43 +08:00
..
cookbook docs(rfc): plan mode to implemented — amendments folded on the way 2026-07-10 03:10:19 +08:00
cordis-catalog feat(mode): exit_plan_mode + the ACP session-mode picker + scriptable review answers 2026-07-10 02:57:40 +08:00
core-data-structures Merge remote-tracking branch 'origin/master' into code-mode-tools 2026-07-09 22:58:58 +08:00
i18n docs: equal-authority pairing with sidecar consistency records 2026-07-03 07:41:24 -07:00
postmortem fix(docs): address Codex review round 3 — last three moved-policy citations 2026-07-04 16:02:39 +08:00
rfc fix(mode): an approved exit leaves plan mode at the step boundary, not mid-batch 2026-07-10 10:35:43 +08:00
agent-lifecycle.md docs: address graph review placement 2026-07-05 02:54:01 +08:00
AGENTS.md docs: tighten development onboarding wording 2026-07-07 19:03:14 +08:00
architecture.md docs(rfc): plan mode to implemented — amendments folded on the way 2026-07-10 03:10:19 +08:00
capability-seams.md feat(mode): exit_plan_mode + the ACP session-mode picker + scriptable review answers 2026-07-10 02:57:40 +08:00
config-catalog.md feat(mode): exit_plan_mode + the ACP session-mode picker + scriptable review answers 2026-07-10 02:57:40 +08:00
cordis-primer.md docs: split cordis primer from architecture map 2026-07-05 19:07:34 +08:00
defensive-patterns.md docs(AGENTS): rewrite the root standing orders to the 1,500-word budget 2026-07-04 14:22:47 +08:00
development.i18n.yaml Merge remote-tracking branch 'origin/master' into worktree-node-22-18-compat 2026-07-07 21:33:40 +08:00
development.md Merge remote-tracking branch 'origin/master' into worktree-node-22-18-compat 2026-07-07 21:33:40 +08:00
development.zh.md Merge remote-tracking branch 'origin/master' into worktree-node-22-18-compat 2026-07-07 21:33:40 +08:00
event-producer-consumer.md feat(mode): the session-mode core — logged per-agent policy state (@deepseek-ai/dsh-mode) 2026-07-10 01:38:39 +08:00
graph-atlas.md feat(mode): exit_plan_mode + the ACP session-mode picker + scriptable review answers 2026-07-10 02:57:40 +08:00
module-graph.md feat(mode): exit_plan_mode + the ACP session-mode picker + scriptable review answers 2026-07-10 02:57:40 +08:00
persistence-catalog.md feat(mode): exit_plan_mode + the ACP session-mode picker + scriptable review answers 2026-07-10 02:57:40 +08:00
testing.md Merge remote-tracking branch 'origin/master' into code-runtime-worker 2026-07-08 14:44:23 +08:00
tool-catalog.md fix(mode): an approved exit leaves plan mode at the step boundary, not mid-batch 2026-07-10 10:35:43 +08:00
tool-execution-pipeline.md Merge remote-tracking branch 'origin/master' into code-mode-tools 2026-07-09 13:30:26 +08:00