Commit Graph

135 Commits

Author SHA1 Message Date
dal ff8530a08f
a little reorg 2025-08-08 11:51:06 -06:00
dal dada5cb0eb
refactor: remove unused dependencies and clean up visualization tools
- Deleted references to the `@mastra/core` package from various configuration files.
- Removed multiple unused test files and helper functions related to visualization tools, including axis validation and version history management.
- Cleaned up import statements for better organization and readability.

These changes streamline the codebase by eliminating unnecessary dependencies and improving maintainability.
2025-08-08 11:48:53 -06:00
dal 7f1bfc3bc5
fix: improve error handling and refactor test mocks for SQL execution
- Added a check to ensure the DataSource is available before executing SQL statements, throwing an error if not.
- Refactored test mocks to use `vi.mocked` for better clarity and consistency in handling DataSource connection errors.
- Removed unnecessary whitespace for cleaner code.

These changes enhance the robustness of SQL execution and improve the reliability of related tests.
2025-08-08 09:36:26 -06:00
dal 1d92be2a71
more fixes 2025-08-08 08:06:55 -06:00
dal 283d74ca09
tons of cleanup 2025-08-08 08:03:22 -06:00
dal 1b70c6e2b3
fix: clean up imports and enhance dashboard file handling
- Removed duplicate import of ModelMessage in create-dashboards-execute.ts for clarity.
- Updated createDashboardsReasoningMessage function to conditionally include version_number only if defined, improving the handling of dashboard file properties.

All changes aim to streamline the code and enhance maintainability.
2025-08-08 07:14:13 -06:00
dal c08fdbc30f
ok now i actually removed them 2025-08-08 07:10:50 -06:00
dal a3a078c8cd
removed unnecessary streaming tools for the file tools 2025-08-08 07:10:42 -06:00
dal 4e19eddbb8
communication and cleanup 2025-08-08 06:55:54 -06:00
dal c432df1326
fix: update list-files-tool streaming test expectations to match actual implementation
Updated test expectations in list-files-tool-streaming.test.ts to match the actual structure of MessageEntry objects being passed to updateMessageEntries. The implementation passes complete objects with all properties rather than partial objects, and args are serialized as JSON strings.

Changes:
- Updated test expectations to check for complete MessageEntry objects instead of partial matches
- Fixed args field to expect JSON strings instead of objects
- Added missing properties like type, result, and started_at
- Fixed state.paths expectations for partial JSON parsing scenarios

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-07 23:39:30 -06:00
dal 8c2c94b31c
feat: enhance file selection and tool creation in communication tools
- Introduced new file selection logic to extract and prioritize files based on their status and relationships.
- Added helper functions for failure indicator checks and file extraction from reasoning history.
- Updated the communication tools to utilize the new file selection methods, improving response message creation.
- Refactored file tools to follow a consistent factory pattern for better maintainability and clarity.

