Skip to content

fix: make dashboard health assertions robust to streaming re-renders - #12

Merged
dataPro-lgtm merged 2 commits into
mainfrom
fix/e2e-dashboard-health-strict-mode
Aug 3, 2026
Merged

dataPro-lgtm merged 2 commits into
mainfrom
fix/e2e-dashboard-health-strict-mode

Conversation

@dataPro-lgtm

Copy link
Copy Markdown
Owner

Summary

The Browser Release Gate intermittently fails on admin boundary blocks anonymous access and publishes a review-ready case with a Playwright strict-mode violation: getByText('Ingestion Worker Health') resolves to 2 elements while the dashboard streams a re-render (observed on PR #7 run 30815455030, including its retry — the label exists exactly once in the page source).

  • Anchor the health-section assertions on .first() inside main
  • Replace the heartbeat toHaveCount(2) with per-instance assertions (instance worker-… and instance scheduler-…), which is a stronger check and immune to transient duplicates

Merge before the M5 feature PRs (#7–#11) so they can pass the gate reliably.

Test plan

  • Browser Release Gate on this PR

🤖 Generated with Claude Code

dataPro-lgtm and others added 2 commits August 3, 2026 20:59
The admin dashboard can briefly hold duplicate section nodes while Next.js
streams a re-render, which trips Playwright strict-mode single-element
locators. Anchor on the first match inside main and assert the worker and
scheduler heartbeat lines by instance prefix, which is also a stronger check
than the previous count of 2.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@dataPro-lgtm
dataPro-lgtm merged commit 96a4d6b into main Aug 3, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant