Commit Graph

7472 Commits

Author SHA1 Message Date
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
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
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
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
creatixchu
10d9fd21f2 Merge remote-tracking branch 'origin/master' into feat/read-image-context 2026-08-11 12:08:33 +08:00
Turtle
a9852a2b5b Merge pull request #2152 from deepseek-harness/codex/remove-source-installer
cleanup: simplify source execution around pnpm dsh
2026-08-11 12:07:29 +08:00
Yichen Jiang
58cdf3d7f7 fix(client): adopt the renamed client plugin manifest key
Master moved the browser-half declaration from a top-level `dshClient` to
`dsh.client`, and the new package still carried the old key. The Loader row
resolved, the host half applied, and the bundle built — the browser simply
never mounted the entry, so the session header rendered no task control at all
while `ctx.tasks` held a running task. Nothing reported it; the web e2e is
what caught it.

Also carried the merged tree onto master's current package rules: the release
manifest shape (version, repository, workspace-protocol peers, no `private`)
and `@deepseek-ai/cordis` in place of the old `cordis` specifier, plus the
connection handle the locale plugin's settings scope now reads in tests.
2026-08-11 12:03:30 +08:00
Yichen Jiang
34b28f757d Merge remote-tracking branch 'origin/master' into worktree/web-background-tasks-display-258f7e 2026-08-11 11:57:40 +08:00
Yichen Jiang
1a1c81f309 Merge remote-tracking branch 'origin/master' into worktree/web-background-tasks-display-258f7e
# Conflicts:
#	docs/subsystems/tasks.i18n.yaml
#	docs/subsystems/tasks.md
#	docs/subsystems/tasks.zh.md
#	packages/host/apiproxy/README.i18n.yaml
#	packages/host/apiproxy/README.md
#	packages/host/apiproxy/README.zh.md
#	packages/host/apiproxy/src/api-proxy.ts
#	packages/tasks/tasks-local/src/index.ts
#	packages/tasks/tasks/README.i18n.yaml
#	packages/tasks/tasks/README.md
#	packages/tasks/tasks/README.zh.md
#	packages/tasks/tasks/src/index.ts
2026-08-11 11:57:33 +08:00
creatixchu
2a755f2863 Merge remote-tracking branch 'origin/master' into feat/read-image-context 2026-08-11 11:54:22 +08:00
Hypatia May
76cf6cbd0b feat(subagent): make final reports the continuable return contract
A continuable child could finish without giving its parent a usable
result: the report tool was described as optional and its default
delivery stayed quiet. Install the child-scoped report obligation (tool
description plus the tool:report prompt section), default reportDelivery
to wakeup, bind shipped subagent_fork delegations to one-shot so fork
keeps its prefix reuse, and extend the ACP snapshot harness to pin child
system prompts alongside child tool schemas.
2026-08-11 11:50:39 +08:00
Tianyi Cui
b52154da52 Merge current master into feat/mcp-auto-reconnect
Master advanced from 1ac6ee70bb24a566cca74d99bdfe5b1bbc092940 to cb7b5af91e9f23bb300a1b7d4fb64b64abbdea01 while the prior retarget's fresh CI was finishing. Preserve both already validated merge checkpoints and incorporate the new live tip with another forward merge instead of rewriting history.

The newer base adds session-log format guards and benchmark documentation. It merges automatically, including the generated config-catalog overlap, so no MCP feature resolution is required; this checkpoint makes GitHub evaluate PR #2187 against the master tip current at the final push.
2026-08-11 11:44:20 +08:00
Tianyi Cui
4952db971a Merge advancing master into feat/mcp-auto-reconnect
Master advanced from c757901957abdfd87f1cd7b11ecab16f3050e65d to 1ac6ee70bb24a566cca74d99bdfe5b1bbc092940 while retarget verification was running. Preserve the already validated c757901957 checkpoint and merge the new tip forward instead of rewriting that checkpoint.

