Commit Graph

1995 Commits

Author SHA1 Message Date
_Kerman
7222a99e33 refactor(client): remove dead sidebar ordering surfaces 2026-08-11 17:51:18 +08:00
_Kerman
ed39516c20 test(client): type session timestamp assertions 2026-08-11 16:49:29 +08:00
_Kerman
79b9f3d524 style(client): reduce expanded search height 2026-08-11 16:49:26 +08:00
_Kerman
fcbe3ac836 fix(client): preserve sidebar drag ordering 2026-08-11 16:49:21 +08:00
_Kerman
5b1da441d5 fix(client): refine workspace view controls 2026-08-11 16:46:52 +08:00
_Kerman
34e90dc3fe test(client): accept session creation timestamps 2026-08-11 16:03:13 +08:00
_Kerman
bc390318ac Merge remote-tracking branch 'origin/master' into xtr/sidebar-workspace-controls 2026-08-11 15:59:40 +08:00
_Kerman
2ad471123d fix(client): persist workspace drag order 2026-08-11 15:57:43 +08:00
_Kerman
31768a348e fix(client): update recency from user messages 2026-08-11 15:57:34 +08:00
_Kerman
d672eace2f style(client): refine drag insertion markers 2026-08-11 15:42:44 +08:00
Turtle
5d591e55c1 Merge pull request #610 from deepseek-harness/codex/replace-surface-terminology
Replace overloaded surface terminology
2026-08-11 15:34:34 +08:00
_Kerman
3f09330f4b docs(web): record workspace sidebar behavior 2026-08-11 15:25:11 +08:00
_Kerman
6e303ac0b7 test(web): cover workspace sidebar behavior 2026-08-11 15:25:11 +08:00
_Kerman
8005ab78bd fix(client): keep flat sessions ordered by recency 2026-08-11 15:25:11 +08:00
_Kerman
c4affa852c style(client): reduce conversation tab indicator 2026-08-11 15:25:11 +08:00
_Kerman
23889483cf style(client): refine conversation tab indicator 2026-08-11 15:25:11 +08:00
_Kerman
3f315a0134 feat(client): refine workspace sidebar interactions 2026-08-11 15:25:11 +08:00
_Kerman
d86ecf7b29 style(client): collapse search into header action 2026-08-11 15:25:11 +08:00
_Kerman
4ce51888be fix(client): inherit current workspace for new sessions 2026-08-11 15:25:11 +08:00
_Kerman
a46a7bf912 style(client): simplify expanded workspace icon 2026-08-11 15:25:11 +08:00
_Kerman
325da4dab1 fix(client): preserve workspace browser interactions 2026-08-11 15:25:11 +08:00
_Kerman
e713cc820d style(client): polish sidebar spacing 2026-08-11 15:25:11 +08:00
_Kerman
1a1729a138 feat(client): refine workspace sidebar interactions 2026-08-11 15:25:11 +08:00
_Kerman
b3e843056e feat(workspace): support persistent workspace ordering 2026-08-11 15:25:11 +08:00
_Kerman
1d4ab4492e style(client): tighten sidebar layout 2026-08-11 15:25:11 +08:00
_Kerman
8e0cb2bdba feat(client): improve workspace session browsing 2026-08-11 15:25:11 +08:00
Turtle
0c708cb10d refactor: replace overloaded surface terminology 2026-08-11 15:23:05 +08:00
Yichen Jiang
63a294fa1b Merge remote-tracking branch 'origin/master' into worktree/custom-provider-edit-parity-f8c160 2026-08-11 15:16:23 +08:00
Yichen Jiang
ab300feb80 Merge pull request #2245 from deepseek-harness/fix/preset-card-description-clamp
修复 web 端 Agent 预设卡片被长描述顶高
2026-08-11 14:39:29 +08:00
Yichen Jiang
d6d7953ae9 fix(web): flip a tooltip that the viewport has no room for
The bubble clamped horizontally and did nothing vertically, so a long
label under an anchor low on the page ran off the bottom. Preset cards
made that the common case: custom presets sit at the end of the roster
and carry the longest descriptions.

A `top` or `bottom` bubble now flips to the other side, and only into a
side that genuinely fits — an anchor with room on neither keeps the
requested placement rather than oscillating. Sliding the bubble
vertically instead would cover the text being read.
2026-08-11 14:26:18 +08:00
Yichen Jiang
9f5eb5da8a fix(web): clamp preset card descriptions instead of sizing the roster
A preset publishes its own description, of any length, and `.cards` sizes
rows with `grid-auto-rows: 1fr` — which makes every implicit row the same
height, not just the row holding the tall card. One long description
therefore set the height of the whole roster.

The description now clamps to four lines and offers the rest through the
shared Tooltip, attached only while the element actually overflows. Card
height stays derived: with the description bounded, `grid-auto-rows: 1fr`
already equalizes, and a card carrying the broken-preset reason or a
revealed path still sizes itself.

Tooltip gains an optional `maxWidth`; its default half-viewport cap
renders a description wider than the settings dialog it belongs to.

The failed-shape-check badge reads "Failed to load" rather than "Broken":
discovery reports a composition that is missing, unreadable, or malformed,
which overstates as damage.

