Brennan Benson
0586bab4f9
fix(mobile): bound terminal viewport resubscribe loop with backoff (STA-3337) ( #12362 )
...
* fix(mobile): bound terminal viewport resubscribe loop with backoff (STA-3337)
An empty scrollback frame with absent host dims was coerced to 80x24, which
never equals a phone viewport, arming a zero-delay unsubscribe/resubscribe
loop (~25/s) that broke long-press gestures and drained battery.
- Absent host dims now hold the stream instead of resubscribing.
- Fit resubscribes are budgeted per handle (3 attempts, escalating backoff)
with an absence-gated refill mirroring the chat-side rearm bound; on
exhaustion the view degrades visibly via toast instead of hot-looping.
- A fresh post-measure match counts as convergence instead of resubscribing.
- setTerminalModes keeps the Map identity when the mode is unchanged, so
same-mode frames no longer re-render the session route.
- Host emits the subscriber viewport as scrollback dims when the snapshot
and PTY size are both unavailable, so current hosts converge immediately.
* fix(mobile): cancel stale viewport retries after convergence
2026-08-03 17:55:30 -07:00
..
2026-07-28 15:18:07 -07:00
2026-08-02 18:45:55 -07:00
2026-07-28 15:18:07 -07:00
2026-07-28 15:18:07 -07:00
2026-07-20 21:05:40 -07:00
2026-07-20 21:05:40 -07:00
2026-06-17 22:52:12 -07:00
2026-07-20 18:55:45 -07:00
2026-07-20 18:55:45 -07:00
2026-06-17 22:52:12 -07:00
2026-07-20 18:55:45 -07:00
2026-08-01 15:50:54 -07:00
2026-07-31 14:03:35 -07:00
2026-07-31 14:03:35 -07:00
2026-07-30 12:58:24 -07:00
2026-07-30 12:58:24 -07:00
2026-06-08 21:27:33 -07:00
2026-06-08 21:27:33 -07:00
2026-06-15 22:02:51 -07:00
2026-06-15 22:02:51 -07:00
2026-08-02 15:53:06 -07:00
2026-07-31 01:54:09 -07:00
2026-07-31 01:54:09 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-07-05 23:56:37 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-05-31 03:14:29 -07:00
2026-05-31 03:14:29 -07:00
2026-06-13 14:24:26 -07:00
2026-06-29 22:30:46 -07:00
2026-06-29 22:30:46 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-06-17 22:52:12 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-07-30 13:30:07 -07:00
2026-07-30 13:30:07 -07:00
2026-06-08 17:41:27 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-31 01:54:09 -07:00
2026-07-31 01:54:09 -07:00
2026-07-31 01:54:09 -07:00
2026-07-31 01:54:09 -07:00
2026-06-16 14:39:25 -07:00
2026-06-16 14:39:25 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-23 13:25:50 -07:00
2026-07-16 13:26:15 -07:00
2026-07-30 11:08:56 -07:00
2026-07-23 13:25:50 -07:00
2026-07-23 13:25:50 -07:00
2026-07-23 13:25:50 -07:00
2026-07-23 13:25:50 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-23 14:23:44 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-23 13:25:50 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-26 22:08:38 -07:00
2026-07-24 23:10:13 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-23 13:25:50 -07:00
2026-07-23 13:25:50 -07:00
2026-07-23 13:25:50 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-24 23:10:13 -07:00
2026-07-26 22:08:38 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-17 00:34:46 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-20 21:05:40 -07:00
2026-07-20 21:05:40 -07:00
2026-05-29 22:13:27 -04:00
2026-05-29 22:13:27 -04:00
2026-06-17 22:52:12 -07:00
2026-06-17 22:52:12 -07:00
2026-07-09 22:01:22 -07:00
2026-08-02 15:53:06 -07:00
2026-05-31 03:11:53 -07:00
2026-05-31 03:11:53 -07:00
2026-08-02 15:53:06 -07:00
2026-07-31 00:39:44 -07:00
2026-08-02 15:53:06 -07:00
2026-08-02 15:53:06 -07:00
2026-07-30 13:59:50 -07:00
2026-07-30 13:59:50 -07:00
2026-08-02 15:53:06 -07:00
2026-07-31 20:42:05 -07:00
2026-07-31 20:42:05 -07:00
2026-07-30 12:58:24 -07:00
2026-08-02 15:53:06 -07:00
2026-07-20 21:36:15 -07:00
2026-07-20 21:36:15 -07:00
2026-07-23 19:01:04 -07:00
2026-07-23 19:01:04 -07:00
2026-07-23 19:01:04 -07:00
2026-07-23 19:01:04 -07:00
2026-07-26 02:32:08 -07:00
2026-07-26 02:32:08 -07:00
2026-07-30 12:59:16 -07:00
2026-07-30 12:59:16 -07:00
2026-07-23 18:35:31 -07:00
2026-08-03 17:55:30 -07:00
2026-07-02 18:17:47 -07:00
2026-07-05 23:56:37 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-08-02 15:53:06 -07:00
2026-08-02 15:53:06 -07:00
2026-08-03 17:55:30 -07:00
2026-08-03 17:55:30 -07:00
2026-07-16 13:26:15 -07:00
2026-08-02 15:53:06 -07:00
2026-07-16 13:26:15 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-23 13:25:50 -07:00
2026-07-23 13:25:50 -07:00
2026-07-26 22:08:38 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-08-02 15:53:06 -07:00
2026-07-10 13:48:10 -07:00
2026-06-28 01:20:00 -07:00
2026-07-03 16:47:59 -07:00
2026-06-29 22:30:46 -07:00
2026-06-29 22:30:46 -07:00
2026-06-17 22:52:12 -07:00
2026-06-17 22:52:12 -07:00
2026-07-20 18:55:45 -07:00
2026-07-23 18:35:31 -07:00
2026-07-23 18:35:31 -07:00
2026-07-20 21:36:15 -07:00
2026-07-20 21:36:15 -07:00
2026-06-17 22:52:12 -07:00
2026-06-28 00:58:17 -07:00
2026-07-20 18:55:45 -07:00
2026-07-20 18:55:45 -07:00
2026-06-17 22:52:12 -07:00
2026-06-17 22:52:12 -07:00
2026-07-19 23:42:31 -07:00
2026-07-22 14:18:59 -07:00
2026-07-19 23:42:31 -07:00
2026-07-19 23:42:31 -07:00
2026-07-19 23:42:31 -07:00
2026-07-19 23:42:31 -07:00
2026-07-19 23:42:31 -07:00
2026-08-02 15:53:06 -07:00
2026-07-10 13:48:10 -07:00
2026-07-10 13:48:10 -07:00
2026-07-14 19:36:47 -07:00
2026-07-14 19:36:47 -07:00
2026-07-20 11:11:23 -07:00
2026-07-20 11:11:23 -07:00
2026-07-09 19:23:36 -07:00
2026-06-12 11:09:08 -07:00
2026-06-12 11:09:08 -07:00
2026-07-11 02:13:15 -07:00
2026-07-30 12:58:24 -07:00
2026-07-30 12:58:24 -07:00
2026-07-20 21:05:40 -07:00
2026-07-20 21:05:40 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-17 00:34:46 -07:00
2026-07-17 00:34:46 -07:00
2026-06-13 14:24:26 -07:00
2026-06-29 22:30:46 -07:00
2026-06-13 14:24:26 -07:00
2026-06-13 14:24:26 -07:00
2026-07-27 19:00:40 -07:00
2026-07-27 19:00:40 -07:00
2026-06-17 22:52:12 -07:00
2026-07-02 02:31:19 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-07-26 22:08:38 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-28 13:15:31 -07:00
2026-07-30 11:08:56 -07:00
2026-07-23 18:35:31 -07:00
2026-07-23 18:35:31 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-30 11:08:56 -07:00
2026-07-16 13:26:15 -07:00
2026-08-02 22:58:53 -07:00
2026-08-02 22:58:53 -07:00
2026-07-20 21:05:40 -07:00
2026-07-20 21:05:40 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-28 13:15:31 -07:00
2026-07-28 13:15:31 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-26 22:08:38 -07:00
2026-07-20 18:55:45 -07:00
2026-06-17 22:52:12 -07:00
2026-06-17 22:52:12 -07:00
2026-06-27 18:34:58 -07:00
2026-07-09 19:23:36 -07:00
2026-07-20 18:55:45 -07:00
2026-07-09 19:23:36 -07:00
2026-07-09 22:01:22 -07:00
2026-07-20 03:18:35 -07:00
2026-06-17 22:52:12 -07:00
2026-07-30 11:08:56 -07:00
2026-07-26 22:08:38 -07:00
2026-07-23 19:01:04 -07:00
2026-07-23 19:01:04 -07:00
2026-07-17 00:34:46 -07:00
2026-07-17 00:34:46 -07:00
2026-07-10 20:22:16 -07:00
2026-07-26 22:08:38 -07:00
2026-07-27 20:54:02 -07:00
2026-07-22 11:45:59 -07:00
2026-07-22 11:45:59 -07:00
2026-07-02 23:22:30 -07:00
2026-07-02 23:22:30 -07:00
2026-07-16 13:26:15 -07:00
2026-07-16 13:26:15 -07:00
2026-06-20 16:40:34 -07:00
2026-06-20 16:40:34 -07:00
2026-06-09 17:55:20 -07:00