Files
fusion/packages
gsxdsm 67ae2be0de fix(chat): deliver mobile chat sends that silently dropped
Two mobile send failures with a shared symptom of "nothing happens":

- Regular chat: the send button was dead to touch. The action lived only
  in onClick, but iOS suppresses the trailing synthetic click after
  preventDefault() in the touch sequence, so taps never sent. Fire the send
  from pointerdown/touchstart with a self-clearing dedupe latch (mirroring the
  QuickChat send button), keeping a single send per tap.

- Quick chat: a queued message could strand in the composer — shown locally
  but never reaching the agent or the persisted session (so it also never
  appeared in regular chat). A stream that dropped without onDone/onError
  (e.g. mobile tab suspension) left the streaming flag stuck true, so every
  later send took the "queue while streaming" branch and was never flushed.
  On a queued send, detect the stale flag via the stream's connection state
  and the server's generation status, then tear down the dead stream and flush.

Both paths covered by new tests.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 23:45:15 -07:00
..
2026-06-13 12:11:05 -07:00
2026-06-13 12:11:05 -07:00
2026-06-13 12:11:05 -07:00
2026-06-13 12:11:05 -07:00
2026-06-13 12:11:05 -07:00
2026-06-13 12:11:05 -07:00