You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
Comprehensive Release Workflows: Introduced new GitHub Actions workflows for managing the entire release lifecycle, including automated Nightly Tags & Builds, Release Candidate (RC) builds, cutting new release branches, hotfix promotions, and promoting nightly builds to staging environments.
Automated Forward-Port Checks: A new workflow automatically identifies and flags commits on release branches that have not yet been forward-ported to main, helping ensure bug fixes and features are consistently integrated across release lines.
Version Computation Action: A new, dedicated GitHub Action for deterministically computing release versions (nightly, RC, stable) based on the core pyproject.toml version and Git history.
Force Document Download: Added a feature allowing users to force a direct download of knowledge base documents, ensuring consistent file handling rather than relying on browser-specific inline previews.
Gated Form Sections: Enhanced agent and process configuration forms with the ability to gate entire sections based on specific access rules, improving security and granular control over feature exposure.
Tenant Selection Form Element: Introduced a new FormKit element for selecting tenants in configurations, which dynamically filters options based on user memberships and enforces authorization.
OpenWebUI Base Model Listing: Added an internal client capability to list OpenWebUI's raw base models, which is essential for the platform's OpenWebUI provisioning logic.
Changed
SeaweedFS Upgrade (v3.97 to v4.01): Upgraded the underlying object storage system to SeaweedFS 4.01, which enables Content-Disposition functionality for presigned URLs (critical for forced downloads) and incorporates internal architectural changes like direct S3-to-volume-server data paths and JWT authentication.
GitHub Release Publishing Mechanism: The central GitHub Release workflow was refactored into a flexible "Publish Release Bundle" action, capable of creating both rolling prereleases (for nightly/staging environments) and distinct versioned releases (for latest/backport channels) with consolidated logic.
Python Package Publishing Mechanism: The npm and PyPI publishing workflows now use workflow_call instead of repository_dispatch, making them explicitly invoked by other release workflows for greater control and predictability, reducing potential for accidental publishing.
Configuration Authorization Service: Refactored the internal configuration authorization service to directly fetch user tenant IDs, improving the accuracy and efficiency of access validation for tenant-scoped resources.
Organization Memory Configuration: Updated the organization memory configuration to utilize the new TenantSelect form element and explicitly declare its access requirements, aligning with enhanced authorization features.
Large File Ingestion (ETag Handling): The S3 data lake client in the ingestion pipeline now correctly handles multipart ETags (e.g., <md5hex>-<n>) generated by SeaweedFS 4.01 for files larger than 8 MiB, preventing ingestion failures for large documents.
Knowledge Document Download Behavior: The frontend download functionality for knowledge documents now explicitly requests Content-Disposition: attachment and uses a programmatic anchor click to ensure reliable file downloads, enhancing user experience.
Removed
Manual Release Workflow: The release-manual.yml workflow has been removed, consolidating all release paths into the new, automated release lifecycle management system.
Deprecated Org Memory Tenant Input: The specialized OrgMemoryTenantInput form element has been removed, replaced by the more versatile and robust TenantSelect component.
Fixed
OpenWebUI Base Model Shadowing: Addressed an issue in OpenWebUI provisioning where internally registered base models could shadow workspace models, causing "Model not found" errors for non-admin users.