Tianyi Cui
7d04e4654a
Merge remote-tracking branch 'origin/master' into worktree/pr1018-todo-retarget-20260731
...
# Conflicts:
# apps/cli/README.i18n.yaml
# packages/ui/tui/README.i18n.yaml
2026-07-31 19:23:34 +08:00
Tianyi Cui
3aa98ba609
Merge remote-tracking branch 'origin/master' into worktree/pr1018-todo-retarget-20260731
...
# Conflicts:
# apps/cli/README.i18n.yaml
# apps/cli/README.md
# apps/cli/README.zh.md
2026-07-31 19:17:50 +08:00
NI0317
c4d88bc25e
Merge latest origin/master into feature/tui-first-run-welcome
...
# Conflicts:
# apps/cli/README.i18n.yaml
2026-07-31 17:49:03 +08:00
NI0317
346d1e4c74
fix(tui): address onboarding review feedback
2026-07-31 17:47:07 +08:00
imccyu
abc77e707e
Merge remote-tracking branch 'origin/feat/manual-compact-single-lock' into feat/compaction-progress-visibility
2026-07-31 15:51:17 +08:00
imccyu
b2cd3d26da
Merge remote-tracking branch 'origin/fix/web-transcript-projection' into feat/manual-compact-single-lock
2026-07-31 15:50:54 +08:00
Hypatia May
b14c9daed2
Merge branch 'feat/manual-compact-single-lock' into feat/compaction-progress-visibility
2026-07-31 15:37:06 +08:00
Hypatia May
1114a80a45
Merge branch 'fix/web-transcript-projection' into feat/manual-compact-single-lock
...
# Conflicts:
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-07-31 15:36:49 +08:00
Hypatia May
85cef9de6f
fix(tui): unify compaction progress presentation
2026-07-31 15:27:10 +08:00
Tianyi Cui
b2146d6298
Merge branch 'master' into pr/adapter-registration-race
2026-07-31 15:24:43 +08:00
Tianyi Cui
81e5ee7e3e
Merge branch 'master' into pr/adapter-registration-race
2026-07-31 15:22:35 +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
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
Tianyi Cui
7a92f23ad4
Merge finalized manual compaction parent
2026-07-31 13:44:34 +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
0ed9b20d8f
Merge latest origin/master into feature/tui-first-run-welcome
2026-07-31 13:28:21 +08:00
NI0317
f30579dbaa
refactor(tui): own overlay terminal primitives
2026-07-31 12:36:24 +08:00
Hypatia May
949b9fba8d
feat(tui): add transcript compaction progress marker
2026-07-31 11:46:43 +08:00
Chinesezjc
df5b09cd6e
Merge remote-tracking branch 'origin/master' into feat/search-presenter
...
# Conflicts:
# docs/config-catalog.md
# docs/cookbook/adding-a-tool.i18n.yaml
# docs/cookbook/adding-a-tool.md
# docs/cookbook/adding-a-tool.zh.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/fs/tool-fs-search/src/glob.ts
# packages/fs/tool-fs-search/src/index.ts
# packages/ui/tui/src/components/transcript.ts
# packages/ui/tui/tests/tui.spec.ts
2026-07-31 11:31:32 +08:00
Turtle
899d25dfb3
fix(tui): defer model-context resolution on the adapter-registration race
...
Loader activation is service-driven, so the TUI can mount before a
configured adapter plugin registers its provider routes; every fresh
session then printed 'Could not resolve model context: no adapter
registered for provider …' for a working configuration.
The model controller now treats a NO_ADAPTER rejection of the
context-window resolution as transient: it parks the resolution
silently and re-resolves on the next llm/adapters-updated commit. A
commit that still lacks the route parks the wait again; any target
change clears it; all other resolution errors still surface. A wrong
provider name keeps failing loudly at dispatch, where it is actionable.
2026-07-31 11:10:05 +08:00
NI0317
436e557275
Merge origin/master into feature/tui-first-run-welcome
...
# Conflicts:
# apps/cli/README.i18n.yaml
# apps/cli/README.md
# apps/cli/README.zh.md
# apps/cli/src/tui.ts
# apps/cli/tests/tui-keyless-smoke.e2e.ts
2026-07-31 10:58:00 +08:00
Hypatia May
afe8d49691
Merge finalized manual compaction parent
2026-07-31 10:11:54 +08:00
Hypatia May
01e64c6350
Merge finalized Web transcript parent
2026-07-31 09:46:32 +08:00
Chinesezjc
22d8fa788b
Merge remote-tracking branch 'origin/master' into feat/web-diff-card
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/src/client/chat/GenericToolCard.tsx
# packages/client/ui-conversation/src/client/chat/ToolRow.tsx
# packages/client/ui-conversation/src/client/skeleton/DetailsPanel.tsx
# packages/client/ui-primitives/README.i18n.yaml
# packages/client/ui-primitives/src/index.ts
2026-07-31 04:22:57 +08:00
Yichen Jiang
e8c550d0e5
Merge worktree-llm-dynamic-config (884, with latest master) into worktree-llm-web-config
2026-07-31 00:31:42 +08:00
NI0317
d7d567b7c6
Merge origin/master into feature/tui-first-run-welcome
2026-07-31 00:29:05 +08:00
Chinesezjc
bfde98d223
test: cover the TUI search-card fallback and refresh the cordis-inspect golden
...
- Add a search result-view scenario to the TUI tool-card test so the
card:'search' fallback branch (no view content -> raw result content) is
covered; restores transcript.ts branch coverage to 100%.
- Refresh the cordis-inspect-jsdoc golden for the kind -> shape rename in the
ToolResultView JSDoc that cordis_inspect echoes.
2026-07-30 22:32:06 +08:00
NI0317
890343751a
feat(tui): add versioned first-run welcome
2026-07-30 22:29:35 +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
Hypatia May
859d60fff5
fix(tui): preserve compaction indicator ownership
2026-07-30 22:09:42 +08:00
Hypatia May
bbff2c58de
feat(tui): show live compaction progress
2026-07-30 21:59:33 +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
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
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
Chinesezjc
00c264fa50
Merge remote-tracking branch 'origin/master' into feat/web-presenter
2026-07-30 21:29:05 +08:00
Chinesezjc
689dcfe7d5
fix(web-presenter): dim-Markdown web fallback, memoize fetch conversion, strip note residue
...
Route a `web` result card's raw-content fallback through the TUI's dim
Markdown path (render() only recognized `card: 'generic'` as markdown
content, so web fallback rendered as bare undimmed text).
Memoize renderFetchOutput per (result, maxOutputChars) so the registry's
twin output.render / output.presentationMeta calls on the same frozen
result run one HTML->markdown conversion instead of two.
Remove the trailing `</content>`/`</invoke>` protocol residue from both
sides of the web-result-card Agent Note and re-record the pairing.
2026-07-30 20:48:19 +08:00
Yichen Jiang
3957ce007a
Merge branch 'worktree-llm-dynamic-config' into worktree-llm-web-config
...
# Conflicts:
# apps/cli/cordis.yml
# apps/cli/package.json
# apps/cli/tests/tui-keyless-smoke.e2e.ts
# apps/web/tests/details-session-lifecycle.e2e.ts
# apps/web/tests/snapshots/code-mode-round/ui.expected.md
# apps/web/tests/snapshots/cordis-tool-round/ui.expected.md
# apps/web/tests/snapshots/fresh-round-trip/ui.expected.md
# apps/web/tests/snapshots/lifecycle-chrome/hero.expected.md
# apps/web/tests/snapshots/lifecycle-chrome/reloaded.expected.md
# apps/web/tests/snapshots/live-interactions/cancel.expected.md
# apps/web/tests/snapshots/live-interactions/error-auth.expected.md
# apps/web/tests/snapshots/live-interactions/retry.expected.md
# apps/web/tests/snapshots/message-actions/ui.expected.md
# apps/web/tests/snapshots/question-composer/answered.expected.md
# apps/web/tests/snapshots/seeded-history/ui.expected.md
# apps/web/tests/snapshots/steering/mid-steer.expected.md
# apps/web/tests/snapshots/steering/settled.expected.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/user/guide/config.i18n.yaml
# docs/user/guide/config.md
# docs/user/guide/config.zh.md
# docs/user/guide/index.i18n.yaml
# docs/user/guide/index.md
# docs/user/guide/index.zh.md
# examples/acp-agent/tests/snapshots/subagent-fork/session.1.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/session.2.jsonl
# examples/cordis-agent/cordis.yml
# examples/cordis-agent/tests/cordis-tools.e2e.ts
# examples/headless-agent/tests/semantic-checkpoint-snapshots/tool-outcome-unknown/session.expected.jsonl
# examples/headless-agent/tests/subagent-inheritance-snapshots/parent-override/parent.expected.jsonl
# examples/tui-agent/code-mode.cordis.yml
# examples/tui-agent/cordis.yml
# packages/examples/tui-demo/README.md
# packages/examples/tui-demo/README.zh.md
# packages/host/apiproxy/README.i18n.yaml
# packages/pty/tool-bash-persistent/README.i18n.yaml
# packages/ui/tui/tests/snapshots/status-diagnostics-narrow.expected.txt
# packages/ui/tui/tests/snapshots/status-diagnostics.expected.txt
# pnpm-lock.yaml
# scripts/snapshots/python-sdk-single-exe/advanced/result.json
# scripts/snapshots/python-sdk-single-exe/advanced/session.1.jsonl
# scripts/snapshots/python-sdk-single-exe/advanced/session.2.jsonl
# scripts/snapshots/python-sdk-single-exe/advanced/session.jsonl
2026-07-30 20:15:40 +08:00
Hypatia May
eb3188f05d
Merge remote-tracking branch 'origin/fix/web-transcript-projection' into feat/manual-compact-single-lock
...
# Conflicts:
# apps/cli/config/base.cordis.yml
# apps/cli/cordis.yml
# docs/event-producer-consumer.md
# examples/package.json
# examples/tui-agent/README.i18n.yaml
# examples/tui-agent/README.md
# examples/tui-agent/README.zh.md
# pnpm-lock.yaml
2026-07-30 20:09:23 +08:00
Hypatia May
fe97451604
Merge remote-tracking branch 'origin/master' into fix/human-transcript-projection
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-17-dedicated-full-screen-tui-front-door.i18n.yaml
# docs/cordis-catalog/services.md
# packages/host/apiproxy/README.i18n.yaml
# packages/ui/tui/README.i18n.yaml
2026-07-30 19:57:49 +08:00
Hypatia May
bf1f06d398
test: stabilize aggregate coverage waits
2026-07-30 19:19:35 +08:00
Hypatia May
faac9b4fd5
round 1: implement bracket-first manual compaction
2026-07-30 17:40:25 +08:00
Hypatia May
82817570b0
Merge remote-tracking branch 'origin/master' into fix/human-transcript-projection
...
# Conflicts:
# docs/cordis-catalog/services.md
# docs/core-data-structures/session.i18n.yaml
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/src/api-proxy.ts
# packages/ui/tui/src/index.ts
2026-07-30 17:28:26 +08:00
Turtle
3c620a0cb6
Merge remote-tracking branch 'origin/master' into feature/shared-cli-config-foundation
...
# Conflicts:
# docs/cordis-catalog/services.md
# packages/host/apiproxy/README.i18n.yaml
2026-07-30 16:53:55 +08:00
Hypatia May
86b95a3856
Merge PR #941 dependency into manual compaction stack
...
# Conflicts:
# docs/cordis-catalog/services.md
# docs/core-data-structures/session.i18n.yaml
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/src/api-proxy.ts
# packages/ui/tui/src/index.ts
2026-07-30 16:42:24 +08:00
Hypatia May
7bcf8d660d
Merge remote-tracking branch 'origin/master' into fix/human-transcript-projection
...
# Conflicts:
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/src/api-proxy.ts
# packages/ui/tui/README.i18n.yaml
2026-07-30 15:42:47 +08:00
Turtle
42ba71b4f2
test(tui): pin transient query access
2026-07-30 15:37:03 +08:00
Hypatia May
8527137230
refactor(session): rename the seed boundary to end-seed
2026-07-30 15:32:06 +08:00
Turtle
0b1aaa4b12
test(tui): remove erased enum import
2026-07-30 15:30:59 +08:00
Turtle
d0bf9091f1
fix(cli): preserve active query access
2026-07-30 15:28:58 +08:00