ethernet
b728fdd627
refactor(pm): own the lock/atomic-write primitives in pm.filesystem
...
pm imported runtime_state's private helpers (_lock, _atomic_bytes, _bytes,
_digest) at a dozen sites while runtime_state imports pm.environments at
module top. The primitives are pm's: move them into the stdlib-only
pm.filesystem as lock_fd, durable_write_bytes, read_bytes_or_none and
file_digest, and repoint every pm caller.
runtime_state keeps the private names only as import aliases: it still
calls them through its own globals, and pre-PM updaters load them by these
names mid-swap (tests/compat/old_updater_surface.json).
Boot-subset test fixtures now copy pm/filesystem.py, since runtime_state
imports it at process boot; worker-injection tests patch the name
pm.publication now reads.
2026-09-24 14:08:03 -04:00
..
2026-09-24 06:04:54 -04:00
2026-09-24 11:56:34 -04:00
2026-09-16 23:45:47 -04:00
2026-09-24 03:42:38 -04:00
2026-09-21 22:02:46 -04:00
2026-09-18 23:27:05 -04:00
2026-09-18 20:13:26 -04:00
2026-09-18 20:13:26 -04:00
2026-09-23 16:07:47 -04:00
2026-09-21 22:39:16 -04:00
2026-09-19 04:15:04 -04:00
2026-09-23 07:02:44 -04:00
2026-09-18 22:04:43 -07:00
2026-09-21 22:02:46 -04:00
2026-09-23 11:41:01 -04:00
2026-09-23 03:15:26 -07:00
2026-09-23 10:51:01 -04:00
2026-09-24 01:30:15 -04:00
2026-09-23 16:55:09 -04:00
2026-09-23 19:00:44 -04:00
2026-09-24 11:50:30 -04:00
2026-09-23 03:15:26 -07:00
2026-09-24 02:50:25 -04:00
2026-09-23 18:13:38 -04:00
2026-09-24 01:31:40 -04:00
2026-09-21 06:03:05 -04:00
2026-09-24 04:38:23 -04:00
2026-09-23 18:01:43 -04:00
2026-09-23 17:51:29 -04:00
2026-09-23 11:41:01 -04:00
2026-09-24 13:31:33 -04:00
2026-09-24 14:08:03 -04:00
2026-09-20 11:47:06 -04:00
2026-09-20 11:47:06 -04:00
2026-09-18 20:02:36 -04:00
2026-09-24 11:50:30 -04:00
2026-09-24 02:03:59 -04:00
2026-09-24 09:20:50 -04:00
2026-09-22 02:19:38 -04:00
2026-09-23 19:56:46 -04:00
2026-09-24 09:20:50 -04:00
2026-09-24 13:31:33 -04:00
2026-09-21 22:02:46 -04:00
2026-09-24 02:03:59 -04:00
2026-09-24 13:31:33 -04:00
2026-09-23 10:51:01 -04:00
2026-09-22 02:19:38 -04:00
2026-09-22 02:19:38 -04:00
2026-09-24 13:31:33 -04:00
2026-09-23 17:14:46 -04:00
2026-09-22 02:19:38 -04:00
2026-09-24 13:31:33 -04:00
2026-09-23 14:11:21 -04:00
2026-09-23 09:58:33 -04:00
2026-09-23 07:02:44 -04:00
2026-09-23 07:02:44 -04:00
2026-09-21 14:03:12 -04:00
2026-09-23 18:13:38 -04:00
2026-09-23 03:15:26 -07:00
2026-09-23 11:41:01 -04:00
2026-09-24 10:42:43 -04:00
2026-09-24 08:20:14 -04:00
2026-09-23 00:47:16 -04:00
2026-09-24 13:31:33 -04:00
2026-09-23 09:58:33 -04:00
2026-09-22 00:09:09 -04:00
2026-09-18 20:13:26 -04:00
2026-09-23 11:41:01 -04:00
2026-09-21 22:02:46 -04:00
2026-09-18 20:13:26 -04:00
2026-09-20 12:40:38 -04:00
2026-09-18 20:13:26 -04:00
2026-09-18 20:13:26 -04:00
2026-09-21 18:37:21 -04:00
2026-09-18 20:13:26 -04:00
2026-09-23 13:17:49 -04:00
2026-09-21 00:58:39 -04:00
2026-09-23 16:05:55 -04:00
2026-09-18 02:57:38 -04:00
2026-09-23 11:41:01 -04:00
2026-09-23 15:44:18 -04:00