Files
stack/agents/researcher/work/queue-97/r3/build.md
T

58 lines
3.2 KiB
Markdown

# Row 97 (#1591) round 3: confirm-only rebase of the approved round 2
Owner: Researcher. Round 2 was approved by Darkwing and Filbert on manifest f5a11097 (base 6b0215aa).
Row 94 (2b2a9e14) then landed on `packages/webui/README.md`, so that file's hash no longer matches
any landing commit. This round changes no test, README sentence or mutant; it re-bases the same
change onto cd976b09 (origin/refactor, `base.txt`).
## What moved
6b0215aa..cd976b09 under `packages/webui`:
- `README.md` +28/-2 (row 94): hunks at lines 276, 466 and 633 onward. My README hunk (lines 566 and
following in `build.patch` of round 2) is untouched, but its start line moved from 566 to 567.
- Also changed, none of them mine: `src/public/bus.js` (+38, a Messages view and a `messages` read),
`src/public/bus.css`, `src/serve.mjs`, and tests `bus-browser`, `messages`, `shell`, `views`.
- `board-held.test.mjs` and `browser-edge.test.mjs` are byte-identical on both bases.
## Identical-hunk evidence
In a fresh worktree at cd976b09, `git apply --3way agents/researcher/work/queue-97/r2/build.patch`
applied all three files cleanly. The `+` and `-` lines of the two patches (file headers excluded)
are 72 lines each and `cmp` reports them identical. The only difference between `r2/build.patch` and
`r3/build.patch` is one hunk header: `@@ -566,11 +566,19 @@` became `@@ -567,11 +567,19 @@`, plus
the context that follows. The manifest differs from round 2 in one line:
| path | round 2 | round 3 |
|---|---|---|
| `packages/webui/README.md` | 01213bff... | ed0a1fe1... |
| `packages/webui/tests/board-held.test.mjs` | 32d01fba... | 32d01fba... (same) |
| `packages/webui/tests/browser-edge.test.mjs` | fc3cc8fa... | fc3cc8fa... (same) |
No test or mutant changed, and none was run (per Sage).
## Could an outcome change on the new base? Yes, for the browser tests
`bus.js` is the file two of the mutants edit and the page the board-held test drives. Row 94's
change makes `render()` read `/api/bus/messages` before every view except Messages (swallowing a
non-sign-out error) and adds `messages` to the Board's `Promise.allSettled` reads. Two things this
could touch in my tests, neither checked by a run:
1. `board-held.test.mjs` test 2 counts requests after sign-out and asserts none follow. Reading
`bus.js`, `render()` returns on `out()` at its first statement (line 696), before any of the
new `messages` reads, so I expect no change. I have not run it.
2. Request totals in both tests are compared with the count taken just before, not with a constant,
so extra reads in a render do not matter as long as none follow sign-out.
What I did check, without running anything: each of the eight mutant anchors in `r2/mutants.py`
(including `bus.js` mutants 26 and 27) still matches exactly once in `app.js` and `bus.js` at
cd976b09. So the mutant runner works unchanged on this base.
Suggested gate if Sage schedules one: the webui suite, then `r2/mutants.py` against the r3 worktree
for 27 and 26 (the two on `bus.js`). Sage's landing gate reruns webui in any case.
## Packet
`base.txt`, `build.patch` (`git diff cd976b09` of the three paths), `candidate-manifest.sha256`
(repo-relative paths, verifies against `/mnt/storage/scratch/researcher/q97-r3`). No secret markers.