Commit Graph
4893 Commits
Author SHA1 Message Date
ZiyaZhang fa67427c39 Merge remote-tracking branch 'origin/master' into feat/gui-full-access-confirmation
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-30 07:48:33 -07:00
Tianyi Cui 7e381bf70f Merge remote-tracking branch 'origin/master' into worktree/pr798-retarget-config-20260730 2026-07-30 22:47:31 +08:00
Tianyi Cui 6f89c6405d Merge pull request #1001 from deepseek-harness/worktree-optgate
revert CI cocurrency 4/12
2026-07-30 22:46:33 +08:00
Chinesezjc 425e59119a Merge remote-tracking branch 'origin/master' into feat/web-diff-card
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-30 22:46:27 +08:00
kingwl 1986de9ac1 fix(web): show plan status only while active 2026-07-30 22:42:25 +08:00
Tianyi Cui 16a287d726 Merge remote-tracking branch 'origin/master' into worktree/pr798-retarget-config-20260730 2026-07-30 22:41:07 +08:00
Tianyi Cui 48b0cb25fd fix(fs-search): respect platform path separators
Group paths using node:path.sep so POSIX backslashes remain filename characters while Windows continues to treat them as separators.
2026-07-30 22:26:33 +08:00
Tianyi Cui 72220dd821 fix(fs-search): drop exhausted glob sample groups
Keep only groups with another path in the active round. This bounds skewed sampling by paths visited instead of rescanning every singleton for every late-group item.
2026-07-30 22:26:33 +08:00
Chinesezjc fe5098a2bc fix(fs): correct Note pre-release link and restore read.ts decline coverage
The Note's pre-release-stance link used the wrong depth and target
(../../../CLAUDE.md); point it at ../../../../AGENTS.md with the section
anchor so verify-md-links passes. The presentResult decline test's meta
lacked the now-required offset, so it declined at meta narrowing instead of
exercising the content-shape decline (read.ts:181-183); add offset back.
2026-07-30 22:26:14 +08:00
Chinesezjc c1d88ffb7b fix(client-web): pin keyed WebRow in boot smoke, show empty-search feedback
- built-boot smoke asserts [data-variant=web][data-tool=web_search/fetch]
  (the keyed WebRow) instead of [data-web] (which WebBlock draws even on the
  GenericToolCard fallback, so a silent keyed-registration failure passed).
- WebBlock renders an explicit empty-state note when a search returns no
  answer and no sources, instead of a blank <ol>; the chat row does not
  surface the raw result content, so the backend's 'No results found.' was
  otherwise invisible.
- README (ui-conversation, ui-primitives) and the frontend Agent Note record
  the unknown-web-kind null arm, the details-panel flattened body, and the
  empty-search copy; pairings re-recorded.
