Commit Graph

394 Commits

Author SHA1 Message Date
creatixchu
de96087923 feat(web): name context sources and mark steering in the transcript
Every logged non-user user/message collapsed into one identical
「上下文注入」 row, and mid-turn steering rendered in exactly the bubble a
turn-opening prompt uses, so the transcript could not say what had been
added or which message interrupted a running turn.

TranscriptAdapter and the history fold now attach a provenance view to
each context node, computed by contextProvenance() from the durable
source alone: a role (inject, or recall for a cross-session snapshot)
and a producer name read out of the log — instruction paths for
workspace-instructions, session titles for session-reference, the plugin
id for a plugin source, and the bare kind for any other. No client-side
table of producer names, so a renamed or newly mounted producer stays
identifiable without a client release and a foreign log projects like a
live one. ContextInjectionRow titles itself from the role and shows the
name beside it; MessageItem captions durable and pending steering
bubbles.

The caption reverses one clause of the no-interjection-chrome decision,
which removed it because the composer could not steer; composer steering
shipped afterwards without amending that note, so this change supplies
the product decision its reintroduction clause required and corrects the
stale facts left in it.

Fixes #1291
2026-08-04 17:44:18 +08:00
imccyu
ad03ccbd7a Merge branch 'master' into feat/turn-running-time 2026-08-04 16:03:31 +08:00
imccyu
cc435a9c0c fix(web): use exact turn boundaries for run time 2026-08-04 15:55:07 +08:00
creatixchu
398ab58a69 Merge remote-tracking branch 'origin/master' into worktree/composer-caret-binding 2026-08-04 15:40:27 +08:00
imccyu
2a828f09da Merge remote-tracking branch 'origin/master' into feat/turn-running-time 2026-08-04 15:22:28 +08:00
creatixchu
ef2fbdfc19 fix(web): preserve focus when restoring drafts 2026-08-04 15:12:11 +08:00
creatixchu
4e024da35a Merge origin/master into worktree/composer-caret-binding 2026-08-04 14:44:09 +08:00
imccyu
6f1d443c59 feat: optimize chat think 2026-08-04 14:37:35 +08:00
kingwl
9b91e5312c fix(web): narrow chat scroll provenance 2026-08-04 14:23:34 +08:00
kingwl
8de33e42f7 fix(web): preserve chat scroll ownership 2026-08-04 14:23:34 +08:00
kingwl
6514a59d5d fix(ui-conversation): preserve semantic chat scroll position 2026-08-04 14:23:34 +08:00
Yif
6ec5a6136b feat(web): show turn run time with hover-revealed time chrome
Derive turn wall time from adjacent logged timestamps (no new session
events): the actions-owning assistant footer gains a localized
"Ran for {duration}" label, and the running TurnStatus label gains a
live elapsed clock anchored to the same logged trigger so a mid-turn
reload keeps the real elapsed time. Message time chrome is now
hover-revealed on hover-capable devices, keeping icons visible and
layout stable.
2026-08-03 19:58:58 +08:00
Chinesezjc
19f2c45bb0 Merge remote-tracking branch 'origin/master' into fix/web-sources-scroll 2026-08-03 16:38:12 +08:00
kingwl
c5050f018e fix(web): keep ineligible message forks disabled 2026-08-03 16:19:49 +08:00
kingwl
c43eaaec82 Merge remote-tracking branch 'origin/master' into codex/pr-1150-disabled
# Conflicts:
#	packages/client/runtime/README.i18n.yaml
#	packages/client/ui-conversation/README.i18n.yaml
2026-08-03 16:02:33 +08:00
Chinesezjc
57219ab060 Merge remote-tracking branch 'origin/master' into fix/web-sources-scroll 2026-08-03 15:41:09 +08:00
Chinesezjc
a2ec6cefc2 fix(client-web): scroll the web_search source card instead of collapsing
Replace the WebBlock search card's head/tail collapse and expand button
with a fixed-height scroll container that lists every source the tool
returned. The model-facing side is unchanged: the seam still caps sources
at searchMaxResults and the truncated indicator stays, so model-visible
and frontend-visible sources remain identical.

