9587 Commits
Author SHA1 Message Date
winewill 0d03fb3ca3 Merge master into desktop channel version policy 2026-11-04 15:30:38 +08:00
Dudu-0223 db109a62fb Merge master into feat/subagent-catalog-names 2026-11-04 14:16:00 +08:00
Dudu-0223 bb3ac8e304 Merge master into feat/subagent-catalog-names 2026-11-04 13:51:31 +08:00
winewill 0fdd91f3e6 docs(desktop): align channel selection guidance 2026-11-04 13:40:11 +08:00
Dudu-0223 4618fddfb5 fix(subagent): preserve compatible catalog checkpoints 2026-11-04 13:13:38 +08:00
Yichen Jiang 36ed2133ff Merge remote-tracking branch 'origin/master' into worktree/continue-generation-after-failure
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-11-04 12:50:23 +08:00
Ziya d70967e36b Merge pull request #6586 from deepseek-harness/experiment/home-code-ripple
feat(web): play a pixel and code whale on blank home clicks
2026-11-04 04:07:26 +00:00
Dudu-0223 a6f6b98053 Merge master into feat/subagent-catalog-names 2026-11-04 12:04:15 +08:00
Dudu-0223 bfc89ed4a9 fix(team): reuse compatible owner-name checkpoints 2026-11-04 11:56:50 +08:00
Yichen Jiang 46983a077f Merge remote-tracking branch 'origin/master' into worktree/continue-generation-after-failure 2026-11-04 11:27:00 +08:00
Turtle cfa6f7359e fix(experimental): reject the experimental prefix in new package names
Freeze the existing prefixed directories in
LEGACY_PREFIXED_EXPERIMENTAL_PACKAGE_DIRECTORIES and reject the prefix
elsewhere. Record the naming decision in a new Agent Note and keep the
plugin identity note's facts current.

Refs #7841
2026-11-04 04:59:30 +08:00
Turtle 22f0226e49 docs(experimental): forbid the experimental prefix in new package names
New experimental packages use @deepseek-ai/dsh-<name> so that promotion
keeps their npm names. The workspace gate message now points at
EXPERIMENTAL_PACKAGE_NAME_EXCEPTIONS instead of the prefix.

Refs #7841
2026-11-04 04:38:55 +08:00
Turtle 917aab8204 Merge pull request #7830 from deepseek-harness/turtle/render-context-injection-f1a5826b9910
feat(ui-chat): show context injections as tool-call rows
2026-11-03 23:13:35 +08:00
TurtleandKaige-Gao 44ad857798 feat(ui-chat): show context injections as tool-call rows
Ordinary Context injections were hidden from Chat. Show them as the
existing collapsed disclosure rows inside the Turn process group, and
title a group made only of Context "Injected context" instead of
"Analysis completed".

