Yichen Jiang
fac0bd08e8
Merge remote-tracking branch 'origin/master' into feat/mcp-manager-core
...
# Conflicts:
# docs/capability-seams.i18n.yaml
# docs/capability-seams.md
# docs/capability-seams.zh.md
# docs/config-catalog.i18n.yaml
# docs/config-catalog.md
# docs/config-catalog.zh.md
# docs/event-producer-consumer.i18n.yaml
# docs/event-producer-consumer.md
# docs/event-producer-consumer.zh.md
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# docs/subsystems/tools.i18n.yaml
# packages/extensions/tool-cordis/src/api-catalog.ts
# packages/mcp/README.i18n.yaml
# packages/mcp/README.md
# packages/mcp/README.zh.md
# packages/mcp/mcp-client/README.i18n.yaml
# packages/mcp/mcp-client/README.md
# packages/mcp/mcp-client/README.zh.md
# packages/mcp/mcp-client/src/connection.ts
# packages/mcp/mcp-client/src/index.ts
# packages/mcp/mcp-client/tests/reconnect.spec.ts
# scripts/gen-cordis-catalog.ts
# tsconfig.base.json
# tsconfig.host.json
2026-09-14 19:41:18 +08:00
Ruilin Geng
bb2b325486
Merge pull request #4137 from deepseek-harness/feat/docs-site-mermaid-viewer
...
feat(docs): 支持 Mermaid 图表全屏缩放和平移
2026-09-14 17:57:00 +08:00
Tianyi Cui
16f97e2dfb
refactor(browser-use): defer DSH inference integration
2026-09-14 15:43:14 +08:00
Tianyi Cui
e543cc9a6e
Merge awaited Agent creation from master
2026-09-14 14:46:15 +08:00
Tianyi Cui
ee031f9cf9
Merge master into browser-use backends
2026-09-14 14:30:58 +08:00
_Kerman
0a382becb3
Merge latest origin/master into xtr/agent-setup-hook
2026-09-14 13:57:18 +08:00
gengruilin
b0ec8cef32
feat(docs): add fullscreen Mermaid diagram viewer
2026-09-14 12:25:23 +08:00
Yichen Jiang
0a7f47e3f2
Merge remote-tracking branch 'origin/master' into worktree/web-sidebar-terminal
2026-09-14 12:03:02 +08:00
Yichen Jiang
33d89aee77
feat(web): choose and remember terminal shells
2026-09-14 10:59:46 +08:00
Yichen Jiang
1b7b50bbe1
Merge remote-tracking branch 'origin/master' into worktree/web-sidebar-terminal
...
# Conflicts:
# apps/web/package.json
# docs/config-catalog.i18n.yaml
# docs/config-catalog.md
# docs/event-producer-consumer.i18n.yaml
# docs/event-producer-consumer.md
# docs/event-producer-consumer.zh.md
# packages/api/remotes/src/client/index.ts
# packages/e2b/subprocess-e2b/README.md
# packages/e2b/subprocess-e2b/README.zh.md
# packages/e2b/subprocess-e2b/src/index.ts
# packages/e2b/subprocess-e2b/src/terminal.ts
# packages/e2b/subprocess-e2b/tests/subprocess.spec.ts
# packages/e2b/subprocess-e2b/tests/terminal.spec.ts
# packages/mcp/mcp-resources/README.i18n.yaml
# pnpm-lock.yaml
# scripts/verify-package-readme-model-experience.ts
# snapshots/session/cordis-inspect-jsdoc/session.v3.jsonl
# tsconfig.base.json
# tsconfig.client.json
# tsconfig.host.json
2026-09-14 10:36:31 +08:00
creatixchu
2b1dabec86
Refresh merged SDK recordings and persistence documentation
2026-09-14 10:25:54 +08:00
creatixchu
a7070008e7
Merge master and integrate image offload with both DeepSeek protocols
2026-09-14 10:19:11 +08:00
Tianyi Cui
e1612c2fdc
feat(browser-use): add per-Session experimental browser backends
2026-09-13 22:39:16 +08:00
Tianyi Cui
aef56a3108
test(ci): align external-agent and workflow endpoint fixtures
2026-09-13 20:36:50 +08:00
Tianyi Cui
ece35a1a38
test(ci): exercise Messages defaults in runtime smokes
2026-09-13 20:36:50 +08:00
Tianyi Cui
5f773a0ded
feat(workspace): restore archived sessions from a settings page
...
Sessions could be archived from the sidebar row menu but never restored:
the registry-global archive set was a one-way display filter with no
inverse RPC and no surface listing its members.
WorkspaceRegistry.unarchiveSession drops one id from archivedSessionIds in
one durable write on the same operation chain as archive, with no
session-existence probe because a removal cannot introduce an unknown
referent. The Workspace controller exposes it as workspace.unarchiveSession
returning the complete archive set, which the existing archived follow
increment already propagates, so no frame type and no persisted field
changes.
The new client package dsh-client-ui-settings-unarchive-sessions owns the
restore surface: one localized settings.section page listing the archive
set joined with loaded session summaries, newest archive first, searchable
by title or workspace, with one Unarchive action per row.
2026-09-13 16:45:45 +08:00
Tianyi Cui
8ba386ec69
Merge branch 'master' into worktree/coverage-attribution
2026-09-13 16:37:55 +08:00
Tianyi Cui
2214891606
Merge pull request #4119 from deepseek-harness/worktree/workflow-sandbox-ptc
...
fix(workflow): execute orchestration through sandboxed PTC
2026-09-13 16:33:51 +08:00
Tianyi Cui
10930a0205
fix(coverage): fail loud when the canonicalizer gets no coverage data
...
Vitest types `Reporter.onCoverage` as `unknown`, so a payload that carries no
istanbul `data` record now fails the partition instead of silently leaving
every location uncanonicalized; a spec case pins that rejection. The module
docs keep the contract and link the Agent Note for the mechanism, the
partition spec names what it asserts (the reporter argument, not Vitest hook
ordering), and the notes correct the `Infinity` origin to ast-v8-to-istanbul,
record the reporter-ordering dependency, and name the reporter each partition
child carries.
2026-09-13 15:17:06 +08:00
Tianyi Cui
c171a7a9a2
fix(coverage): canonicalize partition locations before the blob merge
...
A source file carries one istanbul statement map per Vite environment, so a
node suite and a jsdom suite that load the same module enter the merged
report through two maps that spell one statement differently. istanbul
reconciles those overlapping ranges by attributing the hits of the narrowest
containing range, but only while a location carries numeric line and column
values. ast-v8-to-istanbul ends a whole-line statement at column Infinity, and
the partition blob serializes Infinity as null, so the merge command kept the
client-only spelling as an extra, unhit statement: a file whose every statement
ran reported 96.96% and failed the per-file 100% gate.
The coordinator now passes each partition a reporter whose onCoverage hook
rewrites every non-finite end column to a finite line-end column before the
blob is written, which restores that reconciliation without weakening the
gate. The uncovered-locations reporter reads the same column as a line end.
2026-09-13 15:13:59 +08:00
Tianyi Cui
9b6457bc12
Merge pull request #4106 from deepseek-harness/worktree/mcp/optional-surface
...
feat(mcp): expose profile resources only when servers are configured
2026-09-13 14:59:10 +08:00
Tianyi Cui
34f80b8e6e
fix(workflow): close lifecycle and CI integration gaps
2026-09-13 14:47:56 +08:00
Tianyi Cui
35af8698c2
fix(workflow): execute orchestration in the sandboxed PTC runtime
2026-09-13 14:47:56 +08:00
Tianyi Cui
38070996c1
docs(session): nest historical formats under persistence changes
2026-09-13 12:19:46 +08:00
Tianyi Cui
765c87fb87
fix(docs): address persistence format history review
2026-09-13 12:08:08 +08:00
Tianyi Cui
b08f6c421b
docs(session): backfill and gate persistence format references
2026-09-13 12:08:07 +08:00
Tianyi Cui
e08468954a
feat(mcp): activate profile resource tools for configured servers
2026-09-13 11:52:42 +08:00
Tianyi Cui
834bd55a59
fix(mcp): expose scoped resource server names to the model
2026-09-12 22:40:51 +08:00
Tianyi Cui
3ba5b6eb04
feat(mcp): add scoped resources and server instructions
2026-09-12 22:40:50 +08:00
Tianyi Cui
489c3ac715
feat(mcp): negotiate modern protocols with the official SDK
...
Preserve the verified SDK layer tree from c8b248b480 before rebasing its complete net change.
2026-09-12 22:31:42 +08:00
Tianyi Cui
55fc8b91e4
fix(ci): preserve recorded npm resolution during vendor rescoping
2026-09-12 22:25:10 +08:00
Tianyi Cui
60a413034a
Merge branch 'worktree/default-product-no-experimental' into worktree/publish-all-experimental
2026-09-12 22:04:27 +08:00
Tianyi Cui
a280cf34f5
test: canonicalize browser notices fixture paths
2026-09-12 22:04:16 +08:00
Tianyi Cui
7a4dca21c7
Merge branch 'worktree/default-product-no-experimental' into worktree/publish-all-experimental
2026-09-12 21:32:08 +08:00
Tianyi Cui
0e060aa675
fix(ci): canonicalize browser notice roots with native realpath
2026-09-12 21:30:51 +08:00
Tianyi Cui
00b2470eb6
test: canonicalize Windows Vite fixture roots
2026-09-12 21:26:53 +08:00
Tianyi Cui
5b491e8cc6
fix(ci): skip product graph capture during dependency analysis
2026-09-12 21:20:43 +08:00
Tianyi Cui
22c5ae6abc
fix: cover supported experimental isolation inputs
2026-09-12 20:56:26 +08:00
Tianyi Cui
42c5b65643
feat(release): publish all experimental packages
2026-09-12 20:56:26 +08:00
Tianyi Cui
8f14f98a1a
ci(web): verify composed profiles, live registries, and bundle inputs
2026-09-12 20:56:26 +08:00
Tianyi Cui
f34dd86285
ci(release): keep experimental packages out of the default product
2026-09-12 20:56:26 +08:00
Tianyi Cui
251210d517
test(release): cover baseline package discovery
2026-09-12 20:56:26 +08:00
Tianyi Cui
6e30e1a300
feat(release): use a private denylist for experimental packages
2026-09-12 20:56:26 +08:00
Tianyi Cui
3b27563290
fix: include package-index links and align residual metadata
2026-09-12 20:20:02 +08:00
Tianyi Cui
6c3c3064c3
refactor: align instruction and job helper symbols
2026-09-12 20:20:02 +08:00
Tianyi Cui
020b84c301
Merge pull request #4060 from deepseek-harness/worktree/persistence-prerelease-backfill
...
docs(session): backfill persistence history for all alpha and RC tags
2026-09-12 19:16:42 +08:00
Tianyi Cui
4adfe00207
fix(session): validate generated release facts
2026-09-12 18:52:17 +08:00
Tianyi Cui
2d5391eede
docs(session): use tags throughout historical release records
2026-09-12 18:52:17 +08:00
Tianyi Cui
aea077ac75
docs(session): backfill alpha and RC persistence history
2026-09-12 18:52:17 +08:00
Tianyi Cui
35dbd84ac4
test: isolate Git config without a Windows device path
2026-09-12 18:52:02 +08:00