[GH-ISSUE #65] Add structural and visual browser comparison #53

Closed
opened 2026-10-15 18:20:33 +00:00 by bsakaguchi · 2 comments
Owner

Originally created by @morluto on GitHub (Jul 12, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/65

Problem

Screenshots alone cannot distinguish semantic UI changes, visual changes, environmental noise, and missing evidence.

Outcome

Add compare_browser_captures with step alignment and recorded normalization.

Scope

Compare URL/history, normalized DOM, accessibility roles/names/states/hierarchy, screenshots with masks/tolerances, errors, storage, protocol summaries, and window/frame/worker lifecycle. Classify unchanged, added, removed, changed, unaligned, truncated, or unknown while citing both evidence IDs.

Safety

Comparison is read-only. Never execute captured content. Record masks/tolerances as evidence parameters. Missing/truncated evidence is never equality.

Acceptance criteria

Detect semantic changes despite visual similarity and visual changes despite structural similarity; normalize declared volatile data reproducibly; expose alignment failures and artifact-level diffs.

Dependencies

Parents #37 and #39. Requires browser capture and bundles.

Verification

Fixtures cover exact equality, text/role/state/hierarchy/routes/storage/network changes, layout/color/image changes, masks, dynamic values, missing steps, changed order, and truncation.

Non-goals

Functional equivalence from screenshots, OCR reconstruction, or automatic baseline acceptance.

Originally created by @morluto on GitHub (Jul 12, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/65 ## Problem Screenshots alone cannot distinguish semantic UI changes, visual changes, environmental noise, and missing evidence. ## Outcome Add `compare_browser_captures` with step alignment and recorded normalization. ## Scope Compare URL/history, normalized DOM, accessibility roles/names/states/hierarchy, screenshots with masks/tolerances, errors, storage, protocol summaries, and window/frame/worker lifecycle. Classify unchanged, added, removed, changed, unaligned, truncated, or unknown while citing both evidence IDs. ## Safety Comparison is read-only. Never execute captured content. Record masks/tolerances as evidence parameters. Missing/truncated evidence is never equality. ## Acceptance criteria Detect semantic changes despite visual similarity and visual changes despite structural similarity; normalize declared volatile data reproducibly; expose alignment failures and artifact-level diffs. ## Dependencies Parents #37 and #39. Requires browser capture and bundles. ## Verification Fixtures cover exact equality, text/role/state/hierarchy/routes/storage/network changes, layout/color/image changes, masks, dynamic values, missing steps, changed order, and truncation. ## Non-goals Functional equivalence from screenshots, OCR reconstruction, or automatic baseline acceptance.
Author
Owner

@morluto commented on GitHub (Jul 20, 2026):

Split into focused child issues:

These replace the broad remaining scope in this issue. Closing this parent can happen once all children are closed.

<!-- gh-comment-id:5023445877 --> @morluto commented on GitHub (Jul 20, 2026): Split into focused child issues: - [ ] #377 - [ ] #378 These replace the broad remaining scope in this issue. Closing this parent can happen once all children are closed.
Author
Owner

@morluto commented on GitHub (Jul 25, 2026):

The focused children #377 and #378 are closed by merged PR #433, which delivers accessibility/storage comparison, step alignment, and recorded normalization.

<!-- gh-comment-id:5078381608 --> @morluto commented on GitHub (Jul 25, 2026): The focused children #377 and #378 are closed by merged PR #433, which delivers accessibility/storage comparison, step alignment, and recorded normalization.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#53
No description provided.