I3833 — majordomus disk prune reclaims the container runtime's caches by name: build cache, anonymous unused volumes, dangling images, then trims the VM disk
Add a typed capability disk.prune (CLI `majordomus disk prune`, --check and --apply) that reports and, with --apply, runs docker builder prune -af, docker volume prune -f (anonymous unused volumes only, never a named volume), docker image prune -f (dangling only), and on colima `colima ssh -- sudo fstrim -av`, reporting the space each step gave back and announcing it on the mesh; it starts no stopped VM unless asked.
PŘIPRAVENO vlna 0 · p2 · profil implementation · bezpečné souběžně
Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I3833 bude přijato.
Cíl
Add a typed capability disk.prune (CLI `majordomus disk prune`, --check and --apply) that reports and, with --apply, runs docker builder prune -af, docker volume prune -f (anonymous unused volumes only, never a named volume), docker image prune -f (dangling only), and on colima `colima ssh -- sudo fstrim -av`, reporting the space each step gave back and announcing it on the mesh; it starts no stopped VM unless asked.
Proč
The owner's relaxation of 2026-10-21 (I3824 clause 8). On 2026-10-20 these four steps shrank the colima disk image from 73 GiB to 43 GiB without touching a named data volume.
Aktuální stav
No capability; the steps were typed by hand.
Cílový stav
One named capability the owner can allow; --check is read-only; named volumes and tagged images are never removed.
Rozsah
- apps/majordomus-cli/src/capability/builtin
- share/commands.yaml
- docs/DEVELOPMENT_RUNTIME.md
Mimo rozsah
- Changing which checks CI requires
- Claude Code permission settings, which are the owner's to paste
Závislosti
Žádné. Tento úkol je kořenem grafu.
Kritéria přijetí
- --check reports what each step would reclaim and writes nothing
- --apply never removes a named volume or a tagged image, which a fixture with a stubbed docker proves
- A machine without docker or colima reports the step as absent, never as a failure
- Each applied step is announced on the mesh with the bytes it reclaimed
Validace
- bash test/run.sh 3833_the_container_runtime_is_pruned_by_name
- bin/majordomus plan validate
Požadované důkazy
- the_container_runtime_is_pruned_by_name_test
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Canonical record: .ai/repo/project/issues/I3833.yaml. Read it back with majordomus plan show I3833.