Commit Graph

12383 Commits

Author SHA1 Message Date
Tianyi Cui
a2d0f7f411 refactor: apply repository naming contract
Apply the accepted pre-release package, service, type, directory, and role renames as one repository-wide change.
2026-08-13 00:54:38 +08:00
j-xiang
486c872381 docs(i18n): address focused README review 2026-08-13 00:42:11 +08:00
j-xiang
7e4b8b1676 docs(i18n): human-polish key Chinese READMEs 2026-08-13 00:12:44 +08:00
Ziya
101df7cf58 Merge pull request #2409 from deepseek-harness/agent/web-file-reference-prompt
fix(web): guide clickable file references
2026-08-12 23:58:07 +08:00
_Kerman
3ef05f8a85 review: address ds-review-bot findings on composer geometry
- Rewrite the 08-04 gutter-reservation note in place: the reservation is Chat's alone and the overlay branch points to the seat-width compensation note; the Testing section now describes the uncompensated control.
- Cross-reference the earlier rejection of the seat inset in the 08-12 note and record the engine-resolved-vs-fixed-8px drift as accepted residual cost instead of asserting Firefox resolves 8px.
- Pair --dsh-scrollbar-width with the mirrored ::-webkit-scrollbar rule and the compensation consumer in the scrollbar-styles gate; document the variable in the ui-theme README.
- Rename the e2e control to compareTabsWithoutCompensation and correct the vacuity-guard comment; rewrap the WorkspaceBrowser doc comment.
2026-08-12 23:51:46 +08:00
Ziya
8d8992c1c9 Merge branch 'master' into agent/web-file-reference-prompt 2026-08-12 23:48:30 +08:00
fz
b14c40bc04 Merge pull request #2411 from deepseek-harness/feat/2406-rename-code-preset-ptc-mode
feat: 将代码模式预设更名为 PTC 模式
2026-08-12 23:47:00 +08:00
ZiyaZhang
238e900776 ci: retrigger after stale merge ref 2026-08-12 08:43:25 -07:00
ZiyaZhang
d6fc55ad86 docs: refresh generated references 2026-08-12 08:39:09 -07:00
Yichen Jiang
63fecf2534 fix: name run_code's required description argument in its model-facing prose
The transport schema requires both `code` and `description`, but the tool
description and both SDK instruction flavors described the call as passing a
program. `description` was reachable only through the parameter schema, so a
model following the prose emitted `{code}` alone and lost the whole written
program to an INVALID_ARGS rejection.

The length and format guidance stays in RUN_CODE_DESCRIPTION_PARAM_DESCRIPTION
alone, so the schema and the prompt cannot drift.

Fixes #2426
2026-08-12 23:30:51 +08:00
Yichen Jiang
ece8645080 fix: suppress runtime context in minimal profiles 2026-08-12 23:28:15 +08:00
Chinesezjc
9523dff0fd fix(web): resolve the pwsh-terminal overlay duplicate-loader entry
The web E2E seed lane for the pwsh terminal card failed on every platform
with `duplicate loader entry id: tool-pwsh`. The overlay inserted a new
tool-pwsh row, but the base bundle has declared that id since the shell
platform layer moved into it, so the overlay's insert delivered a second
row with the same id and the loader rejected the pair at boot.

