fix: improve test.html visual clarity and verify-rule skill#207
Merged
Conversation
- Add overflow:hidden to .case so floated elements don't bleed into adjacent cases - Make shape-outside ok case visually verifiable with circle shape, background, and wrapping text - Remove trivial default-value ok case (no meaningful coverage)
- Add background color to warn cases so the lack of height is visible - Use data URI SVG for img ok case instead of broken empty src - Update labels to describe visual behavior (height generated vs ignored) - Remove trivial default-value and display:contents ok cases
Per-case screenshots are now taken during Playwright verification and reviewed via Read tool to confirm CSS effects are visually apparent. Catches issues like missing backgrounds, broken images, or styling that triggers unrelated rule warnings.
- Add background color to all warn cases for visual contrast - Improve img ok case with wide SVG to clearly show object-fit: cover cropping a 200x40 image into a 100x100 square - Remove empty embed/object ok cases (not visually verifiable) - Remove trivial ok cases (default values, explicit defaults, display:contents)
Explain why each ok case is valid and what to expect visually, so the section is understandable without inspecting the elements.
ok labels should explain why the case is valid AND what to expect visually, so the test.html section is understandable at a glance without inspecting the elements.
- Add background color to all warn cases - Add two bordered cells to table/inline-table ok cases so border-spacing gaps are clearly visible - Update labels to explain what to expect visually - Remove trivial default-value ok case
- Add background color to all warn cases - Replace ok table-cell case with empty+filled cell pair so empty-cells: hide effect is visible (empty cell border hidden) - Update labels to explain what to expect visually - Remove trivial default-value and inherited ok cases
- Add background and padding to all cases for consistent styling - Warn case text now states "no outline visible" to clarify the no-op - Ok labels describe what outline is visible (color, style, width) - Remove trivial "no inline outline properties" ok case
- Add background color to all warn cases - Add gradient background to ok scroll containers so scrollable area is visible - Update labels to explain why each case is/isn't a scroll container and note that scroll-padding effect requires scroll-snap for full visual confirmation - Remove trivial default-value ok case
- Add background colors to warn and ok cases - Ok cases now have multiple colored sections to show scroll-snap context (snap effect visible on scroll interaction) - Update labels to explain parent snap-type relationship and what to expect - Remove trivial default-value ok cases (align none, stop normal)
Warn cases now have scrollable content (two 100px sections) matching ok cases, so the scrollbar is visible and the contrast between "scrollable but no snap" vs "scrollable with snap" is clearer.
- Add background color to all warn and ok cases - Warn labels describe the ignored behavior explicitly - Ok labels explain the visual effect (element shifts, sticks on scroll) - Remove redundant relative+top:0+left:0 ok case (no visible offset)
sticky + top effect requires scrolling which is not verifiable in this test page (overflow: hidden on .case prevents scrolling). The relative + top case already demonstrates that offsets work on positioned elements.
- Wrap warn cases in proper table structure so internal table display types render correctly - Add background color to all cases for visual contrast - Ok labels explain the visible margin effect - Remove trivial ok cases (table-row no margin, block with margin)
- Wrap warn cases in proper table structure so internal table display types render correctly - Add background color to all cases - Ok cases show padding effect with bordered cells and background - Update labels to explain visible effects - Remove trivial ok case (table-row with no padding)
- Add background and dimensions to all cases so transform effects (rotation, scaling) are visually obvious - Ok labels describe the visible effect (rotated from top-left, scaled from top-left) and note non-visual cases (offset-path, will-change) - Merge two will-change ok cases into one - Remove trivial default ok case
- Add background color to all warn and ok cases - Warn labels note "no resize handle" to explain the visual check - Ok labels note "resize handle visible in bottom-right corner" - Remove trivial resize:none ok case
- Add background color to all warn and ok cases - Warn labels note "text spills out instead of showing ..." - Ok labels describe visible effect (truncated with "...", scrollbar) - Remove trivial ok cases (default clip, display:contents, overflow:auto) - Keep input and vertical writing mode ok cases as meaningful edge cases
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.
Summary
Systematic visual improvement of
examples/test.htmltest cases across 15 rules, plus enhancements to theverify-ruleskill. Every rule's test cases were verified against real Chromium behavior via Playwright, with per-case screenshots reviewed for visual correctness.Changes to
examples/test.htmlGlobal:
overflow: hiddento.caseCSS class to contain floated elements that were bleeding into adjacent casesPer-rule improvements (15 rules):
Each rule received the same treatment:
#e8e8e8) added to all warn and ok case elements for visual contrastdisplay:contents, and other self-evident cases that add no meaningful coveragenonfloat-no-shape-outsideshape-outsideeffectnonreplaced-no-aspect-rationonreplaced-no-object-fitobject-fit: cover; removed empty embed/object casesnontable-no-border-spacingnontable-no-empty-cellsempty-cells: hideoutline-no-stylescroll-no-scroll-paddingscroll-snap-no-align-without-typestatic-no-offsetposition: relative + top: 20pxactually shifting the element; removed non-verifiable sticky casetable-no-margintable-no-paddingtransform-no-originvisible-overflow-no-resizevisible-overflow-no-text-overflow...ellipsis truncationChanges to
verify-ruleskill (.claude/skills/verify-rule/SKILL.md)c.screenshot()per.case)Test plan
pnpm test— all unit tests passpnpm test:e2e— all 20 e2e tests pass (dynamic test count, no code changes needed)pnpm lint— no lint errorsexamples/test.htmlin browser and visually confirm warn/ok contrast for each rule section