The gate accepts the bridge's published forgemsg by its series (K-22; ADR 0634 §3, F3; issue 1966)

This commit is contained in:
2026-11-05 14:33:24 +01:00
parent 12b5c62304
commit 500154b865
2 changed files with 10 additions and 2 deletions
@@ -19,8 +19,9 @@ import (
// and says, the tools it calls, its state — and names nothing of one installation.
type manifest struct {
Module string `json:"module"`
Claims []struct {
Module string `json:"module"`
Packages map[string]string `json:"packages"`
Claims []struct {
Name string `json:"name"`
Scope string `json:"scope"`
Serves []string `json:"serves"`
@@ -76,6 +77,10 @@ func TestItClaimsTheDeliverySeatAndFollowsWhatItHandles(t *testing.T) {
if want := []string{"deliveries", "show", "groups", "checks", "table", "stalled", "recheck", "close", "settle"}; !reflect.DeepEqual(m.Claims[0].Serves, want) {
t.Fatalf("serves %v, wanted %v", m.Claims[0].Serves, want)
}
// The forge messages' layout is the bridge's published package forgemsg, taken by its series (ADR 0634 §3, design 32).
if m.Packages["forgemsg"] != "0.1" {
t.Errorf("packages %v: the gate accepts forgemsg of series 0.1", m.Packages)
}
// R6-C1: no controller verb is invoked and no plan event is consumed.
for _, c := range m.Invokes {
if strings.HasPrefix(c, "seat:mesh-controller.") {
+3
View File
@@ -38,6 +38,9 @@
"uses": [
"operator-channel"
],
"packages": {
"forgemsg": "0.1"
},
"invokes": [
"gitea.gitea_commit_statuses",
"gitea.gitea_contains",