2026-07-30 22:24:57 +08:00
Chinesezjc 03d1e6855a Merge remote-tracking branch 'origin/master' into feat/web-diff-card 2026-07-30 22:24:51 +08:00
Chinesezjc 1ea5f0b124 test(tui): cover diffContentLines empty-side arm
The coverage lane flagged transcript.ts line 63 (diffContentLines' empty-text
return) uncovered: the same-file diff test only fed newline-terminated sides.
Add a third hunk removing a line with an empty added side (a full deletion), so
the empty arm runs and the footer proves the empty side draws no `+ ` row
(+2 -1 · 1 file). Raise the test's line budget so every hunk row stays visible.
2026-07-30 22:24:29 +08:00
Yichen Jiang 55ae4751b7 Merge worktree-llm-web-config (939, with latest master) into worktree/onboarding-deepseek-config 2026-07-30 22:21:05 +08:00
Tianyi Cui 9a0ee6fbfe Merge branch 'master' into worktree/deepseek-max-tokens-defaults 2026-07-30 22:20:47 +08:00
Yichen Jiang 015b065e9d Merge worktree-llm-dynamic-config (884, with latest master) into worktree-llm-web-config
# Conflicts:
#	apps/web/tests/scaffold.ts
2026-07-30 22:19:53 +08:00
Tianyi Cui 8f275cbf5a Merge branch 'master' into xtr/trajectory-timeline-click-focus 2026-07-30 22:19:42 +08:00
Tianyi Cui dc5f270ae2 Merge branch 'master' into codex/queue-collapse 2026-07-30 22:18:44 +08:00
Yichen Jiang 80c36ff0d3 Merge latest master into worktree-llm-dynamic-config 2026-07-30 22:18:16 +08:00
Tianyi Cui b5f5a01dcb Merge remote-tracking branch 'origin/master' into worktree/pr798-retarget-config-20260730 2026-07-30 22:14:08 +08:00
imccyu f2bbc0f453 Merge branch 'master' into worktree-forkweb 2026-07-30 22:12:50 +08:00
Ziya a1738d3769 Merge branch 'master' into feat/gui-full-access-confirmation 2026-07-30 10:11:13 -04:00
creatixchu 1102cfc1f3 Merge remote-tracking branch 'origin/master' into worktree/plan-review-layout 2026-07-30 22:10:56 +08:00
Yichen Jiang 5251a13a25 fix(app-boot): survive a surface that exits before the tree settles
boot() asserts over ctx.loader after awaiting the Loader, but the TUI renders
as soon as its own fiber starts: an /exit typed before the last entry settles
runs disposeRootAndExit, which takes the Loader service with the tree. The
assertions then read undefined and crashed the process with a TypeError over
an app that exited exactly as asked. The keyless personal-overlay PTY smoke
lost this race in roughly two of three runs.
2026-07-30 22:09:03 +08:00
Chinesezjc 8e6a035d04 Merge remote-tracking branch 'origin/master' into feat/read-presenter 2026-07-30 22:00:43 +08:00
Chinesezjc 4fbe46c381 fix(fs): persist read window offset in the read card meta
An empty read window (byte cap below the first selected line: `lines: []`
with `totalLines > 0`) dropped `offset` from the persisted presentation
meta, so a replayed read card could not report where the window starts or
where a continuation resumes. Carry `offset` on `FsReadMeta`,
`ReadResultView`, and the `presentationMeta` projection, and validate it in
`readMetaFromMeta` (1-based integer; the first line number may not fall
below it). Re-record the ACP fixtures and the cordis api catalog.