Enable the existing tool-pwsh row by id instead of inserting it, and
disable pwsh-sandbox so the inserted pwsh-local is the lone executor on
every platform (the base gates pwsh-sandbox on win32, which would
otherwise collide with the inserted executor there).
2026-08-12 23:27:45 +08:00
Ziya
e5e0b47cf2 Merge branch 'master' into agent/web-file-reference-prompt 2026-08-12 23:19:35 +08:00
_Kerman
de97ea0ba8 fix(sidebar): synchronize collapsed rail motion 2026-08-12 22:56:36 +08:00
_Kerman
7c4c118456 fix(web): reclaim overlay scrollbar gutter 2026-08-12 22:56:36 +08:00
Yichen Jiang
06e01b30dd Merge remote-tracking branch 'origin/master' into feat/plugin-owned-settings-surface
# Conflicts:
#	packages/client/ui-plugin-config/README.i18n.yaml
#	packages/client/ui-plugin-config/README.md
#	packages/client/ui-plugin-config/README.zh.md
#	packages/client/ui-plugin-config/src/client/PluginConfigSection.tsx
#	packages/client/ui-plugin-config/src/client/index.ts
#	packages/client/ui-plugin-config/tests/apply.client.spec.ts
#	packages/client/ui-plugin-config/tests/section.client.spec.tsx
2026-08-12 22:50:49 +08:00
ZiyaZhang
1ca6f68b17 fix(web): guide clickable file references 2026-08-12 07:30:53 -07:00
Chinesezjc
c4e24071d6 Merge pull request #2331 from deepseek-harness/ci/serial-drill-concurrency
ci: exempt only push from concurrency cancellation
2026-08-12 22:08:09 +08:00
07akioni
fc36ef82ac Merge pull request #2401 from deepseek-harness/fix/stats
fix: 聊天统计条随历史分页增长
2026-08-12 22:04:14 +08:00
07akioni
76949198df Merge branch 'master' into fix/stats 2026-08-12 21:52:31 +08:00
Ziya
2a46b6b7b3 Merge pull request #2350 from deepseek-harness/feat/web-plugin-settings-tabs
feat(web): combine plugin settings into tabs
2026-08-12 21:51:24 +08:00
Chinesezjc
ae6b20ac14 Merge remote-tracking branch 'origin/master' into ci/serial-drill-concurrency 2026-08-12 21:51:07 +08:00
07akioni
7d595e0edc Merge branch 'master' into fix/stats 2026-08-12 21:50:33 +08:00
07akioni
cb31f5e5b5 docs: regenerate the module graph for dsh-session-stats 2026-08-12 21:48:18 +08:00
fz
47e3e6f0ed feat(web): rename code preset to PTC mode 2026-08-12 21:47:28 +08:00
07akioni
62a437c082 review: address ds-review-bot findings on session-stats
- stateVersion starts at 1: the package is new, no persisted rows predate it
- pendingCalls pairs by own key so a provider callId naming a prototype
  property cannot fold toolMs to NaN on an unmatched crash-recovery result
- StatsLine folds the window fallback only when no sessionStats value is
  served, and gates the token group on actual token activity instead of
  steps, so failed-only sessions drop the zero-token group
- correct the crash-step counting semantics in the README and Agent Note:
  recovery closes interrupted steps with a synthetic step/end on reload
- reword the window-scoped alternative as a plain rejected option and name
  isTokenDelta's home beside the StreamChunk type
2026-08-12 21:43:35 +08:00
Yichen Jiang
fdb1c47896 docs(settings): scope the ordering claim and record the deferred wire gaps
Card registration order is stable only for cards one package installs
together: apply order between packages is unconstrained, so several
external cards can still reorder between boots. The note and README said
otherwise. Recorded alongside it: the redactor returns a secret reachable
only through a union, intersection, or transform verbatim, and serving
every registered namespace widens that gap to third-party schemas; and
the headline capability still lacks an assembled-composition test.

publish() now keeps its snapshot reference when neither the loaded flag
nor the dispatched namespaces moved, so an unrelated settings commit no
longer re-renders the card list.
2026-08-12 21:41:23 +08:00
Yichen Jiang
07d608a392 Merge remote-tracking branch 'origin/master' into feat/plugin-owned-settings-surface 2026-08-12 21:38:20 +08:00
ZiyaZhang
bf9eb7b538 docs: repair merged translation records 2026-08-12 06:37:56 -07:00
Turtle
a0c60fc7b9 Merge pull request #2405 from deepseek-harness/codex/recommend-agent-architecture-docs
docs: recommend agent-assisted architecture exploration
2026-08-12 21:35:56 +08:00
Yichen Jiang
5d9f026e55 fix(settings): correct the exposure analysis and satisfy the coverage and lint gates
The Agent Note claimed the plugin inventory page already exposed every
mounted plugin's effective configuration to the same browser, so the
removed allowlist blocked nothing a caller could not already read. That
is false: PluginInventoryEntry carries entryId, moduleName, enabled, and
fiberPhase, and the page's configuration row renders an enabled tag, not
a stored value. The allowlist did keep an unlisted namespace's resolved,
base, and user values off the wire; the note now says so and rests the
decision on the loopback pin, secret redaction, the user's own document,
and the fact that permission and agent-presets were already served.

