# check-volume-persistence.py --all --evidence /root/sweep/ev-07 radicale rallly recipe-importer romm seerr sonarr sparkyfitness
# batch 07 started 2026-10-02T13:38:54Z on bench LXC 9401 @ demo-hp (debian-13 amd64, swap 0, nvme-scratch 200G), docker hub logged in
# catalog-wt febf58c + uncommitted:
#    M scripts/check-volume-persistence.py
#    M scripts/test_check_volume_persistence.py
# check-volume-persistence.py sha256 ecc6a6945f8bcdf4
self-testing the prober (both directions)…
  prober flags the R-156 signature and clears a correct template — trustworthy
radicale             CLEAN         
rallly               CLEAN         
recipe-importer      UNDETERMINED  NOTHING this app wrote landed in ANY folder the template preserves: all 1 mount(s) across 1 container(s) are empty, yet entries were created in ['/'].
romm                 CLEAN         
seerr                CLEAN         
sonarr               CLEAN         sonarr: writable-layer writes at /media (path suggests state, no database signature — judgement needed): ['tv']
sparkyfitness        UNDETERMINED  sparkyfitness-server: declared volume /app/SparkyFitnessServer/backup is EMPTY after the exercise — the app was not shown to write where the template 

UNDETERMINED — NOT a pass. The question was not answered for these:
  recipe-importer: NOTHING this app wrote landed in ANY folder the template preserves: all 1 mount(s) across 1 container(s) are empty, yet entries were created in ['/']. Needs adjudication.; recipe-importer: declared vo
  sparkyfitness: sparkyfitness-server: declared volume /app/SparkyFitnessServer/backup is EMPTY after the exercise — the app was not shown to write where the template preserves it; sparkyfitness-server: declared volum

5 clean · 0 broken · 2 undetermined (of 7 in scope)
INCOMPLETE — no broken template among those decided, but 2 were never decided. This is not a clean bill of health.
check-volume-persistence exit code = 2
# batch 07 finished 2026-10-02T13:55:18Z
# leftover volgate containers: 0
# --- cleanup (by name; no prune) ---
rmi codewithcj/sparkyfitness:v0.17.3: Deleted: sha256:256f393e029fa2063d8c93720da36a74a032bed3355a2bc3e313ad12f8bde9d1
rmi codewithcj/sparkyfitness_server:v0.17.3: Deleted: sha256:34884abbe92863fce933ed7c39c0e045631af0ed86d5cc0dfbdf9fdca426ce3c
rmi fallenbagel/jellyseerr:2.7.3: Deleted: sha256:418dccb7d85a63a6aa574439840f7a6fa6fd2321b3e2394568a317735e867d35
rmi ghcr.io/kozea/radicale:3.8.1: Deleted: sha256:068f42d7c61f0f0e344fa35ad66e109e3d089007afcc39110f9f361a75eaca24
rmi gitea.dooplex.hu/admin/recipe-importer:v0.9.11: Deleted: sha256:a257f20c716c7b5d0474b1b5998f4d1090b573d90b82f764b8f1f1faeb4b524f
rmi lscr.io/linuxserver/sonarr:4.0.20: Deleted: sha256:2a166eefd3a01440135c036b5a9949974c0632d72ed8da69b97931ed975d7943
rmi lukevella/rallly:4.15.3: Deleted: sha256:34467cc93912af891dfee8a3902adf9b4f355a9bca4eaa46f658d1181a21de0d
rmi mariadb:11.8: Deleted: sha256:d81fb2a7c6ee3be05fdefaa7fd223be219c1ab172083ec1b994c3ecda33ac0a8
rmi postgres:18-alpine: Deleted: sha256:74d97c428c51a828f9051a7a40a53ff1fc99e54fc30323ce36760701b0b7f711
rmi redis:7-alpine: Deleted: sha256:1073f425247ed24670458429c13a67afbd36f83d2004dade046ddbd6519b1839
rmi rommapp/romm:5.3.1: Deleted: sha256:575af51c6d53817070d5b9e4f03a5ea98bb687c097741ea228fc8db065db558b
# images now: 1; volgate volumes now: 0
/dev/loop2      196G  1.4G  185G   1% /
