From 54db7c3458f778e6cfcede1874ba5e602fe7469a Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 8 Oct 2026 17:36:57 +0200 Subject: [PATCH 1/2] Register R330: a message a consumer gave up on is kept (hq issue 330) --- replays/register.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/replays/register.go b/replays/register.go index 5363b90..0b3b39d 100644 --- a/replays/register.go +++ b/replays/register.go @@ -231,6 +231,17 @@ var Register = []Replay{ Asserts: "a tool check on the NATS link the node-engine attaches reaches that link, and is not refused as no link", Package: "./internal/link", Test: "TestReplay331", Files: []string{"internal/link/replay331_test.go"}, Home: "mesh-host", HomeRef: "5684a4579d92"}, + // Messages a consumer gave up on were kept nowhere (2026-10-06): a media server's consumer gave up on + // several downloads after five deliveries each, the controller's condition cleared within minutes, and + // EVENTS dropped them a week later; the dead-letter stream design 25 promised did not exist. A test in + // the controller, written with only what the link had before the fix, laid over the commit before. The + // fix is still on its branch: Fix is its pull request's head, proved against the main it is cut from. + {ID: "R330", Issue: 330, Kind: InRepository, Repository: "mesh-controller", Fix: "909062e", Before: "e3ec15f", + What: "a media server's event consumer gave up on several messages after five deliveries each; the condition " + + "cleared within minutes and nothing kept which messages they were", + Asserts: "a consumer that never acknowledges an event gives it up, and the event is kept on the bus with " + + "its consumer, stream, subject, deliveries and when it was given up", + Package: "./internal/link", Test: "TestReplay330", Files: []string{"internal/link/replay330_test.go"}}, // Not a core incident, and the first of its kind: a module's. The crash loop was found by a person // reading the agent server's log for another reason (issue 268); research 032 measured it, and ADR // 0240 makes the node-engine judge it and the gate fail it. -- 2.54.0 From f91164863bf6caf4f97d6b39c6a65c4121d12350 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 8 Oct 2026 21:15:36 +0200 Subject: [PATCH 2/2] Prove R330 against the merge of its fix --- replays/register.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/replays/register.go b/replays/register.go index 0b3b39d..eec93f3 100644 --- a/replays/register.go +++ b/replays/register.go @@ -234,9 +234,9 @@ var Register = []Replay{ // Messages a consumer gave up on were kept nowhere (2026-10-06): a media server's consumer gave up on // several downloads after five deliveries each, the controller's condition cleared within minutes, and // EVENTS dropped them a week later; the dead-letter stream design 25 promised did not exist. A test in - // the controller, written with only what the link had before the fix, laid over the commit before. The - // fix is still on its branch: Fix is its pull request's head, proved against the main it is cut from. - {ID: "R330", Issue: 330, Kind: InRepository, Repository: "mesh-controller", Fix: "909062e", Before: "e3ec15f", + // the controller, written with only what the link had before the fix, laid over the commit before. Fix is + // the merge of its pull request, proved against its first parent. + {ID: "R330", Issue: 330, Kind: InRepository, Repository: "mesh-controller", Fix: "ca09a07", What: "a media server's event consumer gave up on several messages after five deliveries each; the condition " + "cleared within minutes and nothing kept which messages they were", Asserts: "a consumer that never acknowledges an event gives it up, and the event is kept on the bus with " + -- 2.54.0