[!IMPORTANT]
Enhance async operations, error handling, and configuration in the codebase, including async S3 operations and workflow execution updates.
Async Operations:
Introduced async_s3.py for asynchronous S3 operations, replacing s3.py.
Updated store_in_blob_store_if_large() and load_from_blob_store_if_remote() in storage_handler.py to be async.
Added cozo_query_async decorator in models/utils.py for async Cozo queries.
Workflow Execution:
Updated TaskExecutionWorkflow in task_execution/__init__.py to use async activities.
Modified continue_as_child() and other helper functions in task_execution/helpers.py to support async operations.
Error Handling:
Enhanced rewrap_exceptions in models/utils.py to support async functions.
Improved retry logic in cozo_query_async with tenacity for handling resource busy errors.
Configuration and Dependencies:
Updated gunicorn_conf.py to adjust worker count based on debug mode.
Updated pyproject.toml to include aiobotocore and async-lru for async operations.
Miscellaneous:
Fixed duplicate imports and minor code cleanup in several files.
Adjusted logging and error messages for better clarity.
This description was created by for 42fda1fbafd953314b07559646af65a3ced9a5f4. It will automatically update as commits are pushed.