From 69b6b89af57b1dde686846800d92ea6cffa41a7f Mon Sep 17 00:00:00 2001 From: jochen Date: Sat, 7 Nov 2026 22:51:35 +0100 Subject: [PATCH] mesh-grants: the bootstrap row proves a removed have places nothing Review round 1 of issue 1966's fix: the membership check alone did not pin the removed phase; the row now reads the inputs and requires mod-y off b while its have is removed. Claude-Session: https://claude.ai/code/session_01NcbgfFfQ4Z9UE5jK32PmE5 --- modules/mesh-grants/grants_test.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/mesh-grants/grants_test.go b/modules/mesh-grants/grants_test.go index b138b314..661ef137 100644 --- a/modules/mesh-grants/grants_test.go +++ b/modules/mesh-grants/grants_test.go @@ -2400,6 +2400,9 @@ func TestGrants(t *testing.T) { slices.Contains(res.Published, "b.mod-y") { t.Errorf("memberships published %v (a removed have places nothing)", res.Published) } + if in := grants.ReadInputs(b, &grants.Manifests{}); slices.Contains(in.Assigned["b"], "mod-y") || !slices.Contains(in.Assigned["b"], "mesh-delivery-builder") { + t.Errorf("a removed have placed its module: b runs %v", in.Assigned["b"]) + } if sealed, _, _ := p.Sealed(); sealed.Digest == "" || sealed.Node != "a" { t.Errorf("no list sealed to the bus node the haves name: %+v, %+v", sealed, res.Sealed) }