Commit Graph

3251 Commits

Author SHA1 Message Date
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
Peter Steinberger 084d1d9637 feat(control-ui): upload files into terminals (#107364)
* feat(control-ui): add terminal file uploads

* fix(control-ui): protect Windows terminal uploads

* fix(control-ui): satisfy terminal upload gates

* chore(ui): translate terminal upload labels

* fix(control-ui): reject unknown Windows upload shells

* fix(control-ui): harden Windows upload paths

* fix(control-ui): retry terminal upload cleanup

* chore(ui): reconcile locale translation memory

* fix(control-ui): validate terminal upload inputs

* fix(control-ui): retry failed upload cleanup

* chore(ui): refresh terminal upload locale metadata

* fix(terminal): integrate uploads with session recovery

* refactor(control-ui): isolate terminal upload transport

* fix(control-ui): keep upload helper types private
2026-07-14 09:33:39 -07:00
Peter Steinberger f81f9d8570 chore: enforce max-lines suppression ratchet (#107315)
* ci: enforce max-lines suppression ratchet

* chore: prune stale max-lines suppression

* fix: close max-lines ratchet enforcement gaps

* fix: harden max-lines ratchet checks

* fix(ci): satisfy max-lines ratchet checks

* style: format max-lines declarations

* fix(ci): match oxlint suppression grammar

* test: isolate max-lines git fixtures

* chore: prune resolved max-lines debt

* test: skip newline path fixture on Windows

* fix: harden max-lines suppression ratchet

* chore: refresh max-lines baseline

* fix: close max-lines ratchet bypasses

* fix: derive ratchet base from PR merge tree

* fix: support older Git in staged ratchet

* fix: align max-lines declarations and baseline

* chore: refresh max-lines baseline for current main

* fix: exclude generated wizard locales from max-lines

* chore: prune resolved max-lines debt
2026-07-14 09:27:02 -07:00
Jason (Json) c93b7ca130 fix(control-ui): prevent inflated run times and overlapping tasks (#107229)
* fix(control-ui): use wall clock for run timer

* fix(control-ui): prevent background task overlap
2026-07-14 09:44:54 -06:00
Peter Steinberger 2ecc6b6b6b fix(ui): show restart banner for unapplied config (#107577)
* fix(ui): derive config apply state from gateway

* test(ui): align applied config hash coverage

* test(ui): follow config autosave flow

* fix(ui): guard applied config refreshes

* fix(ui): reconcile patched config revisions

* fix(ui): prevent stale config apply polling

* chore: leave release notes to release flow

* refactor(config): split applied revision helpers

* style(config): format gateway methods

* fix(i18n): refresh Korean native glossary hash
2026-07-14 08:43:35 -07:00