Commit Graph
3404 Commits
Author SHA1 Message Date
Turtle ad9fd17faf Merge pull request #4164 from deepseek-harness/turtle/orchestrator-3d7fcb93e79d
fix(client): show local changes in edit diff cards
2026-09-14 19:11:08 +08:00
Turtle f50309b5d9 fix(client): bound contextual diff comparison work 2026-09-14 19:02:59 +08:00
Yifffan 7c4067c24e Merge pull request #4044 from deepseek-harness/fix/sidebar-document-preview-polish
Sidebar refine: 侧边栏 PDF/图片预览/格式空态/loading 等整体优化
2026-09-14 18:37:30 +08:00
Turtle 53786d6415 test(client): guard contextual diff replay against page errors 2026-09-14 18:23:58 +08:00
Yif f51addaa0d fix(web-sidebar): resolve review feedback on document preview polish
- files tree records its scroll offset in a ref and commits it once on
  unmount, only while the owner's signal is live, so a scroll neither
  re-renders the tree nor writes to a forgotten bucket
- LoadingIndicator drops iconOnly and always renders icon-only
- registry and the unviewable list share one suffix-matching module, and
  register() rejects binaryExtensions entries outside extensions
- drop the ambiguous key suffix from the unviewable office group
- extract the text preview's header path block shared by the unsupported
  and content branches; clsx for static class joins; CSS trailing newline
- sync the preview-operations and polish Agent Notes with shipped facts
2026-09-14 18:06:23 +08:00
Turtle 242410cf4b fix(client): render actual changes in contextual diff cards 2026-09-14 17:52:28 +08:00
Yifffan 44cee2e1f5 Merge branch 'master' into fix/sidebar-document-preview-polish 2026-09-14 16:35:23 +08:00
Yichen Jiang 1daed09185 feat(web): follow application theme in sidebar terminals 2026-09-14 16:18:50 +08:00
07akioni 49fcf87cb2 Merge pull request #4133 from deepseek-harness/07akioni/fix-table-hover-height
fix(web): prevent short markdown tables from shifting on hover
2026-09-14 14:03:49 +08:00
_Kerman d3856902b6 Merge pull request #3880 from deepseek-harness/xtr/trajectory-json-string-wrapping
feat(client): improve trajectory JSON and PTC inspection
2026-09-14 14:01:59 +08:00
07akioni 8ab3579e06 test(web): guard fitting table geometry across interaction 2026-09-14 13:34:00 +08:00
Yichen Jiang 11b2114786 fix(web): align terminal launcher controls and guide appearance 2026-09-14 12:00:29 +08:00
07akioni 55a17d2e57 fix(ui): keep markdown table height stable on hover 2026-09-14 11:46:02 +08:00
_Kerman a85778448a Merge origin/master into xtr/trajectory-json-string-wrapping 2026-09-14 11:15:34 +08:00
Yichen Jiang 37e5d8c4aa fix(web): remember shell choices before terminal startup 2026-09-14 11:02:53 +08:00
Yichen Jiang 33d89aee77 feat(web): choose and remember terminal shells 2026-09-14 10:59:46 +08:00
Yichen Jiang 1b7b50bbe1 Merge remote-tracking branch 'origin/master' into worktree/web-sidebar-terminal
# Conflicts:
#	apps/web/package.json
#	docs/config-catalog.i18n.yaml
#	docs/config-catalog.md
#	docs/event-producer-consumer.i18n.yaml
#	docs/event-producer-consumer.md
#	docs/event-producer-consumer.zh.md
#	packages/api/remotes/src/client/index.ts
#	packages/e2b/subprocess-e2b/README.md
#	packages/e2b/subprocess-e2b/README.zh.md
#	packages/e2b/subprocess-e2b/src/index.ts
#	packages/e2b/subprocess-e2b/src/terminal.ts
#	packages/e2b/subprocess-e2b/tests/subprocess.spec.ts
#	packages/e2b/subprocess-e2b/tests/terminal.spec.ts
#	packages/mcp/mcp-resources/README.i18n.yaml
#	pnpm-lock.yaml
#	scripts/verify-package-readme-model-experience.ts
#	snapshots/session/cordis-inspect-jsdoc/session.v3.jsonl
#	tsconfig.base.json
#	tsconfig.client.json
#	tsconfig.host.json
2026-09-14 10:36:31 +08:00
imccyu c0e8252afe refactor(client): remove fixture-only API residue 2026-09-13 22:51:53 +08:00
imccyu 7e331d72ed test(file-upload): cover unnamed byte uploads 2026-09-13 21:54:31 +08:00
imccyu 5541ae0d2d refactor(client): replace browser fixture with RemoteMock 2026-09-13 21:30:03 +08:00
imccyu c1504a2aa6 fix(client-modules): resolve the owning Loader instance 2026-09-13 21:27:54 +08:00
imccyu 77db56687b test(ui-message-feedback): use RemoteMock 2026-09-13 21:27:53 +08:00
imccyu a475a65bed fix(client-test-runtime): isolate client instances 2026-09-13 21:27:53 +08:00
Tianyi Cui 76941d0085 fix(workspace): keep the newest archive set from stale replies
Both archive verbs answer with the complete set, so a reply that lands
after a newer request or after a pushed increment overwrote it. The
Client model now installs an answer only while it is still the latest
archive-set request, and the follow increment and baseline supersede it.

