-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
fix: Allow manual execute action for any action #1147
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
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! Reviewed everything up to 598e7e5 in 24 seconds
More details
- Looked at
226
lines of code in14
files - Skipped
0
files when reviewing. - Skipped posting
2
drafted comments based on config settings.
1. python/composio/tools/toolset.py:331
- Draft comment:
The change fromNone
to an empty list[]
for_requested_actions
ensures that the list is always initialized, preventing potentialNoneType
errors. This aligns with the new logic where_check_requested_actions
is used to control action execution checks. - Reason this comment was not posted:
Confidence changes required:20%
The change fromself._requested_actions
beingNone
to an empty list[]
in the constructor ofComposioToolSet
is a significant change. This change affects the logic inexecute_action
where_check_requested_actions
is used. The previous logic checked ifself._requested_actions
wasNone
to bypass the check, but now it relies on the_check_requested_actions
flag. This change is intentional and aligns with the PR's goal to allow manual execution of actions without prior requests. The testtest_invalid_handle_tool_calls
has been updated to reflect this change, ensuring that the_check_requested_actions
flag is respected. This change is consistent across the codebase, as seen in the various toolset implementations where_check_requested_actions=True
is passed. The change is well-covered by tests, ensuring that the new behavior is correctly implemented.
2. python/composio/tools/toolset.py:851
- Draft comment:
The_check_requested_actions
parameter allows for conditional checking of requested actions, providing flexibility in action execution. - Reason this comment was not posted:
Confidence changes required:10%
The addition of the_check_requested_actions
parameter in theexecute_action
method allows for more flexible control over whether actions need to be pre-requested. This change is consistent with the PR's intent to allow manual execution of actions without prior requests. The default value is set toFalse
, which means that by default, actions do not need to be pre-requested unless explicitly specified. This change is reflected in the test cases and other parts of the codebase where_check_requested_actions=True
is passed to enforce the check.
Workflow ID: wflow_q7hZatwOXxsn6vn8
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
WalkthroughThis update enhances the toolset by introducing a new parameter Changes
🔗 Related PRs
Entelligence.ai can learn from your feedback. Simply add 👍 / 👎 emojis to teach it your preferences. More shortcuts belowEmoji Descriptions:
Interact with the Bot:
|
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. Incremental review on cc1515c in 48 seconds
More details
- Looked at
47
lines of code in3
files - Skipped
0
files when reviewing. - Skipped posting
1
drafted comments based on config settings.
1. python/plugins/google/composio_google/toolset.py:163
- Draft comment:
Typo in parameter name '_poplate_requested'. It should be '_populate_requested'. This typo appears in multiple files. - Reason this comment was not posted:
Marked as duplicate.
Workflow ID: wflow_nHJG3KVB6mxMD0nC
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.
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 58b6e38 in 32 seconds
More details
- Looked at
30
lines of code in2
files - Skipped
0
files when reviewing. - Skipped posting
2
drafted comments based on config settings.
1. python/plugins/autogen/composio_autogen/toolset.py:50
- Draft comment:
Typo in parameter name_poplate_requested
. It should be_populate_requested
. - Reason this comment was not posted:
Comment looked like it was already resolved.
2. python/plugins/google/composio_google/toolset.py:166
- Draft comment:
Typo in parameter name_poplate_requested
. It should be_populate_requested
. - Reason this comment was not posted:
Marked as duplicate.
Workflow ID: wflow_KnBrFXRfi2gr6KwK
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
In the last release, we started blocking ALL execute_action calls on toolsets that used
get_tools()
to request tools. This chanage avoids blocking manually made execute_action calls.Important
Introduces
_check_requested_actions
flag intoolset.py
to allow manualexecute_action
calls without checks, updating related files and tests._check_requested_actions
flag inexecute_action()
intoolset.py
to allow manual calls without checks.execute_action()
calls incomposio_autogen/toolset.py
,composio_camel/toolset.py
, and 10 other files to set_check_requested_actions=True
._requested_actions
as an empty list intoolset.py
.test_invalid_handle_tool_calls()
intest_toolset.py
to test manualexecute_action()
calls without_check_requested_actions
flag.This description was created by for 58b6e38. It will automatically update as commits are pushed.