Commit Graph

8138 Commits

Author SHA1 Message Date
Tianyi Cui
81e5ee7e3e Merge branch 'master' into pr/adapter-registration-race 2026-07-31 15:22:35 +08:00
NI0317
1beb38554e fix(review): align runtime-context diagnostics and docs 2026-07-31 15:19:59 +08:00
imccyu
fa7ea5c01c doc: storage-root note tracks the shipped $DSH_HOME/storages overlay anchor 2026-07-31 15:18:02 +08:00
NI0317
2bed90d355 Merge remote-tracking branch 'origin/agent/update-internal-beta-copy' into feature/gui-welcome-copy-v2
# Conflicts:
#	README.i18n.yaml
#	README.md
#	README.zh.md
2026-07-31 15:14:01 +08:00
NI0317
b9863e4c3a Merge remote-tracking branch 'origin/master' into feature/gui-welcome-copy-v2 2026-07-31 15:12:02 +08:00
Turtle
732c9e6d95 fix(tui): release the adapter-registration listener on channel detach
Review follow-up: the llm/adapters-updated listener's disposer was
discarded, leaving it firing (harmlessly, behind isDisposed()) between
TUI shutdown and fiber disposal, asymmetric with the sibling channel
listeners. The controller now exposes detach(), and the channel's
detachListeners() calls it on both the dispose() and startup-failure
paths.
2026-07-31 15:11:24 +08:00
Chinesezjc
b140590451 fix(web-read-card): add archivedSessionIds to read-card.spec workspace state
The master merge added a required archivedSessionIds field to WorkspaceListState;
the read-card spec's DetailsPanel fixture state needs it to typecheck.
2026-07-31 15:10:19 +08:00
imccyu
584e89d313 test: scaffold comment follows the storage-json home-anchored root 2026-07-31 15:09:10 +08:00
imccyu
408b003bad feat: use DSH_HOME for storages 2026-07-31 15:05:45 +08:00
NI0317
469dc8ffce Merge remote-tracking branch 'origin/master' into codex/sandbox-policy-context 2026-07-31 15:05:37 +08:00
NI0317
d3ff2c3653 docs(onboarding): update internal testing notice 2026-07-31 15:04:24 +08:00
NI0317
1b2f05d438 Merge remote-tracking branch 'origin/master' into codex/sandbox-policy-context 2026-07-31 15:04:11 +08:00
Turtle
e8626a2baa Merge pull request #1044 from deepseek-harness/codex/fix-persistence-catalog-toc
fix(docs): index persistence events in page outline
2026-07-31 15:03:26 +08:00
NI0317
3da219461c Merge origin/master into codex/sandbox-policy-context 2026-07-31 15:03:11 +08:00
imccyu
00132be487 Merge pull request #1016 from deepseek-harness/feature/gui-first-run-welcome
feat(web): show a versioned welcome before DeepSeek setup
2026-07-31 15:00:59 +08:00
imccyu
95c238a74f Merge remote-tracking branch 'origin/master' into mergebot/pr1016 2026-07-31 14:51:15 +08:00
imccyu
ef01e2e9af Merge pull request #1046 from deepseek-harness/worktree-infdev01
Shared anonymous user id from $DSH_HOME/.userid, reported as OTel Resource user.id
2026-07-31 14:49:00 +08:00
imccyu
06fc3c68a6 Merge pull request #1039 from deepseek-harness/worktree/composer-scroll-sync
fix(web): scroll the composer's glyph layer with its textarea
2026-07-31 14:48:41 +08:00
Chinesezjc
b155051d48 Merge remote-tracking branch 'origin/master' into feat/web-read-card
# Conflicts:
#	packages/client/ui-conversation/src/client/apply.ts
#	packages/client/ui-conversation/src/client/chat/GenericToolCard.tsx
#	packages/client/ui-conversation/src/client/skeleton/DetailsPanel.tsx
#	packages/client/ui-conversation/tests/chat-apply.spec.tsx
#	packages/client/ui-primitives/src/index.ts
2026-07-31 14:46:41 +08:00
imccyu
5dcb096015 Merge pull request #997 from deepseek-harness/worktree/chat-ui-polish
fix(web): polish chat activity and queue states
2026-07-31 14:45:23 +08:00
imccyu
4c01550833 Merge remote-tracking branch 'origin/master' into mergebot/pr1016 2026-07-31 14:43:03 +08:00
Chinesezjc
62275b6cd6 Merge remote-tracking branch 'origin/master' into feat/search-presenter
# Conflicts:
#	docs/config-catalog.md
#	docs/cordis-catalog/events.md
#	docs/cordis-catalog/services.md
#	docs/core-data-structures/tools.i18n.yaml
#	docs/core-data-structures/tools.md
#	docs/core-data-structures/tools.zh.md
#	docs/event-producer-consumer.md
#	examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
#	packages/cordis/tool-cordis/src/api-catalog.ts
#	packages/core/tools/README.i18n.yaml
#	packages/core/tools/README.md
#	packages/core/tools/README.zh.md
#	packages/core/tools/src/index.ts
#	packages/core/tools/src/presentation.ts
#	packages/ui/tui/src/components/transcript.ts
2026-07-31 14:40:29 +08:00
fz
a43a0b5cff fix(compact): soften English checkpoint rule 2026-07-31 14:40:11 +08:00
Yichen Jiang
aa121e409f test(web): refresh running-turn snapshots 2026-07-31 14:38:27 +08:00
Yichen Jiang
398878e52a Merge branch 'master' into worktree/core-web-minimal-profile 2026-07-31 14:34:37 +08:00
imccyu
ec3761f66e fix: ci 2026-07-31 14:33:39 +08:00
creatixchu
a2c5f7dc0a Merge remote-tracking branch 'origin/master' into worktree/composer-scroll-sync 2026-07-31 14:32:14 +08:00
Tianyi Cui
3dc2a449e5 Merge latest master into web transcript projection 2026-07-31 14:32:03 +08:00
Tianyi Cui
5c394b1743 Merge latest master into web transcript projection
# Conflicts:
#	packages/client/runtime/README.i18n.yaml
2026-07-31 14:31:14 +08:00
Chinesezjc
538488506f Merge pull request #973 from deepseek-harness/feat/read-presenter
feat(fs): add a read render-intent card for the read tool result
2026-07-31 14:30:31 +08:00
Yichen Jiang
936b8c4033 Merge remote-tracking branch 'origin/master' into worktree/core-web-minimal-profile 2026-07-31 14:29:12 +08:00
Yichen Jiang
3d438eb329 feat(cli): add minimal Core Web profile 2026-07-31 14:28:52 +08:00
imccyu
ec5399e074 doc: agent note for the telemetry anonymous user id 2026-07-31 14:28:03 +08:00
imccyu
bff581ffb3 feat(telemetry): anonymous user id from $DSH_HOME/.userid, reported as OTel Resource user.id
session-telemetry-otel owns the identity as its own module (src/user-id.ts):
getOrCreateAnonymousUserId() returns the bare UUID line in $DSH_HOME/.userid,
minting a random UUID v4 on first use — synchronous IO with a process-lifetime
memo keyed by resolved path, an exclusive-create (wx) settle for concurrent
first launches, best-effort on read-only homes, and deletion resetting the
identity on the next launch by design.

