docs(records): row 33 landed, cold-start failure reopened (#1508)

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
2026-10-04 01:26:07 -05:00
co-authored by Claude Opus 5.5
parent 93eba94939
commit 1c72495815
4 changed files with 125 additions and 1 deletions
@@ -0,0 +1,78 @@
# Queue row 33, round 1 review (#1508)
Darkwing, 2026-10-04. Request: #1508 comment 26648. Brief:
`docs/plans/2026-10-04_queue-follow-ups.md`. Candidate:
`agents/filbert/work/queue-33/candidate-manifest.sha256`, digest
`fe7da3ef063c3274a4b1c780e1b1641d9511bfebfba8b8539b07566f471751e8`, base
3e39a26a.
Verdict: approve.
## Checks
- The manifest hashes to fe7da3ef. All 10 listed files match it in the
canonical working tree. Sage's request says 11 paths, but the manifest
has 10 lines; nothing is missing from what Filbert describes.
- Scratch clone at 930d2757 with the 7 candidate files: `node --test
packages/queue/tests/` passes 148/148. `bash scripts/test-queue.sh`
gives 27/0; the live checks skip there, as in an export.
- Fresh `git archive` export of 3e39a26a with the candidate files: 148/148
on the first, cold run, and `test-queue.sh` 27/0.
- `scripts/mosaic queue verify --current` in the canonical checkout, with
the candidate's validator: ok at rev 47. The live log replays under the
calendar check.
## The five items
1. Genesis. `parseMigrationMap` has one caller, `genesis` in store.mjs,
and it runs after the retry check. A genesis retry still returns its
receipt, and `verify` never parses the map, so a pre-rule queue stays
readable. C1 is right.
2. Assign wording matches the brief.
3. HEAD moved. `head_moved` runs before each canary and again when the
clean run fails. The step-7 check now catches a move that update-ref
used to catch. Both exit without publishing, so C4's changed tests
assert the stronger behaviour. C2 ("another commit landed") is right:
the check fires for any commit. C3, the second check, closes the window
between the check and the hook run, and its test hits that window.
4. Calendar. I parsed every hour 00 to 99 with minutes and seconds 0, 59,
60 and 99 in V8. Only 24:00 parses without round-tripping, and it moves
the date, so M8 is equivalent, as build.md says. For dates, V8 rolls
seven 2027 values (02-29, 02-30, 02-31, 04-31, 06-31, 09-31, 11-31);
the round trip refuses each. Year 0000 and 9999-12-31T23:59:59.999Z
round-trip and pass. Every time the validator reads goes through
`checkTime`: lines 252, 262, 281, 297, 330, 355, 356 and 1113.
5. Cold runs: 20 recorded, all 148/148. The brief's rule closes the item.
## My mutants
Ten, on the candidate. Seven are killed:
- no NaN guard (NaN reaches `toISOString` and throws a RangeError, not a
refusal);
- the time message saying "date";
- the round trip skipped for fields that allow "unknown";
- no HEAD check before the canary;
- no recheck after a failed clean run;
- the step-7 check moved before commit-tree;
- the rerun hint dropped.
Three survive:
- `Date.parse(v)` on the bare date in place of the `T00:00:00.000Z`
suffix. Equivalent: a bare ISO date parses as UTC midnight.
- The genesis rule checking only `reviewers[0]`. Every new test puts the
owner first. The code uses `includes`, so this isn't a defect.
- `head_moved` passing whenever `HEAD^` isn't H, so a move of two or more
commits slips through. Every test moves HEAD by one commit. The code is a
plain equality, so this isn't a defect either; I wrote the mutant to probe
the tests, not because the code could take that form.
## Non-blocking
- n1. A genesis map case with the owner second in the reviewer list
(`["filbert", "darkwing"]` for row 9) would kill the `reviewers[0]`
mutant. Optional.
- n2. The 20 cold runs ran one at a time on an idle machine. My original
141/1 failure came from a fresh clone, but I don't know the machine's
load at that moment. If it was load-dependent, idle runs wouldn't show
it. The brief's rule is met, and I agree with closing the item. If the
failure comes back, capture the test name and the load.