From a95ad78a9aa238768e84d959ebd7f667372c7614 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 29 Oct 2026 22:53:53 +0100 Subject: [PATCH] Carry plan-failed and stalled until the lease write as kinds that end with the controller, as the lead decided, so compare names no kind without a home (issue 1952) --- modules/mesh-conditions/cmd/mesh-conditions/homes.go | 4 ++++ .../mesh-conditions/cmd/mesh-conditions/keeper_test.go | 8 ++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/modules/mesh-conditions/cmd/mesh-conditions/homes.go b/modules/mesh-conditions/cmd/mesh-conditions/homes.go index a7207c24..c74525eb 100644 --- a/modules/mesh-conditions/cmd/mesh-conditions/homes.go +++ b/modules/mesh-conditions/cmd/mesh-conditions/homes.go @@ -122,6 +122,10 @@ var Homes = map[string]Home{ "declaration-refused": {Source: "D1", Controller: true, Carried: true}, "unknown-field": {Source: "read", Controller: true, Carried: true}, "bus-objects-unasserted": {Source: "send", Controller: true, Carried: true}, + // The lead, 2026-10-29: no delivery plans since R6 (wants replace them), and a stalled delivery is the watchman's + // stuck finding seen directly. + "plan-failed": {Source: "S23", Controller: true, Carried: true}, + "stalled": {Source: "D14", Controller: true, Carried: true}, // The kinds that end, their faults observed otherwise (the Context's table). "core-behind": {Source: "D10", Controller: true, Replaced: true}, } diff --git a/modules/mesh-conditions/cmd/mesh-conditions/keeper_test.go b/modules/mesh-conditions/cmd/mesh-conditions/keeper_test.go index 199f90e2..a0aa871f 100644 --- a/modules/mesh-conditions/cmd/mesh-conditions/keeper_test.go +++ b/modules/mesh-conditions/cmd/mesh-conditions/keeper_test.go @@ -278,7 +278,7 @@ func TestCompareCountsOnlyWhatBothSidesRaise(t *testing.T) { only, onlyRaw := finding(t, delivery.AssignerModule, health.ScopeSeat, "mesh-placement.ace", "states-unbound", "say", health.Warning, r.now) _ = r.k.Finding(delivery.AssignerModule, only, onlyRaw, false) _ = r.k.Controller("core.controller.deaf", put("core.controller.deaf", "controller-deaf"), false) - _ = r.k.Controller("delivery.x.stalled", put("delivery.x.stalled", "stalled"), false) + _ = r.k.Controller("delivery.x.mystery", put("delivery.x.mystery", "mystery"), false) _ = r.k.Controller("seat.vault.ace.holder-silent", put("seat.vault.ace.holder-silent", "holder-silent"), false) cmp, err := r.k.Compare() if err != nil { @@ -291,7 +291,7 @@ func TestCompareCountsOnlyWhatBothSidesRaise(t *testing.T) { for key, says := range map[string]string{ only: "keeper only", "core.controller.deaf": "carried", - "delivery.x.stalled": "no home is decided for the kind stalled", + "delivery.x.mystery": "no home is decided for the kind mystery", "seat.vault.ace.holder-silent": "mesh-self-check has not written its finding", } { if !strings.Contains(reasons[key], says) { @@ -301,7 +301,7 @@ func TestCompareCountsOnlyWhatBothSidesRaise(t *testing.T) { if cmp.Same != 1 || len(cmp.Differences) != 2 { t.Errorf("compare: %+v", cmp) } - // The lead's table of 2026-10-29: each kind has its home, lease-split and image-missing do not end, and the 20 + // The lead's table of 2026-10-29: each kind has its home, lease-split and image-missing do not end, and the 22 // that end are carried. carried := 0 for _, h := range Homes { @@ -316,7 +316,7 @@ func TestCompareCountsOnlyWhatBothSidesRaise(t *testing.T) { t.Errorf("%s's home is %+v", kind, h) } } - if len(Homes) != 82 || carried != 20 { // 19 of ADR 0564 and the 63 of the table + if len(Homes) != 84 || carried != 22 { // 19 of ADR 0564, the 63 of the table, plan-failed and stalled t.Errorf("the table holds %d kinds, %d carried", len(Homes), carried) } if _, err := r.k.TakeOver(nil, "jochen", "now"); err == nil || !strings.Contains(err.Error(), "2 difference") {