Remove the toolchain image module; node-tools is the repository's only module (issue 979, S1; ADR 0524 §5)

Only build-agent built inside that image, and it goes in R4g.
This commit is contained in:
2026-10-23 15:25:33 +02:00
parent 5dffb920ff
commit 8ee6db7d9a
4 changed files with 31 additions and 123 deletions
@@ -90,3 +90,32 @@ func TestBundlesCannotBeLaunchedWithoutNodeOrTheSDKAndTheSkipSaysWhy(t *testing.
t.Errorf("node and the package present said %q", why)
}
}
// The checker runs node-tools' Go level by Go's convention and its Node level by package.json's test script
// (novox/hq ADR 0529): no script of the repository's own runs beside them, and no module but node-tools is built from
// here (ADR 0524 §5, the toolchain image retired).
func TestTheRepositoryHoldsNoCheckScriptAndNodeToolsIsItsOnlyModule(t *testing.T) {
root := filepath.Join("..", "..", "..")
if _, err := os.Stat(filepath.Join(root, "merge-check.sh")); err == nil {
t.Errorf("merge-check.sh is back: the checker's levels run the tests")
}
var found []string
err := filepath.WalkDir(root, func(p string, d os.DirEntry, err error) error {
if err != nil {
return err
}
if d.IsDir() && (d.Name() == "node_modules" || d.Name() == ".git") {
return filepath.SkipDir
}
if !d.IsDir() && d.Name() == "module.json" {
found = append(found, filepath.ToSlash(p))
}
return nil
})
if err != nil {
t.Fatal(err)
}
if len(found) != 1 || !strings.HasSuffix(found[0], "/node-tools/module.json") {
t.Errorf("the module manifests are %v, want node-tools' alone", found)
}
}