The backend carries the id as the Resource's user.id (the OTel semconv user
attribute), once per export batch alongside service.name/service.version.
The identity belongs to the OTel feed alone; the dsh-sdk launcher telemetry
keeps its own separate store.
2026-07-31 14:28:03 +08:00
creatixchu
22d6b1ed81 Merge remote-tracking branch 'origin/master' into worktree/composer-scroll-sync 2026-07-31 14:26:51 +08:00
imccyu
4c9056edb9 Merge pull request #1024 from deepseek-harness/worktree-archsession
feat: archive session from the sidebar session list
2026-07-31 14:21:30 +08:00
Yichen Jiang
a2a79ada82 test(web): scope retry status assertion 2026-07-31 14:18:47 +08:00
Yichen Jiang
e0e48bfc10 Merge remote-tracking branch 'origin/master' into worktree/chat-ui-polish
# Conflicts:
#	apps/web/tests/snapshots/live-interactions/retry.expected.md
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-31 14:16:51 +08:00
Tianyi Cui
25bf8625c5 Merge pull request #1045 from deepseek-harness/worktree/pr962-simplify
refactor(sandbox-policy): simplify current-policy context
2026-07-31 14:14:15 +08:00
fz
86355f5d41 Merge remote-tracking branch 'origin/master' into codex/compact-english-checkpoint 2026-07-31 14:13:42 +08:00
Ziya
cbd74eb2ae Merge branch 'master' into docs/third-party-notices 2026-07-31 02:12:35 -04:00
imccyu
f5680ffabe fix: ci 2026-07-31 14:08:13 +08:00
imccyu
b8b5403f0a fix: ci 2026-07-31 14:08:13 +08:00
imccyu
d2dff40560 feat(ui-workspace): blank New Session rows render no menu and no time
A blank row is a provisional placeholder: nothing has happened in it,
so the row verbs (rename/fork/archive) and a 'now' stamp would act on
content that does not exist. The trailing cells and the hover card's
time line stay off until the first prompt lands.
2026-07-31 14:08:13 +08:00
imccyu
9ed87a6dba refactor(client): archivedSessionIds public face becomes a plain array
Public snapshot state stays in the store engine's plain-data vocabulary
(immer drafts reject Sets without the MapSet plugin, which stays off):
manager/service/contract carry readonly SessionId[] in Host order, and
the tree derivations build their own transient Set — the
expandedProjects pattern. Membership-unchanged installs still keep the
array reference for Object.is short-circuits.
2026-07-31 14:08:13 +08:00
imccyu
5fc2645afc docs: regenerate the cordis catalog for the archiveSession contract change 2026-07-31 14:08:13 +08:00
imccyu
d3e8f17a54 fix: review follow-ups for the session archive set
- WorkspaceRegistry.archiveSession no longer wraps persistence-listing
  failures as WorkspaceUnknownSessionError: only a definite miss (live
  lookup, header index, then a fresh list) maps to session-not-found;
  storage faults propagate as internal errors, with a negative test.
- The archived-current sweep moves from the unary path into the
  projection: any install path (local echo, another tab's frame, a
  reconnect baseline) clears a selection that landed in the archive set.
- An archive set installed while workspace.list is in flight supersedes
  the stale baseline's set instead of being rolled back by it.
- The workspace-management e2e anchors the archived row by its session
  actions button and asserts the single-stray fixture assumption loudly.
- Drop the stale touchSession rows from the workspace READMEs (the
  method was removed with its Agent Note).
2026-07-31 14:08:13 +08:00
imccyu
c00f0dccda test(test-runtime): cover the archiveSession double's default and stub arms
The default arm builds the next Set outside the immer draft: reading a
Set through a draft requires the MapSet plugin, assigning a fresh Set
does not.
2026-07-31 14:08:13 +08:00
imccyu
fc0042e47e fix(client-runtime): never reuse an archived blank session in connectWorkspace
Reusing one would open a session no grouping surface can show; the New
Session flow mints a fresh blank instead.
2026-07-31 14:08:13 +08:00
imccyu
3b86c288d6 docs: catalogs and Agent Note for the session archive set 2026-07-31 14:08:13 +08:00