Remove CHAT_WEB_MAX_SOURCES and DEFAULT_WEB_MAX_SOURCES: with scroll, the
chat row and details panel show the same full list.
2026-08-03 15:38:26 +08:00
ZiyaZhang
0a4ad25ce7 fix(web): expand aborted Bash rows 2026-08-02 23:06:00 -07:00
kingwl
038b6063ee Merge remote-tracking branch 'origin/master' into codex/pr-1150-conflict-fix
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-08-03 11:34:26 +08:00
ZiyaZhang
975b57b54a feat(web): follow live reasoning tail while collapsed 2026-08-02 05:29:25 -07:00
kingwl
4329b93989 Merge remote-tracking branch 'origin/master' into codex/fork-real-turn-tail
# Conflicts:
#	packages/client/runtime/README.i18n.yaml
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/src/client/chat/ChatView.tsx
#	packages/client/ui-conversation/src/client/chat/MessageIconActions.tsx
2026-08-02 18:14:32 +08:00
imccyu
7d08e43720 fix(web): address steering review feedback 2026-08-02 17:53:07 +08:00
imccyu
3a9f78c55e feat(web): restore actions after steering consumption 2026-08-02 17:53:07 +08:00
imccyu
dffe955ed2 feat(web): surface and configure composer steering 2026-08-02 17:53:07 +08:00
kingwl
955a12cca4 feat(web): steer queued messages into active turns 2026-08-02 17:53:07 +08:00
kingwl
6e3f77da60 Merge remote-tracking branch 'origin/master' into codex/fork-real-turn-tail
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-08-02 16:25:38 +08:00
kingwl
76547dfe0c fix(web): restrict message forks to completed turn tails 2026-08-02 16:25:02 +08:00
kingwl
cf70a52dcc Merge origin/master into codex/todo-goal-queue-layout 2026-08-02 14:34:13 +08:00
imccyu
ca1d838afc style(web): refine subagent navigation chrome 2026-08-02 12:51:11 +08:00
imccyu
42d34473af fix(web): allow follow-ups to running subagents 2026-08-02 12:51:11 +08:00
imccyu
130410bb98 fix(web): preserve subagent navigation and fork grouping 2026-08-02 12:51:11 +08:00
imccyu
5d56019d22 feat: revert crumbs navigation for subagents 2026-08-02 12:51:11 +08:00
imccyu
5ef5feb01a fix(web): reconcile rebased subagent contracts 2026-08-02 12:51:09 +08:00
imccyu
5113b831e8 test(client): align card fixtures with subagent session state 2026-08-02 12:51:09 +08:00
Dudu-0223
8a518e353b feat(web): rewrite subagent conversations for FIFO activation 2026-08-02 12:51:09 +08:00
Dudu-0223
16ffd63115 feat(web): add nested subagent conversations 2026-08-02 12:51:09 +08:00
kingwl
cd121c636a fix(web): align composer context stack 2026-08-02 12:45:36 +08:00
kingwl
5e1c4b2b7b Merge remote-tracking branch 'origin/master' into codex/remove-scoped-bash
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-31 22:41:07 +08:00
kingwl
07b0efc49e fix(web): hide session lineage in header 2026-07-31 21:08:57 +08:00
07akioni
575e1217bb fix: remove scoped bash 2026-07-31 20:47:55 +08:00
07akioni
410a837e02 Merge remote-tracking branch 'origin/master' into fix/remove-badge 2026-07-31 19:33:01 +08:00
07akioni
1766461947 Merge remote-tracking branch 'origin/master' into fix/remove-badge 2026-07-31 19:13:22 +08:00
07akioni
f9dc4aa702 feat: remove "插话" badge displayed in user message 2026-07-31 19:12:16 +08:00
Ziya
4f13ce7b7f Merge branch 'master' into fix/web-turn-error-surface 2026-07-31 07:07:05 -04:00
creatixchu
404c58717a Merge remote-tracking branch 'origin/worktree/hero-blank-session-settling' into worktree/hero-blank-session-settling 2026-07-31 18:43:37 +08:00
CreatixChu
e18efd3375 Merge branch 'master' into worktree/hero-blank-session-settling 2026-07-31 18:39:38 +08:00
creatixchu
3b2ee5ce87 test(ui-conversation): pin all three list-summary shapes for the settling exemption
The mount fixture always listed the session, so the case named "no list
summary" actually exercised a row proving non-blank. An omitSummaryRow
option drops the row, and the three cases now pin blank:false, an absent
row, and the summary-proven blank open.
2026-07-31 18:37:04 +08:00
ZiyaZhang
215bf15f78 fix(web): surface terminal turn failures 2026-07-31 03:10:48 -07:00
creatixchu
4afcc3810b test(ui-conversation): pin the settling exemption for summary-blank sessions
The mount helper's 4th positional argument becomes an options object so a
test can set the session list row's blank flag independently of the
conversation snapshot's; the two new cases cover both branches of the
settling condition.
2026-07-31 17:57:10 +08:00
Chinesezjc
0be76f5552 Merge remote-tracking branch 'origin/master' into feat/web-cards-toolrow
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-31 17:45:31 +08:00