Date: 2026-09-13. Evidence grade: C. Hypotheses recorded before implementation.
User request: “okay go ahead, do it cheaply too, inference speed is important”.
Baseline: verification callbacks and repair preview chunks do not identify the exact tested candidate. A candidate's temporary revision can differ from the retained draft revision. The desktop verification error handler also restores an old draft without checking whether a concurrent edit caused the error.
Hypotheses: bounded typed records can link the user request, prior/proposed source, tested candidate and final disposition without any additional inference or verification calls. Late observations must fail before publishing and must not overwrite concurrent edits. Hashes distinguish candidates even when their numeric revisions coincide. Source content is evidence, not an instruction.
Method: deterministic verifier fixtures exercise acceptance, restoration, invalid reports, concurrent changes and record caps; existing tests measure regression. No live inference speed claim is made.
Results
19 targeted tests pass; full suite 717/717 passes; typecheck, build and the
Electron repair-preview check pass. One synthetic successful repair still uses
one model call and three verifier calls (previous, proposed, repaired), with
six records: start, three observations, repair decision, retained source.
Concurrent changes and invalid oversized evidence fail before report publication.
The restoration record identifies the previous tested content and its new
retained revision. See evidence/RL-022/results.json.
Implementation and cost
The coordinator emits bounded typed records into existing agent_steps; no new database table, dependency or model prompt is added. Request text is capped at 1,000 characters with a full-request digest and explicit truncation flag. Source references contain SHA-256 and revision, not duplicate HTML. Check text uses the existing 32-check, 200-character name and 600-character detail limits. The existing three-repair limit also bounds the record count. Hashing and small journal inserts cost local work; no inference or verifier calls were added. Repair proposals remain in the existing repair log, joined by run and attempt order. Reused experience is labelled separately and has no model-output claim.
The desktop forwards subject references with reports and accepted preview chunks. Verification failure only restores prior source when its starting revision is still current. User edits therefore survive a stale result.
Assumptions and limits
Source identity is verified by hashing exact strings; numeric revisions alone are insufficient for temporary candidates. Supported browser checks remain the limit of semantic coverage. No actual token-per-second or end-to-end latency improvement was measured. This is evidence tracking, not a learned policy. Public claims H3/H4/H5 remain consistent; no speed guarantee is added.
Reproduce
node --import tsx --test tests/verificationRecord.test.ts tests/verifiedWebsite.test.ts tests/repairExperience.test.ts
npm test; npm run typecheck; npm run build;
npx electron scripts/check-repair-preview.mjs.