Files
openclaw/src
Peter Steinberger fc3ba072f3 fix(cloud-workers): accept worker live events for dispatch-owned run contexts
A worker-routed turn stalls with "worker live-event acknowledgement did not
advance" because the gateway rejects the worker's first live event.

The gateway claims a run context for the turn (session identity plus
`isControlUiVisible`) before handing the turn to the remote worker. When the
worker's live events arrive, live-events `claimRun` adopts that pre-existing
context but its fresh-claim gate hardcoded `controlUiVisible = false` and
rejected any existing context whose `isControlUiVisible` differed. A visible
turn registers `isControlUiVisible: true`, so seq=1 was rejected as
`invalid-event` and the stream never advanced.

Visibility is a presentation preference the dispatch owns, not a run-identity
attribute. Inherit the existing context's `isControlUiVisible` when adopting it
and drop it from the identity gate. Session/agent/lifecycle identity must still
match, so foreign runs are still rejected and local turns (no pre-existing turn
context, or a matching one) are unaffected.
2026-07-13 12:12:49 -07:00
..