Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: askui/python-sdk
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.22.11
Choose a base ref
...
head repository: askui/python-sdk
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.22.12
Choose a head ref
  • 13 commits
  • 19 files changed
  • 3 contributors

Commits on Dec 23, 2025

  1. feat: add SBOM generation and release workflow

    - Add GitHub Actions workflow to generate and release SBOM using cyclonedx-py
    - Integrate SBOM generation into publish workflow
    mlikasam-askui committed Dec 23, 2025
    Configuration menu
    Copy the full SHA
    2a481f6 View commit details
    Browse the repository at this point in the history

Commits on Dec 24, 2025

  1. switch base action

    mlikasam-askui committed Dec 24, 2025
    Configuration menu
    Copy the full SHA
    3272da3 View commit details
    Browse the repository at this point in the history
  2. feat: add SBOM generation and release workflow

    feat: add SBOM generation and release workflow
    mlikasam-askui authored Dec 24, 2025
    Configuration menu
    Copy the full SHA
    6ff98dc View commit details
    Browse the repository at this point in the history
  3. fix tag name

    mlikasam-askui committed Dec 24, 2025
    Configuration menu
    Copy the full SHA
    d14e3fe View commit details
    Browse the repository at this point in the history
  4. set autocreate to true

    mlikasam-askui committed Dec 24, 2025
    Configuration menu
    Copy the full SHA
    e1bdadd View commit details
    Browse the repository at this point in the history
  5. switch spec to 1.6

    mlikasam-askui committed Dec 24, 2025
    Configuration menu
    Copy the full SHA
    ed02fe3 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #215 from askui/add-SBOM-generator

    Add SBOM generator
    mlikasam-askui authored Dec 24, 2025
    Configuration menu
    Copy the full SHA
    cad1184 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    7bf3d0e View commit details
    Browse the repository at this point in the history
  8. fix workflow

    mlikasam-askui committed Dec 24, 2025
    Configuration menu
    Copy the full SHA
    48154f6 View commit details
    Browse the repository at this point in the history
  9. Merge pull request #216 from askui/add-SBOM-generator

    ci: ensure SBOM generation runs after PyPI publish
    mlikasam-askui authored Dec 24, 2025
    Configuration menu
    Copy the full SHA
    95f8e30 View commit details
    Browse the repository at this point in the history

