From 445f7e838a8cc9698e21b333c552ebaf82a66e7e Mon Sep 17 00:00:00 2001 From: mdheller <21163552+mdheller@users.noreply.github.com> Date: Thu, 30 Jul 2026 02:04:24 -0400 Subject: [PATCH] storage: three backup jobs that delete nothing, two of which never ran MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit None of the estate's PVC definitions had a retention policy. Three concrete cases, all of which look healthy and none of which bound anything. workspace-mail-backup A full tarball of /maildata every night into a fixed 20Gi volume, with no deletion of any kind. It is not already full only because the image it referenced never existed, so the job has never run — the retention bug is latent, not fixed. Fixed BEFORE it is allowed to schedule. Now: prune by count (7) and by total size (14GB), refuse rather than fill (MIN_FREE_MB, exit 1 -> KubeJobFailed, which is a live alert), verify the archive is readable before declaring success, and emit an EvidenceReceipt whose hash is the archive digest. Proved against seeded fixtures: 9 existing -> pruned 3 -> wrote 1 -> 7 retained refusal -> status="denied" receipt, nothing written, exit 1 budget -> prunes until under MAX_TOTAL_MB mesh-qdrant snapshots Three independent defects meant this CronJob has never produced a single snapshot, silently: - `args:` against curlimages/curl, whose ENTRYPOINT is curl, so the container ran `curl /bin/sh -c "