ADR 0189 collects again; issue 244: a verb with an empty schema cannot be called #93

Merged
mesh-admin merged 1 commits from decision/0189-collects-again into main 2026-10-05 12:38:40 +00:00
Contributor

The store collects nightly again. The step was withdrawn for a day because while-stopped named the module-local id while the machine's container is distribution.store, and the host refuses such a declaration whole — novox took nothing at all until it came out. The namespacing was fixed the same night (mesh-controller#259); the step is back (mesh-catalog#57).

This time the composition was read before anything was sent: plan's distribution.collect showing while-stopped: ["distribution.store"]. That is exactly the check whose absence caused the outage. novox then applied with no refusal, and the registry was untouched — only the new step was added.

ADR 0189 gains its built note, including the baseline for the live measurement it asks for: 40G at 14:37, filesystem 56% full, collector first fires at 03:30. Deleting a manifest frees no bytes until it runs, so that is the number to read against tomorrow.

The lesson recorded with it is about where a test stands rather than about the field: both sides' tests passed throughout, because the controller's read manifests and the host's read hand-written declarations with bare ids, and nothing composed one and judged the result against what the host accepts.

Issue 244, found doing this. mesh-controller.plan and .node publish an empty schema, then refuse with plan needs "node" — including when node is passed, because the console drops what the schema does not declare. A tool that cannot be called is worse than one that is absent, because it is listed and describes itself. Worked around through the login shell, which is the path the console exists to replace.

**The store collects nightly again.** The step was withdrawn for a day because `while-stopped` named the module-local id while the machine's container is `distribution.store`, and the host refuses such a declaration *whole* — novox took nothing at all until it came out. The namespacing was fixed the same night (mesh-controller#259); the step is back (mesh-catalog#57). **This time the composition was read before anything was sent**: `plan`'s `distribution.collect` showing `while-stopped: ["distribution.store"]`. That is exactly the check whose absence caused the outage. novox then applied with no refusal, and the registry was untouched — only the new step was added. ADR 0189 gains its built note, including the baseline for the live measurement it asks for: **40G at 14:37, filesystem 56% full, collector first fires at 03:30.** Deleting a manifest frees no bytes until it runs, so that is the number to read against tomorrow. The lesson recorded with it is about where a test stands rather than about the field: both sides' tests passed throughout, because the controller's read manifests and the host's read hand-written declarations with bare ids, and nothing composed one and judged the result against what the host accepts. **Issue 244**, found doing this. `mesh-controller.plan` and `.node` publish an empty schema, then refuse with `plan needs "node"` — including when `node` is passed, because the console drops what the schema does not declare. A tool that cannot be called is worse than one that is absent, because it is listed and describes itself. Worked around through the login shell, which is the path the console exists to replace.
mesh-admin added 1 commit 2026-10-05 12:38:32 +00:00
The nightly collector is back on the store (mesh-catalog#57). It was out for
a day because while-stopped named the module-local id and the host refuses a
declaration naming a container it does not have, whole; the namespacing was
fixed the same night and the composition was read before anything was sent
this time — plan's distribution.collect shows while-stopped as
distribution.store. novox applied it with no refusal and the registry was
untouched.

The store is 40G at 14:37, the filesystem 56% full; the collector first fires
at 03:30. Deleting a manifest frees no bytes until then, so that is the
number to read against.

244: mesh-controller.plan and .node publish an empty schema and then refuse
with 'needs node', including when node is passed — the console drops what
the schema does not declare. A tool that cannot be called is worse than one
that is absent, because it is listed. Worked around through the login shell,
which is the path the console exists to replace.
mesh-admin merged commit 8aeef9969d into main 2026-10-05 12:38:40 +00:00
Author
Contributor

Delivery novox/hq@8aeef9969d81 — 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 nothing: the change touches no module of the mesh's graph

Transitions

  • 2026-10-06 23:05 (new) → proposed (announced): novox/hq#93 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/hq@8aeef9969d81` — **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 nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-06 23:05 (new) → proposed (announced): novox/hq#93 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/hq#93