All tests updated and passing for new functionality.
2025-08-07 23:22:29 -06:00
dal b2e5d702cc
feat: refactor create-files-tool to follow factory pattern
- Update create-file-tool.ts to use factory function from create-files-tool.ts
- Fix docs-agent to properly use factory functions for file tools
- Remove experimental_context usage in favor of proper context passing
- Fix lint issues with type definitions in transform helper
- All tests passing for create-files-tool functionality

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-07 23:17:55 -06:00
dal d052f56f86
execute sql and sequential tests 2025-08-07 22:21:20 -06:00
dal ca2d3e940c
Refactor SQL execution tools to improve code readability and maintainability. Consolidate function parameters into single lines and enhance error handling in execution results. Update imports for consistency across files. 2025-08-07 22:10:11 -06:00
dal ee99a835c3
Refactor Analyst and Think-and-Prep agents to enforce required messageId field in options schema. Update tool creation logic to streamline context handling and enhance error reporting. Introduce new execute-sql tool with improved state management and SQL execution capabilities, including delta processing and message updates. Remove deprecated execute-sql functionality and related tests. 2025-08-07 22:09:58 -06:00
dal affa91ce4f
done with communication tools 2025-08-07 21:38:43 -06:00
dal f3436f7a04
Remove deprecated dashboard and metrics tools, including associated tests. Refactor the create and modify dashboard/metrics execution logic to streamline processing and enhance error handling. Update schemas and validation logic to ensure consistency across tools. 2025-08-07 20:36:48 -06:00
dal ead86c5d39
Refactor agent tools to enhance error handling and state management. Update healing message structure in Analyst and Think-and-Prep agents to provide more detailed tool availability information. Introduce state management for streaming in Modify and Create dashboards/metrics tools, improving database interaction and processing feedback. Remove deprecated tools and streamline tool creation processes. 2025-08-07 17:31:13 -06:00
dal 8c8d1f37cc
big migration of tools 2025-08-07 17:10:24 -06:00
dal 468cf44cca
done tool 2025-08-07 16:36:01 -06:00
dal 91290530ba
tons of changes 2025-08-07 16:09:45 -06:00
dal 07eb5aa0c9
ok going to make tools follow factory pattern and prepping to move chunk processor to be tool specific 2025-08-07 09:58:28 -06:00
dal 1d545a009c
healing messages 2025-08-06 17:57:04 -06:00
dal aaae50a32f
remove useless tests 2025-08-06 17:21:50 -06:00
dal 218bdf8eb3
Refactor Docs Agent to include additional context parameters and streamline SQL execution. Introduce user, chat, data source, organization, and optional message IDs in the DocsAgentOptions schema. Update createDocsAgent function to utilize the new context structure. Remove obsolete parseStreamingArgs function from execute-sql-docs-agent as AI SDK v5 handles streaming parsing internally. 2025-08-06 17:10:25 -06:00
dal d211a2cd25
tons of ai sdk v5 changes 2025-08-06 16:52:05 -06:00
dal 74400c6b9d
Enhance analyst agent integration by adding user and organization context. Update the analyst agent to include additional parameters for user and organization IDs, and refactor tool integration to utilize new dashboard and metrics functions. Remove unused context injection helper to streamline the codebase. 2025-08-06 14:31:37 -06:00
dal f694c534c7
Refactor analyst agent tools integration and SQL execution context. Update the analyst agent to utilize new tool functions for metrics and dashboards, and modify SQL execution to accept context directly from the analyst agent options, enhancing clarity and maintainability. 2025-08-06 14:31:30 -06:00
dal 6b72213992
Update dependencies to stable versions and refactor analyst agent context. Replace beta versions with specific stable versions in pnpm-lock and package.json. Adjust context handling in various files to improve clarity and maintainability. Remove unused DocsAgentContext and related schemas. 2025-08-06 11:47:12 -06:00
dal f17d81ba30
migration 2025-08-05 22:11:48 -06:00
dal 0450b8c350
fallback and the analyst agent 2025-07-29 22:07:11 -06:00
dal 2f8622e5bb
grep search getting me? 2025-07-29 20:14:20 -06:00
dal a6ea5bef71
switched the tools to use commands instead of scripts where possible 2025-07-29 16:05:47 -06:00
dal 3b1354ddff
refactor: enhance docs agent execution with abort handling and improved error management
- Introduced an AbortController to manage idle tool execution, allowing for graceful aborting of the documentation process.
- Moved tracking variables outside the try block for better state management.
- Updated error handling to gracefully manage abort scenarios, ensuring clear logging and returning final state information.
- Adjusted integration tests to reflect changes in the docs agent workflow, improving overall robustness and reliability.

This update enhances the responsiveness of the docs agent during execution and improves error handling for better user experience.
2025-07-29 14:32:31 -06:00
dal b31f856c3b
refactor: enhance file tools with sandbox execution and error handling improvements
- Updated file tools to generate CommonJS code for sandbox execution, improving robustness and flexibility.
- Refactored bash-execute-tool, create-files-tool, delete-files-tool, edit-files-tool, grep-search-tool, ls-files-tool, and read-files-tool to handle command arguments as JSON, enhancing error handling and output consistency.
- Improved integration tests to validate new execution patterns and error scenarios, ensuring comprehensive coverage across all tools.
- Enhanced error messages for better clarity during execution failures.

This update streamlines the execution process and enhances the overall reliability of file tools.
2025-07-29 14:21:13 -06:00
dal 54c7843b15
refactor: convert file-tools integration tests to concurrent execution
- Update all 7 file-tools integration tests to use concurrent execution
- Create individual sandboxes per test instead of shared beforeAll/afterAll
- Use try/finally blocks for proper sandbox cleanup
- Add 65-second timeouts to accommodate sandbox operations
- Replace it.skipIf pattern with (hasApiKey ? it.concurrent : it.concurrent.skip)
- Improves test performance by enabling parallel execution

