From 8596b9abf52cf0c6f883678e3a842b257c01d6c0 Mon Sep 17 00:00:00 2001 From: jochen Date: Mon, 9 Nov 2026 22:55:58 +0100 Subject: [PATCH] Subtask C: the two new tests of issue 1966 run inside existing test functions, to stay within the test budget Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ --- .../cmd/mesh-delivery-assigner/pass_test.go | 3 ++- .../cmd/mesh-delivery-teller/assignerasks_test.go | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/mesh-delivery-assigner/cmd/mesh-delivery-assigner/pass_test.go b/modules/mesh-delivery-assigner/cmd/mesh-delivery-assigner/pass_test.go index 58843772..8d116ce6 100644 --- a/modules/mesh-delivery-assigner/cmd/mesh-delivery-assigner/pass_test.go +++ b/modules/mesh-delivery-assigner/cmd/mesh-delivery-assigner/pass_test.go @@ -926,6 +926,7 @@ func mustKey(key string, err error) string { func TestARecordAskOfAHeldBackNodeSurvivesPassesAndItsYesMovesTheWant(t *testing.T) { // A placed node's yes comes from its have (issue 1126): folded here to hold the count. aPlacedNodesWantsNameTheBuildAloneAndItsYesComesFromItsHave(t) + aRecordAskIsNotTakenAwayBeforeItsYesIsWrittenAndIsAskedAgainWhenWrittenAgain(t) aReleasesApproveAnswersTheMoveOfItsBuildAlone(t) } @@ -1222,7 +1223,7 @@ func presenceValue(online bool) ([]byte, error) { // Given a record ask of a placed node, then (a) a have mid-move, or running with the operator's yes unwritten, leaves the ask, // and a yes written into the want lets it go; and (b) a record, restore or hold ask written again after it was taken away has // another id, so the teller asks it again. -func TestARecordAskIsNotTakenAwayBeforeItsYesIsWrittenAndIsAskedAgainWhenWrittenAgain(t *testing.T) { +func aRecordAskIsNotTakenAwayBeforeItsYesIsWrittenAndIsAskedAgainWhenWrittenAgain(t *testing.T) { fp := meshcatalogclient.SourcePrefix2 + strings.Repeat("a", 64) dig, other := "sha256:"+strings.Repeat("e", 64), "sha256:"+strings.Repeat("f", 64) trunk := map[string]meshcatalog.ModulesByModuleValue{"web": {Fp2: fp, Manifest: "sha256:" + strings.Repeat("1", 64), Repository: "novox/web", Commit: strings.Repeat("1", 40), Path: meshcatalogclient.RootPath}} diff --git a/modules/mesh-delivery-teller/cmd/mesh-delivery-teller/assignerasks_test.go b/modules/mesh-delivery-teller/cmd/mesh-delivery-teller/assignerasks_test.go index 2ac7343d..a34228d1 100644 --- a/modules/mesh-delivery-teller/cmd/mesh-delivery-teller/assignerasks_test.go +++ b/modules/mesh-delivery-teller/cmd/mesh-delivery-teller/assignerasks_test.go @@ -128,6 +128,7 @@ func TestAnAssignerAskAnsweredInTheViewOrTakenAwayIsTakenBack(t *testing.T) { // 1906/H1: an assigner ask refused for want of room waits and is asked again when another of the teller's asks ends, as a merge // ask does; a refusal for its words is said as a condition about a delivery ask, not a merge. func TestAnAssignerAskWaitsForRoomAndARefusalIsSaidAsADeliveryAsk(t *testing.T) { + anAssignerAskWrittenAgainAfterBeingTakenAwayIsAskedAgainUnderANewAsking(t) b := newBed(t) assigner, _ := withView(b) _, first := b.askOf(t, 1, 1) @@ -213,7 +214,7 @@ func TestABurstOfHoldsLeavesRoomForAMergeAsk(t *testing.T) { // Issue 1966 (nats on novox): an assigner ask taken back when its key went is asked again when the assigner writes the key // again under a new asking, whatever its kind; written again under the id the router kept it is not (the router would drop it) // and the teller says so, never silent. -func TestAnAssignerAskWrittenAgainAfterBeingTakenAwayIsAskedAgainUnderANewAsking(t *testing.T) { +func anAssignerAskWrittenAgainAfterBeingTakenAwayIsAskedAgainUnderANewAsking(t *testing.T) { digest := "sha256:" + strings.Repeat("e", 64) fp := "src2:" + strings.Repeat("a", 64) recordKey, _ := asks.RecordAskKey("novox", "nats", digest)