Issue 186 located: the delivery dropped the asks, not the queue; a merge now rebuilds dependents; the release decision stands
This commit is contained in:
+18
-2
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user