admin
9c945688c0
R-638 option A: a replay meets the copy's own schema on the two side paths (09 §3 decision 154)
...
Slice 1 — the no-manifest fallback RestoreApp no longer starts the WHOLE stack
at the current definition before the replay (a newer app could migrate the
restored data underneath it). New order: resolve DB services from the live
compose -> stop -> volumes -> DB-only start (StartStackServices, the same
helper the unit restore uses, R-47) -> replay -> full start -> health wait.
A dump with no identifiable DB service is refused before any mutation (same
gate and message as the unit and off-site paths). A failed volume leg skips
the replay. restoreDockerVolumes now goes through the existing
volumeReplayFrom seam (nil in production) so the order is testable without
Docker.
Slice 2 — a unit restore whose volume leg failed no longer calls the
importer. Everything else on that failure path is unchanged: dataErr is
returned as "completed with data errors", the unit's definition is written
and the app is fully started.
No loader change, no new delete step. Red-proofs in felhom.eu
documentation/audits/design-build-2026-10-06/B/ (red-slice1-fallback-order.txt,
red-slice2-no-replay-after-volume-failure.txt).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
2026-10-06 15:15:33 +02:00
..
2026-09-27 12:04:03 +02:00
2026-09-26 10:35:22 +02:00
2026-08-03 13:46:14 +02:00
2026-08-31 11:16:02 +02:00
2026-08-02 23:18:51 +02:00
2026-08-02 18:40:17 +02:00
2026-10-06 02:01:12 +02:00
2026-08-30 17:58:15 +02:00
2026-08-30 17:58:15 +02:00
2026-10-06 11:39:25 +02:00
2026-09-26 10:35:22 +02:00
2026-09-24 12:18:39 +02:00
2026-09-26 10:35:22 +02:00
2026-07-20 09:42:24 +02:00
2026-07-12 09:00:16 +02:00
2026-07-12 09:00:16 +02:00
2026-09-16 16:55:55 +02:00
2026-09-28 18:38:30 +02:00
2026-09-25 13:32:30 +02:00
2026-09-28 15:34:57 +02:00
2026-10-05 22:24:23 +02:00
2026-06-14 19:42:57 +02:00
2026-10-03 17:15:10 +02:00
2026-08-12 15:27:29 +02:00
2026-08-07 12:08:11 +02:00
2026-10-04 07:27:38 +02:00
2026-08-06 21:58:21 +02:00
2026-10-05 21:55:37 +02:00
2026-10-05 21:55:37 +02:00
2026-08-05 17:48:08 +02:00
2026-09-30 10:31:55 +02:00
2026-09-30 10:31:55 +02:00
2026-09-01 10:19:36 +02:00
2026-08-21 21:29:01 +02:00
2026-10-05 20:12:56 +02:00
2026-07-28 13:12:37 +02:00
2026-08-07 11:25:58 +02:00
2026-08-07 11:33:42 +02:00
2026-10-04 10:56:19 +02:00
2026-08-22 13:08:46 +02:00
2026-08-22 13:08:46 +02:00
2026-08-21 21:04:16 +02:00
2026-08-21 21:29:01 +02:00
2026-07-19 09:54:18 +02:00
2026-07-19 12:21:16 +02:00
2026-09-01 10:29:08 +02:00
2026-09-23 20:25:28 +02:00
2026-10-05 22:24:23 +02:00
2026-08-21 21:29:01 +02:00
2026-08-04 14:27:38 +02:00
2026-08-04 13:42:50 +02:00
2026-09-18 11:44:30 +02:00
2026-10-05 20:12:56 +02:00
2026-07-15 10:10:20 +02:00
2026-07-18 12:51:46 +02:00
2026-07-18 12:51:46 +02:00
2026-08-30 18:38:10 +02:00
2026-10-05 22:24:23 +02:00
2026-08-04 18:32:56 +02:00
2026-08-06 21:58:21 +02:00
2026-07-19 09:30:30 +02:00
2026-09-18 11:44:30 +02:00
2026-10-05 07:13:02 +02:00
2026-10-05 07:13:02 +02:00
2026-10-05 20:12:56 +02:00
2026-10-05 22:24:22 +02:00
2026-08-21 21:04:16 +02:00
2026-07-06 20:23:49 +02:00
2026-09-17 10:45:29 +02:00
2026-08-30 19:31:31 +02:00
2026-08-31 20:55:34 +02:00
2026-08-31 20:55:34 +02:00
2026-08-31 20:55:34 +02:00
2026-09-24 12:18:39 +02:00
2026-08-31 11:30:34 +02:00
2026-08-31 11:42:03 +02:00
2026-10-05 20:12:56 +02:00
2026-10-05 20:12:56 +02:00
2026-10-05 20:12:56 +02:00
2026-08-22 09:43:22 +02:00
2026-08-22 23:39:59 +02:00
2026-08-22 13:08:46 +02:00
2026-08-30 19:31:31 +02:00
2026-08-30 21:03:29 +02:00
2026-08-30 21:03:29 +02:00
2026-08-31 10:24:29 +02:00
2026-08-30 21:03:29 +02:00
2026-08-23 00:02:32 +02:00
2026-10-05 20:12:56 +02:00
2026-08-22 23:39:59 +02:00
2026-09-18 14:19:31 +02:00
2026-08-31 10:24:29 +02:00
2026-08-31 10:24:29 +02:00
2026-09-18 11:44:30 +02:00
2026-08-31 20:55:34 +02:00
2026-09-18 14:19:31 +02:00
2026-08-31 14:02:13 +02:00
2026-09-13 19:26:50 +02:00
2026-09-01 10:19:36 +02:00
2026-09-01 10:19:36 +02:00
2026-09-01 10:29:08 +02:00
2026-09-13 19:26:50 +02:00
2026-09-13 22:50:18 +02:00
2026-09-13 19:26:50 +02:00
2026-09-23 11:12:49 +02:00
2026-09-13 22:50:18 +02:00
2026-09-16 16:55:55 +02:00
2026-10-05 20:12:56 +02:00
2026-09-23 17:16:57 +02:00
2026-10-06 15:15:33 +02:00
2026-09-23 20:25:28 +02:00
2026-10-06 11:39:25 +02:00
2026-09-24 08:15:27 +02:00
2026-09-27 12:04:03 +02:00
2026-09-24 08:15:27 +02:00
2026-09-24 12:18:39 +02:00
2026-10-05 20:12:56 +02:00
2026-09-25 11:19:27 +02:00
2026-09-25 13:32:30 +02:00
2026-09-28 09:57:11 +02:00
2026-09-30 10:52:19 +02:00
2026-09-30 10:31:55 +02:00
2026-09-28 18:38:30 +02:00
2026-09-26 10:35:22 +02:00
2026-07-30 16:33:06 +02:00
2026-10-06 11:39:25 +02:00
2026-09-27 12:04:03 +02:00
2026-09-23 20:25:28 +02:00
2026-09-23 20:25:28 +02:00
2026-08-07 18:04:26 +02:00
2026-10-05 20:12:56 +02:00
2026-07-12 09:01:17 +02:00
2026-09-27 12:04:03 +02:00
2026-09-17 10:45:29 +02:00
2026-10-05 20:12:56 +02:00
2026-08-30 19:31:31 +02:00
2026-08-30 19:31:31 +02:00
2026-10-06 15:15:33 +02:00
2026-10-06 15:15:33 +02:00
2026-10-05 12:14:54 +02:00
2026-10-05 12:14:54 +02:00
2026-09-26 10:35:22 +02:00
2026-08-03 13:46:14 +02:00
2026-09-23 20:25:28 +02:00
2026-07-18 13:02:41 +02:00
2026-10-05 20:12:56 +02:00
2026-07-20 09:42:24 +02:00
2026-09-26 10:35:22 +02:00
2026-07-28 16:36:47 +02:00
2026-07-26 08:12:57 +02:00
2026-07-28 18:53:56 +02:00
2026-07-26 08:12:57 +02:00
2026-10-05 22:24:23 +02:00
2026-09-18 14:19:31 +02:00
2026-09-24 12:18:39 +02:00
2026-07-26 08:12:57 +02:00
2026-09-24 12:18:39 +02:00
2026-09-24 12:18:39 +02:00
2026-10-06 11:39:25 +02:00
2026-09-23 17:16:57 +02:00
2026-10-06 11:39:25 +02:00
2026-09-27 12:04:03 +02:00
2026-07-12 09:00:16 +02:00
2026-07-26 08:12:57 +02:00