Say in the go and nodejs READMEs that they are now the only declarers (issue 1573)

This commit is contained in:
2026-10-21 09:51:22 +00:00
parent bda75011a1
commit d8d153295a
2 changed files with 13 additions and 18 deletions
+6 -9
View File
@@ -1,14 +1,11 @@
# go
The Go toolchain as a module (novox/hq ADR 0477 §4, issue 1573).
The Go toolchain as a module (novox/hq ADR 0477 clause 4, issue 1573).
- **Declares the package `go`.** Today dev-tools, lab and mesh-build-go declare it too, which the resolver allows
(ADR 0303); once they require `go-toolchain` instead (issue 1573's second step), this is the only module that
declares it, and `checks/toolchains` refuses another.
- **Provides `go-toolchain` with the machine's reach**: a module that requires it composes only on a machine where
this module is assigned. It is never pulled in for whatever asked, so `go` is assigned to a node on purpose.
Nothing requires it yet; dev-tools, lab and mesh-build-go will, in the second step.
- **The only module that declares the package `go`.** `checks/toolchains` refuses any other that does.
- **Provides `go-toolchain` with the machine's reach**: dev-tools, lab and mesh-build-go require it, so each
composes only on a machine where this module is assigned. It is never pulled in for whatever asked, so `go` is
assigned to a node on purpose, and a node without it refuses those modules at resolution.
- Holds no long-running resource, so it adds nothing to `health-undeclared`.
The node-engine never uninstalls a package, so when the users stop declaring `go`, nothing leaves a node that has
this module.
The node-engine never uninstalls a package, so moving the declaration here removed nothing from a node.
+7 -9
View File
@@ -1,14 +1,12 @@
# nodejs
Node.js and npm as a module (novox/hq ADR 0477 §4, issue 1573).
Node.js and npm as a module (novox/hq ADR 0477 clause 4, issue 1573).
- **Declares the packages `nodejs` and `npm`.** Today dev-tools, lab and mesh-build-node declare some of them too,
which the resolver allows (ADR 0303); once they require `node-toolchain` instead (issue 1573's second step), this
is the only module that declares them, and `checks/toolchains` refuses another.
- **Provides `node-toolchain` with the machine's reach**: a module that requires it composes only on a machine where
this module is assigned. It is never pulled in for whatever asked, so `nodejs` is assigned to a node on purpose.
Nothing requires it yet; dev-tools, lab and mesh-build-node will, in the second step.
- **The only module that declares the packages `nodejs` and `npm`.** `checks/toolchains` refuses any other that
does.
- **Provides `node-toolchain` with the machine's reach**: dev-tools, lab and mesh-build-node require it, so each
composes only on a machine where this module is assigned. It is never pulled in for whatever asked, so `nodejs`
is assigned to a node on purpose, and a node without it refuses those modules at resolution.
- Holds no long-running resource, so it adds nothing to `health-undeclared`.
The node-engine never uninstalls a package, so when the users stop declaring `nodejs` and `npm`, nothing leaves a
node that has this module.
The node-engine never uninstalls a package, so moving the declarations here removed nothing from a node.