Also narrow the page's public surface and its states: the locale
namespace stays internal, row derivation is a memo over the framework
hooks, the search input carries one accessible name, the empty-archive
message no longer covers a set whose entries cannot be restored, and the
new package declares no client dependency edge it does not import.
2026-09-13 16:45:45 +08:00
Tianyi Cui 5f773a0ded feat(workspace): restore archived sessions from a settings page
Sessions could be archived from the sidebar row menu but never restored:
the registry-global archive set was a one-way display filter with no
inverse RPC and no surface listing its members.

WorkspaceRegistry.unarchiveSession drops one id from archivedSessionIds in
one durable write on the same operation chain as archive, with no
session-existence probe because a removal cannot introduce an unknown
referent. The Workspace controller exposes it as workspace.unarchiveSession
returning the complete archive set, which the existing archived follow
increment already propagates, so no frame type and no persisted field
changes.

The new client package dsh-client-ui-settings-unarchive-sessions owns the
restore surface: one localized settings.section page listing the archive
set joined with loaded session summaries, newest archive first, searchable
by title or workspace, with one Unarchive action per row.
2026-09-13 16:45:45 +08:00
Yif 25e6e976b7 test(sidebar-documentpreview): cover the visible-label loading branch and drop the stale single-viewer control from the seeded-history golden 2026-09-13 13:28:16 +08:00
Yifffan 20d78f0e77 Merge branch 'master' into fix/sidebar-document-preview-polish 2026-09-13 07:26:09 +02:00
Tianyi Cui 8f14f98a1a ci(web): verify composed profiles, live registries, and bundle inputs 2026-09-12 20:56:26 +08:00
Tianyi Cui 739285c813 docs: correct surviving package and service references 2026-09-12 20:20:02 +08:00
Tianyi Cui 66734e344a Merge Computer Use parent into Auto review for PR stack 2026-09-12 17:06:46 +08:00
Tianyi Cui 7c9bb5914c refactor(ptc): align runtime packages and services with PTC naming 2026-09-12 15:03:04 +08:00
Tianyi Cui 2344830cfd test(code-runtime): align UI binding fixture and shared diagnostic ownership 2026-09-12 15:03:02 +08:00
Tianyi Cui 8e19ec4962 feat(code-runtime): complete sandboxed Node execution and Session fixtures 2026-09-12 15:03:01 +08:00
Tianyi Cui 75ed8da3e0 feat(code-runtime): execute Node programs through confined processes 2026-09-12 15:03:01 +08:00
Tianyi Cui f95f7ec8dc refactor(code-runtime): name the Node runtime provider 2026-09-12 15:03:01 +08:00
Tianyi Cui 647e2aefbf Merge master into Auto review and reconcile recorded API types 2026-09-12 14:17:13 +08:00
Yifffan 1f76250952 Merge branch 'master' into fix/sidebar-document-preview-polish 2026-09-11 18:37:35 +02:00
Yif 004dceed5e feat(sidebar-files): restore the tree's scroll position across tab switches 2026-09-12 00:07:50 +08:00
Yif adbe7e6395 fix(documentpreview): draw pdf page placeholders on the skeleton token 2026-09-12 00:07:40 +08:00
Yif 351b399639 feat(ui-commands): swap the feedback command icon to a paper plane 2026-09-11 23:42:32 +08:00
Yif f210305689 fix(documentpreview): fit images to the pane and polish binary and loading states 2026-09-11 23:42:20 +08:00
Turtle b625ebe440 Merge pull request #3151 from deepseek-harness/turtle/ban-ambiguous-origin-label
Ban an ambiguous origin label
2026-09-11 23:18:52 +08:00
Turtle 2b05a43eca fix: address concrete terminology review findings 2026-09-11 17:45:28 +08:00
Turtle 71d50b4a84 refactor: ban ambiguous origin label 2026-09-11 17:45:28 +08:00
Chinesezjc 62dd508cb0 test(permission): pin the disposed guard on the invalidation tick
The late-listener case now carries a pending generation change, so its
assertions depend on the disposed guard, and the silent-generation cases assert
their tick counts.
2026-09-11 17:45:23 +08:00
imccyu 41915703cc refactor(conversation): move default views to its own module 2026-09-11 17:34:27 +08:00
imccyu f4dbec93df refactor(conversation): extract default views component 2026-09-11 17:34:27 +08:00
imccyu 8f5b1d71e3 refactor(conversation): move main panel to its own module 2026-09-11 17:34:27 +08:00
imccyu 0db88bd58d refactor(conversation): move content component to its own module 2026-09-11 17:34:26 +08:00
imccyu 2477554471 refactor(conversation): extract content component 2026-09-11 17:34:26 +08:00