Co-authored-by: Kaige-Gao <102539609+Kaige-Gao@users.noreply.github.com>
2026-11-03 21:26:17 +08:00
_Kerman 23b678df13 Merge pull request #7579 from deepseek-harness/xtr/ptc-timeout-step-1
feat(ptc): 协作停止保留状态并提供宿主重置
2026-11-03 21:00:19 +08:00
ihsiang 15e53db1bc Merge pull request #7474 from deepseek-harness/Ihsiang/ui-design-standards
docs: 统一 UI 设计 skill 与审查流程
2026-11-03 20:54:33 +08:00
_Kerman 9314e2de16 Merge remote-tracking branch 'origin/master' into xtr/ptc-timeout-step-1 2026-11-03 20:45:34 +08:00
_Kerman b0dd2f044e Merge pull request #7770 from deepseek-harness/fix/ptc-run-code-call-limit
fix(ptc): 按超时预算限制 run_code 工具调用总数
2026-11-03 20:40:14 +08:00
yixiangihsiang a8eaa9e29e docs: route icon interactions through UI design entry 2026-11-03 20:39:04 +08:00
yixiangihsiang 6299923878 docs: clarify responsive UI skill routing 2026-11-03 20:39:04 +08:00
yixiangihsiang 47e4bbe3db docs: expose UI design references through one skill 2026-11-03 20:39:03 +08:00
yixiangihsiang f9a806c0f1 docs: integrate UI review cases and address review feedback 2026-11-03 20:39:03 +08:00
yixiangihsiang 4d7a673e32 docs: clarify minimum UI inspection requirements 2026-11-03 20:38:25 +08:00
yixiangihsiang 491251f618 docs: scale UI review effort to change impact 2026-11-03 20:38:25 +08:00
yixiangihsiang 013a486fc5 docs: preserve actionable UI conditions and examples 2026-11-03 20:38:25 +08:00
yixiangihsiang 7647b11542 docs: retain practical alignment and spacing examples 2026-11-03 20:38:25 +08:00
yixiangihsiang 02e7591591 docs: condense UI skills while preserving design rules 2026-11-03 20:38:25 +08:00
yixiangihsiang 34740e6db0 docs: consolidate UI skill rules and geometry guidance 2026-11-03 20:38:25 +08:00
yixiangihsiang cb6834f011 docs: define UI design decisions and review workflow 2026-11-03 20:38:25 +08:00
_Kerman ab2bee0051 Merge remote-tracking branch 'origin/master' into xtr/ptc-timeout-step-1 2026-11-03 20:12:59 +08:00
Dudu-0223 fd8dfa270d test(subagent): refresh naming snapshots against current base 2026-11-03 16:02:27 +08:00
Dudu-0223 7b2d7841dd Merge master into subagent naming fixes 2026-11-03 15:52:55 +08:00
Yichen Jiang 00fbab4c14 Merge remote-tracking branch 'origin/master' into worktree/continue-generation-after-failure
# Conflicts:
#	docs/persistence-schema.json
2026-11-03 15:28:52 +08:00
Dudu-0223 19e5a95802 Merge pull request #7773 from deepseek-harness/feat/sdk-team-mode
feat(team): support enabling Team mode through SDK Cordis patches
2026-11-03 14:32:04 +08:00
Yichen Jiang 2fb4ea0bec Merge origin/master into worktree/continue-generation-after-failure 2026-11-03 14:08:46 +08:00
Dudu-0223 8c523d9be1 refactor(team): remove startup step-history guard 2026-11-03 14:06:44 +08:00
Dudu-0223 9f57925000 Merge remote-tracking branch 'origin/master' into feat/subagent-catalog-names
# Conflicts:
#	docs/persistence-schema.json
#	docs/tool-catalog.i18n.yaml
2026-11-03 13:49:18 +08:00
Dudu-0223 dd9719f67a fix(team): initialize configured mode before child activation ownership 2026-11-03 13:39:02 +08:00
gengruilin d9d3b80fe3 Merge remote-tracking branch 'origin/master' into feat/mcp-manager-core 2026-11-03 13:37:58 +08:00
gengruilin df078ddc82 Merge remote-tracking branch 'origin/master' into feat/mcp-manager-core 2026-11-03 13:31:23 +08:00
yudshj 3859913c68 feat(web): 网页搜索与获取设置页分开选择 Search 与 Fetch,Search 默认改为 DeepSeek Search API 2026-11-03 13:04:26 +08:00
_Kerman 03e654e8a5 Merge remote-tracking branch 'github/master' into fix/ptc-run-code-call-limit
# Conflicts:
#	docs/tool-catalog.i18n.yaml
2026-11-03 12:46:41 +08:00
_Kerman 4f790c874d fix(ptc): address call allowance review feedback 2026-11-03 12:45:28 +08:00
imccyu aa4774e685 Merge master into worktree-sync-dsh-0.2.2-to-master 2026-11-03 12:05:47 +08:00
涂轶翔 012a7a2e4a Merge pull request #6958 from deepseek-harness/fix/6953-deepseek-deferred-tools
fix(llm): rebuild tool baselines after removals
2026-11-03 11:59:07 +08:00
imccyu ef5f28d0fb Merge master into worktree-sync-dsh-0.2.2-to-master 2026-11-03 11:47:40 +08:00
Turtle 582c334472 Merge pull request #7022 from deepseek-harness/turtle/websearch-query-limit-96c308027005
feat(web): raise web_search defaults to 10 queries and 10 sources
2026-11-03 11:41:39 +08:00
imccyu eb1713f856 fix(session-projection): keep released units in checkpoints (#7754)
* fix(session-projection): keep released units in checkpoints

Since the Cordis rc.11 teardown order unloads the Web layer before the
base layer, Session Controller and harness-dev-context release their
projection units before their live Sessions detach. The projection
cache is still alive at that point and wrote a checkpoint holding only
the units that were still registered, replacing the complete record.
A blank Session then lost sessionListMetadata and listed as an untitled
conversation after every graceful restart.

A released unit now stays in the registry as a predecessor: it leaves
event drives, snapshots, restores, and change notifications, while
checkpoint() keeps each Session's last cell of it without advancing it.
Registering the same key again replaces the predecessor and refolds
the log. The projection cache keeps replacing whole records.

* test(session-projection): assert frozen released units across unload tests

Update the remaining unload tests that still expected a released unit
to vanish from checkpoint(): user-approval, agent-loop inbox and scope
lifecycle, time-context, and the agent registry now assert that the
same Session keeps its pre-unload row, that a later event does not
advance it, and that a Session created after the unload has no row.
The token-meter and goal unload tests also append an event after the
unload.

Document that a retained handle read still advances a released cell
that checkpoint() serves, and that restore() folds only live units, so
its refreshed rows omit released units.

* docs(session-projection): sync the ProjectionHandle type-equiv block

* docs(session-projection): record frozen released units and their upgrade

Add the upgrade guide for checkpoint() keeping a released unit's last
row, update the registration-handles Agent Note with the frozen-cell
decision and the retained predecessor, list both consequences under the
registry README's known limitations, note in the projection cache README
that a stored row can be frozen at its unit's release, and say that
restoreFloor() ignores released predecessors.

Update the agent-loop resource-lifecycle unload test, which read
checkpoints through an alias, to the frozen-row semantics.

* docs(upgrade-guide): mark the released-checkpoint snippet ignore-check

* docs(session-projection): state the retained-handle path and narrow a rejected alternative

* docs(upgrade-guide): re-record the released-checkpoint guide pairing
2026-11-03 11:07:09 +08:00
Yichen Jiang 9eee00fa7d fix(web): show continuation request receipts 2026-11-03 10:50:46 +08:00
imccyu 6e77ea0131 feat(web): boot past failed optional client plugins (#7733)
* feat(web): boot past failed optional client plugins

The Web client boot audit now follows Host startup strictness. An
inactive entry on the global required list (module system, Session
transport, renderer, application frame, Session view, and sidebar)
still rejects startup and the report marks the required entries.
Other inactive entries produce one console warning and the
application mounts without them. The boot page no longer draws a
failed entry before the audit decides.

* fix(web): audit boot entries whose creation rejects and name activation errors

ClientEntries.start() now logs a row whose Loader creation rejects, such
as a module that exports no plugin, and leaves it inactive for the boot
audit, as the Host Loader group does. The audit awaits only failed
fibers to report their recorded activation error. Notes, READMEs, and
the Web client subsystem page describe the browser boot audit; tests
cover invalid exports, carrier presentation of optional failures, and
required names absent from the boot graph.

* test(web): fail test carriers and e2e on inactive client entries

The product boot only warns about inactive entries outside its required
list, but tests must still surface every plugin that fails. TestClient
and createClientTest now require every roster entry to activate unless
a case passes allowInactiveEntries. The watchConsole tripwire, the
real-host smoke, and the assembled jsdom boot treat a web boot warning
as a failure with no opt-out.

Docs: the Web README names Session control, notes that an entry without
a fiber is reported as an import failure like the Host audit's "failed
to import", and the startup strictness note lists the browser tests.
2026-11-02 16:20:50 +00:00