4746 Commits

Author SHA1 Message Date
Yichen Jiang
663253099d feat: align minimal runtime profiles 2026-08-11 15:19:33 +08:00
Yichen Jiang
63a294fa1b Merge remote-tracking branch 'origin/master' into worktree/custom-provider-edit-parity-f8c160 2026-08-11 15:16:23 +08:00
Tianyi Cui
5f947e1d94 Merge origin/master into worktree/remove-sdk-project-toolchain
# Conflicts:
#	THIRD_PARTY_NOTICES.md
2026-08-11 15:08:18 +08:00
Tianyi Cui
e58cc13de4 fix(session-export): distinguish unsupported raw artifacts
SessionPersistence.readRaw previously used undefined for two unrelated states: a supported backend could not find the requested session, or the backend had no per-session artifact concept at all. The export endpoint consequently reported an existing SQLite-backed session as HTTP 404, which falsely diagnosed storage capability as session absence.

Make raw-artifact support an explicit backend capability. Unsupported backends now fail their inherited readRaw path loudly and the host answers 501 before reading, while undefined retains the single meaning of an absent artifact on a supporting backend. First-party backends, test providers, generated API catalogs, bilingual persistence docs, and export error contracts now state that distinction; focused tests cover both the 501 and the inherited rejection.
2026-08-11 15:04:35 +08:00
Hypatia May
6e94bfd366 Merge branch 'feat/subagent-settlement-delivery' into feat/subagent-list-agents-vocabulary 2026-08-11 14:59:18 +08:00
Hypatia May
9f4159d0be Merge branch 'feat/subagent-report-semantics' into feat/subagent-settlement-delivery 2026-08-11 14:59:00 +08:00
Hypatia May
3f9c7077f9 Merge commit '5e1b3dd6536cbf4796164e7676e13c68300bb52d' into feat/subagent-report-semantics 2026-08-11 14:58:58 +08:00
Hypatia May
6a604aaa85 Merge branch 'feat/subagent-settlement-delivery' into feat/subagent-list-agents-vocabulary 2026-08-11 14:53:11 +08:00
Hypatia May
ef8637f864 Merge branch 'feat/subagent-report-semantics' into feat/subagent-settlement-delivery
# Conflicts:
#	docs/event-producer-consumer.i18n.yaml
#	docs/event-producer-consumer.md
2026-08-11 14:52:49 +08:00
Hypatia May
fafb10eecb Merge commit '38d82c497765ce0344800e3d5af9f1ee073f4bb5' into feat/subagent-report-semantics 2026-08-11 14:50:35 +08:00
Hypatia May
6c4ed5e036 test(snapshot): refresh pins after master merge 2026-08-11 14:45:14 +08:00
Tianyi Cui
a8db48429a Merge remote-tracking branch 'origin/master' into worktree/windows-acl-hardening-followup 2026-08-11 14:43:23 +08:00
Hypatia May
7b8635d47d test(snapshot): refresh pins after master merge 2026-08-11 14:41:11 +08:00
Hypatia May
8d77761427 Merge commit '6768cbccfd2c8157f215cf7231d9c012b1b2b2d2' into feat/subagent-report-semantics 2026-08-11 14:34:21 +08:00
Yichen Jiang
c345d70f82 Merge remote-tracking branch 'origin/master' into worktree/preset-plane-fallout-p1
Only `docs/module-graph.*` conflicted; generated, so taken from master and
regenerated. `api-proxy.ts` auto-merged — this branch's history read
(`historySourceFor` / `presenterScopeFor` / `historyCutOf`, in that order)
is intact.

Hook bypassed as before: the staged-pairing check hands an archived note path
to `verify-translation-pairing`. The full-corpus gate passes.
2026-08-11 14:32:59 +08:00
Tianyi Cui
a3ca7f09b2 Merge remote-tracking branch 'origin/master' into worktree/windows-acl-hardening-followup
# Conflicts:
#	packages/sandbox/sandbox-windows-acl/package.json
2026-08-11 14:32:26 +08:00
Tianyi Cui
daf90bda7e refactor(sdk): remove unreleased project toolchain 2026-08-11 14:20:53 +08:00
Yichen Jiang
b06969b56f Merge remote-tracking branch 'origin/master' into worktree/preset-plane-fallout-p1
Only `docs/module-graph.*` conflicted, from master's new
`@deepseek-ai/dsh-message-feedback` package; generated, so taken from master
and regenerated.

