Repository navigation
Make visual finishing the default for rendered delivery - #200
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Rendered delivery can pass the block gate while losing layout, content or interaction. Make matched visual comparison and correction the default skill workflow. Closes #198.
Solution
The skill now finishes rendered work with desktop/mobile comparison, source-located corrections and native editor proof. A clean first comparison ends there. Source-only work, an unavailable target or an explicit skip still delivers with an honest verification gap. This adds no deployment authority and changes no CLI/library behaviour.
skills/block-runner/SKILL.md,references/VISUAL.mdreferences/VISUAL.mddev/test/fixtures/visual-reviewDiff
18 files, +321 / −1, including 8 synthetic evidence images. No runtime code, new helper, command or dependency.
Testing & verification
Reviewed revision:
f6bbf0a. Node 22.23.1, local WordPress 7.1 / PHP 8.4.27; Chromium 155 for paired frontend inspection, Chrome 154 for native editing.npm run build,npm run check:private,git diff --check,npm run pack:check: passed.npx --no-install vitest run dev/test/skill.test.ts: 3 tests passed.node dist/cli.js site compile dev/test/fixtures/visual-review/site.intent.json --asset-root dev/test/fixtures/visual-review --out /tmp/visual-review-before --strict --json: no diagnostics. Corrected source also compiled strictly without diagnostics.site plan/ hash-confirmedsite applycompleted on the disposable local target; original plans/journals/readbacks were retained.validateon restored markup: page 8/8 valid, part 2/2 valid, no warnings.Not verified: independent reviewer replay and production behaviour. The fixture is a controlled demonstration, not a broad converter-fidelity benchmark. Missing-reference/source-only exception paths were reviewed as instructions, not measured in a paid model run.
Visual evidence
Monolith native WordPress homepage, before and after visual finishing. Desktop: 1440×1000; mobile: 390×844. Corrections restore the source fonts, keep the mobile header on one row, prevent the New badge from wrapping and preserve command punctuation. The animated artwork is captured at different phases.
These captures demonstrate the homepage finishing pass, not full-site fidelity or interaction acceptance. The separate synthetic replay fixture retains the reproducible seeded defects and native editor proof.
Risk / rollout
The added default costs a bounded rendered comparison when a target exists; a clean comparison requires no correction loop. CLI/API callers remain unchanged. Detection: use the seeded fixture and inspect the retained captures, including clipping rather than only document overflow. Rollback: revert the skill/reference/fixture changes; no runtime migration is involved.
⟁ Written by AI. Context window fully weaponized.