Yichen Jiang
3fa368854c
docs: refresh config catalog after master merge
2026-07-22 10:47:54 +08:00
Yichen Jiang
742072e15d
Merge remote-tracking branch 'origin/master' into worktree/session-reference
2026-07-22 10:40:47 +08:00
Tianyi Cui
6646ef04ac
Merge pull request #335 from deepseek-harness/worktree-windows-runtime
...
feat(windows): extend runtime and test portability
2026-07-22 10:30:32 +08:00
Tianyi Cui
c92c24667d
Merge pull request #431 from deepseek-harness/fix/tui-color-scheme-v2
...
fix(tui): detect terminal color scheme; harden the flaky sandbox probe-timeout test
2026-07-22 10:29:35 +08:00
Yichen Jiang
28b358650b
Merge remote-tracking branch 'origin/master' into worktree/semantic-session-checkpoints
...
# Conflicts:
# docs/architecture.md
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/cancel-tool-calls/session.jsonl
# packages/core/agent-loop/README.md
# packages/core/agent-loop/src/loop.ts
# packages/core/agent-loop/tests/cancel.spec.ts
2026-07-22 10:29:09 +08:00
Yichen Jiang
951967217a
Merge remote-tracking branch 'origin/master' into worktree/session-reference
...
# Conflicts:
# docs/capability-seams.md
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/ui/acp/README.md
# packages/ui/acp/package.json
# packages/ui/acp/tsconfig.json
# packages/ui/tui/package.json
# packages/ui/tui/src/index.ts
# packages/ui/tui/tests/tui.spec.ts
# packages/ui/tui/tsconfig.json
# pnpm-lock.yaml
# python/sdk-runtime/package.json
# scripts/gen-doc-graphs.ts
# scripts/type-equiv.manifest.json
2026-07-22 10:21:17 +08:00
kingwl
ac21ae0794
fix(mode): dedupe the boundary flush wrapper and cover its disposed branch
...
CI caught two gaps in the review-fix commit: the two post-next() flush
listeners were literal clones (jscpd), and the disposed-skip branch inside
them had no covering test. Extract one shared flushAfter wrapper and pin the
skip with a captured-continuation disposal test (a downstream listener
disposes the fiber mid-waterfall; the resumed wrapper appends nothing).
2026-07-22 10:12:09 +08:00
kingwl
7a2dff8b11
fix(mode): address PR #239 review — boundary flush ordering, disposal fence, config validation, TUI plan config
...
Four ds-review-bot findings:
- examples/tui-agent composed dsh-mode without the now-required
modes.plan.section, so the TUI leaf failed at Loader startup (the keyless
smoke only asserts the banner and missed it); graft the same deployment
plan instructions the ACP leaf carries.
- The prompt-submit and turn-continuation flushes ran before next(), so a
session/set_mode arriving while a downstream async listener (the shipped
hooks listeners' shape) awaited applied one request late; both listeners
now prepend and flush after next(), matching the request-error wrapper,
with a regression test pinning the ordering.
- An HMR unload during the exit_plan_mode review let a later approval write
into the disposed service and claim an exit whose flush could never land;
the execute path now checks the fiber lifetime after the await and fails
the call (the mode stays plan; the model re-presents).
- resolveConfig accepted empty/untrimmed mode names that list()/ACP then
advertised while the package invariant rejected their selection,
desynchronizing the picker; names are validated non-empty and trimmed at
load, the same shape the invariant enforces.
2026-07-22 09:58:57 +08:00
kingwl
5d04213445
Merge remote-tracking branch 'origin/master' into feat/plan-mode
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/module-graph.md
# examples/acp-agent/tests/goal-snapshots/goal-session/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/advanced-toolchain/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/bash-spill/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-edit/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-policy-reject/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read-window/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-terminal-card/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write-overwrite/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-deny/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-pretool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/lsp-definition/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/model-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/multi-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/parallel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/repeat-tool-guard/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/skill-load/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/text-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/todo-plan/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/tool-call-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-edit/stdout.expected.jsonl
2026-07-22 02:28:47 +08:00
kingwl
f7c289ab1d
Merge remote-tracking branch 'origin/master' into feat/plan-mode
...
Master arrivals re-grafted onto the plan-mode surfaces:
- Package invariant runtime contracts: every package owns ./invariant —
added the dsh-mode companion (mode/set payload validation: non-empty
trimmed name), its unit spec, exports/peer wiring, and the mode group in
the tsconfig invariant paths glob.
- Interception waterfalls gained an AbortSignal parameter
(agent/prompt-submit, agent/turn-continuation) and ToolExecutionInput.signal
became required: listeners and test dispatch updated; the exit tool now
forwards exec.signal unconditionally.
- TUI question dialog: master's position/unanswered header layout kept,
the plan-review detail block re-grafted between question and answers.
- LSP capability family arrived: lsp tool joins the catalog pin, dsh-lsp
examples deps beside dsh-mode; lsp-definition snapshot refreshed with
the mode command and modes advertisement.
- docs/architecture.md and packages/README.md regenerated tables re-grafted
(ctx.modes row, mode package row) and condensed within word ceilings.
- examples/acp-agent cordis.yml: kept the deployment-owned plan instructions
(incl. the conversational-agreement sentence) beside master's routed-model
compaction comment; snapshot expected outputs refreshed keyless and noise
fixtures restored.
2026-07-22 02:13:39 +08:00
Tianyi Cui
ab1c24301a
ci: rebalance hosted concurrency budget
2026-07-22 00:44:48 +08:00
Tianyi Cui
5bb594c400
ci: avoid hosted runner setup saturation
2026-07-22 00:39:58 +08:00
Tianyi Cui
109224af5d
ci: quarter cold-cache lint lanes
2026-07-22 00:31:25 +08:00
Tianyi Cui
070d23d663
ci: keep cold-cache lanes bounded
2026-07-22 00:22:06 +08:00
Tianyi Cui
624d71aea6
ci: harden runner preparation caches
2026-07-22 00:11:48 +08:00
Tianyi Cui
710f062586
ci: add snapshot lane headroom
2026-07-21 23:56:53 +08:00
Tianyi Cui
f8008b571d
fix(tui): preserve footer truncation after merge
2026-07-21 23:47:14 +08:00
Tianyi Cui
53a9459609
ci: make coverage filters path-exact
2026-07-21 23:45:35 +08:00
Tianyi Cui
53615c91e7
Merge master into worktree-windows-runtime
2026-07-21 23:39:14 +08:00
Tianyi Cui
e887c0f7c0
ci: assign session title coverage
2026-07-21 23:36:35 +08:00
Tianyi Cui
1050711e6d
Merge origin/master into worktree/ci-under-minute
...
# Conflicts:
# packages/support/acp-snapshot/README.md
2026-07-21 23:34:29 +08:00
Tianyi Cui
f90b64ac26
Merge pull request #479 from deepseek-harness/worktree/scoped-layers-implementation
2026-07-21 23:34:15 +08:00
Tianyi Cui
562a7f9da2
Merge pull request #451 from deepseek-harness/codex/session-title
...
feat: add log-backed asynchronous session titles
2026-07-21 23:30:31 +08:00
Tianyi Cui
efba4c259b
ci: split model and integration coverage
2026-07-21 23:25:52 +08:00
Tianyi Cui
d710259263
Merge master into fix/tui-color-scheme-v2
2026-07-21 23:21:44 +08:00
Tianyi Cui
9568f9ee27
ci: split Windows build and site validation
2026-07-21 23:18:49 +08:00
Tianyi Cui
2c36792b6c
docs(architecture): synchronize Chinese pair
2026-07-21 23:10:47 +08:00
Tianyi Cui
06f3b246b5
ci: add serial cross-platform reference runs
2026-07-21 23:03:52 +08:00
kingwl
3926155399
fix(mode): conversational agreement does not approve the plan
...
Real-session evidence (Zed, 2026-07-21): in plan mode the model asked for
deletion confirmation through ask_user_question, took the user's follow-up
"对的" as approval, and attempted the rm directly — the independent
read-only sandbox contained it, and the one-shot escalation was rejected.
The plan instructions covered imperative execution requests but not a
confirming answer to the model's own question, so add the missing sentence:
conversational agreement approves nothing and does not end plan mode; the
confirmed decision belongs in the exit_plan_mode plan. Codex's plan template
carries the equivalent rule ("Plan Mode is not changed by user intent").
The plan-mode system-prompt pin refreshes with the section text.
2026-07-21 23:02:25 +08:00
Tianyi Cui
3176d232b8
Merge master into codex/session-title
2026-07-21 22:59:41 +08:00
Tianyi Cui
821e9b6bef
Merge origin/master into worktree/ci-under-minute
2026-07-21 22:51:07 +08:00
Tianyi Cui
0cd8424d46
Merge pull request #462 from deepseek-harness/feat/xdg-single-root-home
...
refactor(paths): collapse harness home resolution into one resolver
2026-07-21 22:42:17 +08:00
Tianyi Cui
04d7b435d2
docs(scope): record shared scoped-layer decision
2026-07-21 22:24:45 +08:00
Tianyi Cui
e56bcb4d5c
refactor(commands): use shared scoped layers
2026-07-21 22:16:06 +08:00
Tianyi Cui
1d209932d6
refactor(scope): migrate tool and prompt layers
2026-07-21 22:14:49 +08:00
Tianyi Cui
57cd9ce2bf
Merge master into feat/xdg-single-root-home
2026-07-21 22:14:45 +08:00
Tianyi Cui
3fa5795bf4
test(lsp): synchronize idle server eviction
2026-07-21 22:09:50 +08:00
Tianyi Cui
8351cdbe65
feat(scope): add scoped-layer storage
2026-07-21 22:09:19 +08:00
Tianyi Cui
e4c56b35e8
ci: add tail-lane headroom
2026-07-21 22:00:34 +08:00
Yichen Jiang
b964e81c11
Merge remote-tracking branch 'origin/master' into worktree/session-reference
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-loop/src/loop.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# packages/core/agent/src/types.ts
# packages/ui/tui/tests/harness.ts
# scripts/type-equiv.manifest.json
2026-07-21 21:57:21 +08:00
Tianyi Cui
d80dc21387
docs(agent-note): refresh shared scoped-layer proposal
2026-07-21 21:54:37 +08:00
Tianyi Cui
311cbe1e4c
ci: rebalance final boundary lanes
2026-07-21 21:49:35 +08:00
Tianyi Cui
ba1e34f8fb
test(lsp): synchronize closed-stdin fixture
2026-07-21 21:47:38 +08:00
Tianyi Cui
e4c5d4d6d8
Merge remote-tracking branch 'origin/master' into scoped-layers-store
...
# Conflicts:
# .agents/notes/proposed/architecture/2026-07-12-scoped-layers-store.i18n.yaml
# .agents/notes/proposed/architecture/2026-07-12-scoped-layers-store.md
# .agents/notes/proposed/architecture/2026-07-12-scoped-layers-store.zh.md
# docs/rfc/INDEX.md
2026-07-21 21:42:32 +08:00
Tianyi Cui
89add445fe
ci: split boundary lanes
2026-07-21 21:39:51 +08:00
Tianyi Cui
30789a45ee
Merge origin/master into worktree/ci-under-minute
2026-07-21 21:29:04 +08:00
Tianyi Cui
ca0c9a7c48
ci: restore hosted lane headroom
2026-07-21 21:28:49 +08:00
Tianyi Cui
26b3717419
Merge pull request #399 from deepseek-harness/codex/enforce-tool-cancellation
...
fix(tools): enforce cooperative cancellation
2026-07-21 21:25:53 +08:00
Tianyi Cui
aaee0c0c22
Merge branch 'master' into codex/session-scoped-sandbox-roots
2026-07-21 21:22:54 +08:00
Tianyi Cui
af1e40e7c6
Merge master into feat/xdg-single-root-home
2026-07-21 21:20:43 +08:00