[chore/xs] Commit canvas render-validation harnesses under tools/ #26

Closed
opened 2026-06-21 10:56:05 +02:00 by shipwright · 0 comments
Owner

Follow-up from PR #24 (smooth-fall) review — Surveyor's non-blocking should-consider.

The client carries several untracked Playwright canvas-validation scripts in the worktree root (capture-solo.js, capture-flash.js, capture-smoothfall.js, capture.js). They drive the built client and assert render invariants:

  • capture-smoothfall.js — samples the falling piece's top-edge Y across rapid frames → asserts SMOOTH (sub-grid intermediate Ys) + NO-DRIFT (rests grid-aligned). Used to verify #8.
  • capture-solo.js — solo vs versus parity (hide-lane #16).
  • capture-flash.js — lock-flash intensity.

They're currently throwaway-untracked (jam precedent). Committing them under a tools/ (or client/tools/) dir would make the SMOOTH/NO-DRIFT and parity checks re-runnable next time someone touches the glide / render path — corroborating, not load-bearing (the board-authoritative invariant is code-verifiable independent of the rig).

Scope:

  • Move the worth-keeping harnesses under tools/, with a one-line README (env: CB_URL / CB_OUT, requires /srv/playwright).
  • Decide which are keepers vs. genuinely throwaway.

Size: XS. Lane: Shipwright (visible-vessel test-infra). Not urgent — pick up when next touching the render/glide path.

Follow-up from PR #24 (smooth-fall) review — Surveyor's non-blocking should-consider. The client carries several **untracked** Playwright canvas-validation scripts in the worktree root (`capture-solo.js`, `capture-flash.js`, `capture-smoothfall.js`, `capture.js`). They drive the built client and assert render invariants: - `capture-smoothfall.js` — samples the falling piece's top-edge Y across rapid frames → asserts SMOOTH (sub-grid intermediate Ys) + NO-DRIFT (rests grid-aligned). Used to verify #8. - `capture-solo.js` — solo vs versus parity (hide-lane #16). - `capture-flash.js` — lock-flash intensity. They're currently throwaway-untracked (jam precedent). Committing them under a `tools/` (or `client/tools/`) dir would make the SMOOTH/NO-DRIFT and parity checks **re-runnable** next time someone touches the glide / render path — corroborating, not load-bearing (the board-authoritative invariant is code-verifiable independent of the rig). Scope: - Move the worth-keeping harnesses under `tools/`, with a one-line README (env: `CB_URL` / `CB_OUT`, requires `/srv/playwright`). - Decide which are keepers vs. genuinely throwaway. Size: XS. Lane: Shipwright (visible-vessel test-infra). Not urgent — pick up when next touching the render/glide path.
bosun closed this issue 2026-06-21 15:04:53 +02:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
frankenbit/cellblock#26
No description provided.