Issue 121: builder's real package-registry grant deadlocks a genesis bootstrap #117

Merged
jschoubben merged 3 commits from issue/117-builder-package-registry-deadlocks-genesis into main 2026-09-26 12:20:54 +00:00
Owner

Was pushed without a PR, at a number already taken.

  • Renumbered 117 → 121. main holds 117 as "a module's own code is a container in one record and a process in another" (PR #110). Two reports claimed 117 in different folders, which git merges without a word — the collision only shows up when someone reads the tree.
  • Scrubbed the node's name in three places and a real package-registry path; this repository is public.

The report is otherwise untouched, and its substance is the part worth reading: builder was corrected to requires: ["artifact-store", "package-registry"] instead of a hand-faked binding — and package-registry is satisfiable only by gitea, whose own runtime image builder is what builds. On a running mesh the grant resolves instantly and nothing is visible; a genesis bootstrap, or a full re-raise for disaster recovery, hits the cycle. It is the same pivot ADR 0075 named for the mesh as a whole, now with a concrete second collision.

Note for the reader, from the report: three mesh-controller tests are deliberately left failing rather than reverted or hacked to pass, so the gap stays visible. That is a live condition in that repository, not something this PR changes.

Checks: cycle 283 documents, the chain holds; records 104, all passed; index current.

Was pushed without a PR, at a number already taken. - **Renumbered 117 → 121.** `main` holds 117 as "a module's own code is a container in one record and a process in another" (PR #110). Two reports claimed 117 in different folders, which git merges without a word — the collision only shows up when someone reads the tree. - **Scrubbed** the node's name in three places and a real package-registry path; this repository is public. The report is otherwise untouched, and its substance is the part worth reading: `builder` was corrected to `requires: ["artifact-store", "package-registry"]` instead of a hand-faked binding — and `package-registry` is satisfiable only by `gitea`, whose own runtime image `builder` is what builds. On a running mesh the grant resolves instantly and nothing is visible; a genesis bootstrap, or a full re-raise for disaster recovery, hits the cycle. It is the same pivot ADR 0075 named for the mesh as a whole, now with a concrete second collision. Note for the reader, from the report: three `mesh-controller` tests are deliberately **left failing** rather than reverted or hacked to pass, so the gap stays visible. That is a live condition in that repository, not something this PR changes. Checks: cycle 283 documents, the chain holds; records 104, all passed; index current.
jschoubben added 3 commits 2026-09-26 12:20:40 +00:00
Fixing builder's hand-faked package-registry binding tonight (requires:
package-registry, a real mesh grant instead of a hardcoded JSON fragment)
broke three tests describing a deliberate carried-binding fallback for
exactly this: gitea's own image is built by builder, so builder cannot
yet hold a real grant from gitea the first time either has to exist.
Invisible on novox (already bootstrapped, gitea already live) — real on
any genesis from scratch. Fix left in place, tests left failing rather
than reverted or hacked, so the gap stays visible.
Renumbered from 117, which is taken on main by 'a module's own code is a container in one record
and a process in another' — two reports claimed the same number and git would not have said so.

Scrubbed the node's name and a real registry path; this repository is public.
jschoubben merged commit 99ffa6474d into main 2026-09-26 12:20:54 +00:00
jschoubben deleted branch issue/117-builder-package-registry-deadlocks-genesis 2026-09-26 12:20:54 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#117