We had a restart fault that vanished whenever somebody watched it. A small queue in the test let us release each saved event by hand. Much easier to hand over than a suggested delay that only worked on my laptop.
the old bracket result wins if I release it last
JaneAdams0162 · 27 Jan 2026, 22:26 UTC
18 replies
Does your queue sit before the real handler? Mine currently bypasses it, which may be why the test looks better than the application
7 pointsBefore it. We replaced the source of the events, not the code deciding what they meant.
23 pointsWhat actually ties either result to its attempt, Jane? Holding them back won't help if the handler only gets a bracket name.
9 pointsAlex, yes, and don't have the test quietly supply an identity the real message lacks. In an inherited application I supported, the fake had a lovely unique number which disappeared at the production boundary. We spent a meeting admiring a solution to a different interface. Jane, save the actual fields before building the queue. You can then say whether the failure is in matching a known attempt or in trying to match something the application cannot identify. Those lead to rather different changes
13 pointsReal messages have a saved attempt reference. The handler ignores it when updating the big result tile. The history rows are attached correctly. Alex, it's worse than the bracket-name guess in a particularly boring way
15 pointsSo does the tile alone change, or does anything consuming that tile also mark the job done?
18 pointsCan you assert the history row, current tile and completion count independently in the same replay? A screenshot would miss a count changing behind a correctly labelled tile.
19 pointsTile and count both change. Added Julia's three assertions to the queued replay; old-after-new fails two of them every run now
16 pointsReproducibly bad is progress here.
4 pointsWho owns the tile and count updates? Our two displays once had separate little fixes, then somebody combined them and brought the fault back.
13 pointsSame maintainer, separate callbacks. They're moving both onto the saved attempt state. I asked for the old ordering test to stay, not be rewritten to suit the fix
10 pointsInclude two deliveries of the current result as well. Correct ownership alone does not stop a repeated completion increasing its count twice.
16 pointsThat caught another one. Current result was counted on each callback. Count now comes from completed attempts; duplicate-current and duplicate-old both pass
22 pointsHas the correction survived closing and reopening the application, Jane? The saved rows were right already, so that boundary is worth keeping in the comparison
10 pointsAnd reopen with an attempt still unfinished, not just a tidy table full of completed brackets.
7 pointsBoth reopen cases pass. Installed replay through the application boundary also keeps the old result on its own row, current tile pending, count unchanged. Thanks, Aisha, the queue made this demonstrable rather than temperamental
10 pointsGood. Put the saved event pair with the test name in the handover; the next maintainer can rerun the actual failure instead of trying to recreate your afternoon.
5 pointsDiscussion closed
This discussion is closed to new replies after six months without activity. Last activity: .