Keep route-proxy's contract a package of its own module, not a second module behind a replace
mesh/delivery-group group feat/1126-removal rejected: composed together: the checker's verdict at the members' heads (6593d973ff2e): the composition
mesh/delivery closed: the pull request closed unmerged
mesh/check failed: the composition: route-proxy is defined twice, in novox/mesh-controller and novox/mesh-networking | 759a7bff129b on fe0392e05f62 | …

The group's check failed at go mod verify: the build module's workspace carries one module, so the replace of
./contract named a go.mod it never placed; and ADR 0573 clause 1 refuses a path into another tree. Nothing outside
route-proxy imports the contract today; when one must, it moves into the networking domain's package (research 081).
Issue 1126.

Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
This commit is contained in:
2026-11-02 13:55:07 +01:00
parent 6c15ff3f0e
commit 759a7bff12
14 changed files with 16 additions and 21 deletions
@@ -14,7 +14,7 @@ import (
stdio "git.novox.be/novox/mesh-sdk/go"
"git.novox.be/novox/mesh-sdk/go/provider"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
func say(format string, args ...any) {
@@ -13,7 +13,7 @@ package main
import (
"git.novox.be/novox/mesh-sdk/go/provider"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// ProvisionName is what route-proxy provides, as its manifest says, and ModuleName this module.
@@ -14,7 +14,7 @@ import (
stdio "git.novox.be/novox/mesh-sdk/go"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// The tools' names, as the manifest declares them.
@@ -9,7 +9,7 @@ import (
stdio "git.novox.be/novox/mesh-sdk/go"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// held is a state as the bus holds it, read-only.
+1 -1
View File
@@ -17,7 +17,7 @@ import (
"git.novox.be/novox/mesh-sdk/go/process"
"git.novox.be/novox/mesh-sdk/go/provisions"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// keptStates is every state route-proxy keeps, as both its halves write them: the routes and the refusals this
@@ -17,7 +17,7 @@ import (
stdio "git.novox.be/novox/mesh-sdk/go"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// What this proxy says on the bus about the names it serves and the names it refuses (issue 774).
@@ -25,7 +25,7 @@ import (
stdio "git.novox.be/novox/mesh-sdk/go"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// fakeState is a state on the bus, in memory, counting what was written to it.
+1 -1
View File
@@ -65,7 +65,7 @@ import (
"golang.org/x/crypto/acme/autocert"
"golang.org/x/crypto/bcrypt"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// Where public certificates come from when nothing says otherwise.
+1 -1
View File
@@ -20,7 +20,7 @@ import (
"git.novox.be/novox/mesh-sdk/go/catalogue"
"git.novox.be/novox/mesh-sdk/go/provisions"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// planned is the routes the seat's plans give this proxy on its node, by plan key, kept so a plan that cannot be read
@@ -18,7 +18,7 @@ import (
stdio "git.novox.be/novox/mesh-sdk/go"
"git.novox.be/novox/mesh-sdk/go/delivery"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// behind is a workload the proxy can send to, and a table routing one public name and one
@@ -13,7 +13,7 @@ import (
"git.novox.be/novox/mesh-sdk/go/catalogue"
"git.novox.be/novox/mesh-sdk/go/provisions"
"git.novox.be/novox/mesh-networking/modules/route-proxy/contract"
"route-proxy/contract"
)
// routesFrom is the table a test's routes make, written as `{"given":[{"from","node","at","values"}…]}`: the