Commit Graph
14675 Commits
Author SHA1 Message Date
imccyu 73dbbb751c docs: give architecture review rules a per-artifact home
Move `docs/defensive-patterns.md` into `docs/defensive-patterns/`, one page per
artifact plus a README router, and state each rule as its requirement, the
condition a reviewer judges it by, its boundary and approver, and a correct and
a wrong example.

- `general.md` (the moved page): the existing bug-class rules plus timing,
  value representation, shared-state ownership, decentralization, performance
  evidence, and migrations.
- `package-surface.md`, `remote-and-api.md`, `client-components.md`,
  `conversation-and-session.md`: the review requirements for those artifacts,
  linking type definitions and semantics to `docs/subsystems/` instead of
  restating them.
- `README.md`: the habits behind the rules and the route from artifact to page.
- `dsh-code-review` reads the owning pages before judging a diff; the
  `dsh-architecture-discipline` routing skill is retired in favour of the
  directory, and every inbound reference is repaired.
- Chinese counterparts, pairing records, and the documentation tier table are
  updated together.
2026-10-09 23:03:56 +08:00
Yichen Yan 23c29d067a fix(web): persist authenticated browser preferences on the Host (#4201)
* Persist authenticated browser preferences through the Host
* test(settings): cover recovery and remote preference refresh
* test(settings): read Host preferences from a fresh browser context
* test(settings): verify remote ConfigForm refresh at plugin entry
2026-10-09 19:27:00 +08:00
Yifffan fddd704c7f Merge pull request #5969 from deepseek-harness/design/official-plugin-icons-safe-area
style(web): unify official plugin artwork and add drawing skill
2026-10-09 18:10:26 +08:00
Yif 71947ec3fa fix: address artwork review and separate UX reference coverage 2026-10-09 17:58:18 +08:00
07akioni deb90c38e6 Merge pull request #5576 from deepseek-harness/fix/desktop-dependency-alignment
perf(deps): align desktop dependencies and share client libraries
2026-10-09 17:52:53 +08:00
07akioni 614d7d7ef3 Merge pull request #5563 from deepseek-harness/perf/onboarding-lossless-webp
perf(client): encode onboarding illustrations as lossless WebP
2026-10-09 17:49:04 +08:00
07akioni d743267388 Merge pull request #5946 from deepseek-harness/release-0.2.1-alpha.2
release(dsh): 0.2.1-alpha.2
2026-10-09 17:31:32 +08:00
Yif 64d56a968c fix(plugin): order badge package resources for workspace constraints 2026-10-09 17:24:39 +08:00
Yif 6c9f26ec48 style(web): unify official plugin artwork and add drawing skill 2026-10-09 17:00:38 +08:00
Turtle 5876567dfc Merge pull request #5915 from deepseek-harness/turtle/exp-badge-align-42f8ebeac170
fix(web): align and localize Auto review permission option
2026-10-09 16:50:08 +08:00
Yudong Han 18643292ae Merge pull request #5369 from deepseek-harness/fix/python-wheel-size-5250
fix: download optional Python runtime resources explicitly
2026-10-09 16:32:27 +08:00
Ruilin Geng 5f3c7b98e2 Merge pull request #4945 from deepseek-harness/fix/4931-composer-focus
fix(client): preserve cursor and selection on composer whitespace clicks
2026-10-09 16:22:17 +08:00
kingwl 226ae8d2fd Merge master and resolve integration conflicts for #5576 2026-10-09 16:14:10 +08:00
imccyu 311fc54705 Merge pull request #5955 from deepseek-harness/fix-chat-height-reset
fix(ui-chat): reset layout on mode changes and running session returns
2026-10-09 16:13:23 +08:00
gengruilin 18678f4851 Merge origin/master into fix/4931-composer-focus 2026-10-09 16:10:14 +08:00
Yichen Jiang ba41fbdf1d Merge pull request #5949 from deepseek-harness/worktree/fix-model-catalog-visibility
fix(models): hide unconfigured models and unavailable selection IDs
2026-10-09 16:09:53 +08:00
Turtle a1a43cbb4e test(web): restore access mode after narrow Auto check; clarify EXP docs 2026-10-09 16:07:04 +08:00
Turtle e7c4ef0426 fix(web): raise Auto review icon A by 0.4px 2026-10-09 16:03:26 +08:00
imccyu 7ee4b46782 fix(ui-chat): reset layout on mode changes and running session returns 2026-10-09 15:51:46 +08:00
Turtle 29b89df1b8 feat(web): add Auto review shield-A permission icon 2026-10-09 15:40:16 +08:00
Turtle 84f6a99514 Merge pull request #5942 from deepseek-harness/turtle/plan-mode-reject-33e1a9fe3ad2
fix(plan-mode): end the turn when the user dismisses a plan review
2026-10-09 15:28:21 +08:00
Ziya f197d71940 Merge pull request #5921 from deepseek-harness/fix/voice-input-component-labels
fix: localize voice input component names and descriptions
2026-10-09 00:14:36 -07:00
07akioni e2c410ef84 release(dsh): 0.2.1-alpha.2 2026-10-09 15:13:40 +08:00
Turtle 0155017b73 fix(plan-mode): exit plan mode only on approval in plan guidance
A dismissed review now returns a successful exit_plan_mode result, so
the plan policy must not treat any success as leaving plan mode. Also
update the user-facing description of a dismissed review.
2026-10-09 14:58:20 +08:00
Yichen Jiang 02f5423070 fix(models): hide unconfigured DeepSeek models and unavailable selections 2026-10-09 14:56:27 +08:00
Ziya 640e28cd94 feat(web): reorganize plugin settings and add experimental catalog page (#5922)
Group built-in settings before optional and installed plugins, and open the full experimental catalog on a separate page.

Preserve detail navigation and unsaved configuration when installation finishes, and use the visible More label as the accessible name.
2026-10-08 23:42:56 -07:00
ZiyaZhang 799fede7bc fix: align speech recognition service terminology 2026-10-08 23:41:37 -07:00
Turtle 18a4bc4093 fix(plan-mode): end the turn when the user dismisses a plan review
Choosing "Request changes" on a plan review rejected the question, and
exit_plan_mode turned that into a failed tool result asking the model to
stop. The loop then spent one more model request only to have the model
wait. A dismissed review now returns { approved: false } and concludes the
turn, so the user's next message starts the following request.
2026-10-09 14:39:43 +08:00
ZiyaZhang e3909dcc6e Merge master into fix/voice-input-component-labels 2026-10-08 23:35:20 -07:00
imccyu d6692ac626 Merge pull request #5305 from deepseek-harness/worktree-flownew
feat(web): 增加工作过程收起时机实验开关
2026-10-09 14:03:54 +08:00
ZiyaandZiyaZhang 398f3f7ee3 fix(web): 弱化并左对齐思考翻译切换按钮 (#5911)
* fix(web): soften and align the reasoning translation toggle

* fix(web): scope translation toggle styles explicitly

---------

Co-authored-by: ZiyaZhang <[email protected]>
2026-10-09 05:57:02 +00:00
imccyu 37d9dadd4e fix(ui-chat): retain fold surplus as bottom space 2026-10-09 13:35:20 +08:00
imccyu 9db5308d9b fix(ui-chat): combine fold displacement with input following 2026-10-09 13:35:19 +08:00
imccyu f1dcb15b9c fix(ui-chat): tolerate subpixel rounding at the content floor 2026-10-09 13:35:18 +08:00
imccyu 7a504ac3e0 fix(ui-chat): settle fold following and apply review cleanups 2026-10-09 13:35:18 +08:00
imccyu bde4bc78a6 fix(ui-chat): avoid pathological flow selector matching 2026-10-09 13:35:17 +08:00
imccyu 00d9dd1b81 fix(ui-chat): preserve flow layout through slot anchors 2026-10-09 13:35:16 +08:00
imccyu a0a9aef5ec feat(ui-chat): add independent collapse timing and viewport-scoped flow 2026-10-09 13:35:16 +08:00
07akioni 544fe59fbd Merge pull request #5909 from deepseek-harness/07akioni/electron-44-7-addon-019
chore(deps): upgrade Electron, electron-builder, and native loader
2026-10-09 13:26:18 +08:00
Yudong d6042ca0d7 fix(speech-to-text-sensevoice): restore the onset a cold VAD drops
Silero cannot back-date the first segment of a cold detector, so it
reports a start index several frames after speech actually began. Every
recording therefore lost its opening audio: measured across 50
utterances the median loss was 102 ms and the worst 230 ms — a full
syllable, which surfaced as dropped leading words ("麻烦把发票…" →
"把发票…", "用 Python…" → "写一个 Python…").

Only the first segment is affected; later segments aligned within 3 ms
because the detector retains history by then. Tuning cannot fix it:
lowering minSpeechSeconds from 0.25 s to 0.05 s left the median loss at
110 ms, and lowering the threshold to 0.2 still lost up to 174 ms while
risking false triggers.

Restore the dropped onset from the recording itself, bounded by the new
vadOnsetPaddingSeconds (default 0.3 s, zero disables). Measured on the
same corpus with identical DSH settings, this recovers the full no-VAD
accuracy and in the technical domain exceeds it, since segmentation also
trims silence:

  语料        条件     无VAD    VAD丢起音  VAD+回填   改善
  audio      clean   12.50%    16.33%    12.50%   23.5%
  audio      noisy10 17.74%    19.15%    17.94%    6.3%
  audio_tech clean   10.34%    15.65%     9.81%   37.3%
  audio_tech noisy10 25.73%    30.50%    26.26%   13.9%

Inference cost is unchanged (2.6 s vs 2.6 s on both clean corpora).
2026-10-09 12:51:54 +08:00
TurtleandYifffan e9292ba398 fix(web): show Auto review EXP only in menu options
Co-authored-by: Yifffan <[email protected]>
2026-10-09 12:23:02 +08:00
yudshj 89f35fe2e9 fix: download optional Python runtime resources explicitly 2026-10-09 12:06:50 +08:00
Turtle 35f1a46a01 test(web): refresh Auto review trigger goldens and docs 2026-10-09 12:05:56 +08:00
ZiyaZhang bbfdcae84c fix: localize voice input component metadata 2026-10-08 21:01:06 -07:00
Yichen Jiang 15c10e0e87 Merge pull request #5064 from deepseek-harness/worktree/ssh-helper-binaries
feat(ssh): ship standalone helper runtimes for Linux and macOS
2026-10-09 11:46:00 +08:00
Turtle 18fd3d06c4 fix(web): align and localize experimental permission mode 2026-10-09 11:42:28 +08:00
07akioni a33f16057c chore(deps): upgrade Electron to 44.7.0 and native loader to 0.1.9 2026-10-09 11:22:14 +08:00
imccyu 7dce22d2f2 fix(test): name the reasoning fixture render result type 2026-10-09 02:08:05 +08:00
imccyu 9018cf697d fix(test): preserve reasoning slot types in fixtures 2026-10-09 02:01:58 +08:00
imccyu 70caea2ee3 style(test): align reasoning fixtures with lint rules 2026-10-09 01:59:37 +08:00