Commit Graph

4316 Commits

Author SHA1 Message Date
_Kerman
411bbdf2aa feat(ui): compact trajectory role labels 2026-07-30 17:11:07 +08:00
_Kerman
997932ffd6 feat(ui): refine trajectory timeline interaction 2026-07-30 17:00:58 +08:00
Tianyi Cui
2296065c51 Merge branch 'master' into worktree/persistent-bash-str-replace-editor 2026-07-30 15:22:19 +08:00
Tianyi Cui
b21f13baa1 test: update tool agent fixtures for inbox API 2026-07-30 15:21:42 +08:00
Tianyi Cui
2550882875 Merge branch 'master' into worktree/persistent-bash-str-replace-editor 2026-07-30 15:19:27 +08:00
_Kerman
df25ca41dc Merge remote-tracking branch 'github/master' into xtr/fix-trajectory-scroll-layering 2026-07-30 14:45:16 +08:00
_Kerman
c0b8fea4c8 fix(ui): contain trajectory scrolling and overlays 2026-07-30 14:45:07 +08:00
imccyu
ac37caa1ee Merge branch 'master' into worktree-fetest 2026-07-30 14:31:44 +08:00
imccyu
4869e0bbfc Merge branch 'master' into worktree-fetest 2026-07-30 13:09:53 +08:00
imccyu
1b84126f70 Merge branch 'master' into worktree/short-default-labels 2026-07-30 13:08:34 +08:00
imccyu
20cac781a2 Merge branch 'master' into worktree-fetest 2026-07-30 12:56:54 +08:00
imccyu
432a64ef2f Merge branch 'master' into worktree/short-default-labels 2026-07-30 12:56:11 +08:00
imccyu
01324f9167 Merge branch 'master' into fix/input-ui 2026-07-30 12:55:57 +08:00
Tianyi Cui
cea5e868ff Merge remote-tracking branch 'origin/master' into worktree/retarget-pr831-20260729 2026-07-30 12:21:14 +08:00
imccyu
9cb9a3e767 Merge branch 'master' into worktree-fetest 2026-07-30 12:20:27 +08:00
imccyu
b44318b03d Merge branch 'master' into fix/input-ui 2026-07-30 12:20:01 +08:00
Tianyi Cui
d37b192aa9 Merge branch 'master' into fix/workspace-instruction-frame-metadata 2026-07-30 12:16:41 +08:00
Tianyi Cui
3ecd4a569a test(skill-local): cover root unlink rewatch 2026-07-30 12:02:21 +08:00
imccyu
6e99027917 Merge remote-tracking branch 'origin/master' into mergebot/pr937
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/src/client/queue/QueueDock.module.css
2026-07-30 11:59:59 +08:00
Tianyi Cui
3f195f1dd1 Merge remote-tracking branch 'origin/master' into codex/experimental-plugin-group-note 2026-07-30 11:57:55 +08:00
imccyu
b523a04af8 Merge remote-tracking branch 'origin/master' into worktree-fetest 2026-07-30 11:51:09 +08:00
Tianyi Cui
c0474d5289 Merge branch 'master' into codex/experimental-plugin-group-note 2026-07-30 11:46:04 +08:00
Tianyi Cui
ecb43469af Merge branch 'master' into fix/workspace-instruction-frame-metadata 2026-07-30 11:45:00 +08:00
imccyu
02a9d4113e Merge remote-tracking branch 'origin/master' into worktree-fetest 2026-07-30 11:40:34 +08:00
kingwl
ad1bb84425 Merge remote-tracking branch 'origin/master' into codex/web-queue-actions
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-30 11:38:54 +08:00
imccyu
a9813a2801 Merge branch 'master' into codex/web-queue-actions 2026-07-30 11:20:57 +08:00
imccyu
aae1b48535 Merge remote-tracking branch 'origin/master' into worktree-fetest 2026-07-30 11:17:03 +08:00
imccyu
6303b22487 ci: run web replay on master linux 2026-07-30 11:16:37 +08:00
07akioni
b92c6bcc66 Merge branch 'master' into fix/ui-action-display 2026-07-30 11:15:35 +08:00
imccyu
60620ec36c Green the jsdom lane for the composer-seat ResizeObserver and new StatsLine format
The seat's height publisher needs a ResizeObserver stub in every spec that
renders ConversationRoot (jsdom has none), and the two branch-tail StatsLine
assertions move to the grouped detail-row output.
2026-07-30 11:09:03 +08:00
Tianyi Cui
c38a7c3a89 Merge branch 'master' into fix/hook-matcher-validation 2026-07-30 10:57:24 +08:00
imccyu
b94df7348f Merge branch 'master' into codex/web-queue-actions 2026-07-30 10:50:34 +08:00
Yichen Jiang
fb4b8f3973 Merge remote-tracking branch 'origin/master' into worktree/short-default-labels
# Conflicts:
#	packages/client/ui-model/src/client/ModelSelect.tsx
#	packages/client/ui-model/tests/model-select.spec.tsx
2026-07-30 10:47:35 +08:00
imccyu
4b4f7752c1 ci: gate web browser snapshots 2026-07-30 10:23:05 +08:00
Yif
04f6dfdc29 Web composer stats detail row and input-zone polish
Stats line moves into the InputBar's new footer slot (sharing the card's
width column) and expands to the design's grouped detail row: turns/steps,
LLM and tool wall time, cache hit, and input/output token split, all
derived client-side from the snapshot. The composer stack owns one 8px
rhythm, the seat fades the transcript through a fixed 36px gradient band,
back-to-bottom follows a live --dsh-composer-height, and goal/todo strips
share one 752px tip-fill column.
2026-07-30 10:22:44 +08:00
kingwl
112b0fbad1 fix(web): address queue review feedback 2026-07-30 04:12:38 +08:00
kingwl
ebbcfdd03b Merge remote-tracking branch 'origin/master' into codex/web-queue-actions
# Conflicts:
#	packages/core/agent-loop/src/agent.ts
2026-07-30 03:33:41 +08:00
kingwl
7ce330f0e4 refactor(agent): scope queue actions to edit and remove 2026-07-30 01:58:51 +08:00
imccyu
606b6aa78c Merge remote-tracking branch 'origin/master' into worktree-locale
# Conflicts:
#	packages/client/ui-slots/src/index.ts
2026-07-30 01:53:28 +08:00
imccyu
622450192d fix(client): mark the parallel register overloads for the clone gate
The two overload declarations differ only in the inject share; folding them
would lose per-overload inference of I, so the duplication is deliberate.
2026-07-30 01:40:10 +08:00
Tianyi Cui
c8cdc42418 Merge remote-tracking branch 'origin/master' into codex/experimental-plugin-group-note 2026-07-30 01:38:34 +08:00
Tianyi Cui
78cf5de686 Merge origin/master into fix/hook-matcher-validation 2026-07-30 01:38:18 +08:00
Tianyi Cui
401afde164 Merge remote-tracking branch 'origin/master' into codex/experimental-plugin-group-note
# Conflicts:
#	packages/README.i18n.yaml
#	packages/README.md
#	packages/README.zh.md
2026-07-30 01:32:41 +08:00
Tianyi Cui
7ba061446d docs(acp-snapshot): widen posix-only contract 2026-07-30 01:27:52 +08:00
imccyu
e56c0699a9 Merge branch 'master' into codex/web-queue-actions 2026-07-30 01:21:13 +08:00
Tianyi Cui
4582e1425c Merge commit 'refs/codex/pr885/master-20260730' into worktree/retarget-pr885-20260729
# Conflicts:
#	eslint.config.mjs
2026-07-30 01:18:28 +08:00
Tianyi Cui
014e39203e Merge commit '3a1b995e4fc3eb9acd6324c4b581f7aeb110b8be' into worktree/retarget-pr828-20260729 2026-07-30 01:18:18 +08:00
imccyu
d00d1009f7 Merge remote-tracking branch 'origin/master' into worktree-locale
# Conflicts:
#	docs/module-graph.md
#	packages/client/locale/README.i18n.yaml
#	packages/client/locale/README.zh.md
2026-07-30 01:10:57 +08:00
imccyu
2c5114c060 feat(client): adopt the locale seat in theme, sidebar, question, and model
Each package ships its zh/en dictionaries as satisfies-typed pairs (zh is
the key-set source of truth; en is checked complete against it), merges its
namespace into LocaleNamespaceMap, and declares locale: NS at register —
components read the framework-injected typed t seat instead of a
hand-carried inject member. Overlapping verbatim words (retry, submit,
submitting) drop out of package dictionaries in favor of the shared common
vocabulary; the question composer stores validation feedback as dictionary
keys so shown feedback follows a locale switch.
2026-07-30 01:04:58 +08:00
imccyu
c317fbc489 feat(client): typed locale standard seat in the slot framework
Registrations declare a dictionary namespace (locale: NS) and the renderer
synthesizes a typed t prop for the entry's component from the installed
LocaleFace; the seat binding is re-derived per locale revision, so a language
switch hands out fresh t references and memoized consumers re-render through
ordinary shallow comparison. LocaleNamespaceMap is the declare-merge table
(namespace -> dictionary key union); TranslateNS<'ns'> is the
namespace-addressed translate type (namespace keys plus the shared common
vocabulary), carried by the t seat and by the locale service's typed bind.

LocaleService implements the face (lookup ns -> common -> zh -> key,
revision-carrying snapshots with subscriber isolation) and installs it
through the boot-once slots.installLocale seam, mirroring the renderer
install. The typed register(ns, {zh, en}) overload checks each dictionary
against the namespace's key union and requires every shipped locale, so a
missing or extra key and an unbalanced translation are compile errors.
Dictionary registration bumps the face revision without emitting
locale/change — the event now means exactly 'the active locale switched',
so registration-heavy boot cannot storm event listeners.
2026-07-30 01:04:56 +08:00