mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-12 21:53:00 -06:00
d7054d4daf
* fix(gateway): flush trailing chat deltas Keep the fixed-deadline wake-up on the existing chat run record so terminal, abort, and shutdown cleanup cancel it at the lifecycle owner. Normalize voice runs onto their unique per-turn ID instead of compensating for a stale client alias downstream. Fixes #119557 Co-authored-by: Serghei <43180231+xyrolle@users.noreply.github.com> * test(gateway): drop obsolete delta length assertions Remove stale fixtures and assertions for the write-only chat delta length field deleted by the owner-boundary repair. Co-authored-by: Serghei <43180231+xyrolle@users.noreply.github.com> * fix(gateway): preserve chat run state type contract Keep the optional delta length field and its cleanup semantics in the exported ChatRunState closure without restoring runtime writes. Co-authored-by: Serghei <43180231+xyrolle@users.noreply.github.com> * refactor(gateway): hide chat delta timer from SDK shape Keep the trailing wake physically on each run record while exposing it only through internal state-module accessors, preserving the public ChatRunState closure. Co-authored-by: Serghei <43180231+xyrolle@users.noreply.github.com> * refactor(gateway): narrow chat delta timer access Use one Gateway-internal record accessor so the run-owned timer remains outside the public ChatRunState shape without extra state maps. Co-authored-by: Serghei <43180231+xyrolle@users.noreply.github.com> * refactor(gateway): keep chat timer casts private Keep the run-owned timer invisible to the generated Plugin SDK closure by using module-private casts in each owning Gateway module. Co-authored-by: Serghei <43180231+xyrolle@users.noreply.github.com> --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>