openclaw/docs/web
Peter Steinberger fe403619f9
fix(ui): chat stays blocked after model credentials recover (#132179)
* fix(ui): refresh chat readiness after credential recovery

Keep retained Chat and New Session on one accepted metadata publication
flow, preserve session profile locks, and notify clients when authoritative
metadata settles. Fence stale responses and publish persisted inline model
selections; refresh Android metadata through the same event.

Release note: Control UI chat recovers model readiness after credential or
selection changes without reloading, clearing drafts, or hiding prior errors.

* test(gateway): adopt prepared metadata projection fixture

* fix(ui): preserve metadata scope across chat interactions

Read slash commands from the active session publication and rebind retained global chats when agent selection changes. Preserve warm picker state until the authoritative session projection settles. Integrate runtime fixtures and move cross-layer persisted-selection coverage into the Gateway lane without changing check limits.

* test(ui): return valid empty lifecycle RPC results

* test(ui): keep metadata regression within suite limits

* test(gateway): supply prepared model metadata in auth recovery regression

* test(gateway): preserve session metadata read access

Extend the documented view/suggest read-policy matrix to chat history, startup, and metadata. Participation continues to gate mutations; existing none, incognito, and pending-profile guards remain unchanged.

* fix(android): retain session scope in chat metadata

Preserve profile-specific availability across metadata refreshes and same-agent session transitions. Carry the required prepared catalog owner into the Gateway lifecycle regression fixture.

* fix(ui): preserve draft controls when reconnecting

* fix(android): negotiate session metadata refresh scope

Advertise session-scoped chat metadata through hello capabilities while
preserving the shipped agent-only request and cache contract for older peers.

Refresh matching session mutations and missed metadata publications through
one synchronous request fence, retaining accepted catalogs and chat drafts.

* fix(ui): split streamed pull-request refresh from chat events

Keep the merged event owner below the unchanged 700-line lint bound.
Move existing link parsing and bounded stream refresh without changing
behavior, reply visibility, terminal recovery, or metadata invalidation.

The merged guard fails at 710 lines before and passes after. Existing
117 UI tests, forced UI types, lint, build, and isolated P0 review pass.
2026-08-29 05:10:23 -07:00
..
control-ui.md fix(ui): chat stays blocked after model credentials recover (#132179) 2026-08-29 05:10:23 -07:00
dashboard-architecture.md fix: honor session policy for widget approvals (#129970) 2026-08-26 01:34:24 -07:00
dashboard.md docs: correct dashboard auth precedence (#119785) 2026-08-06 02:21:54 +01:00
dashboards.md fix(ui): show dashboard refresh failures with a retry action (#130376) 2026-08-26 14:01:58 -07:00
index.md fix: remove retired insecure auth guidance (#120295) 2026-08-07 09:45:48 -07:00
lobster.md fix(ui): make lobster visits less frequent (#132065) 2026-08-28 14:57:40 -07:00
notifications.md feat(webui): auto-request notification permission on first chat send (#122446) 2026-08-11 23:52:05 -07:00
tui.md fix(tui): keep failed attachments visible beside replies (#132115) 2026-08-28 14:59:56 -07:00
urls.md improve(ui): open short session links without extra lookup (#128778) 2026-08-24 09:33:20 -07:00
webchat.md fix(webchat): hide managed media in initial transcript events (#132508) 2026-08-29 03:10:59 -07:00