Commit Graph

10426 Commits

Author SHA1 Message Date
Yichen Jiang
68f1488770 Merge branch 'stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
# Conflicts:
#	packages/preset/agent-presets/src/index.ts
2026-08-10 11:18:41 +08:00
Yichen Jiang
1eb9acaba9 refactor(scope): bind the parent link once and gate re-linking behind the binding
setScopeParent could re-link any key from anywhere, leaving the
blank-session-only recompose rule entirely to caller discipline. The
relation now binds once — a second bind throws — and re-linking exists
only on the ScopeParentBinding returned to the original binder, the
private-capability shape the package conventions prescribe for a
single-caller operation. The preset roster keeps each composed agent's
binding in a WeakMap keyed by the agent, making it the sole authority
that can move an agent between standing compositions; the blank-session
contract itself stays with the gateway, which alone can see what a
session logged.
2026-08-10 11:17:04 +08:00
Yichen Jiang
e4b18b0179 docs(notes): drop the internal repository link from the layered-skill-registry note
verify-public-repository-links rejects deepseek-harness URLs in committed
prose; the bypass reference stands on its own.
2026-08-09 23:18:37 +08:00
Yichen Jiang
4926b296c4 Merge branch 'stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
# Conflicts:
#	docs/persistence-catalog.i18n.yaml
#	docs/persistence-catalog.md
#	docs/persistence-catalog.zh.md
2026-08-09 22:56:44 +08:00
Yichen Jiang
51ca900d4e Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam 2026-08-09 22:54:57 +08:00
Yichen Jiang
d7605c62e9 test(cli): give the layered-skills e2e sessions run-unique ids
The suite composes over the ambient DSH home, so a fixed session id
collides with the log a previous run persisted once the tool-execution
path checks persisted identity.
2026-08-09 22:49:01 +08:00
Tianyi Cui
ddbc07a067 Merge pull request #2117 from deepseek-harness/worktree-skill-trim-cot-leakage
docs(skills): dsh-trim-cot-leakage — distill the CoT-leakage purge into a reusable audit skill
2026-08-09 22:35:40 +08:00
Yichen Jiang
4b628a8703 docs(skill): document the layered registry and record the Agent Note
The skills subsystem page and dsh-skill README describe the host+per-scope
layers, SkillViewOptions joins the type-equiv corpus and the cordis-catalog
type pages, generated catalogs pick up the shifted source refs, and the
architecture Agent Note records the decision, the nearest-layer-wins
precedence choice, and the rejected alternatives.
2026-08-09 22:29:53 +08:00
Tianyi Cui
05a4a41f4f docs(skills): distill the CoT-leakage purge into dsh-trim-cot-leakage
SKILL.md carries the resolvability test, the 8-class taxonomy, the
sanctioned-keeps list, and the owner-first fix workflow; references/
carry 24 few-shot calibration blocks (both citation-boundary directions
plus the four overcorrection traps caught in the purge's review rounds)
and the EN+zh recall batteries with their false-positive families.

dsh-doc-standards' inline leakage probes collapse into a link to the
new skill; dsh-prose-standard gains the sibling pointer; the
committed-artifact-citations note (+zh, pair re-recorded) records the
skill as the operational workflow and exempts its calibration examples
from the battery expectation.
2026-08-09 22:27:32 +08:00
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
Yichen Jiang
5096db61b2 fix(docs): project existing Chinese translations 2026-08-09 21:48:41 +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
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
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
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
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
imccyu
f4c817648d docs fix compact checkpoint type example 2026-08-09 20:53:06 +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
imccyu
1566a00eeb test compact checkpoint snapshot identity 2026-08-09 20:42:39 +08:00
imccyu
d99ad2b1d0 fix conversation node review follow-ups 2026-08-09 20:36:57 +08:00
Yichen Jiang
f80d2a742e Merge remote-tracking branch 'origin/stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
# Conflicts:
#	docs/module-graph.md
#	packages/host/apiproxy/src/api-proxy.ts
#	packages/host/apiproxy/tsconfig.json
2026-08-09 20:33:55 +08:00
Yichen Jiang
a2d5e3d8a8 Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam
# Conflicts:
#	packages/README.i18n.yaml
#	packages/README.zh.md
#	packages/boot/app-boot/README.i18n.yaml
#	packages/boot/app-boot/README.zh.md
#	scripts/gen-cordis-catalog.ts
#	scripts/verify-package-readme-model-experience.ts
2026-08-09 20:28:03 +08:00
imccyu
81822f4076 fix(ui-conversation): skip uncorrelated legacy events 2026-08-09 20:23:58 +08:00
imccyu
0cfe852c2d fix(ui-conversation): ignore legacy compact events without ids 2026-08-09 20:21:49 +08:00
imccyu
fcbc97a88d fix(client): address conversation assembly review 2026-08-09 20:08:37 +08:00
imccyu
126ad5bb02 docs: development 2026-08-09 19:48:58 +08:00
imccyu
e11f630fcd fix(client): address remaining conversation review feedback 2026-08-09 19:36:03 +08:00
imccyu
27682b9384 fix: docs 2026-08-09 19:00:22 +08:00
imccyu
924cfcef95 fix: coverage 2026-08-09 18:56:29 +08:00
imccyu
1b1e170c1f refactor(agent): restore conventional types entrypoint 2026-08-09 18:43:37 +08:00
imccyu
10464d155d fix(client): consume typed business session events 2026-08-09 18:42:25 +08:00
imccyu
3d70889a8d refactor(session): unify event map augmentation entrypoint 2026-08-09 18:17:19 +08:00
imccyu
990f700d3c fix(client): address conversation assembly review feedback 2026-08-09 18:17:19 +08:00
imccyu
8723a0e15f fix(client): address conversation assembly review findings 2026-08-09 18:16:44 +08:00
imccyu
522acc7432 test: update conversation assembly coverage and docs 2026-08-09 18:16:44 +08:00
imccyu
6d09b3168d refactor(ui-conversation): register business node definitions 2026-08-09 18:13:52 +08:00
imccyu
81d6886006 feat(client): add conversation node engine and contextual slots 2026-08-09 18:13:51 +08:00
imccyu
aa623b6e7a refactor(events): add stable conversation correlation ids 2026-08-09 18:13:00 +08:00
imccyu
dc825be8d8 docs: design client conversation node assembly 2026-08-09 18:12:59 +08:00
Tianyi Cui
3499c59ba8 Merge pull request #2102 from deepseek-harness/worktree/fix-fs-absent-observation
fix(fs): recover after an observed file is deleted
2026-08-09 18:03:25 +08:00