Commit Graph

3255 Commits

Author SHA1 Message Date
Peter Steinberger
0754d23615 fix: group native sessions by host (#108062)
* fix(control-ui): group native sessions by host

* test: satisfy native session checks

* chore: remove release-owned changelog entry
2026-07-14 23:51:00 -07:00
clawsweeper[bot]
5afb1fb381 feat(ui): add follow-up behavior setting for active runs (steer by default) (#108032)
* feat(ui): add follow-up behavior setting (queue vs steer) for active runs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* default follow-up behavior to steer

Follow-ups sent while a run is active now steer into the running turn by
default; queue mode becomes the persisted opt-out. Offline/disconnected
sends still always queue.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* feat(ui): steer active follow-ups by default

---------

Co-authored-by: openclaw-clawsweeper[bot] <openclaw-clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 23:28:27 -07:00
Peter Steinberger
1d22f1d34c fix: restore palette-aware embedded terminal surfaces (#108057)
* fix(ui): answer terminal color queries

* chore: keep terminal release note in PR
2026-07-14 23:25:19 -07:00
Alix-007
ebb1e83b64 fix(logbook): bound background refresh concurrency (#106397)
* fix(logbook): bound background refresh concurrency

* fix(logbook): unify refresh ownership

* style(logbook): format type import

* test(logbook): use typed rejection error

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 22:27:20 -07:00
Peter Steinberger
51d85769b3 fix(ui): terminal artifacts after hide and show (#107970)
* fix(ui): repaint terminal after hide and show

* chore: leave release notes to release workflow

* fix(ui): keep terminal scrollbar hidden on repaint

* test(ui): assert terminal repaint pixels
2026-07-14 22:15:59 -07:00
Alix-007
f1778ad36b fix(ui): prevent browser screenshot fetch hangs (#107703)
* fix(ui): prevent browser screenshot fetch hangs

* test(ui): cover stalled screenshot body

* test(ui): verify screenshot timer cleanup

* test(ui): cover successful timer cleanup

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 22:15:03 -07:00
Peter Steinberger
5b097eb48c feat(ui): pick a repo folder and a cloud worker together in the new-session composer (#107976) 2026-07-14 22:10:58 -07:00
Peter Steinberger
4a6dc1fe1d fix(ui): show New Session failures in a centered alert (#107997)
* fix(ui): center new session errors

* chore: remove release-owned changelog entry
2026-07-14 21:37:45 -07:00
Peter Steinberger
7748574c4b fix: stabilize flaky test shards blocking merges (#107938)
* test: stabilize flaky test shards

* style: format Feishu delivery trace types
2026-07-14 20:41:54 -07:00
Shakker
977bf5b0bf fix: split native chat work by run (#107965) 2026-07-15 04:38:01 +01:00
Shakker
2c95bd2387 fix: repair main CI regressions 2026-07-15 04:03:56 +01:00
Peter Steinberger
5fc7ba6da0 test: isolate UI globals and satisfy Mattermost lint (#107936) 2026-07-14 19:45:53 -07:00
Kyle Klouzal
2333bd59db fix: keep yielded parent turns nonterminal (#95996)
* fix: keep yielded parent turns nonterminal

* fix: type chat final stop reasons

* test: isolate yielded session reconciliation

* fix: refresh yielded lifecycle generated surfaces

* test: register Codex lifecycle test shard

---------

Co-authored-by: FullerStackDev <263060202+fuller-stack-dev@users.noreply.github.com>
2026-07-14 20:35:33 -06:00
Peter Steinberger
57d926b4fd fix: connect resumed native terminals reliably (#107688)
* fix: render resumed paired-node terminals

* fix(control-ui): connect native catalog terminals reliably

* chore: keep release notes in PR body

* fix(control-ui): require terminal reconnect cancellation

* fix(gateway): cancel timed-out terminal opens safely

* fix(control-ui): recover stalled terminal opens

* chore(ui): refresh i18n fallback baseline

* fix: preserve login shell path for resumed terminals

* refactor(plugin-sdk): avoid extra resolver export

* fix(gateway): normalize terminal open failures

* test(control-ui): split terminal readiness coverage

* docs: explain catalog terminal PATH restoration

* fix(control-ui): complete terminal readiness release gates

* fix(ci): remove unused shell resolver exports

* chore(plugin-sdk): refresh API baseline after rebase
2026-07-14 19:18:19 -07:00
Peter Steinberger
b1b5e212c0 fix(mac): keep dashboard navigation beside link browser (#107798)
* fix(mac): keep dashboard navigation beside link browser

* chore(i18n): refresh macOS browser source location

* test(ui): mirror responsive nav fixture state

* test(mac): respect constrained runner window size

* test(mac): measure laid-out browser split width

* test(mac): use constrained window layout width

* fix(mac): refresh split frames before restoring width

* chore(i18n): refresh macOS browser source location

* test(mac): use constrained window frame width

* test(mac): snapshot constrained split geometry

* test(mac): exercise feasible divider shrink

* test(mac): verify divider persistence callback

* test(mac): use current split dimension constant
2026-07-14 19:01:45 -07:00
Peter Steinberger
ba10c981af refactor(ui): privatize chat test helpers (#107913) 2026-07-14 19:00:57 -07:00
Shakker
fcbc7900bb test: harden chat transcript validation (#107893) 2026-07-15 02:27:06 +01:00
Shakker
a2f6d96bfb fix: harden chat history lifecycle edges 2026-07-15 02:27:06 +01:00
Shakker
f310689cb0 fix: narrow cached chat stream rows 2026-07-15 02:27:06 +01:00
Shakker
4eb715d430 fix: hydrate split chat panes from session cache 2026-07-15 02:27:06 +01:00
Shakker
9ef1e965a6 fix: align virtual chat rows with the scroll origin 2026-07-15 02:27:06 +01:00
Shakker
876579fa73 fix: prevent duplicate chat row keys 2026-07-15 02:27:06 +01:00
Shakker
d660f7d38b fix: preserve deep chat snapshots across panes 2026-07-15 02:27:06 +01:00
Shakker
1b1569c561 perf: avoid rebuilding chat history during streaming 2026-07-15 02:27:06 +01:00
Shakker
c6dfda6eee fix: announce chat replies from the active pane 2026-07-15 02:27:06 +01:00
Shakker
59dd62d1af test: prove virtualized chat workflows 2026-07-15 02:27:06 +01:00
Shakker
18cdf6b09b fix: retain chat panes across viewport changes 2026-07-15 02:27:06 +01:00
Shakker
fbfa69456d fix: preserve chat pane lifecycle 2026-07-15 02:27:06 +01:00
Shakker
d1c8bd48af fix: stabilize virtualized chat rows 2026-07-15 02:27:06 +01:00
Shakker
59acd601f2 perf: virtualize chat transcript rendering 2026-07-15 02:27:06 +01:00
Shakker
aa9997b756 fix: support touch history loading 2026-07-15 02:27:06 +01:00
Shakker
dcb1de9b87 test: cover retained chat history returns 2026-07-15 02:27:06 +01:00
Shakker
e8498d546d perf: isolate chat render caches by pane 2026-07-15 02:27:06 +01:00
Shakker
784c33be43 perf: reuse chat snapshot message weights 2026-07-15 02:27:06 +01:00
Shakker
d4cc1a8b72 fix: consolidate chat scroll ownership 2026-07-15 02:27:06 +01:00
Shakker
8da6548cce fix: remove staged chat transcript rendering 2026-07-15 02:27:06 +01:00
Shakker
8121639e8d fix: stabilize chat transcript rows 2026-07-15 02:27:06 +01:00
Shakker
fb7cda20f1 fix: bound automatic chat history loading 2026-07-15 02:27:06 +01:00
Shakker
cf45dcd07e fix: preserve loaded chat session history 2026-07-15 02:27:06 +01:00
Jason (Json)
18b2c9cabd fix(ui): steer restored queued messages (#107836)
Merged via squash.

Prepared head SHA: 3f8240bdaf
Co-authored-by: fuller-stack-dev <263060202+fuller-stack-dev@users.noreply.github.com>
Co-authored-by: fuller-stack-dev <263060202+fuller-stack-dev@users.noreply.github.com>
Reviewed-by: @fuller-stack-dev
2026-07-14 18:42:00 -06:00
Jason (Json)
4be39280e6 fix(ui): align new-session composer controls (#107862)
Match the new-session composer geometry with chat, keep the model picker at the bottom right, and anchor its menu so it expands left. Add browser coverage for composer alignment and model-menu placement.
2026-07-14 18:27:57 -06:00
Peter Steinberger
86772735ac fix: pin sessions dropped into Pinned (#107854)
* fix(ui): pin sessions dropped into pinned group

* test(ui): capture pinned session drop proof

* chore: keep release note in PR metadata
2026-07-14 17:14:39 -07:00
Peter Steinberger
6f8903bc4d fix(macos): distinguish app and Gateway updates (#107793)
* fix(macos): clarify app-owned gateway updates

* fix(macos): sync update ownership translations

* fix(i18n): refresh control UI fallbacks

* fix(i18n): translate new control UI copy

* fix(ui): keep update routing live
2026-07-14 17:06:45 -07:00
openclaw-mantis[bot]
24d568b453 chore(ui): refresh control ui locales (#107806)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-14 15:44:02 -07:00
Peter Steinberger
520e2580cb feat(control-ui): show terminal upload progress (#107789)
* feat(control-ui): add terminal upload recovery

* fix(control-ui): harden terminal upload recovery
2026-07-14 15:10:01 -07:00
Peter Steinberger
cea0d98efb fix(ui): space compact macOS titlebar brand (#107783) 2026-07-14 14:44:40 -07:00
Peter Steinberger
ee7410c203 fix(ui): center external session conversations (#107781) 2026-07-14 14:42:22 -07:00
Peter Steinberger
11eb3b50a3 fix(ui): center terminal tab close control (#107777) 2026-07-14 14:34:13 -07:00
xingzhou
095693ee05 fix(control-ui): preserve emoji in long build branch labels (#104901)
* fix(control-ui): preserve emoji in long build branch labels

* refactor(ui): harden Unicode build labels

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 13:54:49 -07:00
Peter Steinberger
4f0e131cd2 feat(ui): run sessions on cloud workers (#107670)
* feat(ui): add cloud session targets

* test(ui): cover cloud session attachments

* test(ui): use recovery token fixture

* test(ui): record cloud locale fallbacks

* fix(ui): harden cloud session recovery

* fix(ui): track cloud handoff phase

* fix(ui): close cloud recovery escape paths

* fix(ui): finish cloud recovery hardening

* fix(ui): recover ambiguous cloud session creation

* fix(ui): isolate stale cloud creation recovery

* test(ui): preserve cloud recovery literals

* fix(ui): complete cloud session release artifacts

* chore: move cloud release note to PR body

* docs(ui): name cloud session menu exactly
2026-07-14 12:44:11 -07:00