The post-await disposal check reads through an opaque method, mirroring
the settings seam's isStopped(): control flow narrowed the field to false
across the await, so the lint gate saw the guard as dead.
2026-08-12 21:35:21 +08:00
07akioni
ae3f89e772 Merge remote-tracking branch 'origin/master' into fix/stats 2026-08-12 21:29:00 +08:00
Yichen Jiang
d8035680b9 test(settings): cover the section directory's disposal, stale-read, and invalidation paths
The per-file coverage gate flagged four uncovered locations the new
section directory introduced: refresh() after disposal, a read superseded
by a newer one, and the two invalidation handlers that make the served
namespaces re-read (settings/document-updated and connection/reset).
2026-08-12 21:24:53 +08:00
Ziya
85c9aac5e9 Merge branch 'master' into feat/web-plugin-settings-tabs 2026-08-12 21:24:52 +08:00
Turtle
ca5e67490e docs: recommend agent-assisted architecture exploration 2026-08-12 21:23:06 +08:00
07akioni
efb1857853 Merge remote-tracking branch 'origin/master' into fix/stats 2026-08-12 21:22:05 +08:00
Yichen Jiang
9fecbd86d7 Merge remote-tracking branch 'origin/master' into feat/plugin-owned-settings-surface
# Conflicts:
#	docs/architecture.i18n.yaml
#	docs/architecture.md
#	docs/architecture.zh.md
2026-08-12 21:14:54 +08:00
Turtle
66c6059ca8 Merge pull request #2376 from deepseek-harness/human-doc
docs: rework the architecture map and sync its Chinese pair
2026-08-12 21:13:47 +08:00
Yichen Jiang
4cf285c26e Merge remote-tracking branch 'origin/master' into feat/plugin-owned-settings-surface
# Conflicts:
#	packages/host/apiproxy/README.i18n.yaml
#	packages/host/apiproxy/README.zh.md
2026-08-12 21:13:02 +08:00
Yichen Jiang
4366528a38 feat(settings): serve every registered namespace and key plugin cards on it
A plugin that registered a settings namespace could not reach the browser
configuration page: the api-proxy filtered every read and gated every
write through two hardcoded namespace lists, and the plugin configuration
section rendered an unordered list of cards carrying an opaque id rather
than the namespace they edit. Both gates lived in this repository, so a
user-authored plugin was configurable only by hand-editing settings.yaml.

The proxy now serves whatever ctx.settings.describe() returns and adds no
boundary of its own; a name no registration answers folds into the seam's
own settings-rejected, and the settings-not-exposed code retires. The
settings seam is untouched: which client may read a namespace, and which
page renders it, are facts about consumers.

settings.plugin.item becomes a keyed slot whose key is the namespace a
card edits, following tool.call.toolview. The section reads describe once
and dispatches the intersection of the slot ledger and the served set, so
a namespace another surface owns renders nothing without declaring
anything, and a card for an uncomposed plugin is never dispatched.
2026-08-12 21:07:57 +08:00
Yichen Jiang
4bc526f40b test(web): realign the scaffold welcome-notice version mirror
The e2e scaffold pre-acknowledges the welcome notice by mirroring
WELCOME_NOTICE_VERSION from ui-settings-general. The client bumped it to
2026-08-11.1 while the mirror stayed at 2026-07-30.7, so the stale
acknowledgement stopped suppressing the notice and its overlay covered
the page: every settings-touching web e2e timed out clicking Settings.
2026-08-12 21:07:48 +08:00
Turtle
30b2a04b69 docs: correct the turn-flow event order and dispatch modes
turn/start precedes the first claim and pre-step, a rejected or empty first claim closes a zero-step turn, llm/stream and tools/* are their own domains, and agent/turn-stopping is serial. Regenerates the lifecycle diagram from the same facts and names --patch overlays exactly.
2026-08-12 21:03:15 +08:00
Turtle
a204970725 test: refresh the translation-prompt snapshot for the clone URL
The reviewed example pair embeds README.md verbatim, so the deepseek-ai clone URL moves the expected request.
2026-08-12 21:01:58 +08:00
Turtle
7af0b8f6df docs: fix grammar and sync Chinese counterparts
Correct the reworked English wording in the CLI profile section, architecture map, and llm-streaming cross-reference, then bring every edited pair's Chinese side along and re-record the pairing hashes.
2026-08-12 21:01:45 +08:00
Turtle
988f4ad117 update architeture.md 2026-08-12 21:01:11 +08:00
Turtle
09981bf948 human touch 2026-08-12 21:00:46 +08:00
Turtle
d8ef7785fd update readme 2026-08-12 21:00:46 +08:00
Turtle
e091593866 replace url 2026-08-12 21:00:46 +08:00
Turtle
737c433036 Merge pull request #2305 from deepseek-harness/docs/post-v3-release-proofreading
docs(i18n): apply release proofreading updates
2026-08-12 21:00:12 +08:00
xjt
23e09ec08e Merge master into docs/post-v3-release-proofreading 2026-08-12 20:48:08 +08:00