The store collects nightly again (hq ADR 0189) #57

Merged
mesh-admin merged 1 commits from feat/the-store-collects-nightly-again into main 2026-10-05 12:33:35 +00:00
Contributor

Puts back the step withdrawn on 2026-10-04.

It was pulled because while-stopped named the module-local id (store) while the machine's container is distribution.store, and the host refuses a declaration naming a container it does not have — whole. novox took nothing at all until the step came out. mesh-controller#259 fixed the namespacing the same night and has been live since, so the window now composes as distribution.store.

Unchanged from the original: plain garbage-collect at 03:30 with the server held still by while-stopped: ["store"]. Not --delete-untagged — what the mesh keeps is still a manifest and so still referenced, and that flag would delete images machines are running.

Why it matters now. The sweep has been deciding correctly since yesterday — it deletes the manifests no record names — but deleting a manifest frees no bytes until the registry's own collector walks the storage. The store is at 40G and still growing. This is the half that reclaims.

I will not push this blind. After it builds I will compose plan novox and check distribution.collect's while-stopped reads distribution.store before sending anything — the check I skipped last time, which is why novox went down.

Puts back the step withdrawn on 2026-10-04. It was pulled because `while-stopped` named the module-local id (`store`) while the machine's container is `distribution.store`, and the host refuses a declaration naming a container it does not have — **whole**. novox took nothing at all until the step came out. mesh-controller#259 fixed the namespacing the same night and has been live since, so the window now composes as `distribution.store`. Unchanged from the original: plain `garbage-collect` at 03:30 with the server held still by `while-stopped: ["store"]`. Not `--delete-untagged` — what the mesh keeps is still a manifest and so still referenced, and that flag would delete images machines are running. **Why it matters now.** The sweep has been deciding correctly since yesterday — it deletes the manifests no record names — but deleting a manifest frees no bytes until the registry's own collector walks the storage. The store is at **40G** and still growing. This is the half that reclaims. **I will not push this blind.** After it builds I will compose `plan novox` and check `distribution.collect`'s `while-stopped` reads `distribution.store` before sending anything — the check I skipped last time, which is why novox went down.
mesh-admin added 1 commit 2026-10-05 12:33:27 +00:00
Withdrawn 2026-10-04 to unblock novox: while-stopped named the module-local
id and the host refuses a declaration naming a container it does not have,
whole. mesh-controller#259 fixed the namespacing and it has been live since,
so the window composes as distribution.store and the host will take it.

Unchanged from before: plain garbage-collect at 03:30 with the server held
still. The store is at 40G and nothing reclaims it until this runs.
mesh-admin merged commit 4f3e52b47a into main 2026-10-05 12:33:35 +00:00
Author
Contributor

Delivery novox/mesh-catalog@4f3e52b47af8 — held since 2026-10-06T23:05:28Z

Held for a person: merged without a passing check: only a person decides that it goes on — mesh-delivery.release with why lets it go on.

Delivery plan — builds distribution → novox; no bus step

  • tier 0: distribution
  • novox: receives distribution
  • distribution provides artifact-store: its consumers are sent again after it
  • distribution keeps data (ADR 0233): what it holds is backed up before it moves

Transitions

  • 2026-10-06 23:05 (new) → proposed (announced): novox/mesh-catalog#57 merged; its head was not heard by this owner, so it is made from the forge's word
  • 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-catalog@4f3e52b47af8` — **held** since 2026-10-06T23:05:28Z Held for a person: merged without a passing check: only a person decides that it goes on — `mesh-delivery.release` with why lets it go on. **Delivery plan** — builds distribution → novox; no bus step - tier 0: distribution - novox: receives distribution - distribution provides artifact-store: its consumers are sent again after it - distribution keeps data (ADR 0233): what it holds is backed up before it moves **Transitions** - 2026-10-06 23:05 (new) → proposed (announced): novox/mesh-catalog#57 merged; its head was not heard by this owner, so it is made from the forge's word - 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-catalog#57