- 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.