Commit Graph
5901 Commits
Author SHA1 Message Date
creatixchu 22d6b1ed81 Merge remote-tracking branch 'origin/master' into worktree/composer-scroll-sync 2026-07-31 14:26:51 +08:00
_Kerman 12a48558f2 fix(agent-loop): stop driver after cancellation 2026-07-31 14:23:01 +08:00
Tianyi Cui 009657dc32 Merge finalized manual compaction parent 2026-07-31 14:20:36 +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
fz 86355f5d41 Merge remote-tracking branch 'origin/master' into codex/compact-english-checkpoint 2026-07-31 14:13:42 +08:00
_Kerman b57291d272 Merge branch 'master' into xtr/trajectory-timeline-polish 2026-07-31 14:12:13 +08:00
Tianyi Cui 6a31f5bf2a Merge finalized Web transcript parent
# Conflicts:
#	.agents/notes/implemented/architecture/2026-07-30-session-end-seed-log-boundary.i18n.yaml
2026-07-31 14:11:40 +08:00
_Kerman e11f858357 Merge remote-tracking branch 'github/xtr/trajectory-timeline-polish' into xtr/trajectory-timeline-polish 2026-07-31 14:10:04 +08:00
_Kerman d9d1c3e079 fix(trajectory): use runtime preference persistence 2026-07-31 14:09:56 +08:00
Yichen Jiang a332f2f333 feat(web): configure custom DeepSeek models 2026-07-31 14:08:59 +08: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 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
imccyu e235be2bac feat(ui-workspace): archive session from the row menu
The visual-only Delete session placeholder becomes a wired Archive
session action: no confirmation dialog (non-destructive), failures stay
console diagnostics. tree.ts hides archived sessions in every
derivation (workspace groups, Ungrouped, search, flat list) through the
sessionVisible predicate. The workspace-management e2e pins the archive
round trip across reload.
2026-07-31 14:08:13 +08:00
imccyu c764ed7e64 feat(client-runtime): project the archive set and the archiveSession action
WorkspaceListState gains archivedSessionIds (ReadonlySet, replaced only
on membership change), installed as full snapshots from the list
baseline, the unary echo, and the changed frame. Archiving the current
session clears the selection into the New Session view state. Test
doubles (test-runtime, fake APIs, fixture client) follow the widened
IWorkspaces/IApiClient faces.
2026-07-31 14:08:13 +08:00
imccyu 53ceab53b8 feat(apiproxy): workspace.archiveSession RPC and archived-sessions frame
workspace.archiveSession answers the full updated archive set;
workspace.list carries the set as the reconnect baseline; the host
stream pushes host/archived-sessions-changed full snapshots from the
domain/changed global-put branch (same posture as workspace-changed).
Unknown sessions map to the existing session-not-found code.
2026-07-31 14:08:11 +08:00
imccyu b00cd0cd8c feat(workspace): add registry-global archivedSessionIds set
The workspace domain global singleton gains archivedSessionIds (schema
default [], version unchanged): a display-layer archive set layered over
workspace accounting. archiveSession() rides the registry operation
chain, validates the session against live/persisted headers, and is
idempotent; archived sessions keep their sessionIds slot so a future
unarchive restores position.
2026-07-31 14:07:51 +08:00
Tianyi Cui 74398e87f6 Merge latest master into Web transcript 2026-07-31 14:07:24 +08:00
creatixchu dec1950b6a Merge remote-tracking branch 'origin/master' into worktree/composer-scroll-sync 2026-07-31 14:07:04 +08:00
Yichen Jiang 6acdb6631d Merge pull request #1036 from deepseek-harness/worktree/permission-default-settings
feat(permission): configure new-session defaults in Web settings
2026-07-31 14:05:00 +08:00
Tianyi Cui 4332c679ad Merge concurrent TUI documentation update 2026-07-31 13:58:57 +08:00
Tianyi Cui 0ae83a9536 Merge finalized manual compaction parent 2026-07-31 13:57:39 +08:00
Hypatia May 9ca52cbcf0 docs(tui): simplify compaction state comment 2026-07-31 13:57:18 +08:00
Tianyi Cui 0592da73ea Merge finalized Web transcript parent 2026-07-31 13:56:32 +08:00
Chinesezjc fe7ae124b7 Merge remote-tracking branch 'origin/master' into feat/read-presenter 2026-07-31 13:55:00 +08:00
_Kerman 741fc7dc79 fix(agent-loop): report turn failures at source 2026-07-31 13:54:36 +08:00
Tianyi Cui bb3c0d127d Merge latest master into Web transcript 2026-07-31 13:50:34 +08:00
Tianyi Cui da541c10a7 docs: align runtime-context contracts 2026-07-31 13:49:41 +08:00
Tianyi Cui e088cfa59d refactor(sandbox-policy): remove capability family registries 2026-07-31 13:49:41 +08:00
Tianyi Cui e6407477a7 fix(agent-loop): clear compacted runtime context 2026-07-31 13:49:40 +08:00
creatixchu 676fee485a Merge remote-tracking branch 'origin/master' into worktree/composer-scroll-sync 2026-07-31 13:46:05 +08:00
Tianyi Cui cff0e5d9a4 Merge master into codex/sandbox-policy-context 2026-07-31 13:45:37 +08:00
Yichen Jiang 8ab6473660 test(permission): cover settings confirmation paths 2026-07-31 13:45:22 +08:00
Tianyi Cui 7a92f23ad4 Merge finalized manual compaction parent 2026-07-31 13:44:34 +08:00
Yichen Jiang 75f2489ba1 Merge pull request #1031 from deepseek-harness/worktree/fix-models-settings
fix(web): improve Models settings presentation and safety
2026-07-31 13:44:11 +08:00
Tianyi Cui 98f48fd83a Merge finalized Web transcript parent
# Conflicts:
#	apps/cli/README.i18n.yaml
#	packages/client/runtime/README.i18n.yaml
#	packages/client/ui-trajectory/README.i18n.yaml
#	packages/client/ui-trajectory/README.zh.md
2026-07-31 13:42:47 +08:00
NI0317 cf4027afe8 Merge remote-tracking branch 'origin/master' into feature/gui-first-run-welcome
# Conflicts:
#	packages/host/apiproxy/README.i18n.yaml
2026-07-31 13:41:17 +08:00
Yichen Jiang 7aa126e0d5 test(session): expect empty fork seed marker 2026-07-31 13:36:40 +08:00
NI0317 139464f3e7 docs(onboarding): refine internal testing notice 2026-07-31 13:34:13 +08:00
Chinesezjc c77932b267 Merge remote-tracking branch 'origin/feat/search-presenter' into feat/web-search-card
# Conflicts:
#	packages/client/connection/src/client/fixture.ts
#	packages/client/ui-conversation/README.i18n.yaml
#	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.module.css
#	packages/client/ui-conversation/src/client/skeleton/DetailsPanel.tsx
#	packages/client/ui-conversation/tests/chat-apply.spec.tsx
#	packages/client/ui-primitives/README.i18n.yaml
#	packages/client/ui-primitives/README.md
#	packages/client/ui-primitives/README.zh.md
#	packages/client/ui-primitives/src/index.ts
2026-07-31 13:32:49 +08:00
Tianyi Cui 4535782742 Merge master into codex/sandbox-policy-context 2026-07-31 13:31:13 +08:00
NI0317 0ed9b20d8f Merge latest origin/master into feature/tui-first-run-welcome 2026-07-31 13:28:21 +08:00
Yichen Jiang cb60e1759a Merge remote-tracking branch 'origin/master' into worktree/permission-default-settings
# Conflicts:
#	packages/host/apiproxy/README.i18n.yaml
2026-07-31 13:27:43 +08:00
Tianyi Cui 378c3ac364 Merge latest master into Web transcript 2026-07-31 13:24:51 +08:00