Commit Graph

9019 Commits

Author SHA1 Message Date
imccyu
9f33f1d652 Merge pull request #1391 from deepseek-harness/worktree-tsx-map
fix(client): correct sourcemap in devtools
2026-08-04 14:56:08 +08:00
Yichen Jiang
17b480de51 feat(web): align the model catalog with the pi-ai provider form
Both editors live in `ui-models` and list the same thing, so they now share
one row shape rather than diverging when #1368 lands: a bordered entry per
model, id and display name on the row, and the capacities behind the row's
own disclosure. The context window is joined there by the per-model output
cap the adapter just gained; both read a decimal K/M suffix.

The shared class names carry this file's token spellings, not that branch's.
`--dsw-alias-border-subtle`, `--dsw-alias-text-tertiary`, and
`--dsw-alias-text-primary` are undeclared, so they resolve to the light-mode
literals in their fallback slots — the defect this section was moved off. A
styles test now rejects any `--dsw-*` name the token sheet does not declare,
so the next editor to name one fails instead of shipping a light-only
surface.

The keystroke buffer is now per capacity field rather than per row, since a
row holds two of them.
2026-08-04 14:53:17 +08:00
Yichen Jiang
1d2ea70e9b feat(llm-deepseek): per-model output cap in the advisory catalog
A catalog entry may now carry its own `maxTokens`, matching the shape the
pi-ai adapter already exposes. Exact-model resolution prefers it over the
profile value, so capping one model no longer means capping the route.

Defaults are unchanged: an entry without a cap, and any unlisted
pass-through id, still resolve to the profile `maxTokens` (256,000), and the
shipped catalog keeps its context windows.
2026-08-04 14:53:02 +08:00
Hypatia May
ec4a070f0e Merge remote-tracking branch 'origin/master' into fix/landlock-runner-failure-classification 2026-08-04 14:47:58 +08:00
Hypatia May
96ba98c99e fix(sandbox): require runner-specific spawn evidence 2026-08-04 14:47:46 +08:00
imccyu
4af4c10075 Merge pull request #1161 from deepseek-harness/agent/reasoning-chunk-stress-test
perf(web): optimize reasoning chunk stress
2026-08-04 14:47:41 +08:00
creatixchu
4e024da35a Merge origin/master into worktree/composer-caret-binding 2026-08-04 14:44:09 +08:00
imccyu
b9d768b6f2 fix(web): stabilize reasoning stream validation 2026-08-04 14:37:35 +08:00
imccyu
6f1d443c59 feat: optimize chat think 2026-08-04 14:37:35 +08:00
kingwl
a44c8797b6 test(web): add opt-in reasoning chunk stress lane 2026-08-04 14:37:31 +08:00
Wenlu Wang
3c436d781e Merge pull request #1065 from deepseek-harness/codex/webui-complex-perf-case
fix(web): preserve reader intent in long conversations
2026-08-04 14:36:42 +08:00
imccyu
9c309dc03e docs(client): update plugin loading RFC 2026-08-04 14:36:31 +08:00
kingwl
eb628f979b test(web): align long-chat contracts with master 2026-08-04 14:23:34 +08:00
kingwl
e53dcd56c7 test(web): keep scroll fixture markers private 2026-08-04 14:23:34 +08:00
kingwl
9b91e5312c fix(web): narrow chat scroll provenance 2026-08-04 14:23:34 +08:00
kingwl
8de33e42f7 fix(web): preserve chat scroll ownership 2026-08-04 14:23:34 +08:00
kingwl
bf6cb38fbc test(web): expand long-chat regression and performance coverage 2026-08-04 14:23:34 +08:00
kingwl
6514a59d5d fix(ui-conversation): preserve semantic chat scroll position 2026-08-04 14:23:34 +08:00
kingwl
1cc59ae78e test(web): split long conversation performance cases 2026-08-04 14:23:34 +08:00
kingwl
9784d6c932 test: register web performance entry 2026-08-04 14:23:34 +08:00
kingwl
7f0b8a7e87 test: measure live web streaming performance 2026-08-04 14:23:34 +08:00
kingwl
a435aae538 test: add opt-in web performance scenario 2026-08-04 14:23:34 +08:00
Yif
82070924a8 polish(web): 侧边栏滚动细节
1. 会话列表底部留白 12→48px,滚动到底时最后一项不再被底部渐变遮住。
2. 侧边栏滚动条默认隐藏,仅在指针悬停侧边栏区域时显示(通过主题滚动条变量绑透明实现,Firefox/WebKit 两条渲染路径同时生效)。
2026-08-04 14:20:48 +08:00
imccyu
6c6d933732 fix(client): load plugin bundles as external scripts 2026-08-04 14:18:47 +08:00
Yif
92dd231ce4 polish(web): 打磨 Web 会话界面的布局、自适应与组件一致性
1. 统一会话列宽度轴:新增 --dsh-chat-content-width(748px),输入框、todo、goal、queue、approval、plan review、ask question 等容器的宽度与边距全部由该变量推导,消除各面板之间的像素漂移,窄视口下的边缘留白也保持一致。
2. 输入框自适应与细节:控制行改为容器查询(460px 阈值以下权限选择器只显示图标+下拉,隐藏文字);卡片圆角 20→22、行内边距调整并整体下移 2px(发送按钮除外);permission/model 触发器统一 24px 圆角;Plan 与 Read Only 间距 +8。
3. 修复浮层菜单溢出:slash 菜单与命令弹层钳制到输入卡片宽度,超长行以省略号截断;Tooltip 增加 12px 视口边缘安全距离。
4. 增加与替换图标:Add provider 改用输入框同款加号图标(IconPlusOutline16),统一图标尺寸与字号。
5. 统一 Settings → Models 组件:补齐按钮 hover 态、select 下拉箭头不再贴边、标题区与 provider 卡片间距 +12。
6. 侧边栏交互:add workspace / group by / create session / 收起侧边栏四个图标按钮增加 500ms 延迟 tooltip(前两个向下弹出);展开态的 New Session 不再重复显示 tooltip;侧边栏窄屏自适应收起逻辑微调。
7. 其他:hero 区 workspace 徽章右移对齐;附带 Agent Note(中英双语)记录共享宽度轴与容器查询的设计取舍。
2026-08-04 14:14:12 +08:00
_Kerman
c1ac85c15f fix(web): keep sidebar scrollbar inside inset 2026-08-04 14:11:54 +08:00
_Kerman
b57e29db59 fix(web): tighten sidebar session spacing 2026-08-04 14:11:54 +08:00
Turtle
64f9a83bd6 Merge pull request #1369 from deepseek-harness/codex/remove-dsh-tui-entrypoint
cleanup: remove TUI package and legacy dsh entrypoints
2026-08-04 14:11:37 +08:00
Yichen Jiang
a4aace17b5 Merge remote-tracking branch 'origin/worktree/custom-deepseek-models' into worktree/custom-deepseek-models 2026-08-04 14:08:22 +08:00
Yichen Jiang
adecbb71f7 Merge remote-tracking branch 'origin/master' into worktree/custom-deepseek-models 2026-08-04 14:01:28 +08:00
Hypatia May
0cd1611023 Merge remote-tracking branch 'origin/master' into fix/landlock-runner-failure-classification 2026-08-04 13:54:37 +08:00
Turtle
4b591c0abc Merge pull request #1059 from deepseek-harness/perf/snapshot-file-parallelism
perf(test): run replay snapshot files in parallel
2026-08-04 13:49:57 +08:00
Hypatia May
b0f33f13f4 docs(sandbox): cross-link Landlock snapshot rule 2026-08-04 13:49:34 +08:00
Hypatia May
f91aedd074 refactor(sandbox): defer native protocol exports (round 3) 2026-08-04 13:37:33 +08:00
Turtle
bc26a366dd test(acp-snapshot): cover the waitForEventAfterTurnEnd step
Success and timeout paths plus the before-newSession guard, restoring
per-file 100% on harness.ts.
2026-08-04 13:25:39 +08:00
Turtle
5fc420c5c0 test(acp-snapshot): wait for the durable goal pause before disposal
The goal scenario asserted a paused revision-2 goal, but the pause is
appended only after cancellation reaches idle — after turn/end. Under
parallel snapshot files the subprocess could dispose before the pause
record persisted, folding the log to an active revision-1 goal.