Hook bypassed as before: the staged-pairing check hands an archived note path
to `verify-translation-pairing`. The full-corpus gate passes.
2026-08-11 14:13:32 +08:00
ZiyaZhang
e800493494 fix(ci): refresh module graph pairing 2026-08-10 23:04:05 -07:00
Hypatia May
66cdba7c6c Merge branch 'feat/subagent-settlement-delivery' into feat/subagent-list-agents-vocabulary
# Conflicts:
#	examples/acp-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
#	examples/acp-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
#	examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/session.1.jsonl
#	examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/session.2.jsonl
#	examples/acp-agent/tests/snapshots/subagent-mixed/session.1.jsonl
#	examples/acp-agent/tests/snapshots/subagent-mixed/session.2.jsonl
#	examples/acp-agent/tests/snapshots/subagent-multi/session.1.jsonl
#	examples/acp-agent/tests/snapshots/subagent-multi/session.2.jsonl
#	examples/headless-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
#	examples/headless-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
#	examples/headless-agent/tests/snapshots/advanced-toolchain/session.jsonl
#	examples/headless-agent/tests/snapshots/compaction-recovery/session.jsonl
#	examples/headless-agent/tests/snapshots/pty-tools/session.jsonl
2026-08-11 13:58:56 +08:00
Hypatia May
9a8a2fc206 Merge branch 'feat/subagent-report-semantics' into feat/subagent-settlement-delivery
# Conflicts:
#	examples/acp-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
#	examples/acp-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
#	examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/session.1.jsonl
#	examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/session.2.jsonl
#	examples/acp-agent/tests/snapshots/subagent-mixed/session.1.jsonl
#	examples/acp-agent/tests/snapshots/subagent-mixed/session.2.jsonl
#	examples/acp-agent/tests/snapshots/subagent-multi/session.1.jsonl
#	examples/acp-agent/tests/snapshots/subagent-multi/session.2.jsonl
#	examples/headless-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
#	examples/headless-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
#	examples/headless-agent/tests/snapshots/advanced-toolchain/session.jsonl
#	examples/headless-agent/tests/snapshots/compaction-recovery/session.jsonl
#	examples/headless-agent/tests/snapshots/pty-tools/session.jsonl
2026-08-11 13:55:11 +08:00
Hypatia May
d4c125ceee Merge commit '580051aeb594e683b6fe088b04d9bffe4c4b5b62' into feat/subagent-report-semantics 2026-08-11 13:50:44 +08:00
_Kerman
c8a201bebd Merge remote-tracking branch 'origin/master' into feat/web-session-log-export 2026-08-11 13:46:46 +08:00
Huanqi Cao
f00a29111b Merge remote-tracking branch 'origin/master' into feat/loader-entry-disabled-interpolation 2026-08-11 13:40:24 +08:00
Ziya
9903d38cf9 Merge branch 'master' into feat/produced-files-folder 2026-08-11 13:31:29 +08:00
Ziya
b0e022c150 Merge pull request #2217 from deepseek-harness/agent/message-feedback-backend
feat(feedback): add durable message feedback backend
2026-08-11 13:29:20 +08:00
Ziya
c57221a6b6 Merge branch 'master' into feat/produced-files-folder 2026-08-11 13:25:22 +08:00
hypatiamay
c76570a3b8 Merge pull request #2138 from deepseek-harness/feat/parallel-subagent-calls
feat(subagent): sibling delegations are concurrency-safe
2026-08-11 13:24:43 +08:00
Ziya
548b89c3d0 Merge branch 'master' into feat/produced-files-folder 2026-08-11 13:24:43 +08:00
ZiyaZhang
682451d001 fix(ci): refresh merged doc pairings 2026-08-10 22:17:08 -07:00
Ziya
d78d4a6189 Merge branch 'master' into agent/message-feedback-backend 2026-08-11 13:10:06 +08:00
Turtle
d8e89e1644 Merge pull request #2198 from deepseek-harness/codex/fix-clone-instructions
docs: replace nonexistent repository references
2026-08-11 13:09:19 +08:00
Hypatia May
48dd924eda Merge branch 'feat/subagent-settlement-delivery' into feat/subagent-list-agents-vocabulary 2026-08-11 13:02:40 +08:00
Hypatia May
9340604ea5 Merge branch 'feat/subagent-report-semantics' into feat/subagent-settlement-delivery 2026-08-11 13:02:22 +08:00
Hypatia May
dbcbdfa9ce Merge commit '7baf2c33efb98eeea690c5ac58579c95dc52edd1' into feat/subagent-report-semantics 2026-08-11 13:01:29 +08:00
_Kerman
1b8175ddfd Merge remote-tracking branch 'origin/master' into feat/web-session-log-export 2026-08-11 12:59:05 +08:00
Yichen Jiang
cc1cf12cb6 Merge remote-tracking branch 'origin/master' into worktree/preset-plane-fallout-p1
Generated docs (`module-graph`, `event-producer-consumer`) taken from master
and regenerated. The `cordis-inspect-jsdoc` golden likewise: master's copy is
the base, and this branch's `presentAs` per-scope rewording is re-applied on
top, since `cordis_inspect` renders that JSDoc into model-visible output.

