chore(web): refresh blog visual baseline after wheelsdi post - #2678
Conversation
The Deploy static sites workflow on develop has been failing to auto-refresh the blog baseline since the develop ruleset (id 16174646) was tightened on 2026-05-09 to require PRs. Both refresh-visual-baselines.yml's manual flow and web-deploy.yml's post-merge auto-refresh push directly to develop and are now blocked by GH013. This PR is the immediate unblock. The committed PNG was captured locally on macOS so it differs from CI's Linux font rendering — the refresh-visual-baselines workflow will be dispatched on this branch to regenerate the PNG on Linux before merge. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Manually triggered baseline refresh via .github/workflows/refresh-visual-baselines.yml on branch peter/refresh-blog-baseline-post-wheelsdi. Run when an intentional content/layout change makes the visual-regression check fail. The new PNG(s) under web/tests/visual-baselines/ are now the expected rendering; re-run the failing visual-regression job to flip the check green.
There was a problem hiding this comment.
Wheels Bot — Reviewer A
TL;DR: This PR updates the blog visual test baseline PNG to unblock CI's visual-regression check after blog content drift caused by the wheelsdi post. The diff is a single binary file change — no CFML, no logic, no security surface. The purpose is clearly documented. Verdict: approve.
Commits
Two commits land in this PR:
75c3bf465— human-authored initial baseline (macOS-rendered, intentionally incorrect per the commit body). NoSigned-off-bytrailer.f0bd94c96— workflow-regenerated CI-rendered PNG viarefresh-visual-baselines.yml. Also lacks aSigned-off-bytrailer.
Both commit message types are chore(web) — valid per commitlint.config.js. Subjects are concise and within 100 chars.
The absence of a Signed-off-by trailer on 75c3bf465 (the human-authored commit) is worth noting. Per CONTRIBUTING.md, every commit should carry the DCO sign-off. No DCO status check appears in the PR's CI suite, so this may not be blocking here — but the convention should be followed in future PRs.
The two-commit shape is slightly noisy (an intentionally wrong PNG followed by the correct one), but the PR body explains the reasoning clearly. A cleaner future pattern: branch from develop after the blog post lands, dispatch refresh-visual-baselines.yml immediately, and commit only the CI-rendered result so the history stays clean.
Everything else
No Wheels conventions apply (no CFML changed). No cross-engine concerns. No security surface. The visual-regression check is still pending at review time — the test plan correctly anticipates it will turn green once CI renders against the new baseline.
Summary
Deploy static siteson develop. Every push since 2026-05-14 12:44 has been failingvisual-regressionwith[blog] FAIL — 42,456 pixels differbecause the auto-refresh inweb-deploy.ymlcan no longer push to develop directly.git push origin HEAD:developis rejected withGH013. Bothweb-deploy.yml's auto-refresh andrefresh-visual-baselines.yml's manual dispatch hit the same wall when targeting develop.refresh-visual-baselines.ymldispatched on this branch (the ruleset only protects develop), so the PNG matches CI's font rendering.The longer-term fix (so
web-deploy.yml's auto-refresh and direct dispatches against develop work again) is to addgithub-actions(integration id 15368) to the ruleset's bypass actors. That's a settings change outside this PR's scope.Test plan
visual-regressioncheck passes on this PR (it should — the baseline was captured in CI, not locally).Deploy static sitesrun on develop's new tip turns green for the first time since 8822462.🤖 Generated with Claude Code