Add a waitForEventAfterTurnEnd input step (the turn-end/title waiters'
shape, parameterized by event type) and use it in the goal scenario to
hold the subprocess open until the goal-state record lands.
2026-08-04 13:25:39 +08:00
Turtle
ecdcc218b6 perf(test): run replay snapshot files in parallel
The snapshot config serialized all 13 files for every mode, but the
fixture-writing rationale only holds for record (real API quota per
scenario) and refresh (write-back harvests volatile values from
fixtures on disk). Replay — the keyless default and the CI mode — is
read-only with a unique temp dir per scenario subprocess, and the
suite factory already runs replay scenarios concurrently in-file.

Narrow the serialization to non-replay modes: pnpm test:snapshot drops
from ~49s to ~33s wall; record/refresh stay fully serial.
2026-08-04 13:25:28 +08:00
Turtle
10bb9cbf4a cleanup: remove TUI package and legacy dsh entrypoints 2026-08-04 13:20:28 +08:00
Chinesezjc
3a060c5688 Merge pull request #1175 from deepseek-harness/fix/web-sources-scroll
fix(client-web): scroll the web_search source card instead of collapsing
2026-08-04 13:20:16 +08:00
Chinesezjc
c67c89911e Merge origin/fix/web-sources-scroll 2026-08-04 13:13:41 +08:00
Chinesezjc
6601738e32 Merge origin/master into fix/web-sources-scroll 2026-08-04 13:11:40 +08:00
Turtle
7248b5ec8f Merge pull request #1376 from deepseek-harness/codex/node26-zstd-compat
fix(jsonl): recover truncated zstd frames on Node 26
2026-08-04 12:43:29 +08:00
Hypatia May
319376ef1c fix(sandbox): preserve valueless spawn failures (round 2) 2026-08-04 12:16:21 +08:00
Hypatia May
e36d040d0a fix(sandbox): spawn confined argv directly (round 1) 2026-08-04 12:04:48 +08:00
Turtle
ec4e130e31 fix(jsonl): recover truncated zstd frames on node 26 2026-08-04 11:58:38 +08:00
Chinesezjc
fffd1ca18e Merge branch 'master' into fix/web-sources-scroll 2026-08-04 11:41:15 +08:00
Yichen Jiang
b52b9422d4 Merge branch 'master' into worktree/custom-deepseek-models 2026-08-04 11:13:45 +08:00
fz
f0e5a39d19 Merge remote-tracking branch 'origin/master' into codex/fix-headless-sigint 2026-08-04 11:07:36 +08:00
fz
8ea88a589b test(cli): cover shutdown timer invariants 2026-08-04 11:03:52 +08:00
Turtle
804b724202 Merge pull request #1359 from deepseek-harness/perf/tui-long-session-render
perf(tui): incremental step timing and card render caches for long sessions
2026-08-04 10:06:21 +08:00