ethernet
05609d2092
merge: origin/main (19 commits) into ethie/pm-clean
...
Conflicts, all inside the local-runtime / local-models subsystem:
- hermes_cli/local_runtime/binaries.py, hermes_cli/web_routers/local_models.py:
main's own transfer machinery (urllib ranged download, shutil.move publish) is
retired here — pm/downloader owns every fetch. Took ours.
- tests/hermes_cli/test_local_runtime_downloads.py: deleted here (its subject,
binaries._download, is gone); kept deleted.
- tests/hermes_cli/test_local_models_routes.py: ours (the pause/resume suite) plus
main's held-finished-file contract, re-seamed onto the pm downloader.
main's fix 515412f415 ("wait out a held finished download instead of copying it and
failing") is re-homed so it fits the PM model: the Windows rename that fails while an
antivirus or indexing scan still holds a just-closed multi-gigabyte file is now handled
once, in pm/downloader.replace_when_released, which is the single publish path for PM
archives and model files alike. A cleanup that cannot remove its leftover can no longer
mask the error that left it.
Tests: helper retries a transient refusal and lands the file; gives up with the
plain-language message chained to the OS error; a download publishes through two refused
renames with nothing left behind; a stuck hold reports the rename error, not the failed
cleanup. Route-level: the job lands the file and reports done.
2026-09-21 17:24:14 -04:00
..
2026-09-21 15:55:09 +05:30
2026-09-21 10:51:15 -04:00
2026-09-20 13:21:24 -07:00
2026-09-20 10:06:50 -07:00
2026-09-21 15:55:09 +05:30
2026-09-21 15:55:09 +05:30
2026-09-21 15:55:09 +05:30
2026-09-20 10:18:48 -07:00
2026-09-21 09:55:40 -07:00
2026-09-21 00:58:39 -04:00
2026-09-21 02:47:48 -04:00
2026-09-21 05:07:21 -04:00
2026-09-21 00:58:39 -04:00
2026-09-21 15:55:09 +05:30
2026-09-20 20:42:17 -07:00
2026-09-21 13:18:39 -04:00
2026-09-21 10:04:32 +05:30
2026-09-20 13:35:09 -07:00
2026-09-21 00:58:39 -04:00
2026-09-20 20:42:17 -07:00
2026-09-21 00:38:40 -04:00
2026-09-20 11:48:28 -07:00
2026-09-21 09:55:40 -07:00
2026-09-21 07:32:26 -04:00
2026-09-21 02:47:48 -04:00
2026-09-21 02:47:48 -04:00
2026-09-21 01:45:08 -07:00
2026-09-21 00:58:39 -04:00
2026-09-20 20:13:33 -07:00
2026-09-21 13:26:17 -04:00
2026-09-21 10:11:19 -07:00
2026-09-21 10:11:19 -07:00
2026-09-21 05:06:45 -07:00
2026-09-20 15:17:49 +05:30
2026-09-20 11:19:50 -07:00
2026-09-20 10:49:13 -07:00
2026-09-20 11:12:12 -07:00
2026-09-20 10:42:30 -04:00
2026-09-21 00:58:39 -04:00
2026-09-20 11:52:04 -07:00
2026-09-20 10:05:53 -07:00
2026-09-20 15:57:25 -07:00
2026-09-21 01:57:05 -07:00
2026-09-20 12:15:07 -07:00
2026-09-21 00:58:39 -04:00
2026-09-21 02:47:48 -04:00
2026-09-21 14:13:07 -04:00
2026-09-21 00:58:39 -04:00
2026-09-20 10:39:01 -07:00
2026-09-21 10:11:19 -07:00
2026-09-21 08:38:15 -07:00
2026-09-21 10:11:19 -07:00
2026-09-21 10:11:19 -07:00
2026-09-21 13:19:07 -04:00
2026-09-21 10:11:19 -07:00
2026-09-21 11:40:48 -07:00
2026-09-21 11:40:48 -07:00
2026-09-21 05:02:29 -07:00
2026-09-21 08:16:57 -04:00
2026-09-21 13:18:39 -04:00
2026-09-21 08:16:57 -04:00
2026-09-20 10:50:27 -07:00
2026-09-21 13:18:39 -04:00
2026-09-21 09:55:40 -07:00
2026-09-21 00:58:39 -04:00
2026-09-21 00:58:39 -04:00
2026-09-21 00:58:39 -04:00
2026-09-20 15:55:14 -07:00
2026-09-20 18:43:59 -07:00
2026-09-20 10:24:53 -07:00
2026-09-21 00:58:39 -04:00
2026-09-20 19:03:47 -07:00
2026-09-20 10:13:26 -07:00
2026-09-20 10:08:02 -07:00
2026-09-20 19:03:47 -07:00
2026-09-21 00:58:39 -04:00
2026-09-20 19:03:47 -07:00
2026-09-20 19:03:47 -07:00
2026-09-21 02:58:40 -07:00
2026-09-21 13:18:39 -04:00
2026-09-20 10:42:30 -04:00
2026-09-21 14:13:07 -04:00
2026-09-20 15:17:14 +05:30
2026-09-20 11:14:00 -07:00
2026-09-21 17:24:14 -04:00
2026-09-21 02:47:48 -04:00
2026-09-21 02:47:48 -04:00
2026-09-20 15:29:34 -07:00
2026-09-21 00:58:39 -04:00
2026-09-21 00:58:39 -04:00
2026-09-21 10:51:15 -04:00
2026-09-21 13:09:28 -04:00
2026-09-21 13:09:28 -04:00
2026-09-20 10:07:50 -04:00
2026-09-20 12:50:53 -07:00
2026-09-20 12:40:36 -07:00
2026-09-21 02:47:48 -04:00
2026-09-20 14:29:39 -07:00
2026-09-20 14:29:39 -07:00
2026-09-20 11:14:00 -07:00
2026-09-20 16:22:25 -07:00
2026-09-20 20:41:54 -07:00
2026-09-20 14:02:17 +05:30
2026-09-21 05:06:45 -07:00
2026-09-21 14:49:05 -04:00
2026-09-20 10:16:51 -07:00
2026-09-20 10:02:22 -07:00
2026-09-21 07:14:37 -07:00
2026-09-21 05:07:21 -04:00
2026-09-20 14:29:39 -07:00
2026-09-21 02:47:48 -04:00
2026-09-21 14:13:07 -04:00
2026-09-21 03:44:00 -04:00
2026-09-20 10:44:52 -07:00
2026-09-21 00:58:39 -04:00
2026-09-21 07:31:22 -04:00
2026-09-21 13:09:28 -04:00
2026-09-21 00:58:39 -04:00
2026-09-21 02:47:48 -04:00
2026-09-20 20:29:14 +05:30
2026-09-21 03:44:00 -04:00
2026-09-20 13:55:03 -07:00
2026-09-21 13:09:28 -04:00
2026-09-20 18:45:07 -07:00
2026-09-21 14:49:05 -04:00
2026-09-21 00:58:39 -04:00
2026-09-20 10:14:01 -07:00
2026-09-21 02:47:48 -04:00
2026-09-20 10:06:29 -07:00
2026-09-20 12:51:30 -07:00
2026-09-20 11:55:07 -07:00
2026-09-21 21:41:36 +05:30
2026-09-20 13:22:30 -07:00
2026-09-20 14:02:17 +05:30
2026-09-21 02:51:58 -07:00
2026-09-20 18:16:47 +05:30
2026-09-20 10:07:50 -04:00
2026-09-20 20:13:41 -07:00
2026-09-20 10:07:50 -04:00
2026-09-20 20:36:42 -07:00
2026-09-20 20:13:25 -07:00
2026-09-21 03:44:00 -04:00
2026-09-21 06:03:05 -04:00
2026-09-20 12:17:52 +05:30
2026-09-20 15:16:35 +05:30
2026-09-21 10:04:32 +05:30
2026-09-20 16:23:22 -07:00
2026-09-20 10:20:01 -04:00
2026-09-21 08:52:49 -04:00
2026-09-21 04:54:26 -04:00
2026-09-21 13:26:17 -04:00
2026-09-20 15:16:06 +05:30
2026-09-20 10:07:50 -04:00
2026-09-20 12:44:48 -07:00
2026-09-21 02:47:48 -04:00
2026-09-21 04:54:26 -04:00
2026-09-21 04:54:26 -04:00
2026-09-20 15:23:04 -07:00
2026-09-21 14:49:05 -04:00
2026-09-21 11:36:13 -04:00
2026-09-21 10:51:15 -04:00
2026-09-21 10:51:15 -04:00
2026-09-21 03:44:00 -04:00
2026-09-20 11:47:06 -04:00
2026-09-20 10:07:50 -04:00
2026-09-20 20:13:57 -07:00
2026-09-20 18:51:36 -07:00
2026-09-20 11:47:06 -04:00
2026-09-19 23:52:01 -07:00
2026-09-21 07:14:37 -07:00
2026-09-21 10:51:15 -04:00
2026-09-20 10:20:01 -04:00
2026-09-21 06:03:05 -04:00
2026-09-21 02:47:48 -04:00
2026-09-21 02:47:48 -04:00
2026-09-21 13:18:11 -04:00
2026-09-20 20:13:41 -07:00
2026-09-21 02:56:31 -07:00
2026-09-20 12:45:24 -07:00
2026-09-21 02:52:15 -07:00
2026-09-21 10:11:19 -07:00
2026-09-21 00:38:40 -04:00
2026-09-20 11:54:02 -07:00
2026-09-20 15:15:36 +05:30
2026-09-21 02:47:48 -04:00
2026-09-20 16:41:21 +05:30
2026-09-21 02:47:48 -04:00
2026-09-21 09:55:40 -07:00
2026-09-21 09:55:40 -07:00