12410 Commits

Author SHA1 Message Date
Yichen Jiang
4b9bde551b test(cli): prove the global skill layer reaches preset-composed agents
The shipped-Web e2e enables the bundled badge skill as a stand-in for a
repository plugin's deployment-level provider and asserts the layering both
ways: a standard-preset agent's view merges the global layer with its
preset's local discovery and its loader tool resolves the global skill,
while the host view stays global-only and a core-web agent can read the
layer but composes no loader tool.
2026-08-09 22:18:34 +08:00
Yichen Jiang
0b2f32740d Revert "test(repository-plugin): drop the skill contribution from the preset-composed e2e"
This reverts commit f12c131ee9fdbc01b9294c8dc2c73cd36ab717cf.

The layered host skill registry closes the gap the bypass recorded: a
repository plugin's skill root registers into the global layer and reaches
every preset-composed session's catalog, so the fixture declares its skill
root again and the e2e proves the full skill, MCP, and TypeScript
contribution set. The accidental .claude/launch.json from that commit goes
with it.
2026-08-09 22:10:50 +08:00
Yichen Jiang
4788569889 feat(skill): layer the host skill registry per scope like the tools registry
The skills capability moves back to the host plane as one singleton, layered
with the ScopedLayers infrastructure the tools registry established: a
registration files into its calling context's layer (repository plugins and
host rows land global, a preset's skill-local lands in that preset's layer),
and a read merges the global layer with the viewing scope's chain, the
nearest layer winning duplicate names outright while rank keeps deciding
duplicates within one layer.

