sneak
db0d81e78e
check / check (push) Waiting to run
e2e / e2e-chrome (push) Waiting to run
e2e / e2e-firefox (push) Waiting to run
fix: a popup save no longer undoes a network switch the background saved during it ( closes #641 )
...
The popup's saveState() and the background's updateState() each read the
stored record, change it and write it back, and each was ordered only within
its own context, so a write by one could land between the other's read and
write and be lost. Both now hold the browser's lock (navigator.locks, shared
by every page and the background except a page in a Firefox private window)
from the read to the write, through withLock() in src/shared/browserApi.js;
the recovery screen's reset takes it too. The lock also orders a page's own
saves, so both per-context queues are gone. The unit tests get a small lock
from a Jest setup file.
Model: opus-5-5
2026-10-20 16:58:12 +00:00
..
2026-10-20 16:58:12 +00:00
2026-10-20 16:58:12 +00:00
2026-10-19 00:59:39 +02:00
2026-10-19 20:50:02 +02:00
2026-10-19 03:19:53 +02:00
2026-10-05 10:43:06 +02:00
2026-10-19 02:34:13 +02:00
2026-09-21 21:11:09 +02:00
2026-08-23 20:04:00 +02:00
2026-10-14 20:10:30 +02:00
2026-10-05 05:43:05 +02:00
2026-10-19 11:33:54 +02:00
2026-10-14 18:22:12 +02:00
2026-10-08 07:30:16 +02:00
2026-10-20 07:01:41 +02:00
2026-10-14 19:46:01 +02:00
2026-10-20 09:21:11 +02:00
2026-10-14 18:22:12 +02:00
2026-10-16 05:44:50 +02:00
2026-10-18 23:59:24 +02:00
2026-10-08 07:30:16 +02:00
2026-08-23 17:57:30 +02:00
2026-10-20 03:10:30 +02:00
2026-10-06 15:59:21 +02:00
2026-10-06 22:09:08 +02:00
2026-08-23 17:57:30 +02:00
2026-10-06 03:43:18 +02:00
2026-10-08 09:13:16 +02:00
2026-10-04 18:09:04 +02:00
2026-10-19 11:50:39 +02:00
2026-10-04 18:09:04 +02:00
2026-10-20 16:58:12 +00:00
2026-10-19 14:45:01 +02:00
2026-10-19 12:27:09 +02:00
2026-10-20 16:58:12 +00:00
2026-10-18 23:59:24 +02:00
2026-08-10 16:15:22 +02:00
2026-10-19 23:38:10 +02:00
2026-09-22 00:45:06 +02:00
2026-10-04 21:09:04 +02:00
2026-08-23 17:57:30 +02:00
2026-10-19 06:12:00 +02:00
2026-10-20 16:02:09 +02:00
2026-03-01 19:34:54 +01:00
2026-10-14 15:41:22 +02:00
2026-10-07 10:59:16 +02:00
2026-09-21 18:29:39 +02:00
2026-10-19 04:40:55 +02:00
2026-10-16 07:15:29 +02:00
2026-10-19 04:06:24 +02:00
2026-10-19 11:50:39 +02:00
2026-10-05 02:59:15 +02:00
2026-10-05 10:43:06 +02:00
2026-10-07 06:43:08 +02:00
2026-10-04 09:24:41 +02:00
2026-10-03 16:26:39 +02:00
2026-10-05 15:26:06 +02:00
2026-10-20 16:58:12 +00:00
2026-08-23 17:57:30 +02:00
2026-08-23 21:26:14 +02:00
2026-10-07 10:59:16 +02:00
2026-08-17 08:59:59 +02:00
2026-10-04 18:09:04 +02:00
2026-10-20 03:10:30 +02:00
2026-10-04 22:09:07 +02:00
2026-10-14 10:48:41 +02:00
2026-10-20 03:10:30 +02:00
2026-08-23 23:06:17 +02:00
2026-10-06 00:48:45 +02:00
2026-09-21 21:28:06 +02:00
2026-10-18 22:12:10 +02:00
2026-10-19 02:34:13 +02:00
2026-10-16 04:44:49 +02:00
2026-10-20 16:58:12 +00:00
2026-10-20 16:58:12 +00:00
2026-10-20 16:58:12 +00:00
2026-08-12 10:34:45 +02:00
2026-10-06 22:09:08 +02:00
2026-08-23 17:57:30 +02:00
2026-10-07 05:26:06 +02:00
2026-08-23 20:04:00 +02:00
2026-10-05 04:43:06 +02:00
2026-10-19 23:38:10 +02:00
2026-08-23 20:04:00 +02:00
2026-08-23 20:04:00 +02:00
2026-10-20 16:58:12 +00:00
2026-10-16 03:00:32 +02:00
2026-10-04 21:09:04 +02:00
2026-10-05 09:09:06 +02:00
2026-10-06 22:09:08 +02:00
2026-10-06 23:59:21 +02:00
2026-10-20 04:16:04 +02:00
2026-10-19 14:45:01 +02:00
2026-10-06 22:09:08 +02:00
2026-10-05 01:26:04 +02:00
2026-10-18 22:46:07 +02:00
2026-10-20 04:16:04 +02:00
2026-10-18 22:46:07 +02:00
2026-10-16 03:33:39 +02:00
2026-10-20 16:09:45 +02:00
2026-10-20 16:09:45 +02:00
2026-10-20 17:19:42 +02:00
2026-10-19 11:33:54 +02:00
2026-10-19 16:27:41 +02:00
2026-10-19 11:33:54 +02:00
2026-10-19 11:33:54 +02:00
2026-08-23 21:19:04 +02:00
2026-10-20 16:58:12 +00:00
2026-10-06 15:59:21 +02:00
2026-08-12 10:30:15 +02:00
2026-08-23 16:13:22 +02:00
2026-10-14 18:22:12 +02:00
2026-10-20 07:01:41 +02:00
2026-10-04 18:09:04 +02:00