Commit Graph
100 Commits
Author SHA1 Message Date
yudshj 97a833471f fix(ui-tool): reserve inline space for exit capsules 2026-10-15 15:02:29 +08:00
yudshj 00f897b048 fix(ui-tool): show command exits in neutral inline capsules 2026-10-15 14:20:22 +08:00
Yudong Han 755c52fd77 Merge pull request #6096 from deepseek-harness/fix/office-operation-guidance
fix(office): 回复不嵌入已删除预览,PDF 导出不查找阅读器
2026-10-15 12:23:26 +08:00
yudshj dc9119c00b Merge remote-tracking branch 'origin/master' into pr6096-merge
# Conflicts:
#	packages/skill/skill-office/package.json
2026-10-15 12:04:01 +08:00
Yudong Han a29f5ee1e3 Merge pull request #6108 from deepseek-harness/fix/empty-response-text
fix(llm): 保留跨协议完整历史并过滤 DeepSeek 请求空文本
2026-10-13 17:11:43 +08:00
yudshj 5ba6b2da82 test(llm): 空文本历史真实 API 用例固定使用官方根地址
与同文件其他真实 API 用例一致,boot() 不再接受 baseURL 参数,
该用例不再读取 DEEPSEEK_BASE_URL。
2026-10-13 15:49:00 +08:00
yudshj f12fa3bad1 fix(office): keep render replies and PDF checks within available files
- office-render: report inspection results in text and never link or embed
  removed previews. Desktop and Web replies otherwise embed deleted preview
  images, because their file-reference guidance encourages inline images.
- office-export-pdf: validate with the command result, nonempty output, and
  %PDF- signature; do not search for PDF readers unless the user requests
  deeper checks. The bundled runtime has none, so the old conditional made
  the model probe system Python and command-line tools.
- Assert that the PDF export e2e does not probe PDF reader tools.
- Replace stale "structural checks" wording in the Desktop Office plugin
  JSDoc and the skill package description.
2026-10-13 13:55:17 +08:00
yudshj 30aa47281d fix(llm): 保留原始协议历史并验证跨协议无损往返 2026-10-13 12:58:08 +08:00
yudshj c368939151 fix(llm): 修复响应转换产生空文本及旧会话重放失败 2026-10-13 12:26:21 +08:00
Yudong Han 4dff4b07f0 Merge pull request #6042 from deepseek-harness/fix/office-docx-check-scope
fix(office): 移除内置 checker 并限制 Word 无关检查
2026-10-12 22:50:11 +08:00
yudshj 232f86dadc docs(office): drop the checker upgrade guide
Bundled Office resource files are internal implementation, so removing
check_office.py breaks no supported surface.
2026-10-12 22:29:24 +08:00
yudshj f44cfa7813 fix(office): name PowerPoint and Excel scripts for their task
PowerPoint and Excel tasks in PTC mode wrote inspect.py, which shadows the
standard library and forces a delete-and-retry step. Apply the Word naming
rule to both skills, listing the libraries each one imports.
2026-10-12 17:51:44 +08:00
yudshj fa740a581a fix(office): restore Word creation guidance and guard direct package writes
- Restore the office-docx new-document example from master. #6040 concerns
  edits, and no Word creation case covers its removal.
- Tell direct package writers to copy each member once into a new ZIP;
  python-docx, python-pptx, and openpyxl all reopen packages with duplicate
  members without error.
- Anchor the script-name assertion so hyphenated names such as edit-docx.py,
  which shadow no module, do not fail the Word e2e.