Also correct the Note's `parallel-file-reads` golden path
(examples/tui-agent -> apps/cli) and record the pre-card replay-degradation
tradeoff in the Decision section.
2026-07-30 22:00:35 +08:00
Chinesezjc ec0d3c2359 Merge remote-tracking branch 'origin/master' into feat/web-presenter 2026-07-30 21:55:37 +08:00
Chinesezjc f070597378 fix(tool-web): share one source projection between search execute and meta
The web_search execute result and searchMetaFromValue each spread the
same {url, title?, snippet?, publishedAt?} projection over a seam source,
which the duplication gate flags as a clone. Extract projectSource, typed
on the seam's WebSearchSource, so both sites carry a byte-identical shape
from one definition.
2026-07-30 21:55:22 +08:00
Yichen Jiang 02b8529405 Merge origin/master into worktree/deepseek-max-tokens-defaults
# Conflicts:
#	docs/cordis-catalog/services.md
#	docs/core-data-structures/core.i18n.yaml
#	docs/core-data-structures/session.i18n.yaml
#	packages/core/session/README.i18n.yaml
2026-07-30 21:55:07 +08:00
imccyu 6f2e8fb6aa Merge branch 'master' into worktree-forkweb 2026-07-30 21:53:03 +08:00
Yichen Jiang e5d7fa4cef Merge worktree-llm-web-config (939, with latest master) into worktree/onboarding-deepseek-config 2026-07-30 21:52:25 +08:00
Chinesezjc de36fde01c Merge remote-tracking branch 'origin/master' into feat/web-diff-card 2026-07-30 21:51:48 +08:00
Chinesezjc 568c564db4 fix(web): update diff-card tests for the openFile no-double-resolve contract
The coverage lane caught a regression in the prior commit: FileMutationRow now
passes the tool's raw path to the injected openFile (which resolves against cwd
in apply.ts), but diff-card.spec still asserted the row pre-resolved. Assert on
the raw path instead. Also fix the built-boot diff assertion to match on the
line body and footer text — the `+ ` prefix is a CSS ::before, absent from
textContent.
2026-07-30 21:51:27 +08:00
imccyu e35e2a9f3e perf: tsc 2026-07-30 21:50:48 +08:00
Yichen Jiang 5fd34f9109 fix(agent-loop): rematerialize adapter defaults 2026-07-30 21:49:58 +08:00
Turtle 7f1c724165 merge: update origin/master 2026-07-30 21:49:51 +08:00
Turtle f04b35c6a4 fix(test): isolate jsdom storage on Node 26 2026-07-30 21:49:33 +08:00
Yichen Jiang cd6027125c Merge latest master into worktree-llm-dynamic-config 2026-07-30 21:49:30 +08:00
Wenlu Wang a1c8fa06a0 Merge branch 'master' into codex/queue-collapse 2026-07-30 21:46:37 +08:00
Yichen Jiang a5e0c5e7e7 Merge latest master into worktree-llm-web-config
# Conflicts:
#	packages/host/apiproxy/README.i18n.yaml
2026-07-30 21:45:55 +08:00
ZiyaZhang c2bce3cac6 fix(client): unblock full access CI gates 2026-07-30 06:45:36 -07:00
Chinesezjc 2b3d1a3dd9 Merge remote-tracking branch 'origin/feat/web-presenter' into feat/web-web-card 2026-07-30 21:45:02 +08:00
creatixchu ddc4adb7a3 Merge remote-tracking branch 'origin/master' into feat/dir-selector-adaptive-default 2026-07-30 21:42:30 +08:00
Tianyi Cui ec9ff784fa Merge remote-tracking branch 'origin/master' into feature/directory-listing-tool 2026-07-30 21:41:25 +08:00
Chinesezjc 46e18cf0d3 Merge remote-tracking branch 'origin/master' into feat/web-diff-card 2026-07-30 21:37:01 +08:00
Chinesezjc 1fd6b5a107 fix(web): diff card review — TUI parity, path-header overlap, double-resolve
Bring the TUI diff footer onto the same terminator rule and distinct-path
count the Web DiffBlock uses (a trailing newline terminates its line; two
hunks in one file read as 1 file), so the two front ends' `+A -R · N file(s)`
footers agree. Reserve space in the diff path header for the floating copy
button so a long path no longer scrolls under it. Pass the tool's raw path to
the injected openFile (which already resolves against cwd) instead of resolving
twice. Rename the shared block-body CSS class to a card-neutral cardBody so a
terminal-spacing tweak cannot silently move the diff card. Add a same-file
two-hunk TUI unit test and an assembled built-boot assertion that the write
turn renders +1 -0 · 1 file end to end.
2026-07-30 21:36:42 +08:00
Tianyi Cui 99db7e8fc3 Merge remote-tracking branch 'origin/master' into feature/directory-listing-tool 2026-07-30 21:35:08 +08:00
Yichen Jiang dceff19bd3 fix(jsonrpc-agent): claim the renamed route in the persistent-tools replay catalog
The rename to deepseek-official reached cordis.snapshot.yml but not its
persistent-tools sibling, so the replay catalog no longer owned the route the
agent asks for. The SDK server then mounted the real adapter, which failed the
turn on a missing key. Re-records the six transcripts and the two diagnostics
cards that still carried the old route name.
2026-07-30 21:34:46 +08:00
07akioni eef07b51a7 Merge branch 'master' into fix/turn-actions 2026-07-30 21:29:29 +08:00
Chinesezjc 00c264fa50 Merge remote-tracking branch 'origin/master' into feat/web-presenter 2026-07-30 21:29:05 +08:00
Chinesezjc fb0063de48 fix(tool-web): unexport renderFetchOutput so its memo stays behind the frozen path
renderFetchOutput has no external consumer: only formatFetchOutput and
fetchMetaFromValue call it, both through the registry, which deep-freezes
the result value. Exporting it let a hypothetical caller mutate a cached
input or the returned RenderedFetch and desync the card's truncated flag
from the model text. Drop it from the barrel and document that the memo
needs no defensive copy because every caller is internal and read-only.
2026-07-30 21:28:54 +08:00