Require Tester to try visualClick on visible elements when locators fail#50
Merged
Conversation
c98afa7 to
12fdf76
Compare
When a click or locator repeatedly fails (not found, timeout, intercepted) on a target that is visible on the page, the Tester must now attempt visualClick at least once before re-researching, switching targets, or concluding the element is unreachable. The prior rule was a soft "use as fallback" and got skipped, letting the Tester exhaust broken locators and wrongly decide a visible control did not exist. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
12fdf76 to
e358dd3
Compare
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.
What
Strengthens one Tester rule: when a
click()or locator repeatedly fails (not found, timeout, intercepted) on a target that is visible on the page, the Tester must now tryvisualClick()at least once before re-researching, switching targets, or concluding the element is unreachable.Why
From a failed "Create new manual run" session: the Researcher's UI map mislabeled the primary action (a phantom
New Run (+)button in a non-existent.layout-headercontainer), so every locator chased nothing. Vision actually knew the truth —see()reported "the blue button labeled 'Manual Run' likely triggers the creation" — but the Tester never converted that into avisualClickand instead exhausted broken locators, then wrongly concluded the feature did not exist. The existing rule to fall back tovisualClickwas too soft and got skipped.Scoped to the Tester only (the sole agent with
visualClick;locatorRuleis shared with Navigator/Researcher/Driller and was left untouched). ThevisualClicktool already guides describing elements by visible appearance, so no duplication.Verification
bun test tests/integration/— 62 pass / 0 failbun run format/bun run check:fix— clean🤖 Generated with Claude Code