Hook bypassed as before: the staged-pairing check hands an archived note path
to `verify-translation-pairing`. The full-corpus gate passes.
2026-08-11 12:57:58 +08:00
_Kerman
96646ce481 chore: regenerate cordis catalog after merging latest master 2026-08-11 12:55:39 +08:00
_Kerman
4724a69476 Merge remote-tracking branch 'origin/master' into feat/web-session-log-export 2026-08-11 12:54:33 +08:00
ZiyaZhang
ee1a88c9f1 feat(web): make produced-file overflow discoverable 2026-08-10 21:53:38 -07:00
_Kerman
b701090c4f docs: refresh module graph after merging master 2026-08-11 12:49:47 +08:00
_Kerman
118b1a8787 Merge remote-tracking branch 'origin/master' into feat/web-session-log-export
# Conflicts:
#	docs/subsystems/persistence.i18n.yaml
#	docs/subsystems/persistence.md
#	docs/subsystems/persistence.zh.md
#	packages/client/ui-trajectory/README.i18n.yaml
#	packages/client/ui-trajectory/README.md
#	packages/client/ui-trajectory/README.zh.md
#	packages/client/ui-trajectory/package.json
#	packages/client/ui-trajectory/src/client/TrajectoryView.tsx
#	packages/client/ui-trajectory/src/client/index.ts
#	packages/client/ui-trajectory/tests/client-bundle.spec.ts
#	packages/client/ui-trajectory/tests/views.spec.tsx
#	packages/host/apiproxy/package.json
#	pnpm-lock.yaml
2026-08-11 12:42:53 +08:00
Yichen Jiang
2895113970 Merge remote-tracking branch 'origin/master' into worktree/web-background-tasks-display-258f7e 2026-08-11 12:42:30 +08:00
Hypatia May
a26d03960a feat(subagent): sibling delegations are concurrency-safe
One assistant message carrying several subagent calls now overlaps them
under the rolling pool (maxParallelToolCalls) instead of serializing each
foreground delegation behind an exclusive barrier; results still commit
in model order.

tool-subagent declares isConcurrencySafe: () => true for every call form:
children work in their own sessions, a run never mutates the parent
session, and sibling workspace coordination already belongs to the model
for background, continuable, and workflow children. The former
serial-execution pin flips to a parallel pin plus a gated genuine-overlap
test, and the authored subagent-parallel snapshot pins the assembled
transcript (tool/call, tool/call, tool/result, tool/result) with
interchangeable twin children, which replay race-free under the existing
first-call binding and createdAt harvest ordering.

The provider seam now requires concurrent starts and continuable
preparations for distinct children to isolate operation-local state,
cancellation, settlement, and cleanup; a continuable gate test proves a
cancelled preparation leaves no Agent or durable Session while its
sibling persists independently.

Closes deepseek-harness/deepseek-harness#1489
2026-08-11 12:41:24 +08:00
ZiyaZhang
c61be60737 fix(feedback): address backend review gaps 2026-08-10 21:40:03 -07:00
ZiyaZhang
c3d0fe1bf9 fix(feedback): harden backend consistency 2026-08-10 21:40:03 -07:00
ZiyaZhang
3cffc77719 feat(feedback): add durable message feedback backend 2026-08-10 21:40:03 -07:00
Hypatia May
567fcadba0 fix(subagent): report resumable children as ready
list_agents called a storage-only continuable child 'complete', inviting
parents to poll it for a result that will never appear there. Rename the
status to 'ready' — resumable, not terminal — and rewrite the tool
description to say a parent is told when a child finishes, so listing is
for recall, not polling.
2026-08-11 12:38:57 +08:00
Turtle
d00590c707 docs: replace nonexistent repository references 2026-08-11 12:35:38 +08:00
Hypatia May
85dd22fd4f feat(subagent): deliver continuable child settlement to parents
A continuable child that stopped without reporting — an error, a token
ceiling, cancellation, teardown — left its parent nothing to act on.
The continuation manager now delivers an unconditional settlement
notice to the durable direct parent before releasing ownership, folding
consumed work (foldConsumedWork supersedes findLastMessageTurnEnd) so a
claimed-but-unrun prompt reads as aborted rather than completed, waking
an idle parent, steering a busy one, and never waking a closing tree.
2026-08-11 12:31:49 +08:00