-
Notifications
You must be signed in to change notification settings - Fork 817
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
totp + proxy location support in observer #1549
Merged
Merged
Conversation
This file contains 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
<!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Add webhook support for observer cruises, including database schema updates, model changes, and new service functions for sending webhooks. > > - **Database**: > - Add columns `webhook_callback_url`, `totp_verification_url`, `totp_identifier` to `observer_cruises` table in Alembic migration `2025_01_14_0507-8a0649a92f23_observer_webhook_callback_url_totp_.py`. > - **Models**: > - Update `ObserverCruiseModel` in `models.py` to include `webhook_callback_url`, `totp_verification_url`, `totp_identifier`. > - **Schemas**: > - Add `webhook_callback_url`, `totp_verification_url`, `totp_identifier` to `CruiseRequest` in `observers.py`. > - **Services**: > - Add `send_observer_cruise_webhook()` in `observer_service.py` to send webhooks for observer cruises. > - Modify `mark_observer_cruise_as_failed()` and `mark_observer_cruise_as_completed()` in `observer_service.py` to call `send_observer_cruise_webhook()`. > - **Exceptions**: > - Update `FailedToSendWebhook` in `exceptions.py` to include `observer_cruise_id`. > - **Handlers**: > - Update `poll_verification_code()` and `_get_verification_code_from_url()` in `handler.py` to include `workflow_run_id` and `workflow_permanent_id`. > > <sup>This description was created by </sup>[<img alt="Ellipsis" src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=Skyvern-AI%2Fskyvern-cloud&utm_source=github&utm_medium=referral)<sup> for b9f6877dd83060d0efc4455c4789da0a446f1a01. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN -->
…src/' <!-- ELLIPSIS_HIDDEN --> > [!IMPORTANT] > Add webhook support for observer cruises, including database schema updates, model changes, and new service functions for sending webhooks. > > - **Database**: > - Add columns `webhook_callback_url`, `totp_verification_url`, `totp_identifier` to `observer_cruises` table in Alembic migration `2025_01_14_0507-8a0649a92f23_observer_webhook_callback_url_totp_.py`. > - **Models**: > - Update `ObserverCruiseModel` in `models.py` to include `webhook_callback_url`, `totp_verification_url`, `totp_identifier`. > - **Schemas**: > - Add `webhook_callback_url`, `totp_verification_url`, `totp_identifier` to `CruiseRequest` in `observers.py`. > - **Services**: > - Add `send_observer_cruise_webhook()` in `observer_service.py` to send webhooks for observer cruises. > - Modify `mark_observer_cruise_as_failed()` and `mark_observer_cruise_as_completed()` in `observer_service.py` to call `send_observer_cruise_webhook()`. > - **Exceptions**: > - Update `FailedToSendWebhook` in `exceptions.py` to include `observer_cruise_id`. > - **Handlers**: > - Update `poll_verification_code()` and `_get_verification_code_from_url()` in `handler.py` to include `workflow_run_id` and `workflow_permanent_id`. > > <sup>This description was created by </sup>[<img alt="Ellipsis" src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=Skyvern-AI%2Fskyvern-cloud&utm_source=github&utm_medium=referral)<sup> for b9f6877dd83060d0efc4455c4789da0a446f1a01. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN -->
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 4172697 in 13 seconds
More details
- Looked at
49
lines of code in1
files - Skipped
0
files when reviewing. - Skipped posting
1
drafted comments based on config settings.
1. skyvern/forge/sdk/services/observer_service.py:500
- Draft comment:
Ensure thatProxyLocation.RESIDENTIAL
is the intended default whenobserver_cruise.proxy_location
isNone
. - Reason this comment was not posted:
Confidence changes required:50%
The change in line 500 introduces a potential issue with the default value forproxy_location
. The current implementation usesobserver_cruise.proxy_location or ProxyLocation.RESIDENTIAL
, which means ifobserver_cruise.proxy_location
isNone
, it defaults toProxyLocation.RESIDENTIAL
. This is fine ifRESIDENTIAL
is the intended default, but it should be confirmed that this is the desired behavior.
Workflow ID: wflow_j4V24C6x72C42bkN
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
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.
Important
Add TOTP verification and dynamic proxy location support to observer service in
observer_service.py
.totp_verification_url
andtotp_identifier
parameters torun_observer_cruise_helper()
and_generate_navigation_task()
to support TOTP verification.proxy_location
inWorkflowCreateYAMLRequest
to useobserver_cruise.proxy_location
if available, defaulting toProxyLocation.RESIDENTIAL
.run_observer_cruise_helper()
to pass TOTP parameters to_generate_navigation_task()
._generate_navigation_task()
to accept and utilize TOTP parameters.This description was created by for 4172697. It will automatically update as commits are pushed.