The web-app bundle re-enables the base skill registry row (skill-local and
tool-skill stay preset-owned), the standard preset drops its isolate skills
realm for bare rows over the host registry, tool-skill passes the calling
agent as the view scope, and the gateway's skills domain reads the host
registry in the presenter scope — a cold session now resolves its recorded
preset's standing key instead of failing.
2026-08-09 22:10:38 +08:00
Yichen Jiang
e47ca1b174 Merge pull request #2116 from deepseek-harness/worktree/fix-1844-docs-site-chinese-projection
fix(docs): project existing Chinese translations
2026-08-09 21:58:23 +08:00
Tianyi Cui
e079304894 Merge branch 'worktree/ci-native-windows-coverage-20260808' into worktree/ci-native-windows-multicore-20260809
# Conflicts:
#	.agents/notes/implemented/process/2026-08-08-native-windows-pull-request-ci.i18n.yaml
2026-08-09 21:56:52 +08:00
Tianyi Cui
525ea43f0b Merge branch 'worktree/ci-native-windows-20260808' into worktree/ci-native-windows-coverage-20260808
# Conflicts:
#	packages/subagent/subagent-codex/README.i18n.yaml
#	packages/subagent/subagent-codex/README.md
#	packages/subagent/subagent-codex/README.zh.md
2026-08-09 21:52:02 +08:00
Yichen Jiang
5096db61b2 fix(docs): project existing Chinese translations 2026-08-09 21:48:41 +08:00
Tianyi Cui
bf38526354 Merge remote-tracking branch 'origin/master' into worktree/ci-native-windows-20260808
# Conflicts:
#	.agents/notes/archived/process/2026-07-27-wine-windows-gates-experiment.i18n.yaml
2026-08-09 21:48:01 +08:00
Tianyi Cui
3fb06728be test(windows): cover portable credential stat errors 2026-08-09 21:45:06 +08:00
Tianyi Cui
4619f183ff fix(cli): drain native handles on normal exit 2026-08-09 21:44:57 +08:00
Yichen Jiang
7ea8bad7ee Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
# Conflicts:
#	docs/module-graph.i18n.yaml
#	docs/module-graph.md
#	docs/module-graph.zh.md
#	docs/subsystems/tools.i18n.yaml
#	docs/subsystems/tools.md
#	docs/subsystems/tools.zh.md
#	examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-08-09 21:38:26 +08:00
Yichen Jiang
19b6a41564 Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
# Conflicts:
#	docs/module-graph.i18n.yaml
#	docs/module-graph.md
#	docs/module-graph.zh.md
#	scripts/doc-budgets.manifest.json
2026-08-09 21:36:55 +08:00
Yichen Jiang
5aa10901ad Merge branch 'stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
# Conflicts:
#	examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-08-09 21:35:37 +08:00
Yichen Jiang
0eff417b2a Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam 2026-08-09 21:33:45 +08:00
Tianyi Cui
60ca11b034 Merge worktree/schedule-explicit-at into worktree/schedule-fixed-rate 2026-08-09 21:32:52 +08:00
Tianyi Cui
da636ad97f Merge worktree/schedule-conversational-after into worktree/schedule-explicit-at 2026-08-09 21:31:37 +08:00
Tianyi Cui
01776dd230 Merge origin/master into worktree/schedule-conversational-after 2026-08-09 21:30:00 +08:00
Tianyi Cui
c1ee0f6e3e Merge pull request #2098 from deepseek-harness/worktree-docs-cot-leakage-purge
docs: purge chain-of-thought leakage — dead design-session citations, diff narration, review choreography
2026-08-09 21:28:22 +08:00
Tianyi Cui
08443ce667 Merge worktree/schedule-explicit-at into worktree/schedule-fixed-rate
# Conflicts:
#	apps/web/tests/schedule-after.e2e.ts
2026-08-09 21:20:22 +08:00
Tianyi Cui
54b898463c fix(rebase): drop transcript-adapter files resurrected over master's deletion
Master's conversation-node engine deleted transcript-adapter.ts and its
spec; the rebase's modify/delete conflicts were staged as keep-ours,
resurrecting both with a stale dsh-compact import. Remove them; the
purge edits they carried died with the files upstream.
2026-08-09 21:20:18 +08:00
Tianyi Cui
ea37c95fd9 Merge worktree/schedule-conversational-after into worktree/schedule-explicit-at
# Conflicts:
#	apps/web/tests/schedule-after.e2e.ts
#	packages/client/runtime/src/client/sessions/session.ts
2026-08-09 21:18:04 +08:00
Tianyi Cui
3952fb4b72 fix(schedule): follow latest session and chat contracts 2026-08-09 21:12:57 +08:00
Tianyi Cui
eeacdd4790 docs: fix round-3 review findings — §/used-to/v1 residuals, zh stamp example, budget freeze honored
Delete the three §-citation residuals (web-app cordis.patch.yml, two
client design.md §-headers); recast the two CSS used-to narrations and
hmr's four v1 labels as current-state prose; narrow the zh exemption
example to 'this cut' (「本版本」 legitimately renders 'This version');
extend the candidate gate list with the post-battery shapes (§\d with a
committed-owner carve-out, 'used to', bare v1) on both sides and
re-record; honor the over-target ceiling freeze — docs/AGENTS.md
condensed to 1320 and the ceiling restored to 1320.
2026-08-09 21:11:59 +08:00
Tianyi Cui
8053dc38fa test(snapshot): refresh translation-prompt expected output
The assembled request embeds docs/i18n/translation-prompt.md's header and
the bilingual-pairing-gate note as its worked example; the purge edited
both, so the recorded request text follows.
2026-08-09 21:11:46 +08:00
Tianyi Cui
dd384f86ab docs: bring generated-catalog zh pairs along; raise docs/AGENTS.md ceiling to 1335
Master's bilingual-generated-docs policy pairs the five generated catalogs;
mirror the purge's regenerated English (ConPTY note, hooks TODO wording,
thinking-format and SurfaceOp JSDoc, doc-graphs templates) into their
reviewed zh sides and re-record. Condense the evidence-citation clause and
raise the docs/AGENTS.md ceiling 1320→1335: master's seam-trio definition
and this PR's review-mandated evidence rule land in the same window.
2026-08-09 21:11:45 +08:00
Tianyi Cui
4eecc58940 docs: harmonize rebase compositions — hardening phrasing, 停放约定 vocabulary, zh arm/this renderings 2026-08-09 21:11:00 +08:00
Tianyi Cui
e697bb3ca1 docs: fix re-review findings — seat-migration obligation, evidence rule moved into the standard, first-cut family settled
Restore the ReactNode seats' pending-migration obligation the earlier
rewrite had flipped into a permanent exception; state the merged-PR/issue
evidence allowance in docs/AGENTS.md itself so the citations note defers
to the standard instead of overriding it; rewrite the one current-state
'first cut' fact and record the historical-stage-name exemption (with
indexical stamps still banned); pairs re-recorded.
2026-08-09 21:10:59 +08:00
Tianyi Cui
ee7458b2df docs: fix review findings — residual ordinals, hypothetical IPC row, citation-rule amendments
Purge the residual task/phase ordinals review caught ((T2), (queue cut 1)
×3, T6, P-I, 'this cut' ×6 including battery-expansion finds in two
untouched notes and a workflow JSDoc); drop the 'externally logged as
Decision 21' parenthetical and rename the remaining bare decision-21
mentions; mark the gui-layering IPC bridge row as a hypothetical example;
restore the GATE_NOTICE doc-typecheck clause and the py-types 'measured'
provenance; say subprocess-backed in filesystem.md; add the picker note
path. Amend the citations note: merged-PR evidence anchors in Agent Notes
are sanctioned, and the candidate gate patterns gain the four shapes the
sweep missed. All nine touched pairs re-recorded.
2026-08-09 21:10:59 +08:00
Tianyi Cui
25dcd7293c docs: purge chain-of-thought leakage from prose
Delete design-session citations (decision/audit/plan ordinals, stack
positions), change narration, review choreography, and reviewer-addressed
justification from comments, JSDoc, docs, READMEs, Agent Notes, tests, and
generator templates; restate every affected fact as current-state contract
prose. Fix generated docs at their sources and regenerate the catalogs and
cordis-surface regions; re-paste type-equiv blocks; update every bilingual
counterpart and re-record the pairs. Record the citation rule in the
committed-artifact-citations Agent Note.
2026-08-09 21:10:59 +08:00
Tianyi Cui
e2a9976fce Merge origin/master into worktree/schedule-conversational-after
# Conflicts:
#	docs/event-producer-consumer.i18n.yaml
#	docs/event-producer-consumer.md
#	docs/event-producer-consumer.zh.md
2026-08-09 21:07:50 +08:00
Yichen Jiang
14bd07fd90 fix(headless): compose the one-shot agent from the preset roster again
The agent-default-model refactor moved the headless runner off the
api-proxy create path onto a direct agents.create, which silently dropped
the preset composition the stack had put on every dsh run session: the
header lost its agentPreset and the agent ran on the host composition
alone. Resolve the default preset up front (optional service — a roster-
less composition keeps the pre-preset behavior), record it on the header,
and mount it in setup where a broken composition still fails the run.
2026-08-09 21:05:49 +08:00
Tianyi Cui
091052490d Merge branch 'worktree/ci-native-windows-coverage-20260808' into worktree/ci-native-windows-multicore-20260809 2026-08-09 21:02:35 +08:00
Tianyi Cui
d5a46d536d Merge branch 'worktree/ci-native-windows-20260808' into worktree/ci-native-windows-coverage-20260808 2026-08-09 21:02:28 +08:00
Tianyi Cui
4a89702503 Merge remote-tracking branch 'origin/master' into worktree/ci-native-windows-20260808 2026-08-09 21:02:18 +08:00
imccyu
793f6f55df Merge pull request #2101 from deepseek-harness/feat/clientsessionbiz
refactor(client): decouple conversation node assembly
2026-08-09 21:00:32 +08:00
Tianyi Cui
1e6e92fb0a test(time-context): cover formatter invariant failure 2026-08-09 20:58:06 +08:00
Tianyi Cui
9e61b7d1b1 test(web): satisfy strict reminder matcher typing 2026-08-09 20:56:42 +08:00
imccyu
f4c817648d docs fix compact checkpoint type example 2026-08-09 20:53:06 +08:00
Tianyi Cui
bff86f492a Merge branch 'worktree/ci-native-windows-coverage-20260808' into worktree/ci-native-windows-multicore-20260809
# Conflicts:
#	.agents/notes/implemented/process/2026-08-08-native-windows-pull-request-ci.i18n.yaml
2026-08-09 20:50:38 +08:00
Tianyi Cui
e308268abc fix(windows): force isolated repository pnpm wrapper 2026-08-09 20:50:13 +08:00
Yichen Jiang
4cd15909ac Merge remote-tracking branch 'origin/stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring 2026-08-09 20:47:49 +08:00
Yichen Jiang
607f3ba245 Merge remote-tracking branch 'origin/stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui 2026-08-09 20:47:41 +08:00
Yichen Jiang
2f86a93bdd test(apiproxy): follow the defaultModelSelection rename in the preset spec
The agent-default-model refactor renamed ApiProxyDefaults.defaultTarget to
defaultModelSelection; this stack-owned spec merged without textual
conflict and kept the old field, so its harness built a defaults object
whose selection thunk was undefined and every create answered internal.
2026-08-09 20:47:22 +08:00
Tianyi Cui
76537fde15 test(schedule): pin partial recurring dispatch failure 2026-08-09 20:45:59 +08:00
Tianyi Cui
767a97cf59 Merge branch 'worktree/ci-native-windows-20260808' into worktree/ci-native-windows-coverage-20260808
# Conflicts:
#	.agents/notes/implemented/process/2026-08-08-native-windows-pull-request-ci.i18n.yaml
#	.agents/notes/implemented/process/2026-08-08-native-windows-pull-request-ci.md
#	.agents/notes/implemented/process/2026-08-08-native-windows-pull-request-ci.zh.md
2026-08-09 20:45:36 +08:00
Tianyi Cui
6f27e6c2ce test(windows): compare canonical HMR identities 2026-08-09 20:44:10 +08:00
imccyu
1566a00eeb test compact checkpoint snapshot identity 2026-08-09 20:42:39 +08:00
Yichen Jiang
8612f39759 Merge remote-tracking branch 'origin/stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
# Conflicts:
#	packages/client/connection/README.i18n.yaml
#	packages/client/connection/README.md
#	packages/client/connection/README.zh.md
2026-08-09 20:41:55 +08:00
Tianyi Cui
7667efe1c6 docs(time-context): sync generated catalog pair 2026-08-09 20:39:39 +08:00
Tianyi Cui
acb32f2999 fix(schedule): harden fixed-rate boundaries 2026-08-09 20:39:09 +08:00