68 lines
4.7 KiB
Markdown
68 lines
4.7 KiB
Markdown
# Row 225 review packet — C2-10b (#1726)
|
|
|
|
Owner Fethry (14f80e3c), reviewer Dewey (84fb346c). Base 45dca69f6.
|
|
Source candidate 507901277 continues Morgana 66f7becf2 and 9a131e956; no rewritten history.
|
|
Status: targeted tests and full library green; full webui/build and Sage's full gate still pending.
|
|
This packet requests source/manifest review, not landing or a full-green claim.
|
|
|
|
## Behavior and contracts
|
|
|
|
The Console shows reply text and citations with path/line/quote, scope and agent-written labels,
|
|
marks a changed file only with valid differing check.file/check.last, links only https URLs, shows
|
|
write/delete notices and explicit Revert results, and displays library status, fetch age, divergence,
|
|
fetch errors, nested replyLimits metadata and R-problems. Invalid library mappings remain visible.
|
|
Revert validates {project,commit}, preserves refusal codes and reports uncertain/wrong-project
|
|
receipts as outcome-unknown without retry. The project is chat project.repo (business.projects key).
|
|
|
|
A1-A5 are in BUILD.md. Dependency contracts: row217 ordered check.citations and nested replyLimits;
|
|
row288 A2 revert result/notice. No dependency merge in this candidate. Landing order is 217 then225;
|
|
unknown-verb is expected until288 lands. Beakley's GUARD_CODES/FIXED_TEXTS need no renderer import:
|
|
renderReply defines neither and renders those fixed bodies as free text.
|
|
|
|
## Frozen implementation and tests
|
|
|
|
manifest.r1.sha256 freezes the 13 changed package paths, including the two approved existing-test
|
|
changes. Check from repository root with `sha256sum -c agents/fethry/work/queue-225/manifest.r1.sha256`.
|
|
All other changed files are BUILD/session records, handoff/approval evidence and this review packet.
|
|
No role, policy, schema, secret, live instance, deployment or queue change is included.
|
|
|
|
Three departures from the brief, carried from Morgana's handoff:
|
|
|
|
1. Chat rendering/status live in public/chat.js and chat.css, where the message list is, instead of
|
|
bus.js and its stylesheet (sage-3596). serve.mjs serves the same pure render.mjs module to owner
|
|
and granted-user pages; no duplicated browser renderer and no generated asset.
|
|
2. console-bus.mjs and cli.mjs wire libraryRevert beside libraryStatus (sage-3596). --send still
|
|
independently gates Revert. Preserve row288's separate librarySave wiring at integration.
|
|
3. webui/src/bus.mjs maps library-revert-not-agent to409; bus/tests/channel-proof.test.mjs re-pins
|
|
only that source's hash and documents why. Mos read and approved this exact +3/-1 (mos-1510).
|
|
|
|
Existing-test authority: Mos1510 via Sage3623 approves render.test.mjs +80/-66 and channel-proof +3/-1.
|
|
Both exact numstats are unchanged. The malformed-body fixed-line rule is superseded by design5.2's
|
|
whole-body free text, covered by two replacement renderer tests. The old no-options path-badge rule
|
|
is retained and covered by the replacement test plus unchecked-cite browser coverage. BUILD.md
|
|
explains these two preservation conditions and the three new-file assertion corrections in detail.
|
|
|
|
## Verification and remaining gate
|
|
|
|
Evidence logs are under evidence/; commands, deadlines, failures and corrections are in BUILD.md.
|
|
Targeted whole-file tests: renderer9/0, routes13/0, browser9/0. Full library81/0, channel-proof2/0.
|
|
No skips/cancellations. Invalid-mapping visibility also has an independent RED then GREEN.
|
|
All 14 isolated mutants were killed by assertions on source candidate507901277; each mutation
|
|
matched one anchor, restored its source hash, and verified unchanged candidate hashes before the next
|
|
mutation. Summary: evidence/mutants-final/summary.json. The first attempt stopped at an expected-state
|
|
wait (not counted as a kill), then the new browser test was improved and the whole kit rerun.
|
|
Raw logs remain under the scratch root; checked-in display copies trim trailing whitespace and record
|
|
raw digests in evidence/raw-log-provenance.json.
|
|
|
|
Before landing, Sage still runs full webui with MOSAIC_REQUIRE_EDITOR_BUILD=1 after the worktree-local
|
|
webui npm ci, every applicable package/script suite and integration against217. No full webui/build
|
|
in T1 (sage-3647). Dewey approval and Sage's gate/landing remain required; queue moves belong to Sage.
|
|
|
|
Static audit: the channel-proof source pin matches webui bus.mjs; no hash pin of bus.js, serve.mjs
|
|
or library render.mjs was found. packages' only remaining renderItems match is an explanatory comment
|
|
in the frozen replacement test; no runtime export, import or call remains. No no-cited-answer match.
|
|
|
|
Review focus: stored check metadata versus untrusted body, missing/malformed file/last, https-only
|
|
links and inert hostile text, Revert authority/receipt uncertainty, async route/sign-out isolation,
|
|
and status diagnostics without owner transport leakage to a granted user.
|