Issue 1945 (notes 81-85). After mesh-delivery #63, txt-game and f1-circuits were indexed, but de-spiegel, link2pay and photos were not: all three were registered from the branch nox-mesh, and registered() accepted only trunk-like refs, silently; photos' only accepted record was a stale novox/mesh-catalog one, hiding the real novox/photos. The grants part still lacked their manifests (a take-over blocker).
Now registered() accepts any record that did not fail; RegistrationsOf keeps, per repository and directory, the record of the registered ref (a trunk-like ref first, else the ref most of that place's records name) and its newest commit, so a newer pull request's or try's record never replaces it; registrations are tried in order until the module is held. A read at the source's head that fails writes nothing and is asked again at the next trigger (no fallback to an old commit). snake and car-hunter stay out: the forge no longer holds their commits (the operator's question h).
Tests: TestARecordOfAPullRequestDoesNotReplaceTheRegisteredRef, TestARegistrationOfAnotherRepositoryDoesNotHideTheRealOne, TestAForgeThatCannotSayLeavesTheModuleUnwrittenAndAsksAgain, a nox-mesh row; they fail on main. Try try-1793015553969783476 passed. Reviewed in two rounds (a newer feat/x record could win; a transient error re-indexed removed modules). The indexer logs under unit mesh-delivery-indexer.service.
Issue 1945 (notes 81-85). After mesh-delivery #63, txt-game and f1-circuits were indexed, but de-spiegel, link2pay and photos were not: all three were registered from the branch nox-mesh, and registered() accepted only trunk-like refs, silently; photos' only accepted record was a stale novox/mesh-catalog one, hiding the real novox/photos. The grants part still lacked their manifests (a take-over blocker).
Now registered() accepts any record that did not fail; RegistrationsOf keeps, per repository and directory, the record of the registered ref (a trunk-like ref first, else the ref most of that place's records name) and its newest commit, so a newer pull request's or try's record never replaces it; registrations are tried in order until the module is held. A read at the source's head that fails writes nothing and is asked again at the next trigger (no fallback to an old commit). snake and car-hunter stay out: the forge no longer holds their commits (the operator's question h).
Tests: TestARecordOfAPullRequestDoesNotReplaceTheRegisteredRef, TestARegistrationOfAnotherRepositoryDoesNotHideTheRealOne, TestAForgeThatCannotSayLeavesTheModuleUnwrittenAndAsksAgain, a nox-mesh row; they fail on main. Try try-1793015553969783476 passed. Reviewed in two rounds (a newer feat/x record could win; a transient error re-indexed removed modules). The indexer logs under unit mesh-delivery-indexer.service.
Reviewed-by: review-reg@shanks at 699cbfb7c1311f683707fb9b0621be575408bd66
Deliverynovox/mesh-delivery@699cbfb7c131 — merged since 2026-10-26T12:01:27Z
Source — source.main moved to novox/mesh-delivery@ead9ee2d13. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.
Transitions
2026-10-26 11:56 (new) → proposed (announced): novox/mesh-delivery#66's head announced
2026-10-26 11:56 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false)
2026-10-26 12:01 ready → merged (merged): on the trunk its modules follow: merged there
The commit's note under refs/notes/mesh-plan keeps every transition of this change up to its merge: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/mesh-delivery@699cbfb7c131` — **merged** since 2026-10-26T12:01:27Z
**Source** — source.main moved to novox/mesh-delivery@ead9ee2d138d. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves.
**Transitions**
- 2026-10-26 11:56 (new) → proposed (announced): novox/mesh-delivery#66's head announced
- 2026-10-26 11:56 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false)
- 2026-10-26 12:01 ready → merged (merged): on the trunk its modules follow: merged there
The commit's note under `refs/notes/mesh-plan` keeps every transition of this change up to its merge: `git log --notes=mesh-plan`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Issue 1945 (notes 81-85). After mesh-delivery #63, txt-game and f1-circuits were indexed, but de-spiegel, link2pay and photos were not: all three were registered from the branch nox-mesh, and registered() accepted only trunk-like refs, silently; photos' only accepted record was a stale novox/mesh-catalog one, hiding the real novox/photos. The grants part still lacked their manifests (a take-over blocker).
Now registered() accepts any record that did not fail; RegistrationsOf keeps, per repository and directory, the record of the registered ref (a trunk-like ref first, else the ref most of that place's records name) and its newest commit, so a newer pull request's or try's record never replaces it; registrations are tried in order until the module is held. A read at the source's head that fails writes nothing and is asked again at the next trigger (no fallback to an old commit). snake and car-hunter stay out: the forge no longer holds their commits (the operator's question h).
Tests: TestARecordOfAPullRequestDoesNotReplaceTheRegisteredRef, TestARegistrationOfAnotherRepositoryDoesNotHideTheRealOne, TestAForgeThatCannotSayLeavesTheModuleUnwrittenAndAsksAgain, a nox-mesh row; they fail on main. Try try-1793015553969783476 passed. Reviewed in two rounds (a newer feat/x record could win; a transient error re-indexed removed modules). The indexer logs under unit mesh-delivery-indexer.service.
Reviewed-by: review-reg@shanks at
699cbfb7c1Delivery
novox/mesh-delivery@699cbfb7c131— merged since 2026-10-26T12:01:27ZSource — source.main moved to novox/mesh-delivery@ead9ee2d13. Whether it reached the machines is
mesh-delivery-view's, derived fromsource.main, the wants and the haves.Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition of this change up to its merge:git log --notes=mesh-plan.