MV1: move contracts and sdk under modules/, importers follow
The delivery repository's contracts and SDK live under modules/ as mesh-delivery-contracts and mesh-delivery-sdk, their Go module paths renamed to match the folders (the TypeScript names already did), and every importer in mesh-delivery, mesh-catalog, mesh-host, mesh-tools and mesh-sdk follows in the same group: a design as it should be, one path per module, checked by the group's check building every importer. Builds: design 47 G §427, §88 Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
This commit is contained in:
@@ -359,15 +359,15 @@ const sdkModule = "git.novox.be/novox/mesh-sdk/go"
|
||||
// that is a folder module of a repository (mesh-networking's modules/mesh-connectivity-contracts) is refused too.
|
||||
func TestContractsAndDomainSDKsAreRecognisedInEverySegment(t *testing.T) {
|
||||
for path, want := range map[string]bool{
|
||||
"git.novox.be/novox/mesh-contracts/go/seats/meshconfig": true,
|
||||
"git.novox.be/novox/mesh-delivery/contracts/go/seats/meshcatalog": true,
|
||||
"git.novox.be/novox/mesh-delivery/sdk": true,
|
||||
"git.novox.be/novox/mesh-networking/modules/mesh-connectivity-contracts/go/seats/x": true,
|
||||
"git.novox.be/novox/mesh-networking/modules/mesh-connectivity-sdk": true,
|
||||
"git.novox.be/novox/mesh-sdk/go/catalogue": false,
|
||||
"git.novox.be/novox/mesh-sdk/go/seatlist": false,
|
||||
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-indexer": false,
|
||||
"github.com/nats-io/nats.go": false,
|
||||
"git.novox.be/novox/mesh-contracts/go/seats/meshconfig": true,
|
||||
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-contracts/go/seats/meshcatalog": true,
|
||||
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-sdk": true,
|
||||
"git.novox.be/novox/mesh-networking/modules/mesh-connectivity-contracts/go/seats/x": true,
|
||||
"git.novox.be/novox/mesh-networking/modules/mesh-connectivity-sdk": true,
|
||||
"git.novox.be/novox/mesh-sdk/go/catalogue": false,
|
||||
"git.novox.be/novox/mesh-sdk/go/seatlist": false,
|
||||
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-indexer": false,
|
||||
"github.com/nats-io/nats.go": false,
|
||||
} {
|
||||
if got := contractsOrDomainSDK(path); got != want {
|
||||
t.Errorf("contractsOrDomainSDK(%q) = %v, want %v", path, got, want)
|
||||
|
||||
@@ -12,7 +12,7 @@ import (
|
||||
|
||||
// ADR 0635 §3, ADR 0608 §2: a bootstrapped definition is a copy of its seat's file in its contracts module, byte for
|
||||
// byte, and a seat with a copy has a row here. The contracts are read beside this repository, as a merge check places
|
||||
// them (mesh-contracts, and mesh-delivery for its `contracts` folder) or, elsewhere, from the copy captured in
|
||||
// them (mesh-contracts, and mesh-delivery for its `modules/mesh-delivery-contracts` folder) or, elsewhere, from the copy captured in
|
||||
// testdata/beside.
|
||||
func TestEveryBootstrappedDefinitionEqualsItsContractsFile(t *testing.T) {
|
||||
rows := []struct{ seat, repository, file string }{
|
||||
@@ -24,8 +24,8 @@ func TestEveryBootstrappedDefinitionEqualsItsContractsFile(t *testing.T) {
|
||||
{"mesh-hand-acts", "mesh-contracts", "health-and-repair/seats/mesh-hand-acts/seat.json"},
|
||||
{"mesh-watchdogs", "mesh-contracts", "health-and-repair/seats/mesh-watchdogs/seat.json"},
|
||||
{"operator-channel", "mesh-contracts", "operator-and-conversation/seats/operator-channel/seat.json"},
|
||||
{"mesh-catalog", "mesh-delivery", "contracts/seats/mesh-catalog/seat.json"},
|
||||
{"mesh-delivery-checker", "mesh-delivery", "contracts/seats/mesh-delivery-checker/seat.json"},
|
||||
{"mesh-catalog", "mesh-delivery", "modules/mesh-delivery-contracts/seats/mesh-catalog/seat.json"},
|
||||
{"mesh-delivery-checker", "mesh-delivery", "modules/mesh-delivery-contracts/seats/mesh-delivery-checker/seat.json"},
|
||||
}
|
||||
var have []string
|
||||
for _, d := range Bootstrapped() {
|
||||
|
||||
Reference in New Issue
Block a user