Make the catalogue test strict: the gate alone claims the seat, and say the old module is gone (ADR 0454, issue 1351)
mesh/merge-gate head 1c7024224dd7 merged into trunk bb0fe93bbddd — pass: builds mesh-delivery, mesh-issues → novox; no bus step; every machine composes wit…
mesh/repo-check head 1c7024224dd7 merged into trunk bb0fe93bbddd — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (go), merge-…
mesh/delivery delivered

This commit is contained in:
2026-10-20 12:03:46 +00:00
parent 1ef19030f1
commit 1c7024224d
5 changed files with 24 additions and 26 deletions
+1 -1
View File
@@ -222,7 +222,7 @@ var LinkKinds = []string{LinkDuplicates, LinkRelatesTo, LinkDependsOn, LinkPullR
var (
pullRequest = regexp.MustCompile(`^[a-z0-9][a-z0-9._-]{0,99}#[1-9][0-9]{0,6}$`)
decision = regexp.MustCompile(`^[0-9]{4}$`)
// deliveryID mirrors mesh-delivery's `IDOf` (modules/mesh-delivery/cmd/mesh-delivery/model.go): the forge's
// deliveryID mirrors the delivery gate's `IDOf` (modules/mesh-delivery-gate/cmd/mesh-delivery-gate/model.go): the forge's
// repository as owner/name, lower-cased, `@` and at most twelve characters of its commit. The pattern this
// replaced took neither the slash nor the `@`, so no delivery could be linked (novox/hq issue 475).
deliveryID = regexp.MustCompile(`^[a-z0-9][a-z0-9._-]{0,99}/[a-z0-9][a-z0-9._-]{0,99}@[0-9a-f]{1,12}$`)
@@ -5,6 +5,7 @@ import (
"os"
"path/filepath"
"reflect"
"slices"
"sort"
"strings"
"testing"
@@ -171,7 +172,13 @@ func TestTheSettingsStartTheCounterAndRegisterTheOwners(t *testing.T) {
}
}
modules := filepath.Join("..", "..", "..")
// retired are modules the catalogue no longer holds that stay registered, because issues are located in them
// (novox/hq ADR 0454, issue 1351: today's delivery module, removed after the gate took the seat).
retired := []string{"mesh-catalog modules/mesh-delivery"}
for _, o := range s.Owners {
if slices.Contains(retired, o) {
continue
}
if name, ok := strings.CutPrefix(o, "mesh-catalog modules/"); ok {
if _, err := os.Stat(filepath.Join(modules, name, "module.json")); err != nil {
t.Errorf("the owner %q names a module the catalogue does not hold", o)