-
Notifications
You must be signed in to change notification settings - Fork 795
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor chain click #1186
refactor chain click #1186
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❌ Changes requested. Reviewed everything up to 1e08310 in 1 minute and 59 seconds
More details
- Looked at
491
lines of code in5
files - Skipped
0
files when reviewing. - Skipped posting
3
drafted comments based on config settings.
1. skyvern/webeye/actions/handler.py:1177
- Draft comment:
Typo in method nameis_visibile
. It should beis_visible
. This typo is present in multiple files and should be corrected. - Reason this comment was not posted:
Marked as duplicate.
2. skyvern/webeye/utils/dom.py:270
- Draft comment:
async def is_visible(self) -> bool:
- Reason this comment was not posted:
Marked as duplicate.
3. skyvern/webeye/utils/page.py:182
- Draft comment:
Typo in method nameis_visibile
. It should beis_visible
. This typo is present in multiple files and should be corrected. - Reason this comment was not posted:
Marked as duplicate.
Workflow ID: wflow_f51OoH3gMqrYmmCJ
Want Ellipsis to fix these issues? Tag @ellipsis-dev
in a comment. You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
skyvern/webeye/utils/dom.py
Outdated
@@ -263,6 266,22 @@ async def is_disabled(self, dynamic: bool = False) -> bool: | |||
async def is_selectable(self) -> bool: | |||
return self.get_selectable() or self.get_tag_name() in SELECTABLE_ELEMENT | |||
|
|||
async def is_visibile(self) -> bool: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typo in method name is_visibile
. It should be is_visible
. This typo is present in multiple files and should be corrected.
async def is_visibile(self) -> bool: | |
async def is_visible(self) -> bool: |
@@ -273,6 294,144 @@ function isElementVisible(element) { | |||
return true; | |||
} | |||
|
|||
// from playwright: https://github.com/microsoft/playwright/blob/1b65f26f0287c0352e76673bc5f85bc36c934b55/packages/playwright-core/src/server/injected/domUtils.ts#L121-L127 | |||
function isVisibleTextNode(node) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The isVisibleTextNode
function duplicates core logic from isElementVisible
. Consider refactoring to use a shared utility function for visibility checks.
- function
isElementVisible
(domUtils.js)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 Looks good to me! Incremental review on 41333d7 in 22 seconds
More details
- Looked at
27
lines of code in2
files - Skipped
0
files when reviewing. - Skipped posting
1
drafted comments based on config settings.
1. skyvern/webeye/actions/handler.py:1179
- Draft comment:
The method nameis_visibile
was corrected tois_visible
. Ensure this change is consistent across the codebase. - Reason this comment was not posted:
Confidence changes required:10%
The method name was corrected fromis_visibile
tois_visible
in two files. This is a simple typo fix and should be acknowledged.
Workflow ID: wflow_LUR5aYshySgZQ7q2
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
Important
Refactor
chain_click
inhandler.py
to enhance error handling and element interaction, adding new methods toSkyvernElement
andSkyvernFrame
for improved robustness.chain_click
inhandler.py
to improve error handling and element interaction.FailToClick
exception inexceptions.py
.chain_click
.is_visibile()
,is_parent_of()
,is_child_of()
, andis_sibling_of()
methods toSkyvernElement
indom.py
.get_blocking_element_id()
andis_sibling()
methods toSkyvernFrame
inpage.py
.isParent()
,isSibling()
, andgetBlockElementUniqueID()
functions indomUtils.js
to support new element checks.This description was created by for 41333d7. It will automatically update as commits are pushed.