Fixes #2238
2026-08-11 14:09:04 +08:00
_Kerman
c2569c3f9d feat(web): include referenced media in the session-log export
The export ZIP now carries every image any included log references under
media/<attachmentId>.<ext>, read and verified from the attachment store with
one entry per shared image. The endpoint requires the attachments service
alongside persistence and session-query; a referenced image that cannot be
read fails the stream like a missing descendant.
2026-08-11 14:08:58 +08:00
_Kerman
c8a201bebd Merge remote-tracking branch 'origin/master' into feat/web-session-log-export 2026-08-11 13:46:46 +08:00
Terra
346bfd23bf Merge pull request #1866 from deepseek-harness/feature/workspace-picker-composer
feat(web): open workspace picker from the composer
2026-08-11 13:01:38 +08:00
_Kerman
1b8175ddfd Merge remote-tracking branch 'origin/master' into feat/web-session-log-export 2026-08-11 12:59:05 +08:00
_Kerman
3a6112f641 fix(web): satisfy contracts-ready lint and dedup the stable-file read
Rescope nothing new: drop the needless async from the inherited readRaw
default (reject explicitly on abort), fix the void arrow shorthand in
downloadBlob, and share one revision-stable file-read loop between readRaw
and readPrefix in the JSONL backend.
2026-08-11 12:49:27 +08:00
_Kerman
118b1a8787 Merge remote-tracking branch 'origin/master' into feat/web-session-log-export
# Conflicts:
#	docs/subsystems/persistence.i18n.yaml
#	docs/subsystems/persistence.md
#	docs/subsystems/persistence.zh.md
#	packages/client/ui-trajectory/README.i18n.yaml
#	packages/client/ui-trajectory/README.md
#	packages/client/ui-trajectory/README.zh.md
#	packages/client/ui-trajectory/package.json
#	packages/client/ui-trajectory/src/client/TrajectoryView.tsx
#	packages/client/ui-trajectory/src/client/index.ts
#	packages/client/ui-trajectory/tests/client-bundle.spec.ts
#	packages/client/ui-trajectory/tests/views.spec.tsx
#	packages/host/apiproxy/package.json
#	pnpm-lock.yaml
2026-08-11 12:42:53 +08:00
Yichen Jiang
58cdf3d7f7 fix(client): adopt the renamed client plugin manifest key
Master moved the browser-half declaration from a top-level `dshClient` to
`dsh.client`, and the new package still carried the old key. The Loader row
resolved, the host half applied, and the bundle built — the browser simply
never mounted the entry, so the session header rendered no task control at all
while `ctx.tasks` held a running task. Nothing reported it; the web e2e is
what caught it.

Also carried the merged tree onto master's current package rules: the release
manifest shape (version, repository, workspace-protocol peers, no `private`)
and `@deepseek-ai/cordis` in place of the old `cordis` specifier, plus the
connection handle the locale plugin's settings scope now reads in tests.
2026-08-11 12:03:30 +08:00
Yichen Jiang
1a1c81f309 Merge remote-tracking branch 'origin/master' into worktree/web-background-tasks-display-258f7e
# Conflicts:
#	docs/subsystems/tasks.i18n.yaml
#	docs/subsystems/tasks.md
#	docs/subsystems/tasks.zh.md
#	packages/host/apiproxy/README.i18n.yaml
#	packages/host/apiproxy/README.md
#	packages/host/apiproxy/README.zh.md
#	packages/host/apiproxy/src/api-proxy.ts
#	packages/tasks/tasks-local/src/index.ts
#	packages/tasks/tasks/README.i18n.yaml
#	packages/tasks/tasks/README.md
#	packages/tasks/tasks/README.zh.md
#	packages/tasks/tasks/src/index.ts
2026-08-11 11:57:33 +08:00
_Kerman
2076c43442 fix(web): keep trajectory toolbar Duration/Turns/Calls/Export untranslated
Show the four toolbar terms in English even in the Simplified Chinese
dictionary, including their tooltips, aria labels, and the export failure
message, and update the pinned-zh specs to match.
2026-08-11 11:53:32 +08:00
_Kerman
ec9a08f1e2 refactor(web): rename trajectory detail tabs source→raw and origin→source
The markdown raw-source tab becomes Raw and the message-origin tab becomes
Source, keeping the renamed identifiers, labels, and overview links in sync.
2026-08-11 11:53:28 +08:00
NI0317
90a2a67b7e Merge remote-tracking branch 'origin/master' into feature/workspace-picker-composer 2026-08-11 11:09:36 +08:00
NI0317
1ac522ab5a docs(web): clarify workspace picker accessibility state 2026-08-11 11:08:14 +08:00
imccyu
45befb87e2 Merge branch 'master' into fix/agent-preset-ui-flow 2026-08-11 10:54:13 +08:00
NI0317
e3b4196ca0 Merge master into feature/workspace-picker-composer 2026-08-11 10:32:28 +08:00
imccyu
1af8c96682 perf(ui-trajectory): avoid locale formatting in hot path 2026-08-11 03:29:04 +08:00
imccyu
d66e693c63 fix(ui-trajectory): place steering before request boundary 2026-08-11 03:29:04 +08:00
imccyu
98a4cc6569 style(ui-trajectory): align presentation render tree 2026-08-11 03:29:04 +08:00
imccyu
2695f31edb test(ui-trajectory): assert deferred preview sources 2026-08-11 03:29:04 +08:00
imccyu
e27dba8457 perf(ui-trajectory): defer trajectory text processing 2026-08-11 03:29:04 +08:00