- Added `@observe` decorators to various methods in `service.py`, `session.py`, and `controller.py` to improve tracking of actions and state changes.
- Updated method signatures to include observability features for better debugging and monitoring.
- Adjusted retry logic for certain actions to enhance reliability and performance.
- Updated retry logic to handle page errors more effectively by capturing the current page context before retrying the action.
- Improved error messaging to provide clearer feedback when actions fail due to page navigation or closure.
- Updated timeouts for action execution, step processing, and screenshot operations to more aggressive values (e.g., reduced from 60s to 20s for actions, 30s to 10s for DOM processing).
- Adjusted retry logic and timeout settings for screenshot and iframe content extraction to enhance performance and reduce potential hangs.
- Improved logging for timeout events to provide clearer feedback on operation failures.
- Added timeout handling for page content extraction with a 30-second limit, returning an error message on timeout.
- Introduced timeout protection for iframe content extraction with a 10-second limit, logging a warning on timeout.
- Implemented a 60-second timeout for LLM calls, logging a warning if the call exceeds this duration.
- Enhanced error handling to provide clearer feedback on extraction failures.
- Commented out retry logic for page errors to simplify error handling.
- Maintained the raise of the original exception for clarity in error reporting.
- Simplified the return statement for site unavailable errors by removing redundant parameters while maintaining functionality.
- Improved code readability and consistency in error handling.
- Reintroduced action retry mechanism to handle transient errors during action execution.
- Added logging for failures and implemented a retry attempt with context preservation for better resilience.
- Updated GoToUrlAction to include a new_tab parameter for opening URLs in a new tab or navigating in the current tab.
- Removed the OpenTabAction as its functionality is now integrated into GoToUrlAction.
- Enhanced scroll action to allow scrolling up or down based on a boolean parameter.
- Cleaned up commented-out code related to accessibility tree retrieval for better readability.
- Remove ControllerRegisteredFunctionsTelemetryEvent and RegisteredFunction classes
- Remove telemetry capture call from controller registry service
- Clean up unused imports in telemetry module
- Simplify telemetry __all__ exports
This removes dead code that was capturing registered function telemetry
data but wasn't being used anywhere in the application.
Refactors the ActionModelUnion class to ensure it properly maintains the ActionModel interface by delegating methods like get_index, set_index, and model_dump to the underlying action model. This improves the usability and consistency of the union type in handling action models.
Refines the conditional check for identifying file input elements
to enhance accuracy by reorganizing the code logic for better
readability and maintainability.
Enhances logic to accurately identify file input elements by
checking element's tag and type attributes, reducing false
positives in file upload detection.