Repository navigation
Heal probe: row scope, data-* attributes, has_text text - #24
Conversation
Each item with a row now carries row_attr (data-qa, data-testid, data-test, data-cy or id), so the heal service can scope a locator to the row when none of the element's own locators is unique on the page. The vendored probe is byte-identical to the service's.
… reads (pw_text) Byte-identical to heal-service src/heal_service/probe/probe.js at f80709c. Merge after heal-service accepts pw_text and pw_cut (its schema refuses unknown keys).
…-entry roles Byte-identical to heal-service src/heal_service/probe/probe.js on fix/heal-rate-gaps.
|
✅ All smoke tests passed! View report |
|
PR-fix dispatch triage: no actionable review feedback. The only bot comment is the smoke-test pass notice; lint, unit, smoke and semgrep all pass ( 🤖 Generated with Claude Code |
|
✅ All chromium login tests passed! View report |
|
PR-fix re-dispatch triage: still no actionable feedback. The comment that triggered this dispatch is the "✅ All chromium login tests passed" notice. Checks: lint, unit, smoke and semgrep pass; |
|
✅ All firefox login tests passed! View report |
|
PR-fix re-dispatch #3 triage: there's still nothing to fix, so no commit. This dispatch was triggered by the "✅ All firefox login tests passed" notice. All checks are green now, including Note for the dispatcher: bot pass notices from github-actions are being treated as review feedback. That has caused 3 empty re-dispatches on this PR. |
Updates the heal probe (
utils/heal_probe.js) to the current service probe. The two files are byte-identical, and the sha256 test checks this.row/row_attrfor row-scoped locators.data-*attributes. Only names matching^data-[a-z0-9-]{1,60}$that don't collide with another key are sent.pw_text/pw_cut: element text as Playwright'shas_textreads it, used to prove a text filter is unique. Text-entry roles (textbox, searchbox, combobox, spinbutton, slider) are never read, and token-like runs drop the text.Merge order: merge only after the heal service accepts these fields. An older service rejects unknown fields with 422.
Tests: 238 heal unit tests pass (
pytest -q tests/unit -k heal).