- Added support for loading current deliverables and context for artifact revisions with `load_artifact_for_revision`.
- Removed the deprecated `load_artifact_source` tool.
- Enhanced documentation for artifact skills, including detailed revision instructions for DOCX, PDF, PPTX, and XLSX formats.
- Updated the Dockerfile to include the `python-docx` package for document generation.
- Adjusted artifact file roles in the database schema to exclude the source role.
- Added `selectedCardToolCallId` to the artifact panel state for improved tracking of selected artifacts.
- Updated `openArtifactPanelAtom` to accept `selectedCardToolCallId` when opening the panel.
- Modified `ArtifactCard` component to pass `toolCallId` when opening the artifact panel, ensuring correct selection highlighting.
- Refactored `scroll-to-artifact` logic to utilize the new `selectedCardToolCallId` for better artifact navigation.
- Adjusted styles in the artifact card to visually indicate the selected state.
- Introduced support for displaying an `ArtifactFormatIcon` when the document type is "ARTIFACT".
- Updated the `FORMAT_META` to include a new presentation-only key for artifacts, enhancing the visual representation in the UI.
- Ensured consistent handling of document types across the application.
- Added `document_id` to artifact listing for improved metadata association.
- Introduced `ArtifactFormatIcon` and `ArtifactFormatLabel` components for better visual representation of artifact formats.
- Updated various components to utilize new format handling, ensuring consistent display across the application.
- Refactored artifact-related schemas and hooks to accommodate new format data.
- Enhanced unit tests to cover new functionality and ensure robustness.
- Updated `ArtifactViewerContent` to conditionally display download filename based on workspace validity.
- Added `refetchOnWindowFocus` option to artifact query for improved data freshness.
- Replaced `documentStatus` with a Zod enum for `indexing_status` in artifact schemas.
- Refactored `collectArtifacts` to return `ArtifactCandidate` and adjusted related functions for better artifact management.
- Removed unused imports and streamlined the `ArtifactRow` component for clarity.
- Updated `list_artifacts` to accept an optional `thread_id` parameter for filtering artifacts by thread.
- Modified the query to conditionally include the `thread_id` in the selection criteria.
- Enhanced frontend components to support thread-specific artifact fetching and display.
- Added unit tests to verify the new functionality for scoping artifacts to a specific thread.
- Added a new `SpreadsheetGrid` component to render Excel sheets using `react-data-grid`.
- Enhanced the viewer to display worksheets with dynamic column and row generation.
- Updated loading and error handling messages for better user experience.
- Refactored existing table structure to utilize the new grid component for better performance and styling.
generate_image now bills, calls the provider once and persists through
save_artifact, with the generation parameters and revised prompt kept as
provenance. The ImageGeneration model, its routes, schemas, RBAC permissions
and per-image access tokens are gone, along with the frontend service and
types; viewers fetch the primary file through the artifact manifest.
Shared chats keep working: the snapshot stores the artifact ids its messages
reference and a public route serves only those, so a token grants the thread's
own artifacts rather than the workspace's.