- Modified the SSL configuration in both the PostgreSQL adapter and its tests to use { rejectUnauthorized: false } instead of a boolean true value.
- Ensured consistency in handling SSL settings across the adapter and its tests.
- Updated all database adapter tests and implementations to replace the 'database' field with 'default_database' for consistency.
- Ensured backward compatibility in the Redshift adapter by allowing both 'database' and 'default_database' fields.
- Enhanced SQLServer and MySQL adapters to reflect the new credential structure, improving clarity and maintainability.
- Added checks to ensure toolCallId exists and is a valid string before processing tool results.
- Preserves the original part if toolCallId is missing or invalid, improving robustness in message conversion.
- Updated logic to prioritize cache as the source of truth during streaming, with asynchronous database updates for persistence.
- Improved error handling for background database updates, ensuring cache validity even if DB update fails.
- Cleaned up mergeResponseMessages and mergeReasoningMessages functions by removing redundant code.
- Introduced lru-cache version 11.1.0 in package.json and pnpm-lock.yaml.
- Refactored updateMessageEntries to utilize TypeScript-based merge logic with write-through caching.
- Improved error handling for fetching existing message entries and updated database logic to merge new entries with existing ones.
- Removed the creation and handling of raw LLM message entries in both start and finish functions.
- Updated message entry updates to only include reasoning messages, simplifying the logic and improving clarity.
- Added imports for various dashboard, metrics, and report tools to the analyst workflow.
- Updated the `runAnalystWorkflow` function to return a comprehensive output, including tool call results, charts created, and summary statistics.
- Implemented logic to extract tool calls and segment messages by user requests, improving the overall workflow output structure.
- Upgraded '@aws-sdk/client-s3' to version 3.873.0 across multiple packages.
- Introduced caching mechanisms for metric data retrieval in the getMetricDataHandler function.
- Updated API endpoints to support report_file_id for cache lookups and data retrieval.
- Enhanced error handling and logging for cache operations.
- Refactored related components to accommodate new caching logic and parameters.
- Updated DELETE, GET, and POST handlers to return structured response types (ShareDeleteResponse, ShareGetResponse, SharePostResponse) for better consistency and clarity.
- Refactored permission checks and report existence validation to streamline logic.
- Improved optimistic UI updates in the frontend for sharing reports, ensuring a smoother user experience.
- Added response schemas for sharing operations to the shared reports module.
- Updated GET reports endpoint to use `getReportsWithPermissions` for improved access control.
- Added support for filtering reports based on `shared_with_me` and `only_my_reports` flags.
- Introduced `getReportsWithPermissions` function to handle complex permission logic in the database layer.
- Enhanced report metadata retrieval to ensure proper access validation before fetching report details.
- Simplified the `GeneratingContent` component to display a static loading message.
- Updated `ReportPageController` to determine if a report is being generated based on the current message context.
- Adjusted report status handling in the delta creation process to maintain 'loading' status during streaming.
- Enhanced logic in the modify reports helper to ensure file status reflects loading during streaming and only updates to completed or failed when all edits are finalized.
- Modified database query to preserve input order for new messages during updates.
- Introduced `executeMetricQuery` utility for standardized metric SQL query execution with retry logic.
- Updated `getMetricDataHandler` and metric tool execution functions to utilize the new query utility, improving error handling and result processing.
- Added metadata generation from query results to provide detailed insights into data structure.
- Refactored SQL validation to ensure only read-only queries are executed, enhancing data integrity.
- Added '@buster/data-source' dependency to the server and pnpm lock files.
- Enhanced the getMetricDataHandler function to support versioning and data source integration.
- Updated the metric data query schema to include an optional version number parameter.
- Modified the API endpoint to accommodate the new versioning feature for metric data retrieval.
- Introduced a new endpoint to retrieve metric data with pagination at /metric_files/:id/data.
- Added MetricDataParamsSchema and MetricDataQuerySchema for request validation.
- Updated GetMetricDataRequestSchema to include an optional limit parameter for pagination.
Enhance SQL permission validation to include unauthorized columns in error messages. Update permission error message creation to handle both unauthorized tables and columns. Modify SQL execution functions to validate column permissions alongside table permissions, improving feedback for users lacking access.