Brennan Benson
41798d5811
fix(native-chat): read the wind-down a close owes from the live child
...
An eviction recorded "nothing owed" whenever it ran over a session with no
provider child of its own, and the retry then read that record in preference
to the child in front of it. A session suspended to an agent terminal is
exactly that shape, and the trip back to native re-acquires into the SAME
session object rather than replacing it, so the next close skipped both the
dead-generation settlement and the lease release — leaving the record claiming
a live owner this host had just stopped, and a pending send unsettled.
The obligation is now derived the way the quit sweep already derived it, from
one shared predicate: a live child always owes a wind-down, and a remembered
`false` only carries the obligation forward, never cancels it.
Also drops a memoization in the history page that could never hit. Its key was
the snapshot's items array, which the reducer rebuilds on every `snapshot()`
call, so each backward page allocated a fresh key; the one reader that does
share a snapshot across pages reads forward and never calls it. The comment
claimed a multi-page read filtered once, which was not true of either path.
Tests: the handoff round trip that strands the lease, and the quit sweep
picking up an eviction whose close retry never came.
2026-09-13 19:35:09 -07:00
..
2026-09-04 16:40:28 -07:00
2026-09-13 00:01:33 -07:00
2026-09-13 11:08:12 -07:00
2026-09-12 01:19:41 -04:00
2026-08-15 18:25:37 -07:00
2026-09-07 23:35:26 -07:00
2026-09-06 00:50:20 -07:00
2026-09-12 22:56:23 -07:00
2026-09-03 01:32:46 -07:00
2026-09-03 01:32:46 -07:00
2026-09-12 18:08:53 -07:00
2026-09-13 13:47:33 -07:00
2026-09-12 18:00:13 -07:00
2026-09-12 18:05:43 -07:00
2026-09-06 20:24:21 -07:00
2026-09-13 14:00:04 -07:00
2026-09-07 03:28:33 -07:00
2026-08-24 22:30:04 -07:00
2026-09-12 18:03:26 -07:00
2026-08-27 10:48:53 -07:00
2026-09-12 19:39:20 -07:00
2026-09-07 23:35:26 -07:00
2026-09-04 23:45:42 -07:00
2026-08-31 18:53:01 -07:00
2026-09-12 20:35:48 -07:00
2026-08-26 23:17:34 -07:00
2026-08-26 15:44:11 -07:00
2026-08-27 10:48:53 -07:00
2026-09-12 19:39:40 -07:00
2026-08-27 10:48:53 -07:00
2026-08-20 09:57:55 -07:00
2026-09-12 20:05:54 -07:00
2026-09-03 01:32:46 -07:00
2026-09-06 00:03:41 -07:00
2026-09-08 00:10:38 -07:00
2026-08-27 10:48:53 -07:00
2026-07-30 19:33:05 -07:00
2026-08-15 18:25:37 -07:00
2026-09-10 20:16:56 -04:00
2026-09-03 17:32:59 -07:00
2026-09-12 21:18:50 -07:00
2026-09-08 19:44:13 -07:00
2026-08-27 16:10:51 -07:00
2026-09-11 21:22:06 -07:00
2026-09-08 19:44:13 -07:00
2026-07-27 16:36:39 -07:00
2026-09-12 20:35:48 -07:00
2026-08-13 22:48:24 -07:00
2026-08-23 15:24:25 -07:00
2026-09-06 19:20:50 -07:00
2026-09-13 19:35:09 -07:00
2026-08-30 04:53:20 -04:00
2026-09-10 20:16:56 -04:00
2026-09-12 18:08:02 -07:00
2026-08-24 23:15:01 -07:00
2026-09-07 23:28:53 -07:00
2026-09-10 23:26:14 -04:00
2026-09-12 18:04:24 -07:00
2026-09-08 19:41:44 -07:00
2026-09-11 01:25:17 -07:00
2026-09-12 18:36:18 -07:00
2026-09-09 03:36:41 -04:00
2026-08-30 02:09:05 -07:00
2026-09-12 18:05:33 -07:00
2026-09-06 18:28:54 -07:00
2026-09-04 06:08:33 -07:00
2026-09-12 18:08:22 -07:00
2026-09-13 18:11:58 -07:00
2026-08-27 00:18:51 -07:00
2026-09-12 18:06:43 -07:00
2026-09-03 01:32:46 -07:00
2026-09-05 20:03:53 -07:00
2026-09-06 14:34:03 -04:00
2026-09-11 15:28:16 -07:00
2026-08-15 00:54:20 -07:00
2026-09-12 18:09:33 -07:00
2026-08-18 00:35:50 -07:00
2026-08-22 21:12:23 -07:00
2026-09-04 16:42:42 -07:00
2026-09-02 03:08:01 -07:00
2026-09-08 19:43:25 -07:00
2026-09-08 19:41:15 -07:00
2026-09-08 05:14:59 -04:00
2026-09-12 18:11:41 -07:00
2026-09-12 18:01:56 -07:00
2026-08-01 19:22:39 -07:00
2026-08-13 22:48:24 -07:00
2026-08-31 11:20:22 -07:00
2026-08-31 11:20:22 -07:00
2026-09-11 15:28:16 -07:00
2026-09-11 15:28:16 -07:00
2026-09-11 15:28:16 -07:00
2026-09-11 15:28:16 -07:00
2026-08-26 16:44:55 -07:00
2026-08-26 16:44:55 -07:00
2026-08-24 19:45:47 -07:00
2026-08-24 19:45:47 -07:00
2026-09-01 14:06:16 -07:00
2026-09-01 14:06:16 -07:00
2026-09-03 21:04:54 -07:00
2026-09-03 21:04:54 -07:00
2026-08-16 12:48:53 -07:00
2026-09-02 20:47:09 -07:00
2026-07-29 21:43:45 -07:00
2026-07-26 00:13:48 -07:00
2026-07-26 00:13:48 -07:00
2026-09-02 13:05:16 -07:00
2026-08-01 13:38:45 -07:00
2026-08-15 18:25:37 -07:00
2026-08-14 19:04:54 -04:00
2026-08-14 19:04:55 -04:00
2026-08-13 22:48:24 -07:00
2026-08-14 19:04:55 -04:00
2026-08-14 19:04:55 -04:00
2026-08-13 16:23:22 -07:00
2026-08-14 19:04:55 -04:00
2026-08-14 19:04:54 -04:00
2026-08-14 19:04:55 -04:00
2026-08-14 19:04:55 -04:00
2026-08-13 16:23:21 -07:00
2026-08-13 16:23:21 -07:00
2026-08-25 02:32:21 -07:00
2026-08-01 13:38:45 -07:00
2026-08-01 13:38:45 -07:00
2026-08-16 23:51:53 -07:00
2026-08-17 20:43:29 -07:00
2026-08-13 22:48:24 -07:00
2026-08-02 17:40:58 -07:00
2026-08-02 17:40:58 -07:00
2026-09-11 11:43:48 -07:00
2026-09-01 02:07:33 -07:00
2026-08-15 18:25:37 -07:00
2026-08-15 18:25:37 -07:00
2026-08-15 18:25:37 -07:00
2026-08-29 01:53:31 -07:00
2026-08-15 18:25:37 -07:00
2026-08-29 01:53:31 -07:00
2026-08-15 00:54:20 -07:00
2026-08-22 21:24:18 -07:00
2026-08-29 01:53:31 -07:00
2026-09-03 21:04:54 -07:00
2026-09-03 21:04:54 -07:00
2026-08-31 15:16:38 -07:00
2026-09-01 17:35:38 -07:00
2026-08-22 16:38:00 -07:00
2026-08-15 18:25:37 -07:00
2026-08-01 13:38:45 -07:00
2026-09-09 03:36:41 -04:00
2026-08-30 18:13:36 -07:00
2026-08-30 18:13:36 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-08-30 12:11:21 -07:00
2026-08-19 17:12:17 -07:00
2026-09-02 01:39:48 -07:00
2026-09-02 01:39:48 -07:00
2026-09-01 22:47:29 -07:00
2026-09-01 22:47:29 -07:00
2026-08-29 16:06:15 -07:00
2026-08-29 16:06:15 -07:00
2026-08-13 22:48:24 -07:00
2026-09-02 18:13:08 -07:00
2026-07-31 00:51:39 -07:00
2026-07-31 00:51:39 -07:00
2026-08-27 13:44:03 -07:00
2026-09-01 02:07:33 -07:00
2026-08-27 13:44:03 -07:00
2026-08-31 08:17:40 -07:00
2026-07-31 00:51:39 -07:00
2026-07-31 00:51:39 -07:00
2026-07-28 15:34:52 -07:00
2026-07-28 15:34:52 -07:00
2026-09-04 16:42:42 -07:00
2026-09-04 16:42:42 -07:00
2026-09-07 09:18:38 -07:00
2026-09-04 16:42:42 -07:00
2026-09-02 22:31:59 -07:00
2026-08-27 20:10:17 -07:00
2026-08-15 00:54:20 -07:00
2026-09-01 17:20:17 -07:00
2026-09-01 17:20:17 -07:00
2026-09-06 18:29:19 -07:00
2026-08-22 21:47:46 -07:00
2026-08-13 22:48:24 -07:00
2026-08-15 00:54:20 -07:00
2026-08-15 00:54:20 -07:00
2026-08-15 00:54:20 -07:00
2026-08-21 17:11:17 -07:00
2026-09-02 21:35:28 -07:00
2026-09-02 21:35:28 -07:00
2026-09-01 17:20:17 -07:00
2026-09-02 21:35:28 -07:00
2026-08-17 15:25:25 -07:00
2026-09-03 20:57:57 -07:00
2026-08-24 20:45:53 -07:00
2026-09-01 17:20:17 -07:00
2026-08-29 19:41:01 -07:00
2026-08-22 22:30:11 -07:00
2026-08-22 22:30:11 -07:00
2026-08-22 22:30:11 -07:00
2026-09-03 21:21:22 -07:00
2026-08-15 00:54:20 -07:00
2026-09-06 18:29:19 -07:00
2026-09-01 17:20:17 -07:00
2026-07-27 01:14:33 -07:00
2026-08-15 00:54:20 -07:00
2026-08-15 00:54:20 -07:00
2026-09-01 17:20:17 -07:00
2026-08-22 22:30:11 -07:00
2026-08-15 00:54:20 -07:00
2026-08-15 00:54:20 -07:00
2026-09-03 20:59:53 -07:00
2026-09-03 20:59:53 -07:00
2026-09-03 02:00:42 -07:00
2026-08-26 09:50:12 -07:00
2026-09-02 21:35:28 -07:00
2026-09-03 20:59:53 -07:00
2026-09-01 17:20:17 -07:00
2026-08-15 00:54:20 -07:00
2026-09-03 21:30:45 -07:00
2026-08-22 22:30:11 -07:00
2026-08-29 16:06:15 -07:00
2026-08-26 09:50:12 -07:00
2026-08-26 09:50:12 -07:00
2026-08-24 20:45:53 -07:00
2026-08-15 00:54:20 -07:00
2026-08-15 00:54:20 -07:00
2026-08-15 00:54:20 -07:00
2026-08-15 00:54:20 -07:00
2026-09-01 17:20:17 -07:00
2026-08-17 15:25:25 -07:00
2026-08-22 21:47:46 -07:00
2026-08-15 21:41:01 -07:00
2026-08-15 21:41:01 -07:00
2026-07-31 11:58:46 -07:00
2026-09-01 23:21:14 -07:00
2026-09-01 23:21:14 -07:00
2026-08-31 20:32:59 -07:00
2026-09-03 22:20:35 -07:00
2026-08-22 22:30:11 -07:00
2026-08-22 16:38:00 -07:00
2026-08-31 19:08:05 -04:00
2026-08-31 19:08:05 -04:00
2026-09-07 00:12:32 -07:00
2026-09-04 15:55:20 -07:00
2026-08-21 23:58:48 -07:00
2026-09-04 15:55:20 -07:00
2026-09-04 15:55:20 -07:00
2026-08-21 21:05:24 -07:00
2026-08-21 21:05:24 -07:00
2026-08-26 12:48:52 -07:00
2026-09-01 02:07:33 -07:00
2026-08-26 15:09:22 -07:00
2026-08-01 19:22:39 -07:00
2026-08-04 01:37:25 -07:00
2026-09-07 09:18:38 -07:00
2026-08-22 21:34:39 -07:00
2026-08-22 21:34:39 -07:00
2026-08-16 23:51:53 -07:00
2026-08-16 23:51:53 -07:00
2026-09-03 00:49:36 -07:00
2026-09-03 00:49:36 -07:00
2026-09-03 00:49:36 -07:00
2026-09-03 00:49:36 -07:00
2026-08-17 15:25:25 -07:00
2026-08-17 15:25:25 -07:00
2026-09-03 00:49:36 -07:00
2026-09-03 00:49:36 -07:00
2026-09-05 20:02:25 -07:00
2026-09-05 20:02:25 -07:00
2026-09-05 20:02:25 -07:00
2026-09-05 20:02:25 -07:00
2026-09-01 19:06:44 -07:00
2026-09-01 19:06:44 -07:00
2026-09-02 18:04:48 -07:00
2026-09-04 15:23:09 -07:00
2026-08-31 14:58:10 -07:00
2026-08-15 18:25:37 -07:00
2026-08-15 18:25:37 -07:00
2026-09-04 23:27:30 -07:00
2026-09-04 23:27:30 -07:00
2026-08-12 20:55:29 -07:00
2026-08-30 18:13:36 -07:00
2026-08-30 18:13:36 -07:00
2026-08-12 14:31:42 -07:00
2026-08-12 14:31:42 -07:00
2026-08-18 03:12:47 -07:00
2026-08-12 20:55:29 -07:00
2026-08-12 20:55:29 -07:00
2026-08-30 18:13:36 -07:00
2026-08-18 15:59:17 -07:00
2026-08-18 15:59:17 -07:00
2026-08-18 03:12:47 -07:00
2026-09-04 16:40:28 -07:00
2026-08-13 23:47:20 -07:00
2026-09-03 16:13:03 -07:00
2026-09-03 16:47:32 -07:00
2026-08-13 22:48:24 -07:00
2026-08-30 18:50:56 -07:00
2026-08-30 18:50:56 -07:00
2026-09-05 21:54:37 -07:00
2026-09-05 21:54:37 -07:00
2026-08-05 01:13:13 -07:00
2026-08-05 01:13:13 -07:00
2026-08-05 01:13:13 -07:00
2026-08-05 01:13:13 -07:00
2026-08-22 21:12:23 -07:00
2026-08-16 23:51:53 -07:00
2026-08-16 23:51:53 -07:00
2026-09-02 23:13:57 -07:00
2026-09-02 13:10:05 -07:00
2026-09-02 23:13:57 -07:00
2026-08-16 23:51:53 -07:00
2026-08-22 21:12:23 -07:00
2026-08-22 21:12:23 -07:00
2026-09-02 13:10:05 -07:00
2026-09-02 13:10:05 -07:00
2026-08-13 22:48:24 -07:00
2026-08-22 21:12:23 -07:00
2026-08-13 22:48:24 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-08-30 12:10:11 -07:00
2026-08-30 14:42:07 -07:00
2026-07-28 19:58:58 -07:00
2026-08-30 12:10:11 -07:00
2026-08-30 14:42:07 -07:00
2026-08-19 17:34:27 -07:00
2026-08-19 17:34:27 -07:00
2026-08-31 13:22:27 -07:00
2026-09-02 03:08:01 -07:00
2026-08-31 13:22:27 -07:00
2026-08-31 13:22:27 -07:00
2026-08-31 02:17:00 -07:00
2026-08-31 13:22:27 -07:00
2026-08-31 13:22:27 -07:00
2026-08-31 13:22:27 -07:00
2026-08-31 13:22:27 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-08-31 13:22:27 -07:00
2026-08-31 13:22:27 -07:00
2026-08-31 13:22:27 -07:00
2026-09-02 03:08:01 -07:00
2026-09-02 03:08:01 -07:00
2026-09-01 02:07:33 -07:00
2026-07-29 18:21:26 -07:00
2026-08-15 00:38:13 -07:00
2026-08-15 00:38:13 -07:00
2026-08-24 18:12:42 -07:00
2026-08-24 18:12:42 -07:00
2026-09-06 17:36:29 -07:00
2026-09-06 17:36:29 -07:00
2026-09-04 16:42:42 -07:00
2026-09-12 20:10:49 -07:00
2026-09-04 16:42:42 -07:00
2026-08-28 16:45:58 -07:00
2026-09-05 21:42:34 -07:00
2026-09-12 20:45:42 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 22:48:24 -07:00
2026-08-13 22:48:24 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 23:47:20 -07:00
2026-08-13 23:47:20 -07:00
2026-08-30 23:05:32 -07:00
2026-08-24 22:44:08 -07:00
2026-08-24 22:44:08 -07:00
2026-08-30 23:05:32 -07:00
2026-09-02 18:04:48 -07:00
2026-08-24 22:44:08 -07:00
2026-08-24 22:44:08 -07:00
2026-08-24 22:44:08 -07:00
2026-09-05 22:42:06 -07:00
2026-09-05 22:42:06 -07:00
2026-08-14 22:18:36 -07:00
2026-08-14 22:18:36 -07:00
2026-09-03 16:27:13 -07:00
2026-09-03 16:27:13 -07:00
2026-09-01 19:01:59 -07:00
2026-09-05 22:30:01 -07:00
2026-09-01 20:26:00 -07:00
2026-09-01 20:26:00 -07:00
2026-09-05 22:30:01 -07:00
2026-09-05 22:30:01 -07:00
2026-09-01 20:26:00 -07:00
2026-09-05 22:30:01 -07:00
2026-09-01 20:26:00 -07:00
2026-09-01 20:26:00 -07:00
2026-08-18 03:12:47 -07:00
2026-09-01 17:20:17 -07:00
2026-08-29 16:06:15 -07:00
2026-08-29 16:06:15 -07:00
2026-08-27 15:08:40 -07:00
2026-08-17 15:57:07 -07:00
2026-08-20 01:45:17 -07:00
2026-08-30 12:11:21 -07:00
2026-09-05 22:16:57 -07:00
2026-08-13 22:48:24 -07:00
2026-09-03 16:21:52 -07:00
2026-09-03 16:21:52 -07:00
2026-08-17 15:57:07 -07:00
2026-08-17 15:57:07 -07:00
2026-08-13 22:48:24 -07:00
2026-08-13 22:48:24 -07:00
2026-08-13 22:48:24 -07:00
2026-08-29 16:06:15 -07:00
2026-08-20 01:45:17 -07:00
2026-08-20 01:45:17 -07:00
2026-08-20 01:45:17 -07:00
2026-08-20 01:45:17 -07:00
2026-08-20 01:45:17 -07:00
2026-08-20 01:45:17 -07:00
2026-08-17 12:23:50 -07:00
2026-08-17 12:23:50 -07:00
2026-08-31 21:11:09 -07:00
2026-08-31 21:11:09 -07:00
2026-08-29 01:53:31 -07:00
2026-08-13 22:48:24 -07:00
2026-08-13 22:48:24 -07:00
2026-08-07 20:35:22 -07:00
2026-09-06 18:33:12 -07:00
2026-09-06 18:33:12 -07:00
2026-08-22 05:45:21 -07:00
2026-08-07 20:35:22 -07:00
2026-08-31 22:37:23 -07:00
2026-07-30 17:49:32 -07:00
2026-07-30 17:49:32 -07:00
2026-08-31 22:37:23 -07:00
2026-07-30 17:49:32 -07:00
2026-08-22 20:35:59 -07:00
2026-08-22 20:35:59 -07:00
2026-09-02 01:39:48 -07:00
2026-09-02 01:39:48 -07:00
2026-08-30 01:49:05 -07:00
2026-08-30 01:49:05 -07:00
2026-09-12 21:18:50 -07:00
2026-09-12 21:18:50 -07:00
2026-08-07 20:35:22 -07:00
2026-09-02 01:39:48 -07:00
2026-09-02 01:39:48 -07:00
2026-08-07 20:35:22 -07:00
2026-09-02 01:39:48 -07:00
2026-09-02 01:39:48 -07:00
2026-08-19 22:37:42 -07:00
2026-08-19 22:37:42 -07:00
2026-09-01 17:21:10 -07:00
2026-08-30 18:13:36 -07:00
2026-08-18 03:12:47 -07:00
2026-08-19 22:37:42 -07:00
2026-08-19 22:37:42 -07:00