kshitijk4poor
0976ceaa98
fix(macos): harden anchor alias failures — warn, unique staging, marker-last
...
Follow-up to the #95605 salvage, closing the review findings:
- _copy_alias no longer swallows OSError silently: it warns (a leftover
alias symlink is the exact #95541 crash shape) and reports failure.
- Alias staging uses mkstemp (unique names) so concurrent ensures
(update + doctor --fix) can never promote a truncated interim copy.
- The anchor marker is written LAST and atomically (write-then-rename):
it now asserts the whole layout (anchor + aliases) is complete, so a
partially-materialized alias set can never read 'active' in doctor —
the next ensure retries the install instead.
- /.hermes-runtime/python/ store marker is derived from
managed_uv._RUNTIME_DIR_NAME instead of a hardcoded string.
5 new regression tests.
2026-08-28 09:05:19 +05:30
..
2026-08-27 11:50:05 -05:00
2026-08-22 23:25:29 -07:00
2026-08-19 19:22:48 -07:00
2026-08-23 20:00:53 -07:00
2026-08-24 03:22:57 -07:00
2026-08-22 23:25:43 -07:00
2026-08-21 13:01:35 -07:00
2026-08-20 01:47:06 -07:00
2026-08-26 06:28:43 -07:00
2026-08-22 19:30:10 -07:00
2026-08-26 19:25:33 -07:00
2026-08-21 15:23:51 -07:00
2026-08-24 15:42:58 +05:30
2026-08-26 11:41:04 -07:00
2026-08-26 11:41:04 -07:00
2026-08-23 03:55:14 -07:00
2026-08-23 02:14:35 -07:00
2026-08-27 22:05:40 -05:00
2026-08-20 04:08:57 -07:00
2026-08-22 02:25:12 -04:00
2026-08-27 11:49:58 +05:30
2026-08-27 14:02:06 +05:30
2026-08-27 13:27:24 +05:30
2026-08-19 19:22:48 -07:00
2026-08-17 11:29:10 -07:00
2026-08-17 02:27:37 -07:00
2026-08-23 21:12:20 -07:00
2026-08-23 21:12:20 -07:00
2026-08-24 15:45:52 +05:30
2026-08-20 20:21:12 -07:00
2026-08-18 14:26:16 -07:00
2026-08-27 10:35:22 -07:00
2026-08-23 16:09:14 -07:00
2026-08-23 15:49:44 -07:00
2026-08-21 22:33:45 +05:30
2026-08-26 07:57:04 -07:00
2026-08-26 04:03:21 -07:00
2026-08-23 19:55:17 -07:00
2026-08-19 19:24:41 -07:00
2026-08-24 03:14:30 -07:00
2026-08-22 21:36:44 -07:00
2026-08-17 02:56:17 -07:00
2026-08-17 14:02:07 +05:30
2026-08-25 21:59:36 -07:00
2026-08-22 13:39:04 -04:00
2026-08-22 13:38:56 -04:00
2026-08-23 05:12:59 -07:00
2026-08-26 16:14:32 -07:00
2026-08-21 14:13:28 +10:00
2026-08-21 03:51:03 -07:00
2026-08-23 18:42:59 -07:00
2026-08-27 20:39:11 +05:30
2026-08-26 16:45:31 -07:00
2026-08-26 16:45:22 -07:00
2026-08-21 02:48:14 +08:00
2026-08-18 16:08:29 -07:00
2026-08-25 23:23:11 -07:00
2026-08-19 19:42:31 -07:00
2026-08-19 16:10:01 -07:00
2026-08-25 21:59:52 -07:00
2026-08-21 14:38:41 -07:00
2026-08-19 23:28:14 -05:00
2026-08-27 11:31:21 -05:00
2026-08-27 17:45:43 -05:00
2026-08-18 11:58:48 -07:00
2026-08-27 19:07:15 +05:30
2026-08-17 14:16:21 +05:30
2026-08-17 14:16:21 +05:30
2026-08-23 03:55:14 -07:00
2026-08-21 13:41:39 -07:00
2026-08-18 14:26:16 -07:00
2026-08-18 16:08:29 -07:00
2026-08-26 06:26:07 -07:00
2026-08-28 09:05:19 +05:30
2026-08-18 20:42:06 -04:00
2026-08-26 04:14:16 -07:00
2026-08-26 09:54:31 -07:00
2026-08-25 04:21:37 -07:00
2026-08-26 17:42:58 -07:00
2026-08-26 15:48:39 -07:00
2026-08-26 15:48:39 -07:00
2026-08-17 12:58:51 -07:00
2026-08-21 14:38:19 -07:00
2026-08-27 11:31:21 -05:00
2026-08-17 12:58:51 -07:00
2026-08-27 04:14:31 -07:00
2026-08-18 14:26:16 -07:00
2026-08-19 01:19:28 -07:00
2026-08-19 23:28:14 -05:00
2026-08-22 21:36:55 -07:00
2026-08-19 19:41:52 -07:00
2026-08-21 04:44:15 -07:00
2026-08-23 00:52:50 -07:00
2026-08-23 03:56:28 -07:00
2026-08-23 04:45:29 -07:00
2026-08-17 17:23:30 -07:00
2026-08-19 08:52:03 -07:00
2026-08-27 22:05:40 -05:00
2026-08-20 04:30:33 -07:00
2026-08-20 04:47:38 -07:00
2026-08-18 02:27:18 -07:00
2026-08-24 20:25:10 -07:00
2026-08-21 00:24:32 -07:00
2026-08-27 11:31:21 -05:00
2026-08-21 00:24:32 -07:00
2026-08-20 01:46:20 -07:00
2026-08-23 01:47:26 -07:00
2026-08-19 23:28:14 -05:00
2026-08-25 02:45:10 -07:00
2026-08-17 15:47:17 -07:00
2026-08-20 04:50:39 -07:00
2026-08-26 16:45:31 -07:00
2026-08-23 18:25:35 -07:00
2026-08-21 14:38:41 -07:00
2026-08-27 17:11:56 +05:30
2026-08-26 07:57:04 -07:00
2026-08-20 12:37:16 -05:00
2026-08-27 02:17:56 -07:00
2026-08-20 02:06:05 -07:00
2026-08-27 13:27:24 +05:30
2026-08-24 20:25:10 -07:00
2026-08-24 15:45:52 +05:30
2026-08-24 15:45:52 +05:30
2026-08-22 19:30:10 -07:00
2026-08-23 05:12:59 -07:00
2026-08-19 01:23:17 +05:30
2026-08-19 10:19:35 -07:00
2026-08-20 02:58:31 +05:30
2026-08-20 02:58:31 +05:30
2026-08-26 07:03:04 -07:00
2026-08-24 03:20:37 -07:00
2026-08-19 16:10:01 -07:00
2026-08-20 03:05:46 -07:00
2026-08-21 04:44:15 -07:00
2026-08-24 15:45:52 +05:30
2026-08-25 02:45:10 -07:00
2026-08-24 03:20:37 -07:00
2026-08-25 12:09:08 -07:00
2026-08-22 23:10:32 -04:00
2026-08-20 04:54:14 -07:00
2026-08-26 04:17:39 -07:00
2026-08-26 16:45:31 -07:00
2026-08-26 16:45:31 -07:00
2026-08-26 17:42:50 -07:00
2026-08-26 17:42:50 -07:00
2026-08-26 11:41:04 -07:00
2026-08-19 02:10:37 -05:00
2026-08-20 02:45:57 -07:00
2026-08-26 18:23:33 -07:00
2026-08-26 18:23:33 -07:00
2026-08-26 21:38:20 -07:00
2026-08-23 04:25:18 -07:00
2026-08-20 04:14:42 -07:00
2026-08-24 03:21:28 -07:00
2026-08-17 23:53:05 -07:00
2026-08-23 04:45:29 -07:00
2026-08-23 04:45:29 -07:00
2026-08-25 14:10:10 -07:00
2026-08-25 14:10:10 -07:00
2026-08-21 15:23:49 -07:00
2026-08-23 00:50:41 -07:00
2026-08-26 16:45:26 -07:00
2026-08-26 16:45:26 -07:00
2026-08-22 19:30:10 -07:00
2026-08-20 03:43:00 -07:00
2026-08-20 12:41:33 -05:00
2026-08-26 08:39:04 -07:00
2026-08-20 05:02:36 -07:00
2026-08-23 02:16:33 -07:00
2026-08-26 06:28:43 -07:00
2026-08-27 22:06:17 +05:30
2026-08-27 21:07:34 +05:30
2026-08-21 22:08:16 -07:00
2026-08-21 22:08:16 -07:00
2026-08-21 19:11:55 -07:00
2026-08-25 14:48:51 -07:00
2026-08-19 16:10:01 -07:00
2026-08-19 01:23:39 -05:00
2026-08-26 21:38:20 -07:00
2026-08-23 19:55:17 -07:00
2026-08-23 15:21:48 -07:00
2026-08-24 03:21:49 -07:00
2026-08-27 11:31:21 -05:00
2026-08-26 16:45:31 -07:00
2026-08-22 13:38:56 -04:00
2026-08-26 16:45:31 -07:00
2026-08-20 01:45:56 -07:00
2026-08-19 23:55:20 -07:00