2026-10-12 17:31:53 +08:00
yudshj fb2a554cd3 refactor(office): remove the bundled structural checker 2026-10-12 16:07:23 +08:00
yudshj 2fe9783f55 fix(office): limit Word content validation to the edited content 2026-10-12 16:07:23 +08:00
Yudong Han 278e479af8 Merge pull request #5054 from deepseek-harness/feat/office-render-tools
feat(office): split authoring and operation skills for progressive loading
2026-10-12 13:39:10 +08:00
yudshj a9864e1aba test(office): normalize Desktop skill resource path expectation 2026-10-12 13:24:01 +08:00
yudshj efcc129820 Merge master and remove automatic nested skill injection 2026-10-12 13:07:43 +08:00
yudshj b8b254a6d3 test(office): refresh PTC headers from master 2026-10-12 12:55:32 +08:00
yudshj b6fc04f403 Merge latest master into Office progressive skills 2026-10-12 12:50:33 +08:00
yudshj bfcc6d50d0 refactor(office): remove command launchers and shell compatibility changes 2026-10-12 12:45:09 +08:00
yudshj 88f5ed353e refactor(office): keep skill API and carrier composition unchanged 2026-10-12 11:57:13 +08:00
yudshj 839033f993 fix(office): align runtime smoke and cross-platform coverage 2026-10-10 00:01:52 +08:00
yudshj f81494ce83 Merge remote-tracking branch 'origin/master' into codex/pr5054-refactor 2026-10-09 23:56:18 +08:00
yudshj 1f01ad6410 refactor(office): simplify test setup and verify progressive workflows 2026-10-09 23:38:09 +08:00
yudshj 310596f4aa refactor(office): trim unused skill metadata and launcher input forwarding 2026-10-09 23:05:26 +08:00
yudshj 908763515e refactor(office): run Python checker directly 2026-10-09 19:20:22 +08:00
yudshj 379f9cd47b feat(office): add progressive skills and direct dsoffice commands 2026-10-09 19:14:55 +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
yudshj 0616cbc77b test: keep locale regression commands ASCII on Python 3.10 2026-10-09 16:06:27 +08:00
yudshj 4fd85be130 fix: validate optional Python resources and isolate downloads 2026-10-09 15:52:59 +08:00
yudshj 305021fcd6 fix: preserve Linux SEA layout and stable snapshot references 2026-10-09 13:46:00 +08:00
yudshj 1b8532b7c2 fix: keep Python executable packaging inside the deployed closure 2026-10-09 13:34:56 +08:00
Yudong Han ea4f2d2929 Merge pull request #5929 from deepseek-harness/fix/sensevoice-vad-onset-clipping
fix(speech-to-text-sensevoice): restore the onset a cold VAD drops
2026-10-09 13:17:10 +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
yudshj 89f35fe2e9 fix: download optional Python runtime resources explicitly 2026-10-09 12:06:50 +08:00
Yudong Han 647b2b5f3b Merge pull request #5729 from deepseek-harness/feat/voice-input-device
feat(voice-input): select microphone with native input level
2026-10-08 12:28:15 +08:00
yudshj 57d829f9b2 fix(voice-input): keep device level active on page 2026-10-08 12:00:37 +08:00
yudshj e77e4bb005 fix(voice-input): use native input device selector 2026-10-08 11:30:49 +08:00
yudshj 847945a6fb fix(voice-input): refresh device labels and reveal overflowing names 2026-10-08 10:48:48 +08:00
yudshj d005b5edfd test(voice-input): cover injected selection and unavailable preview 2026-10-08 10:48:48 +08:00
yudshj 5aa153281f fix(voice-input): preserve unavailable microphones across hot-plug 2026-10-08 10:48:48 +08:00
yudshj 2d0360870c feat(voice-input): select microphone with menu-only input levels 2026-10-08 10:48:48 +08:00
Yudong Han ebc616e01d Merge pull request #5589 from deepseek-harness/fix/bump-libreoffice-kit-0.1.5
chore(office): bump LibreOffice Kit to 0.1.5
2026-10-01 12:01:55 +08:00
yudshj 541fcec02f test(office): expect Kit 0.1.5 in SDK CLI smoke 2026-10-01 09:41:15 +08:00
yudshj d0916a8f90 chore(office): bump LibreOffice Kit to 0.1.5 2026-10-01 09:27:11 +08:00
yudshj 171c9e9225 refactor(web): reuse the path-based open-in-app action 2026-09-29 15:15:38 +08:00
yudshj 35002626a1 refactor(web): pass the displayed directory to sidebar actions 2026-09-29 15:15:38 +08:00
yudshj be0e31233c feat(web): open the workspace from the sidebar file tree 2026-09-29 15:15:38 +08:00
Yudong Han 447471d34d fix(windows): keep dialogs and floating panels clear of the caption (#5268)
* fix(dockkit): keep floating headers below the Windows caption

* fix(windows): preserve caption gaps across dialogs and fullscreen

* fix(client): unify overlay clearance and preserve the Windows caption

* docs(desktop): explain fullscreen IPC platform guard
2026-09-28 17:05:05 +08:00
yudshj df82661082 docs(desktop): explain fullscreen IPC platform guard 2026-09-28 16:55:49 +08:00
yudshj 3adf561295 fix(client): unify overlay clearance and preserve the Windows caption 2026-09-28 16:55:49 +08:00
yudshj 1aea67a755 fix(windows): preserve caption gaps across dialogs and fullscreen 2026-09-28 16:55:48 +08:00
Yudong Han 8be17176fe Merge pull request #5312 from deepseek-harness/fix/office-selection
fix(client): make Office and PDF selections visible in both themes
2026-09-28 11:26:30 +08:00
yudshj 37ffaa52ca fix(client): make Office and PDF text selections visible in both themes 2026-09-28 11:05:13 +08:00
Yudong Han 451e452043 Merge pull request #5223 from deepseek-harness/fix/explorer-window-visibility
fix(windows): keep Explorer path-opening windows visible
2026-09-28 10:43:58 +08:00
Yudong Han 4f9e0e7840 Merge pull request #5191 from deepseek-harness/cleanup/compact-persistence-schema
refactor: compact persistence schema type inventory
2026-09-28 10:40:36 +08:00
HYD@OVERTON 989fc3e2f5 refactor(native-command): require explicit window visibility 2026-09-27 23:55:26 +08:00
HYD@OVERTON a895066443 fix(windows): keep Explorer path-opening windows visible 2026-09-27 23:55:26 +08:00
yudshj cf6276e78d fix: preserve independent persistence type graphs 2026-09-25 01:09:44 +08:00
yudshj cc3c631699 refactor: compact persistence schema type inventory 2026-09-25 00:32:15 +08:00
Yudong Han 8e816b7ea4 Merge pull request #5167 from deepseek-harness/deps/libreoffice-kit-0.1.1
chore(deps): upgrade LibreOffice Kit to 0.1.1
2026-09-24 19:22:18 +08:00
yudshj 03bd8258c3 chore(deps): upgrade LibreOffice Kit to 0.1.1 2026-09-24 18:56:22 +08:00
Yudong Han 31da6718a9 Merge pull request #5091 from deepseek-harness/fix/document-preview-white-placeholder
fix(web): 统一文档加载提示、分页留白和主题背景
2026-09-24 14:07:10 +08:00
yudshj ed4445b028 fix(web): unify document loading and spaced theme-aware pages 2026-09-24 13:57:42 +08:00
Yudong Han fb8bb16345 Merge pull request #5052 from deepseek-harness/fix/zoom-rerender
fix(preview): redraw PDF and Office pages after pinch zoom
2026-09-23 19:42:44 +08:00
yudshj 312341970c Merge master into fix/zoom-rerender 2026-09-23 19:31:59 +08:00
Yudong Han 896c81d796 Merge pull request #5047 from deepseek-harness/fix/excel-trackpad-dark-mode
fix(web): support free spreadsheet trackpad panning and readable controls
2026-09-23 19:26:26 +08:00
yudshj 19d6df2b2f fix(web): pan read-only spreadsheets on both trackpad axes 2026-09-23 18:13:19 +08:00
yudshj e0e8327992 fix(preview): redraw PDF pages after settled zoom 2026-09-23 18:12:21 +08:00
yudshj e4234651ee fix(web): support spreadsheet tab gestures and readable name box 2026-09-23 17:52:13 +08:00
Yudong Han 219db5454a Merge pull request #5027 from deepseek-harness/fix/excel-preview-sheet-navigation
fix(web): separate spreadsheet tab navigation from zoom controls
2026-09-23 16:38:47 +08:00
Yudong Han 5e25475857 fix(office): use bundled LibreOffice Kit 0.1.0 CLI across deployments (#4902)
* chore(office): upgrade libreoffice kit to 0.0.1-2

* fix(office): guide bounded CLI rendering and preview reuse

* chore(office): consume published LibreOffice Kit 0.0.3

* test(office): mock the complete LibreOffice converter interface

* chore(office): upgrade LibreOffice Kit to 0.0.4

* fix(office): expose bundled LibreOffice Kit 0.1.0 CLI across deployments

* fix(office): inspect Excel visuals only for layout tasks

* fix(office): allow compatible LibreOffice Kit 0.1 updates

* fix(office): stop Excel QA on blank previews and run regressions in CI

* fix(office): end workbook visual QA after an empty preview
2026-09-23 08:32:15 +00:00
yudshj c920174964 fix(web): separate spreadsheet tab navigation from zoom controls 2026-09-23 16:13:21 +08:00
Yudong Han dd004b4221 fix(web): simplify read-only spreadsheet preview controls (#5006)
* fix(web): simplify read-only spreadsheet preview controls

* fix(web): soften read-only spreadsheet freeze dividers

* fix(web): hide read-only spreadsheet freeze dividers

* fix(web): keep spreadsheet formula bar on one line
2026-09-23 07:46:13 +00:00
Yudong Han 5124a2a310 fix(web): show model IDs in monospace and names on hover (#5004)
* fix(web): show original model IDs on hover

* fix(web): display model IDs with names on hover
2026-09-23 06:10:30 +00:00
Yudong Han d3c5f959aa Merge pull request #4921 from deepseek-harness/fix/4918-excel-preview-resize
fix(web): resize Excel previews with their pane
2026-09-22 16:46:26 +08:00
HYD@OVERTON 58651b8359 fix(web): resize Excel previews with their pane 2026-09-22 16:33:30 +08:00
Yudong Han 34a0a8e81d fix(web): preserve Excel previews across OPC paths and XML encodings (#4872)
* fix(web): resolve XLSX part relationships and namespace aliases

* fix(web): keep Excel browser scenario in the host test program

* fix(excel): preserve XML encodings and relocated workbook parts

* fix(excel): exclude installed launchers from dependency patch

* fix(excel): restore Strict and case-equivalent workbook previews
2026-09-22 08:04:13 +00:00
Yudong Han f65c15a5cf feat(preview): unify document zoom controls (#4785) 2026-09-21 10:49:45 +00:00
Yudong Han d0ddf939f0 refactor(office): transfer PDFs as multipart bytes (#4830)
* refactor(office): transfer PDFs as multipart bytes

* fix(document-preview): address Office review feedback
2026-09-21 10:30:10 +00:00
Yudong Han 5b4ca4a29e Merge pull request #4808 from deepseek-harness/fix/pr4346-spreadsheet-review
fix(preview): harden spreadsheet conversion
2026-09-21 17:01:28 +08:00
Yudong Han 22da693201 Merge pull request #4346 from deepseek-harness/web/excel-frontend-preview
feat(preview): open spreadsheets in the browser
2026-09-21 16:06:37 +08:00
yudshj 57bcfac402 Merge remote-tracking branch 'origin/master' into web/excel-frontend-preview 2026-09-21 15:54:49 +08:00
yudshj e7287e499e Merge remote-tracking branch 'origin/master' into web/excel-frontend-preview 2026-09-21 15:47:19 +08:00
yudshj cbe0d84fc1 Merge remote-tracking branch 'origin/master' into web/excel-frontend-preview 2026-09-21 15:37:28 +08:00
yudshj 61a0acc4da fix(preview): satisfy strict spreadsheet lint 2026-09-21 15:35:57 +08:00
yudshj ad9f77db04 fix(preview): compact spreadsheet formula warning 2026-09-21 14:28:15 +08:00
yudshj 767cb38567 fix(locales): update titles for Office document in Chinese and English 2026-09-21 13:20:45 +08:00
yudshj 15415600d1 fix(preview): render spreadsheet values as literal text 2026-09-21 13:20:45 +08:00
yudshj 9f6434d24b refactor(web): move Office loading into its injected face 2026-09-21 13:20:45 +08:00
yudshj f51092015f refactor(preview): align spreadsheets with shared file preview structure 2026-09-21 13:20:45 +08:00
yudshj e70fa89400 feat(preview): support xls csv and tsv 2026-09-21 13:20:45 +08:00
yudshj 30b6abad5c fix(preview): retain Excel worksheet selections 2026-09-21 13:20:44 +08:00
yudshj 087dc65e89 feat(preview): render Excel workbooks in the browser 2026-09-21 13:20:44 +08:00
Yudong Han eaf0f68bb2 Merge pull request #4401 from deepseek-harness/perf/workspace-file-binary-transfer
feat(api): support binary fields in Remote results
2026-09-21 05:18:16 +00:00
Yudong Han e98b5703c7 refactor(api): move Remote result projection to gateway 2026-09-21 12:50:42 +08:00
Yudong 2aac7c8ef5 fix(connection): keep narrowed attachment path type 2026-09-21 12:50:41 +08:00
Yudong 285f0a7005 fix(connection): narrow binary transport values 2026-09-21 12:50:41 +08:00
Yudong 983b89f9a5 refactor(fs): default unsupported file watching 2026-09-21 12:50:41 +08:00