The newer master changes subagent output selection and removes the empty experimental package group. It merges cleanly with PR #2187, so no feature-resolution changes are required; this commit makes final mergeability and CI evaluate the branch against the live master tip.
2026-08-11 11:26:58 +08:00
creatixchu
d8abd97b1c Merge remote-tracking branch 'origin/master' into feat/read-image-context 2026-08-11 11:25:15 +08:00
Tianyi Cui
6d87182099 Merge latest master into feat/mcp-auto-reconnect
Retarget PR #2187 from master 8a763b34645fc9371c0c21595ac65438d603d9bf to c757901957abdfd87f1cd7b11ecab16f3050e65d so the reconnect changes are evaluated against the current release and package metadata.

Resolve the mcp-client package.json conflict by preserving master's publishable-package metadata and workspace peer ranges while retaining the PR's direct @deepseek-ai/dsh-timeout peer and development dependency. The reconnect implementation therefore keeps its explicit runtime contract without discarding current-master release configuration.
2026-08-11 11:24:07 +08:00
creatixchu
11bfb21e91 test(session-persistence-jsonl): cover the version guard's non-object and non-string-id paths 2026-08-11 11:23:48 +08:00
creatixchu
0a95a9eed8 fix(session): refuse foreign format versions before parsing current structure
Review round: the JSONL backend now refuses a foreign header version straight
from the raw header line, before validating today's header shape or decoding
any event row, so a structurally different future format reports the upgrade
direction instead of corruption (shared message builder
sessionFormatVersionRefusal). HMR live-prefix adoption runs the unknown-type
guard like the other read paths. The appendCore comment now states why the
unknown-type guard is read-side only, the loadStoredFrom JSDoc and README pin
the seek-vs-sequential refusal-scope divergence, and the generated catalog
preamble lists the ignorable envelope field.
2026-08-11 11:23:48 +08:00
creatixchu
9186824e87 feat(session): refuse session logs a build cannot faithfully read
Old runtimes meeting a newer session format now fail loud instead of
misreading: version refusal names the direction (newer: upgrade the
harness; older: no upgrade path) and points at the raw JSONL log, and an
event type outside the generated known vocabulary refuses resume unless
its envelope carries the new ignorable: true marker (default: required,
so a forgotten marker over-refuses instead of silently resuming a gutted
session). gen-persistence-catalog now also emits
KNOWN_SESSION_EVENT_TYPES; SQLite stores the marker in a dedicated
column (SCHEMA_VERSION 15). The versioning design (monotonic integer,
n->n+1 upgrader chain, migrate-on-continue) is recorded in the
session-log-version-mechanism Agent Note.
2026-08-11 11:23:48 +08:00
Turtle
53c58e3914 Merge pull request #2228 from deepseek-harness/codex/remove-experimental
chore(packages): remove empty experimental group
2026-08-11 11:22:37 +08:00
Turtle
c3cb4b350e fix(docs): align source examples with headless profile 2026-08-11 11:22:08 +08:00
Turtle
ee9465e4b3 build before source dsh launch 2026-08-11 11:22:08 +08:00
Turtle
34abf69730 cleanup: remove managed source installer 2026-08-11 11:22:08 +08:00
creatixchu
a82253bb36 Merge remote-tracking branch 'origin/master' into feat/read-image-context 2026-08-11 11:20:47 +08:00
hypatiamay
fea054a1bd Merge pull request #2127 from deepseek-harness/fix/subagent-empty-terminal-message-output
fix(subagent): keep output past an empty terminal message with one selection rule
2026-08-11 11:19:44 +08:00
Turtle
f5ac90412c Merge branch 'master' into codex/remove-experimental 2026-08-11 11:17:09 +08:00
Chinesezjc
0d3a8b758b Merge pull request #1994 from deepseek-harness/feat/session-feedback-web-ack
feat(feedback): disclose session sharing in the /feedback acknowledgement
2026-08-11 11:10:08 +08:00
Chinesezjc
d9f8270cc3 docs: sync sharing-disclosure catalogs and module graph after rebase
Regenerates the ack golden for the merged acknowledgement format, records
the zh counterparts and pairing hashes for the telemetry and catalog
pages, and restores the command-feedback to session-telemetry edge and
dependency in the module graph.
2026-08-11 11:01:48 +08:00
Chinesezjc
ac7c44a5df fix(feedback): drop rebase residue from the sharing acknowledgement
The post-rebase cleanup removes leftover conflict-marker lines and the
superseded acknowledgement text from the command source, re-adds the
session-telemetry project reference, and restores the lockfile importer
link for the sharing dependency.
2026-08-11 11:01:48 +08:00
Chinesezjc
6a6148a08c test(feedback): fix the assembled e2e record path and teardown restore
The feedback-command e2e now drives the recorded prompt through a separate
all-modes test that arms whenTurnSettled before sending and writes the
fixture back via recordFixture in record mode; the acknowledgement golden
test runs only in replay/refresh. The scaffold restores the pinned DSH_HOME
on the persistence-root setup failure path, and the telemetry subsystems
page links the README's sharing-disclosure anchor.
2026-08-11 11:01:48 +08:00
Chinesezjc
3f9d0436eb feat(feedback): disclose session sharing in the /feedback acknowledgement
The /feedback acknowledgement now echoes the receiving session id and
reports the mounted telemetry backend's sharing policy: the telemetry seam
exposes a backend-independent TelemetrySharingStatus through a required
abstract sharing member on the Telemetry service, the OTel backend maps its
mode onto it, and the command appends one policy-only sharing sentence
(full / feedback-only / disabled / not configured) to the acknowledgement.
The web client renders the text through the existing command row without a
client change; a new assembled-browser e2e mounts the shipped telemetry row
in FULL mode against a local dead endpoint and pins the shipped default
sentence as a keyless golden.
2026-08-11 11:01:43 +08:00
Turtle
94abd8631a fix(feedback): include session id in acknowledgement 2026-08-11 11:01:43 +08:00
imccyu
45befb87e2 Merge branch 'master' into fix/agent-preset-ui-flow 2026-08-11 10:54:13 +08:00
Turtle
fd5365e374 chore(packages): remove empty experimental group 2026-08-11 10:44:09 +08:00
creatixchu
c1f0a6a683 Merge remote-tracking branch 'origin/master' into feat/read-image-context
# Conflicts:
#	apps/cli/tests/web-agent-presets.e2e.ts
#	packages/fs/tool-fs/package.json
2026-08-11 10:12:14 +08:00
imccyu
1af8c96682 perf(ui-trajectory): avoid locale formatting in hot path 2026-08-11 03:29:04 +08:00
imccyu
d66e693c63 fix(ui-trajectory): place steering before request boundary 2026-08-11 03:29:04 +08:00
imccyu
98a4cc6569 style(ui-trajectory): align presentation render tree 2026-08-11 03:29:04 +08:00
imccyu
2695f31edb test(ui-trajectory): assert deferred preview sources 2026-08-11 03:29:04 +08:00
imccyu
e27dba8457 perf(ui-trajectory): defer trajectory text processing 2026-08-11 03:29:04 +08:00
imccyu
58ea69f64f build(ui-trajectory): use rescoped cordis package 2026-08-11 03:29:04 +08:00
imccyu
cc25bceec8 fix(ui-trajectory): simplify terminal contribution branch 2026-08-11 03:29:04 +08:00
imccyu
62f5d05039 fix(ui-trajectory): tighten conversation assembly contracts 2026-08-11 03:29:04 +08:00
imccyu
b3d3e423f2 fix(ui-trajectory): retain parallel tool interruptions 2026-08-11 03:29:04 +08:00
imccyu
fc4df896a0 perf(ui-trajectory): index trajectory snapshot assembly 2026-08-11 03:29:04 +08:00
imccyu
3469de58eb fix(ui-trajectory): consume prompt changes once 2026-08-11 03:29:04 +08:00
imccyu
a342b329e3 docs(client): document trajectory conversation assembly 2026-08-11 03:29:04 +08:00
imccyu
c828d38f51 refactor(client-runtime): remove legacy history fold 2026-08-11 03:29:04 +08:00
imccyu
f479c60b6d feat(ui-trajectory): assemble registered conversation nodes 2026-08-11 03:29:04 +08:00