Commits on Jan 2, 2026

  1. refactor: remove functools.cache decorator from create_api_client fun…

    …ction for unauthorized issues after token expiry (#218)
    danyalxahid-askui authored Jan 2, 2026
    Configuration menu
    Copy the full SHA
    1cb4cf8 View commit details
    Browse the repository at this point in the history

Commits on Jan 7, 2026

  1. Cl 1935 scheduling workflows which run on a specific time (#217)

    * feat(messages): add support for injecting cancelled tool results in message creation
    
    Enhanced the `create_message` method in `MessageService` to include an optional parameter `inject_cancelled_tool_results`. When set to `True`, it creates cancelled tool results if the parent message contains pending tool_use blocks. This change improves the handling of tool execution interruptions by providing relevant feedback in the message flow.
    
    * fix(messages): update tool result content type in MessageService
    
    Changed the type of `tool_result_content` in the `create_message` method from `list[ToolResultBlockParam]` to `list[ContentBlockParam]` to ensure mypy compatability.
    
    * feat(scheduled_jobs): implement scheduled job management with APScheduler
    
    Added functionality for managing scheduled jobs, including creation, listing, and cancellation. Introduced `ScheduledJobService` for handling job operations and integrated it into the FastAPI application. Updated the application to start and shutdown the scheduler during lifespan events. Added necessary models and dependencies for scheduled job data handling.
    
    * refactor(scheduled_jobs): remove unused query parameter from list_scheduled_jobs
    
    Eliminated the unused `query` parameter from the `list_scheduled_jobs` function in the router. Cleaned up imports in `scheduler.py` by removing type ignore comments for better clarity. Updated the `list_` method in `ScheduledJobService` to reflect the removal of the `query` parameter.
    
    * chore: update .gitignore and enhance SQLite configuration
    
    Added entries for SQLite shared memory and write-ahead logging files to `.gitignore`. Enhanced SQLite connection settings in `engine.py` by enabling WAL mode for concurrent access and setting a busy timeout to prevent database locking issues. Removed unused return type documentation in `executor.py` for clarity.
    
    * refactor(scheduled_jobs): update ScheduledJob creation to use params
    
    Refactored the `create` method in `ScheduledJob` to accept `params` of type `ScheduledJobCreate` instead of individual parameters. Updated the `create_scheduled_job` function in the router to pass `params` directly to the service. Cleaned up imports and removed unnecessary data construction in the router for improved clarity.
    
    * feat(scheduled_jobs): add name field to MessageRerunnerData and update ScheduledJob creation
    
    Introduced a new `name` field in the `MessageRerunnerDataCreate` model to enhance the data structure. Updated the `ScheduledJob` creation process to include the `name` parameter from `params.data`, ensuring that the new field is properly utilized during job creation.
    
    * feat(scheduled_jobs): enhance job execution with ASKUI token management
    
    Updated the `execute_job` function to support the new `askui_token` field in `ScheduledJobData`. Implemented environment variable management for `ASKUI_TOKEN` and `AUTHORIZATION` headers to accommodate different authentication methods. Refactored the job execution logic to ensure proper handling of new job types and restore previous environment states after execution. Enhanced the `ScheduledJobCreate` model to include the `askui_token` parameter for authenticated API calls.
    
    * feat(scheduled_jobs): add scheduler database support and improve SQLite configuration, get around the write lock when scheduler and Runner wants to write to the same DB
    
    Introduced a new `scheduler_url` field in `DbSettings` for APScheduler job storage, allowing separate database management. Updated the `engine.py` to utilize the new scheduler database and removed unused SQLite connection settings. Enhanced the `scheduler.py` to create a dedicated engine for the scheduler database and ensure proper SQLite configuration for foreign key support. Updated logging to use a private logger for better encapsulation.
    
    * refactor(scheduled_jobs): update job execution logic and improve error handling
    
    Refactored the `execute_job` function to utilize a new `_execute_message_rerunner_job` helper function for better clarity and separation of concerns. Updated the handling of `MessageRerunnerData` and improved error messages for better debugging. Removed unused imports and ensured proper type hints throughout the code. Enhanced the `ScheduledJob` model to streamline the extraction of `next_fire_time` and improved the handling of workspace validation in the `ScheduledJobService` class.
    
    * refactor: remove functools.cache decorator from create_api_client function for unauthorized issues after token expiry
    
    * refactor(scheduled_jobs): enhance job execution and token management
    
    Updated the `execute_job` function to improve the handling of `askui_token` by utilizing `SecretStr` for better security. Refactored the logic to manage the `ASKUI__AUTHORIZATION` environment variable, ensuring proper encoding of the token. Enhanced the extraction of `next_fire_time` in the `ScheduledJob` model for clearer error handling. Updated the `ScheduledJobService` to pass the decoded token securely during job execution. This refactor aims to streamline job execution and improve overall code clarity.
    
    * refactor(scheduled_jobs): update execute_job to return ScheduledJobExecutionResult
    
    Modified the `execute_job` function to return a `ScheduledJobExecutionResult`, encapsulating job data and optional error messages. Enhanced error handling during job execution, ensuring that the previous `ASKUI__AUTHORIZATION` environment variable is restored after execution. Improved documentation for the function's parameters and return type to clarify its behavior and expected output.
    
    * refactor(settings, engine): optimize SQLite configuration and update database settings
    
    Refactored the `DbSettings` class to consolidate the database URL for SQLAlchemy connections, removing the separate `scheduler_url` field. Updated the database engine configuration in `engine.py` to utilize optimized SQLite pragmas for better performance and concurrency. Adjusted the `scheduler.py` to use the shared engine, ensuring that APScheduler operates with the same database settings. Enhanced the `.gitignore` to include SQLite shared memory and write-ahead logging files for improved project cleanliness.
    
    * refactor(scheduled_jobs): sort scheduled jobs by next fire time
    
    Updated the `ScheduledJobService` to return a sorted list of scheduled jobs based on their `next_fire_time`. This change enhances the order of job execution, ensuring that jobs are processed in a timely manner.
    danyalxahid-askui authored Jan 7, 2026
    Configuration menu
    Copy the full SHA
    3a010ad View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5c5d846 View commit details
    Browse the repository at this point in the history
Loading