Changed (3)
buttons
changed
Diff: 3.12% (34903 pixels) · baseline approved 2026-07-27
Layered analysis
agents get this via
@testivai/mcp · explain_snapshot
Style-only change — a real change, not noise: 34 elements restyled with identical DOM (
body, …). Confirm it's intended before approving.
Styles changed
— 34 elements restyled with identical DOM:
body, header, h1, ….
25 changed regions (4 shifted)
- #1 · h1 changed (199×20 @ 541, 50)
- #2 · p changed (535×14 @ 370, 83)
- #3 · header changed (1280×1 @ 0, 165)
- #4 · h2 changed (49×15 @ 234, 230)
- #5 · div.alert:nth-of-type(1) changed (796×2 @ 242, 270)
- #6 · div.alert:nth-of-type(1) changed (796×37 @ 242, 287)
- #7 · div.alert:nth-of-type(2) changed (796×27 @ 242, 338)
- #8 · h2 changed (63×15 @ 235, 397)
- #9 · button.btn:nth-of-type(1) shifted -1px vertically — content unchanged
- #10 · button.btn:nth-of-type(3) shifted -1px vertically — content unchanged
- #11 · button.btn:nth-of-type(4) shifted -1px vertically — content unchanged
- #12 · button.btn:nth-of-type(2) shifted -1px vertically — content unchanged
- #13 · h2 changed (73×15 @ 235, 508)
- #14 · div.thumb:nth-of-type(1) changed (257×7 @ 236, 549)
- #15 · div.thumb:nth-of-type(1) changed (255×7 @ 514, 549)
- #16 · div.thumb:nth-of-type(1) changed (257×7 @ 787, 549)
- #17 · div.thumb:nth-of-type(1) changed (259×1 @ 235, 637)
- #18 · div.thumb:nth-of-type(1) changed (260×1 @ 510, 637)
- #19 · div.thumb:nth-of-type(1) changed (259×1 @ 786, 637)
- #20 · p changed (225×67 @ 799, 653)
- #21 · p changed (186×57 @ 249, 654)
- #22 · p changed (220×86 @ 524, 654)
- #23 · div.price changed (31×16 @ 249, 724)
- #24 · footer changed (348×15 @ 466, 836)
- #25 · footer changed (1280×3 @ 0, 870)
↕ Everything below y=438 shifted -1px (4 elements moved together — typically an inserted banner or expanded section above).



npx testivai approve buttons
home
changed
Diff: 3.12% (34903 pixels) · baseline approved 2026-07-27
Layered analysis
agents get this via
@testivai/mcp · explain_snapshot
Style-only change — a real change, not noise: 34 elements restyled with identical DOM (
body, …). Confirm it's intended before approving.
Styles changed
— 34 elements restyled with identical DOM:
body, header, h1, ….
25 changed regions (4 shifted)
- #1 · h1 changed (199×20 @ 541, 50)
- #2 · p changed (535×14 @ 370, 83)
- #3 · header changed (1280×1 @ 0, 165)
- #4 · h2 changed (49×15 @ 234, 230)
- #5 · div.alert:nth-of-type(1) changed (796×2 @ 242, 270)
- #6 · div.alert:nth-of-type(1) changed (796×37 @ 242, 287)
- #7 · div.alert:nth-of-type(2) changed (796×27 @ 242, 338)
- #8 · h2 changed (63×15 @ 235, 397)
- #9 · button.btn:nth-of-type(1) shifted -1px vertically — content unchanged
- #10 · button.btn:nth-of-type(3) shifted -1px vertically — content unchanged
- #11 · button.btn:nth-of-type(4) shifted -1px vertically — content unchanged
- #12 · button.btn:nth-of-type(2) shifted -1px vertically — content unchanged
- #13 · h2 changed (73×15 @ 235, 508)
- #14 · div.thumb:nth-of-type(1) changed (257×7 @ 236, 549)
- #15 · div.thumb:nth-of-type(1) changed (255×7 @ 514, 549)
- #16 · div.thumb:nth-of-type(1) changed (257×7 @ 787, 549)
- #17 · div.thumb:nth-of-type(1) changed (259×1 @ 235, 637)
- #18 · div.thumb:nth-of-type(1) changed (260×1 @ 510, 637)
- #19 · div.thumb:nth-of-type(1) changed (259×1 @ 786, 637)
- #20 · p changed (225×67 @ 799, 653)
- #21 · p changed (186×57 @ 249, 654)
- #22 · p changed (220×86 @ 524, 654)
- #23 · div.price changed (31×16 @ 249, 724)
- #24 · footer changed (348×15 @ 466, 836)
- #25 · footer changed (1280×3 @ 0, 870)
↕ Everything below y=438 shifted -1px (4 elements moved together — typically an inserted banner or expanded section above).



npx testivai approve home
products
changed
Diff: 3.12% (34903 pixels) · baseline approved 2026-07-27
Layered analysis
agents get this via
@testivai/mcp · explain_snapshot
Style-only change — a real change, not noise: 34 elements restyled with identical DOM (
body, …). Confirm it's intended before approving.
Styles changed
— 34 elements restyled with identical DOM:
body, header, h1, ….
25 changed regions (4 shifted)
- #1 · h1 changed (199×20 @ 541, 50)
- #2 · p changed (535×14 @ 370, 83)
- #3 · header changed (1280×1 @ 0, 165)
- #4 · h2 changed (49×15 @ 234, 230)
- #5 · div.alert:nth-of-type(1) changed (796×2 @ 242, 270)
- #6 · div.alert:nth-of-type(1) changed (796×37 @ 242, 287)
- #7 · div.alert:nth-of-type(2) changed (796×27 @ 242, 338)
- #8 · h2 changed (63×15 @ 235, 397)
- #9 · button.btn:nth-of-type(1) shifted -1px vertically — content unchanged
- #10 · button.btn:nth-of-type(3) shifted -1px vertically — content unchanged
- #11 · button.btn:nth-of-type(4) shifted -1px vertically — content unchanged
- #12 · button.btn:nth-of-type(2) shifted -1px vertically — content unchanged
- #13 · h2 changed (73×15 @ 235, 508)
- #14 · div.thumb:nth-of-type(1) changed (257×7 @ 236, 549)
- #15 · div.thumb:nth-of-type(1) changed (255×7 @ 514, 549)
- #16 · div.thumb:nth-of-type(1) changed (257×7 @ 787, 549)
- #17 · div.thumb:nth-of-type(1) changed (259×1 @ 235, 637)
- #18 · div.thumb:nth-of-type(1) changed (260×1 @ 510, 637)
- #19 · div.thumb:nth-of-type(1) changed (259×1 @ 786, 637)
- #20 · p changed (225×67 @ 799, 653)
- #21 · p changed (186×57 @ 249, 654)
- #22 · p changed (220×86 @ 524, 654)
- #23 · div.price changed (31×16 @ 249, 724)
- #24 · footer changed (348×15 @ 466, 836)
- #25 · footer changed (1280×3 @ 0, 870)
↕ Everything below y=438 shifted -1px (4 elements moved together — typically an inserted banner or expanded section above).



npx testivai approve products