From 009bc60dc0565954c608e7e748829b458cbcffe9 Mon Sep 17 00:00:00 2001 From: autonomic-bot Date: Wed, 17 Jun 2026 15:57:14 +0000 Subject: [PATCH] =?UTF-8?q?decisions(canon):=20record=20M2.7=20warm-volume?= =?UTF-8?q?=20disk=20budget=20=E2=80=94=2038G=20free,=20all-enrolled=20sus?= =?UTF-8?q?tainable,=20no=20recipe=20dropped?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- machine-docs/DECISIONS.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/machine-docs/DECISIONS.md b/machine-docs/DECISIONS.md index 865c8e1..48ac320 100644 --- a/machine-docs/DECISIONS.md +++ b/machine-docs/DECISIONS.md @@ -1550,3 +1550,19 @@ information; never weaken a test to make a recipe promote"). The sweep correctly sweep keeps offering to advance it (correct: it should retry in case the recipe is fixed). No promoted-at-latest recipe is ever needlessly re-tested. "Skip every recipe" is the all-promoted ideal; the demonstrated property is "no promoted-at-latest recipe re-runs", which is the operative no-op. + +## Phase canon (2026-06-17) โ€” warm-volume disk budget (ยง2.B / M2.7) + +All-enrolled is sustainable on the single node; the warm-volume budget is NOT the binding constraint, +so the fallback (decouple version-record from retained volume) is NOT needed. Measured 2026-06-17 (read +-only, `ssh cc-ci`): +- Root fs `/`: 150G total, 107G used, **38G free, 74% used**. +- `du -sh /var/lib/ci-warm` (registry metadata + small content) = **1.1G**; largest per-recipe dir + `immich` 307M, `ghost` 208M, `plausible` 114M; most <50M. +- `docker system df`: Local Volumes 47 total, **2.024GB**, 929MB (45%) reclaimable; ~50 `warm-*` data + volumes (16 retained canonicals + warm-keycloak infra + per-run residue the WC8 `ci-docker-prune` + reclaims). +- 16 retained canonicals total ~2G of volumes + 1.1G metadata against 38G free โ†’ ample headroom even + at the full 20-enrolled set. WC8 disk-hygiene (`ci-docker-prune`) keeps residue bounded. +Conclusion: keep all-enrolled with retained volumes; revisit only if `/` free drops below a single +recipe's largest restore (~1โ€“2G working set). No recipe dropped for disk.