From 9ddd7215ada2d8b8821f8b3c8b918da7ecd7b818 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 1 Oct 2026 16:16:59 +0200 Subject: [PATCH] Issue 186 located: the delivery dropped the asks, not the queue; a merge now rebuilds dependents; the release decision stands --- .../00-report.md | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/04-ISSUES/186-a-release-across-repositories-is-an-order-in-a-persons-head/00-report.md b/04-ISSUES/186-a-release-across-repositories-is-an-order-in-a-persons-head/00-report.md index 3246e22..501a1fb 100644 --- a/04-ISSUES/186-a-release-across-repositories-is-an-order-in-a-persons-head/00-report.md +++ b/04-ISSUES/186-a-release-across-repositories-is-an-order-in-a-persons-head/00-report.md @@ -1,7 +1,7 @@ --- -status: open +status: located opened: 2026-10-01 -located-in: [] +located-in: [mesh-controller internal/broker/derived.go (the holder worker consumer let many asks stand in flight), mesh-controller internal/link/builds_nats.go (a running build said nothing to the bus), mesh-controller cmd/mesh-controller/upgrades.go (a merge rebuilt its own modules and not what stood on them)] fixed-by: amended-design: [] --- @@ -46,6 +46,22 @@ its use is a discipline a person keeps, and a person kept it by hand eleven time - What the smallest honest surface is in the meantime: at least `builds` listing the asked and the running beside the built, so a person polling logs becomes a person reading one table. +## Located, 2026-10-01 evening + +Two of the three faults turned out to be mechanism, and are fixed; the third stands as the decision +this report asks for. + +- **The queue was durable; the delivery was not.** A build ask is a message in the seat's work-queue + stream and survives a builder restart. What lost forty-three asks twice was the worker consumer: + with the server's default of many deliveries in flight, every ask behind the one being built was + handed over at once, left unacknowledged for the length of the build, redelivered after the ack + wait, and dropped after the fifth time. The builder's log shows the survivors in redelivery order. + Fixed by mesh-controller PR 194: one in flight, and a running build says it is still working. +- **A merge rebuilt what it changed and not what stood on it.** The relation existed in the store + and only the explicit `build --on` read it. Fixed by mesh-controller PR 193: a merge takes every + module standing on what moved, in base order. +- **A release across repositories is still an order in a person's head.** That is the decision. + *How this would be checked:* a builder restarted between an ask and its build still builds it; a merge of a dependent repository before its prerequisite is held and named; `builds` lists asked, running and built. -- 2.54.0