Brennan Benson
e719ef1a57
fix(mobile): survive connection-migration cutovers during worktree create ( #9234 )
...
* fix(mobile): survive connection-migration cutovers during worktree create
A worktree.create in flight when the mobile transport migrates (relay/direct
hand-off on shoddy cellular, relay lease rotation, relay recovery) rejects with
"RPC interrupted by connection migration" even though the host completed it —
leaving the Create Workspace modal stuck while the worktree exists on desktop.
A naive retry hits a name collision and spawns a duplicate.
Mirror the existing mobile terminal-create idempotency: worktree.create now
accepts an optional clientMutationId that the host dedupes (in-flight + brief
post-success TTL), and mobile mints one key per candidate name and re-issues
the create on a cutover so the retry reconciles instead of duplicating.
* fix(mobile): gate worktree cutover replay by capability
* fix(mobile): await worktree replay capability
2026-07-17 15:56:43 -07:00
..
2026-07-17 12:47:04 -07:00
2026-07-16 02:57:43 -07:00
2026-06-29 22:38:29 -07:00
2026-07-13 00:26:22 -07:00
2026-07-06 02:12:32 -07:00
2026-07-10 20:02:45 -07:00
2026-07-16 23:10:40 -07:00
2026-07-16 23:10:40 -07:00
2026-07-16 19:11:34 -07:00
2026-07-15 12:09:30 -07:00
2026-07-06 01:16:23 -07:00
2026-07-09 22:36:53 -07:00
2026-07-14 02:17:55 -07:00
2026-07-13 00:26:22 -07:00
2026-07-12 14:09:15 -07:00
2026-06-08 19:23:32 -04:00
2026-07-09 22:36:53 -07:00
2026-07-13 00:26:22 -07:00
2026-07-05 21:55:03 -07:00
2026-07-13 00:26:22 -07:00
2026-07-17 15:27:39 -07:00
2026-07-13 00:26:22 -07:00
2026-07-16 18:05:38 -07:00
2026-07-14 05:41:19 -07:00
2026-07-06 15:12:56 -07:00
2026-05-16 14:36:46 -07:00
2026-07-13 00:26:22 -07:00
2026-07-16 14:44:55 -07:00
2026-07-13 00:26:22 -07:00
2026-07-05 23:56:37 -07:00
2026-07-16 19:15:40 -07:00
2026-07-16 23:10:40 -07:00
2026-07-17 15:16:07 -07:00
2026-07-09 18:06:30 -04:00
2026-07-13 00:26:22 -07:00
2026-07-10 00:11:27 -07:00
2026-06-29 22:38:29 -07:00
2026-07-12 23:43:07 -07:00
2026-07-17 15:34:30 -07:00
2026-07-16 00:26:51 -07:00
2026-06-29 22:38:29 -07:00
2026-07-13 00:26:22 -07:00
2026-07-16 23:10:40 -07:00
2026-07-15 22:29:01 -07:00
2026-07-10 20:10:08 -07:00
2026-07-05 02:53:17 -07:00
2026-06-29 22:38:29 -07:00
2026-07-05 01:15:16 -07:00
2026-07-16 13:26:15 -07:00
2026-06-29 22:38:29 -07:00
2026-07-11 02:03:14 -07:00
2026-05-30 02:46:28 -07:00
2026-07-06 02:12:32 -07:00
2026-07-10 00:14:01 -07:00
2026-07-16 23:10:40 -07:00
2026-07-16 14:16:30 -07:00
2026-06-29 22:38:29 -07:00
2026-07-06 02:12:32 -07:00
2026-07-17 15:34:30 -07:00
2026-07-15 15:23:35 -07:00
2026-07-17 15:09:22 -07:00
2026-07-17 15:56:43 -07:00
2026-07-16 20:02:01 -07:00
2026-07-13 20:10:50 -07:00
2026-07-14 17:49:13 -07:00
2026-05-30 13:26:48 -07:00
2026-07-17 14:27:31 -07:00
2026-06-29 22:38:29 -07:00
2026-07-13 19:41:24 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 18:09:33 -07:00
2026-07-16 18:33:34 -07:00
2026-07-16 13:06:21 -07:00
2026-07-05 23:56:37 -07:00
2026-07-15 22:09:37 -07:00
2026-06-17 16:20:37 -07:00
2026-06-17 16:20:37 -07:00
2026-05-18 14:09:21 -07:00
2026-05-18 14:09:21 -07:00
2026-05-18 14:09:21 -07:00
2026-06-17 16:08:14 -07:00
2026-06-17 16:08:14 -07:00
2026-06-22 18:01:37 -07:00
2026-06-22 18:01:37 -07:00
2026-07-17 15:27:39 -07:00
2026-07-17 15:27:39 -07:00
2026-04-19 12:09:32 -07:00
2026-05-15 23:52:37 -07:00
2026-06-30 11:31:55 -07:00
2026-06-30 11:31:55 -07:00
2026-06-30 11:31:55 -07:00
2026-06-30 11:31:55 -07:00
2026-06-30 11:31:55 -07:00
2026-07-09 22:37:40 -04:00
2026-07-09 22:37:40 -04:00
2026-05-30 15:26:11 -04:00
2026-06-29 22:38:29 -07:00
2026-07-16 23:10:40 -07:00
2026-06-19 17:14:55 -07:00
2026-06-29 22:38:29 -07:00
2026-07-14 15:23:06 -07:00
2026-07-14 15:23:06 -07:00
2026-07-17 15:27:39 -07:00
2026-06-29 22:38:29 -07:00
2026-05-30 09:04:52 -07:00
2026-05-30 09:04:52 -07:00
2026-07-13 01:10:38 -07:00
2026-06-29 00:53:07 -07:00
2026-06-29 00:53:07 -07:00
2026-07-10 17:52:50 -07:00
2026-07-15 15:23:35 -07:00
2026-07-15 15:23:35 -07:00
2026-07-06 16:43:05 -07:00
2026-07-06 16:43:05 -07:00
2026-05-30 09:04:52 -07:00
2026-05-30 09:04:52 -07:00
2026-07-16 18:33:34 -07:00
2026-07-16 13:06:21 -07:00
2026-06-24 00:17:49 -07:00
2026-06-24 00:17:49 -07:00
2026-06-17 16:08:14 -07:00
2026-07-13 01:10:38 -07:00
2026-07-15 13:25:24 -07:00
2026-07-15 13:25:24 -07:00
2026-06-24 21:07:15 -04:00
2026-06-29 22:38:29 -07:00
2026-06-18 16:24:22 -07:00
2026-06-25 17:24:09 -07:00
2026-06-24 19:19:31 -07:00
2026-06-24 19:19:31 -07:00
2026-06-24 19:19:31 -07:00
2026-07-03 19:40:45 -04:00
2026-07-03 19:40:45 -04:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-07-09 16:24:20 -07:00
2026-07-09 16:24:20 -07:00
2026-07-03 17:52:59 -07:00
2026-07-03 17:52:59 -07:00
2026-06-21 18:51:44 -07:00
2026-07-14 01:55:04 -07:00
2026-07-10 17:27:47 -07:00
2026-07-10 17:27:47 -07:00
2026-05-21 21:52:26 -07:00
2026-05-21 21:52:26 -07:00
2026-05-21 21:52:26 -07:00
2026-05-21 21:52:26 -07:00
2026-07-06 20:21:58 -07:00
2026-07-06 20:21:58 -07:00
2026-07-07 12:43:53 -07:00
2026-07-07 12:43:53 -07:00
2026-07-06 02:12:32 -07:00
2026-06-29 22:38:29 -07:00
2026-07-09 02:13:13 -07:00
2026-07-11 21:03:04 -07:00
2026-07-11 21:03:04 -07:00
2026-04-14 10:25:55 -07:00
2026-07-05 23:09:14 -07:00
2026-07-09 23:00:01 -07:00
2026-05-26 20:56:11 -07:00
2026-07-17 15:27:39 -07:00
2026-07-17 15:27:39 -07:00
2026-07-09 23:00:01 -07:00
2026-05-30 13:09:17 -07:00
2026-07-05 23:09:14 -07:00
2026-05-27 00:47:01 -07:00
2026-07-05 02:53:17 -07:00
2026-07-05 23:56:37 -07:00
2026-07-06 15:12:56 -07:00
2026-05-26 20:56:11 -07:00
2026-07-09 23:00:01 -07:00
2026-07-11 21:03:04 -07:00
2026-07-11 21:03:04 -07:00
2026-05-31 10:11:51 -07:00
2026-05-31 10:11:51 -07:00
2026-05-06 23:30:03 -07:00
2026-06-29 22:38:29 -07:00
2026-07-11 02:03:14 -07:00
2026-07-09 22:37:40 -04:00
2026-07-11 02:03:14 -07:00
2026-05-30 11:01:09 -07:00
2026-07-15 15:24:15 -07:00
2026-07-15 15:24:15 -07:00
2026-07-11 02:05:58 -07:00
2026-07-04 21:31:51 -07:00
2026-07-04 21:31:51 -07:00
2026-06-29 18:02:10 -07:00
2026-06-03 12:25:54 -07:00
2026-06-03 12:25:54 -07:00
2026-06-29 22:38:29 -07:00
2026-07-02 11:24:07 -07:00
2026-07-02 11:24:07 -07:00
2026-07-02 11:24:07 -07:00
2026-06-15 14:54:50 -07:00
2026-06-29 22:38:29 -07:00
2026-05-29 16:06:33 -07:00
2026-05-29 16:06:33 -07:00
2026-07-14 15:23:06 -07:00
2026-06-29 00:32:36 -07:00
2026-06-29 22:38:29 -07:00
2026-07-12 23:19:15 -07:00
2026-07-12 23:19:15 -07:00