docs(tests): Finding #1 re-diagnosis — TEST ARTIFACT (docker kill != crash); controller auto-recovers

Read-only diagnosis: restart-manager works (natural-exit probe RestartCount climbs;
manualRestart=false); docker kill is a manual stop so restart is correctly suppressed.
Definitive: kill -9 the controller PID (real crash) -> unless-stopped auto-restarts it,
RestartCount=1 healthy in 5s. Daemon stable (NRestarts=0, no OOM). Finding #1 downgraded
in the campaign-2 doc. Separate minor obs: boot-time drive-ordering race. No fix applied.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-22 19:35:08 +02:00
parent 58fe93034f
commit e4f49491a3
2 changed files with 105 additions and 1 deletions
@@ -36,7 +36,17 @@ PBS `felhom-pbs:backup/ct/9201/2026-06-22T16:13:44Z` (verified). UI driven via a
## Findings (new)
### 🔴 1. docker restart policy not honored no auto-recovery for a crashed controller
### 1. [DOWNGRADED — TEST ARTIFACT] "docker restart policy not honored / no auto-recovery"
> **Correction (2026-06-22, read-only re-diagnosis — see `test-campaign-2-finding1-recovery-diagnosis.md`):**
> Finding #1 below was a **test artifact**. The controller **does** auto-recover from a genuine crash:
> `kill -9` of the controller's container PID (a real process death) → docker `unless-stopped`
> auto-restarted it (**RestartCount=1, healthy in ~5 s**). The campaign tested with `docker kill`, which
> Docker treats as a **manual stop** (restart policy intentionally suppressed) — not a crash. A
> natural-exit probe confirmed the restart-manager works (`restartCount` climbs, `manualRestart=false`).
> Daemon is stable (NRestarts=0, no OOM). **No watchdog needed; no real recovery gap.** The original
> (incorrect) text is kept below for the record.
#### (original, superseded) docker restart policy not honored → no auto-recovery for a crashed controller
`restart: unless-stopped` containers do **not** auto-restart after `docker kill` (navidrome
`RestartCount=0` over two trials; dockerd logged `stopping restart-manager`; Docker 29.5.3, Live
Restore off). The controller does not reconcile-stop them (verified in logs/source). Consequences: