P3: visual:reference does not reproduce committed reference-canvas.png on the pinned Chromium
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- Half a day
- Newbie friendliness
- 62/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- javascript, nodejs, playwright
Research direction
Start with packages/editor-2.5d-react/scripts/make-reference-canvas.mjs, which decodes reference.jpg through the browser and writes tests/snapshots/reference-canvas.png. Compare its output with the committed snapshot to confirm the byte difference the issue describes. Choose between decoding in Node with a pinned decoder or guarding the overwrite behind --force and documenting it. Done means rerunning the script on the pinned Playwright build no longer changes the committed file, or the guard blocks the overwrite and the docs say so.
Written by the indexing model from the issue text.
Description
Found while reviewing #84 (pre-existing: main's script does the same).
pnpm visual:reference on the pinned Playwright build (chromium-1217) writes a reference-canvas.png that differs from the committed one. 46,763 channel bytes differ, by up to 36/255. The committed file was decoded from reference.jpg by chromium-1193, and the JPEG decode changed between those builds. The gate compares against the committed PNG, so the ratchet itself is unaffected. But anyone who reruns the script silently changes the reference, and every recorded score with it.
Where: packages/editor-2.5d-react/scripts/make-reference-canvas.mjs and tests/snapshots/reference-canvas.png.
Fix (pick one):
- Decode the JPEG in Node, with a pinned decoder such as
jpeg-js, so the output doesn't depend on the browser. - Or make the script refuse to overwrite the committed file unless
--forceis passed, and document that regenerating it means re-recording every platform.
🤖 Generated with Claude Code
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 0
- Avg merge
- 10h 39m
- Merged PRs (30d)
- 38
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from hyperdrive-technology/holodeck
-
area:holodeck review-finding
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
hyperdrive-technology/holodeck#196 ·
Maintainers usually reply within 1 day
-
area:docs review-finding
Difficulty 1/5 Under an hour Newbie friendliness 70/100
hyperdrive-technology/holodeck#180 ·
Maintainers usually reply within 1 day
-
Flaky E3 test: native cut with no keydown (holodeck#123) in editing-ux-render.test.tsPossibly taken @dezlitz claimed this today. Openarea:holodeck review-finding
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
hyperdrive-technology/holodeck#141 ·
Maintainers usually reply within 1 day
-
assetUrlProblem: data:image check uses the un-normalised URL, so ' data:image/png...' is rejectedOpenarea:holodeck review-finding
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
hyperdrive-technology/holodeck#104 ·
Maintainers usually reply within 1 day
-
agent area:holodeck good first issue priority:p2
Difficulty 1/5 Under an hour Newbie friendliness 72/100
hyperdrive-technology/holodeck#64 ·
Maintainers usually reply within 1 day
All issues in hyperdrive-technology/holodeck
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
OpenPetsHQ/openpets#273 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
fritzprix/libr-agent#2161 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
blackboardsh/electrobun#581 ·
-
backlog-skill effort:xs frontend infra ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
LucasSantana-Dev/Lucky#2862 ·
Maintainers usually reply within 1 day