Affected tools:
- bash-tool
- create-files-tool
- delete-files-tool
- edit-files-tool
- grep-search-tool
- ls-files-tool
- read-files-tool

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 09:29:20 -06:00
dal 6d36edeeb2
moving tools over 2025-07-29 07:39:09 -06:00
dal ed9ab33b35
feat: enhance file tools to support base64 encoding for command arguments
- Updated bash-execute-script, create-files-script, edit-files-script, and grep-search-script to handle base64 encoded JSON arguments, improving robustness against data corruption.
- Refactored corresponding tool scripts to encode command parameters as base64 before execution.
- Enhanced integration tests to validate the new base64 encoding functionality across various file tools.
2025-07-28 16:55:52 -06:00
dal 3b706a73b3
refactor: streamline file tool scripts and enhance error handling
- Removed sequential test execution settings from vitest configuration to improve performance.
- Updated bash-execute-script to handle missing arguments and improved error handling for JSON parsing.
- Refactored create-files-tool to process file creation sequentially, enhancing directory management and error reporting.
- Enhanced read-files-tool to return structured error messages when no file paths are provided.
- Updated grep-search-tool to accept raw ripgrep commands, simplifying the command structure and improving output handling.
- Removed outdated test files and integrated new test cases for improved coverage and validation across file tools.
2025-07-28 16:22:12 -06:00
dal a41d5c944b
feat: implement ls-files functionality with comprehensive tests
- Introduced the `ls-files-script` module to handle file listing with various options (detailed, all, recursive, human-readable).
- Added integration tests for the `ls-files-script` to validate functionality across different scenarios, including handling of hidden files and non-existent paths.
- Removed the previous `ls-files-tool` integration tests to streamline the testing process and focus on the new implementation.
- Updated the `ls-files-tool` to utilize the new `ls-files-script` for execution and code generation.
- Enhanced error handling and output parsing for improved robustness.
2025-07-28 14:57:05 -06:00
dal 05c309b0c1
refactor: convert create-files-tool to script pattern
- Rename create-file-functions.ts to create-files-script.ts
- Implement script pattern matching ls-files-tool structure
- Update create-file-tool.ts to execute script via sandbox
- Add comprehensive unit tests for script functionality
- Add integration tests for script execution
- Update existing tests to work with new pattern

The create-files-tool now follows the established script pattern where
the script handles the core file creation logic and the tool serves as
a medium that executes the script in a sandboxed environment.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-28 13:54:03 -06:00
dal 786e4be791
feat: add integration tests for file tools and enhance todo list functionality
- Introduced integration tests for various file tools including bash execution, file creation, deletion, editing, and listing.
- Enhanced the check-off todo list tool to support multiple items and improved error handling for non-existent tasks.
- Updated test cases to cover edge scenarios and ensure robust validation across all tools.
- Increased timeout for the docs agent workflow to accommodate longer-running tests.
2025-07-28 12:41:07 -06:00
dal 2f4aeba817
feat: enhance documentation and testing capabilities for docs agent workflow
- Added section in CLAUDE.md for direct database access during integration testing.
- Updated `maxSteps` in `docs-agent` to allow for more complex tasks.
- Improved validation in `docs-agent-context` for sandbox instances.
- Enhanced `create-docs-todos` step to handle todos more effectively.
- Introduced comprehensive integration tests for the docs agent workflow, covering various scenarios and edge cases.
- Added test helpers for creating mock dbt projects and managing sandboxes.
- Implemented error handling and logging improvements in the workflow execution process.
2025-07-28 11:56:59 -06:00
dal c9b52ccdb8
Refactor CLAUDE.md for improved build and linting instructions; update context handling in workflow and schemas. Enhance test validation for clarification questions and adjust output structure in related tests. 2025-07-26 12:43:25 -06:00
dal ed77fb4409
Merge remote-tracking branch 'origin/staging' into dallin/bus-1498-piece-together-docs-agent-with-instructions-tools-workflow 2025-07-24 10:13:47 -06:00
dal 7cd3aed6fa
Refactor import statements and enhance error messages in SQL validation tests
- Simplified import statements in web-search-tool.ts and web-search-tool.test.ts for better readability.
- Updated error messages in sql-parser-helpers.test.ts to provide clearer feedback regarding wildcard usage on physical tables.
2025-07-23 21:46:51 -06:00
Devin AI ae9f0c4f7e Fix incorrect import paths from '@buster-tools/web-tools' to '@buster/web-tools'
- Update package.json dependencies in ai and trigger packages
- Fix import statements in web-search-tool.ts and web-search-tool.test.ts
- Update pnpm-lock.yaml to reflect correct package references
- Resolves CI build failure due to missing module '@buster-tools/web-tools'

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-24 03:20:46 +00:00
dal fb2e2c529c
feat: enhance documentation agent with SQL execution and context management
- Introduced executeSqlDocsAgent tool for executing SQL queries specific to documentation tasks.
- Updated DocsAgentContext to include dataSourceId and improved context management.
- Refactored context initialization and workflow steps to utilize new context structure.
- Enhanced createDocsTodosStep to generate comprehensive TODO lists based on user input.
- Improved error handling and logging throughout the documentation agent workflow.
- Updated tests to reflect changes in context keys and ensure proper functionality.
2025-07-23 15:53:18 -06:00
dal 2fe23084a5
Merge remote-tracking branch 'origin/staging' into dallin/bus-1498-piece-together-docs-agent-with-instructions-tools-workflow 2025-07-23 14:26:02 -06:00
dal 9e67fbfaae
refactor: update web search tool integration tests and improve code formatting
- Changed test query from 'OpenAI GPT' to 'Buster Data' with an increased limit of 10.
- Reorganized import statements in web-search-tool.ts for better readability.
- Enhanced formatting in permission-validator.test.ts for improved code clarity.
2025-07-23 13:12:56 -06:00