Commit Graph

803 Commits

Author SHA1 Message Date
Nate Kelley e9fb9f0199
Merge pull request #681 from buster-so/big-nate-bus-1647-make-report-top-level-button
Big nate bus 1647 make report top level button
2025-08-07 23:46:16 -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
Nate Kelley 51f896d19e
Add title skeletons 2025-08-07 23:24:28 -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
Nate Kelley 064bc3e9c9
use client updates 2025-08-07 22:04:50 -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
Nate Kelley b6df224590
Merge pull request #677 from buster-so/big-nate-bus-1647-make-report-top-level-button
Big nate bus 1647 make report top level button
2025-08-07 17:32:31 -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 8987ca17a1
parallelToolCalls 2025-08-07 17:26:47 -06:00
Nate Kelley 0969a1cbd3
Merge branch 'staging' into cursor/add-report-menu-options-and-stub-functions-e636 2025-08-07 17:22:18 -06:00
Nate Kelley 216e610aa8
Added some additional safe parse element stuff 2025-08-07 17:21:38 -06:00
dal 8c8d1f37cc
big migration of tools 2025-08-07 17:10:24 -06:00
Nate Kelley 75950ae108
super nested list items 2025-08-07 17:01:45 -06:00
Nate Kelley 7a45e20903
Add more error handling for get report 2025-08-07 16:42:04 -06:00
dal 468cf44cca
done tool 2025-08-07 16:36:01 -06:00
Nate Kelley 04121ac987
report version handler 2025-08-07 16:17:22 -06:00
dal 91290530ba
tons of changes 2025-08-07 16:09:45 -06:00
dal 8e624a2c50
fixing migrations 2025-08-07 15:57:01 -06:00
dal be13ce221d
think and prep minimal effort 2025-08-07 14:58:59 -06:00
Nate Kelley 06aa5a8874
Update build 2025-08-07 14:15:25 -06:00
Nate Kelley 4006852efa
Add comment to content 2025-08-07 14:12:32 -06:00
Nate Kelley 1ef2983d15
Merge branch 'staging' into big-nate-bus-1617-create-report-page-and-file-page 2025-08-07 14:08:59 -06:00
Nate Kelley 09c96ab4f9
update agents 2025-08-07 14:07:20 -06:00
Nate Kelley 40a44cf1f9
Merge branch 'staging' into dallin-bus-1589-create-and-modify-report-tools 2025-08-07 14:05:44 -06:00
Nate Kelley 12d060cf58
Merge branch 'staging' into big-nate-bus-1617-create-report-page-and-file-page 2025-08-07 12:51:57 -06:00
Nate Kelley 6fc8d70b45
Fixed toolbar button 2025-08-07 12:44:46 -06:00
dal 290b698807
temp 1 2025-08-07 12:27:59 -06:00
dal 5bc3feb6f7
no temp 2025-08-07 12:23:15 -06:00
dal 9cafd4e0ff
remove max tokens 2025-08-07 12:22:16 -06:00
dal 92c4c1e257
Update AI package to use GPT-5 model and add OpenAI SDK dependency 2025-08-07 11:20:55 -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 a065612deb
Refactor generateChatTitle function to improve title generation and database updates. Introduce helper functions for LLM title generation and database record updates, enhancing code clarity and maintainability. 2025-08-06 22:58:25 -06:00
dal 5370b8cbf6
generate cfhat title 2025-08-06 22:56:27 -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 04ae594d3a
no need to have extra tool for tool call repair 2025-08-06 16:57:06 -06:00
dal 2b5efe790e
repiar tool try catch errors. 2025-08-06 16:52:21 -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 11c071ffe6
Refactor retry logic in analyst and think-and-prep steps to remove unnecessary error handling and improve healing strategy. Update tests to reflect changes in retry behavior and remove obsolete tests related to network error handling. 2025-08-05 22:56:02 -06:00
dal f17d81ba30
migration 2025-08-05 22:11:48 -06:00
dal a2d90f01a7
ai fallback on ai sdk v5 2025-08-05 18:24:32 -06:00
Nate Kelley 9ba4750a65
Adjust add metric modal 2025-08-05 17:05:27 -06:00
dal 69209e086c
Refactor edit reports functionality to support sequential edit operations with improved error handling and user feedback. Update schemas to include detailed operation results, including duration and error messages, enhancing overall report content management. 2025-08-05 14:45:55 -06:00
dal ba1da07473
Add new report content manipulation functions
Introduce 'replace-report-content' and 'append-report-content' exports to enhance report content management capabilities, allowing for more flexible report updates and modifications.
2025-08-05 14:30:22 -06:00
dal 2b926c3e91
Refactor report creation tool to support multiple report files with enhanced validation and error handling. Update schemas and processing logic to accommodate markdown content, ensuring robust file management and improved user feedback during report generation. 2025-08-05 14:10:09 -06:00
Nate Kelley 8e31d18066
Add markdown conversion function 2025-08-05 13:40:16 -06:00
dal a26242c46d
Enhance report handling by integrating markdown to PlateJS conversion in the report retrieval process, improving content formatting and error handling. Update report update schema to accept string content for markdown streaming. 2025-08-05 12:02:40 -06:00
dal b8ad52cf28
change the schema content to be text for markdown streaming 2025-08-05 11:38:43 -06:00
dal bb07af8cbd
route to different think and prep based on the context from the router 2025-08-05 11:15:59 -06:00
dal 5219cc0004
Enhance report generation capabilities by adding new report creation and editing tools, updating agent instructions to include report generation, and refining the analyst agent's workflow for improved narrative and analysis integration. 2025-08-05 11:09:55 -06:00
dal 03ccc51b5f
Refactor analysis type router to use a dedicated prompt formatting function and clean up code structure 2025-08-05 11:02:45 -06:00
dal d63aa94011
Implement analysis router enhancements and optimize report tools 2025-08-05 10:47:25 -06:00
dal db69b8bce5
Added in the analysis router using sonnet4 2025-08-05 10:47:05 -06:00
jacob-buster 0f78400dc4 Adding Router and Two Prompts 2025-08-05 10:28:19 -06:00
dal d55ce0db9c
Merge remote-tracking branch 'origin/staging' into dallin-bus-1589-create-and-modify-report-tools 2025-08-05 10:17:35 -06:00
Nate Kelley 1ef0d18c61
Report playground updates for fixed toolbar 2025-08-05 10:15:22 -06:00
dal fcbe1838a1
migrating over to sdk v5 2025-08-05 09:40:05 -06:00
dal 5883fc8762
migrating over the agent 2025-08-05 09:39:56 -06:00
dal 9214075cad
analyst agent is clean 2025-08-05 00:54:23 -06:00
Nate Kelley 44787f5478
Add additional asset queries 2025-08-04 22:13:09 -06:00
Nate Kelley 124523ade9
add a version number to reports 2025-08-04 21:37:23 -06:00
Nate Kelley 4a6c36c4b0
update report version logic 2025-08-04 21:10:03 -06:00
Nate Kelley 43af5fdb4d
add a fix for broken migrate 2025-08-04 20:45:30 -06:00
Nate Kelley 4196b8bcd8
type safe create list by date 2025-08-04 19:15:40 -06:00
Nate Kelley c6834bdfeb
update 2025-08-04 18:20:06 -06:00
Nate Kelley ffeee17365
move enum types 2025-08-04 18:04:32 -06:00
Nate Kelley 87ea87e963
collection and assets queries 2025-08-04 16:45:49 -06:00
jacob-buster ab441d17cb Improved Report Builder Prompt 2025-08-04 15:33:33 -06:00
Nate Kelley 1a955d786b
Get report 2025-08-04 15:25:22 -06:00
Nate Kelley b3b759bd26
addded collection query 2025-08-04 15:20:15 -06:00
Nate Kelley ddff671040
Update get report 2025-08-04 15:13:21 -06:00
Nate Kelley a3198003a3
get report 2025-08-04 15:05:18 -06:00
Nate Kelley 5f6524581b
created list database query 2025-08-04 14:21:49 -06:00
Nate Kelley aae819e151
create new schema for reports 2025-08-04 14:03:52 -06:00
Nate Kelley 1eb7201d5e
fix broken list type 2025-08-04 11:04:12 -06:00
Nate Kelley 75daab7f98
fix broken uni tests 2025-08-04 10:57:26 -06:00
Nate Kelley fad6670e83
fix type assertion
added safe guards around report_fule

pass generics through

fix list pass throughs
2025-08-04 10:06:59 -06:00
Nate Kelley 46f812d823
add linking 2025-08-03 00:01:21 -06:00
Nate Kelley 08d7014725
report asset layout 2025-08-02 23:47:27 -06:00
Nate Kelley 962b4edd8d
make list column more type safe 2025-08-02 23:08:28 -06:00
Nate Kelley 8eb1b276fd
update server type 2025-08-02 22:43:01 -06:00
Nate Kelley 55b66d866d
Part 1 of adding report to front end 2025-08-02 22:35:20 -06:00
Nate Kelley 3883248d8b
create report items container 2025-08-02 22:24:39 -06:00
Nate Kelley cf5d549af3
stubbed in report lists 2025-08-02 21:48:15 -06:00
Nate Kelley 7cf8b10c07
Added void type 2025-08-02 21:30:26 -06:00
Nate Kelley a4f960ff13
Update scheams for get list 2025-08-02 20:35:34 -06:00
Nate Kelley 7b3975c4ae
update schemas 2025-08-02 20:15:48 -06:00
Nate Kelley 13d814e980
Merge branch 'staging' into devin/BUS-1605-1754181219 2025-08-02 19:32:58 -06:00
Devin AI 884f5b7392 fix: use z.any() type casting to avoid TypeScript inference limits
- Replace ReportElementsSchema with z.any() cast to ReportElements type
- Avoid complex Zod schema inference that exceeds TypeScript serialization limits
- Maintain type safety through explicit type annotations while fixing CI compilation

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-08-03 01:28:11 +00:00
Devin AI c3657493f3 fix: restructure report schemas to avoid TypeScript inference limits
- Use BaseReportSchema.extend() pattern to break down complex type inference
- Separate content field extension to avoid 'type exceeds maximum length' errors
- Maintain same API contract while fixing CI compilation issues

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-08-03 01:26:50 +00:00
Devin AI abc801f10b feat: implement reports API endpoints for BUS-1605
- Add Report schema extending ReportElements with metadata fields
- Create GET /api/v2/reports endpoint with pagination
- Create PUT /api/v2/reports/:id endpoint for updates
- Use stubbed data responses following established patterns
- Follow modular route structure and Zod-first validation

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-08-03 00:38:50 +00:00
Nate Kelley 5a501d9630
Finalized floating toolbars 2025-08-02 17:20:37 -06:00
Nate Kelley f51a599f3d
finalized highlighter 2025-08-02 17:12:33 -06:00
Nate Kelley 6502d9487d
finalized toolist 2025-08-02 16:49:01 -06:00
Nate Kelley 3d726438fb
custom colors in dropdown 2025-08-02 16:22:17 -06:00
Nate Kelley 0778c8db4e
update elements to support date 2025-08-02 15:49:52 -06:00
Nate Kelley b8b39b3d93
finalized equation 2025-08-02 14:04:37 -06:00
Nate Kelley 1f8cdd1677
media embed element 2025-08-02 13:16:06 -06:00
Nate Kelley 76c87fb47c
update nodes 2025-08-02 11:54:42 -06:00
Nate Kelley a406e46ee8
Add additional components 2025-08-01 21:12:59 -06:00
Nate Kelley 2c9abed9bc
Update list dynamics 2025-08-01 20:33:23 -06:00
jacob-buster 65a1780b2c Further Reporting Improvements 2025-08-01 13:31:03 -06:00
dal f17df330d6
catch all for jacob testing 2025-07-31 15:34:27 -06:00
dal 14f34a7b41
Refactor report tools to include runtime context in parameters for create and edit functions 2025-07-31 15:30:32 -06:00
jacob-buster b17cc4695f Initial Report Builder Prompts 2025-07-30 12:22:50 -06:00
Nate Kelley cff68bd6ff
add suspense back in 2025-07-30 10:54:04 -06:00
dal 0450b8c350
fallback and the analyst agent 2025-07-29 22:07:11 -06:00
dal 81ebcc67ca
fallback and analyst agent changes 2025-07-29 21:35:01 -06:00
dal bfee540c5b
starting migration to ai sdk 5 2025-07-29 20:57:22 -06:00
dal 2f8622e5bb
grep search getting me? 2025-07-29 20:14:20 -06:00
Nate Kelley 3fba54a26c
Merge pull request #646 from buster-so/big-nate-bus-1520-make-report-component
Big nate bus 1520 make report component
2025-07-29 16:50:04 -06:00
dal a6ea5bef71
switched the tools to use commands instead of scripts where possible 2025-07-29 16:05:47 -06:00
Nate Kelley d46688bc5b
Added additional plugins 2025-07-29 15:48:01 -06:00
Nate Kelley be3e8b7adf
add a common markdown parser to server 2025-07-29 14:57:19 -06:00
dal f2a8388b86
feat: enhance repository tree output with current directory information
- Added functionality to retrieve and prepend the current working directory to the repository tree output, improving context for users.
- Updated runtime context to store the modified tree structure with location information.
- Removed outdated integration tests and streamlined the test suite for better maintainability.

This update enhances the usability of the repository tree feature by providing clearer context during execution.
2025-07-29 14:48:18 -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
jacob-buster 4eb7f09e73 Merge remote-tracking branch 'origin/staging' into dallin-bus-1589-create-and-modify-report-tools 2025-07-29 14:00:14 -06:00
Nate Kelley b6a8fa9eac
Update report-elements.ts 2025-07-29 13:59:19 -06:00
Nate Kelley c0a12cad88
Merge pull request #643 from buster-so/big-nate-bus-1520-make-report-component
Big nate bus 1520 make report component
2025-07-29 13:31:16 -06:00
Nate Kelley 991fbc799f
Update example-markdown.md 2025-07-29 13:30:35 -06:00
Nate Kelley 2c250f0a02
validation updates 2025-07-29 13:26:25 -06:00
Nate Kelley 7f328f39bf
make draggable blocks better 2025-07-29 12:47:09 -06:00
dal 47f413e111
fix: update access-controls tests for new cache structure
Updated dataset permission tests to expect the full DatasetAccessResult
object instead of just a boolean value in cache operations. This aligns
with the PR feedback to cache the complete access result including
accessPath and userRole.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 12:29:15 -06:00
dal 273fbc36c4
fix: address non-critical PR review comments
- Optimized N+1 query in get-permissioned-datasets.ts using inArray for batch lookup
- Removed unused bulkRemoveAssetPermissions import
- Fixed import organization in find-user-by-email.ts
- Updated CLAUDE.md to reflect tests are written and fixed API example
- Clarified TODO comment in lookup.ts to prevent potential infinite recursion

These are style and performance improvements that don't affect functionality.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 12:29:02 -06:00
dal 2e04af1785
fix: address additional critical PR review comments
- Fixed permission hierarchy: full_access (5) now correctly ranks higher than viewer (3)
- Removed 'querier' role from admin permission check as it was too permissive
- Added organizationId parameter to dashboard access checks to prevent unauthorized access
- Fixed public dashboard expiry date check to verify dates are in the future
- Added cycle detection for collection permissions to prevent infinite recursion
- Fixed bulk remove permissions to correctly filter by identityIds array
- Updated date comparison to use ISO string format for PostgreSQL timestamp columns

These fixes address critical security and logic issues identified in the PR review.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 12:28:58 -06:00
dal d078830a18
fix: address PR review comments for access control migration
- Fixed AssetTypeSchema to include all active asset types (excluding deprecated 'metric' and 'dashboard')
- Added missing 'restricted_querier' role to UserOrganizationRole type
- Fixed dataset access caching to store full result object including accessPath and userRole
- Updated count query to use SQL COUNT for better performance
- Fixed IdentityType consistency across dataset permissions
- Removed unused 'ne' import from list-asset-permissions.ts
- Updated comments to correctly reference 6 access paths instead of 5

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 12:28:52 -06:00
Nate Kelley ae2b21dcd9
update server markdown to platejs 2025-07-29 10:53:24 -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 60bc1d37a8
Revert "Revert "Add createReports and editReports tools to analyst-agent""
This reverts commit 67c2eea1f1.
2025-07-29 09:13:29 -06:00
dal 67c2eea1f1
Revert "Add createReports and editReports tools to analyst-agent"
This reverts commit 351689f93b.
2025-07-29 09:06:27 -06:00
dal 351689f93b
Add createReports and editReports tools to analyst-agent 2025-07-29 08:04:48 -06:00
dal 6d36edeeb2
moving tools over 2025-07-29 07:39:09 -06:00
Nate Kelley ad53f0ffe1
update code blocs 2025-07-28 22:19:11 -06:00
Nate Kelley 0ac9db4bf1
Added additional plugins 2025-07-28 20:14:37 -06:00
Nate Kelley d6ff3f8bcb
Add component level typesafety 2025-07-28 18:57:46 -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
jacob-buster ae0c4f048d Fixes for the filter tool + changes for data existence 2025-07-28 11:19:45 -06:00
dal 4bef4205f3
feat(access-controls): migrate Rust access control libraries to TypeScript
This PR migrates the Rust  and  libraries to TypeScript in the new  package.

## Changes

### New Access Controls Package
- Implemented complete asset permissions system with CRUD operations
- Added dataset permissions with all 5 access paths (admin, direct user, user→group, team→direct, team→group, org→default)
- Implemented cascading permissions (metrics inherit from dashboards/chats/collections)
- Added LRU caching to replace Redis (30-second TTL)
- Comprehensive test coverage (148 tests passing, 3 skipped pending createUser)

### Database Package Updates
- Fixed AssetType enum to include all 14 asset types
- Added missing database queries for permissions
- Fixed timestamp fields to use ISO strings
- Added getUserOrganizationsByUserId function
- Created organized query structure by table

### AI Package Updates
- Updated getPermissionedDatasets API calls to new format
- Changed property references from ymlFile to ymlContent
- Fixed all test mocks to match new API structure

### Trigger App Updates
- Updated to use new access controls API
- Fixed test mocks to match DatasetListResult structure
- Added proper type imports

### Server Shared Updates
- Added request/response types for access control endpoints
- Exported types for API consistency

## Testing
- All packages build successfully with turbo build:dry-run
- All tests pass with turbo test:unit
- Full type safety maintained throughout

## Migration Notes
- Drop-in replacement for Rust libraries
- Same permission model and roles
- Cache invalidation strategies implemented
- Soft delete pattern maintained

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-28 10:17:35 -06:00
dal a08f32fe1d
refactor: remove unused test setup files and helper functions to streamline testing process 2025-07-28 08:48:48 -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 a92c3a0b44
Merge remote-tracking branch 'origin/staging' into dallin/bus-1498-piece-together-docs-agent-with-instructions-tools-workflow 2025-07-25 19:10:19 -06:00
dal 57dd2895d2
dry run for these two bad boys 2025-07-25 19:00:07 -06:00
dal 2833c6bb0c
dry run 2025-07-25 18:29:35 -06:00
dal 523a6921b1
hotfix on sql dialect 2025-07-25 14:31:35 -06:00
dal 1f52bd9b69
Enhance asset chat handling by introducing `handleAssetChatWithPrompt` for processing user prompts alongside asset imports. Update `createChatHandler` to manage asset-only and asset+prompt scenarios, ensuring correct message order and preventing unnecessary analyst task triggers. Add tests for new functionality and refactor related services for improved clarity and maintainability. 2025-07-25 12:47:01 -06:00
Nate Kelley 5e6eb76f5b
move get asset types around 2025-07-24 17:41:36 -06:00
Nate Kelley b2cf1725fc
Merge branch 'staging' into devin/BUS-1494-1753276227 2025-07-24 17:21:04 -06:00
dal a6f8e041cd
fix 1 hr 2025-07-24 10:16:59 -06:00
dal 2c02b9189b
fix the 1 hr ttl 2025-07-24 10:16:19 -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 2d8890837a
add the extended cache beta header 2025-07-24 10:12:48 -06:00
dal 19f7256a27
switch system messages to leverage caching a bit better 2025-07-24 10:06:18 -06:00
dal 0c3994da00
hotfix: use v2 on chats 2025-07-24 09:22:30 -06:00
Nate Kelley af090d467e
fix tests 2025-07-23 22:53:54 -06:00
Nate Kelley e6d4062847
Merge branch 'staging' into big-nate/bus-1483-quick-win-for-filter-dashboard-drill-downexplore-metric 2025-07-23 22:45:54 -06:00
Nate Kelley 5eb43d0373
Add expanded threedot menu for menus 2025-07-23 22:33:16 -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
Devin AI ab374dc465 BUS-1524: Enhance error messages for tool availability and SQL wildcards
- Update createWorkflowAwareHealingMessage to include next workflow step info and transition descriptions
- Replace SQL wildcard error message with more user-friendly text
- Maintain existing function signatures and return structures

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-24 03:09:56 +00:00
dal 2140f08163
package renamo 2025-07-23 21:06:42 -06:00
dal 5f43b2d074
new structure for chat and values 2025-07-23 17:39:03 -06:00
Nate Kelley df3533ffc7
pass in better props 2025-07-23 17:18:45 -06:00
dal 482564528a
lint fixes 2025-07-23 16:56:32 -06:00
Nate Kelley 503c9fafa4
response types update 2025-07-23 16:56:17 -06:00
dal 42d1da5389
context fixes on messages 2025-07-23 16:56:06 -06:00
Nate Kelley a11ce3bfd2
Update responses and requests 2025-07-23 16:35:14 -06:00
Nate Kelley 1ea1d6c97c
move around some types 2025-07-23 16:29:00 -06:00
Nate Kelley 0601a3cd09
fix weird vite 7 error 2025-07-23 15:57:44 -06: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 cb9aac6a2f
added in the web search to the agent 2025-07-23 14:26:46 -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
Devin AI 341b97f351 feat: implement web search functionality for BUS-1501
- Add webSearch method to FirecrawlService with WebSearchOptions, WebSearchResult, and WebSearchResponse interfaces
- Export new types from web-tools package
- Create web-search-tool in AI package with proper input/output schemas
- Add comprehensive unit tests for webSearch method (16 tests total)
- Add tool tests with mocking (4 tests)
- Add integration tests (skipped when no API key)
- Update package exports and dependencies
- Default search limit: 5, default format: markdown, content scraping enabled
- Proper error handling using CompanyResearchError
- AI package has no direct Firecrawl dependency

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-23 17:43:13 +00:00
dal 4f3f8f3810
feat: implement documentation agent workflow with context initialization
- Added new steps for the documentation agent, including context initialization, todo creation, and main processing logic.
- Introduced schemas for input and output validation using Zod.
- Created a new workflow that orchestrates the steps for generating documentation based on user input.
- Enhanced the existing file structure to support the new documentation agent functionality.
2025-07-23 11:32:50 -06:00
dal b043bcd03d
refactor: rename bashExecute to executeBash for consistency
- Updated the export name in index.ts and adjusted imports in the corresponding test file.
- Modified the tool definition in bash-execute-tool.ts to reflect the new naming convention.
2025-07-23 10:55:03 -06:00
dal 21a89151d3
Merge pull request #600 from buster-so/devin/BUS-1487-1753225168
feat: implement wildcard validation for SQL security (BUS-1487)
2025-07-23 10:23:22 -06:00
dal 240986d7a0
instruction on execute sql 2025-07-23 10:16:49 -06:00
dal 77ffeab37a
Fix Snowflake adapter tests for lowercase column names
The Snowflake adapter implementation transforms column names to lowercase
for consistency, but the tests were expecting uppercase column names.
This commit updates the tests to match the implementation:

- Update test expectations to use lowercase column names (id, name)
- Fix hasMoreRows assertions to match implementation logic (only true when rowCount > limit)
- Ensure all Snowflake-related tests pass with the current adapter behavior

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 10:09:51 -06:00
dal d371a65524
Update Snowflake adapter tests and implementation for improved row handling
- Increased allowed variance in cached query time checks to accommodate network fluctuations.
- Corrected property name in test assertions to match expected lowercase format.
- Enhanced SnowflakeAdapter to transform column names to lowercase and adjusted logic for determining if more rows are available from the stream.
2025-07-23 10:01:34 -06:00
dal 03ba461dc4
Merge remote-tracking branch 'origin/staging' into devin/BUS-1495-1753278753 2025-07-23 09:43:18 -06:00
dal 5aa781a536
Add fetch body modification for tool_choice in Anthropics and Vertex models
- Implemented a custom fetch function in both anthropic.ts and vertex.ts to modify the request body.
- If tool_choice is present, added disable_parallel_tool_use to the request body.
- Included error handling for JSON parsing to ensure fallback to original request on failure.
2025-07-23 09:32:07 -06:00
dal f10627b005
Implement AbortError handling in streaming models
- Added tests for handling AbortError scenarios in both memory-safe and standard streaming models.
- Updated the FallbackModel to gracefully handle intentional aborts without retrying or causing errors.
- Ensured that the controller closes properly on AbortError and that no fallback to subsequent models occurs.
- Enhanced mock models to simulate AbortError conditions for comprehensive testing.
2025-07-23 09:01:08 -06:00
dal 5be55782fc
Update packages/ai/src/utils/memory/message-converters.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-23 08:29:47 -06:00
dal 87aa4f1993
Update packages/ai/src/tools/communication-tools/respond-without-asset-creation.test.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-23 08:29:40 -06:00
dal 3161c2b5e1
Update packages/ai/src/utils/memory/message-converters.test.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-23 08:29:20 -06:00
dal 5b0b6f360b
Update packages/ai/src/utils/database/format-llm-messages-as-reasoning.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-23 08:29:06 -06:00
dal b1be6aacc2
Update packages/ai/src/tools/communication-tools/respond-without-asset-creation.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-23 08:28:58 -06:00
dal b13d7c71fb
Update packages/ai/evals/agents/analyst-agent/metrics/think-and-prep-updates.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-23 08:28:38 -06:00
dal 6c52727b48
Update packages/ai/src/tools/communication-tools/respond-without-asset-creation.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-23 08:28:32 -06:00
Devin AI a44153e2ee fix: update permission validator tests to work with wildcard validation
- Replace SELECT * with explicit column names in permission validation tests
- Update CTE test to use explicit columns in final SELECT
- Maintain test intent while aligning with new wildcard security validation
- Ensure all tests pass with new wildcard blocking behavior

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-23 14:23:32 +00:00
Devin AI efd56f90a7 Fix max-rows-limiting test mocks for streaming implementation
- Update Snowflake adapter test to use streamResult: true
- Mock streamRows method with proper stream event handling
- Remove TypeScript error from destroyed property
- Verify streamRows called with correct start/end parameters

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-23 14:12:25 +00:00
dal 24cfab962d
refactor: rename respondWithoutAnalysis to respondWithoutAssetCreation
- Updated references across multiple files to reflect the new tool name.
- Adjusted unit tests and schemas to ensure compatibility with the renamed tool.
- Removed the old respondWithoutAnalysis tool implementation and its associated tests.
- Ensured backward compatibility for existing functionality using the old tool name.
2025-07-23 08:12:23 -06:00
dal 7ddc683104
Merge remote-tracking branch 'origin/blake/prompt-changes-think-and-prep' into dallin/bus-1122-reviewpush-the-think-and-prep-mode-updates 2025-07-23 07:59:52 -06:00
Devin AI 3ac9d8b159 fix: replace 'as any' with proper types to resolve linting violations
- Import Select from node-sql-parser for type safety
- Replace function parameter types with Record<string, unknown> for dynamic AST objects
- Use proper type conversions through 'unknown' for incompatible types
- Maintain existing wildcard validation functionality
- Resolve all 8 noExplicitAny linting violations

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-23 13:58:11 +00:00
dal 535777cc85
Merge pull request #604 from buster-so/dallin/bus-1488-try-switching-to-cloudflare-ai-gateway
feat: add Google Vertex AI and improve model handling
2025-07-23 07:57:20 -06:00
Devin AI 315a151a3f BUS-1495: Implement Snowflake adapter streaming with network-level row limiting
- Update query() method to use streamResult: true and stmt.streamRows()
- Add network-level row limiting with default 5000 row cap
- Process stream events (data, error, end) to build result set
- Maintain backward compatibility with existing adapter interface
- Update unit tests to mock streaming behavior
- Fix integration test imports and property names
- Preserve query caching by using original SQL unchanged

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-23 13:56:40 +00:00
dal 5f779a6fe1
logic fix and ci improvement 2025-07-23 07:54:31 -06:00
dal 584387b9c1
small test fixes for unit testing and such 2025-07-23 07:48:28 -06:00
Devin AI b38940939b feat: implement TypeScript wildcard validation for SQL security (BUS-1487)
- Add validateWildcardUsage function to sql-parser-helpers.ts
- Block SELECT * and qualified wildcards on physical database tables
- Allow wildcards on CTEs and derived tables
- Integrate wildcard validation into permission-validator.ts
- Add comprehensive tests for all wildcard validation scenarios
- Revert Rust SQL analyzer changes to focus on TypeScript implementation
- Fix CTE alias handling for qualified wildcards (e.g., SELECT cte_alias.*)

This prevents bypassing column-level permissions through wildcard queries
while maintaining backward compatibility with legitimate query patterns.

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-23 13:43:26 +00:00
Devin AI fdca380134 feat: implement wildcard validation in TypeScript sql-parser-helpers
- Add validateWildcardUsage() function to block SELECT * on physical tables
- Allow wildcards on CTEs but block on physical database tables
- Add comprehensive tests for wildcard validation scenarios
- Integrate wildcard validation into permission validator
- Supports all SQL dialects via node-sql-parser
- Prevents permission bypass through wildcard queries

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-23 13:34:56 +00:00
dal 2cd36e47e1
feat: add Google Vertex AI and improve model handling
- Added support for Google Vertex AI model version 2.2.27 in pnpm-lock.yaml and package.json.
- Introduced new model wrappers for Sonnet4 and Haiku35 with fallback logic.
- Updated various agents to utilize the new Sonnet4 model instead of the previous anthropicCachedModel.
- Enhanced error handling and retry logic in the fallback model implementation.
- Increased processing row limit in Snowflake query to 5000 for better performance.
- Added tests for new AI fallback models and their streaming capabilities.
2025-07-23 07:22:52 -06:00
Devin AI 5b40205275 Implement /api/v2/title endpoint for BUS-1494
- Add server-shared types for GetTitleRequest and GetTitleResponse with Zod validation
- Create database query functions for each asset type (chat, metric, collection, dashboard)
- Implement GET endpoint with zValidator middleware and exhaustive switch statement
- Add proper permission checks (publiclyAccessible OR organizationId match)
- Export new functions from database query index files
- Add title route to v2 API index
- Follow existing Hono API patterns with standardErrorHandler

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-07-23 13:14:58 +00:00
dal a6297182b1
Merge pull request #599 from buster-so/dallin/bus-1485-clarifications-and-todolist-runtime-context
Dallin/bus-1485-clarifications-and-todolist-runtime-context
2025-07-22 14:02:01 -06:00
dal a621f74910
feat: add new tools for managing todo lists and clarifications
- Export checkOffTodoList and updateClarificationsFile from their respective modules in the planning-thinking-tools directory.
2025-07-22 13:01:01 -06:00
Nate Kelley d0984835eb
update ai biome settings 2025-07-22 12:20:51 -06:00
dal 7337e11b25
move bash into its own folder 2025-07-22 12:15:59 -06:00
Nate Kelley c49bdd2426
fix some broken unit tests 2025-07-22 12:14:55 -06:00
dal 65a39041a8
renamed the sandbox context to the docs agent context and added in the clarification and the todos list 2025-07-22 12:14:43 -06:00
Blake Rouse b41c3d4743 Refactor think-and-prep agent tools and update scoring functions
- Renamed `respondWithoutAnalysis` to `respondWithoutAssetCreation` across multiple files to better reflect its purpose.
- Updated the `think-and-prep-instructions.ts` to clarify the agent's focus on asset creation instead of analysis.
- Added a new file `think-and-prep-updates.ts` to implement the analyst workflow with improved error handling and response management.
- Commented out legacy code in `example_scorers.ts` and `metric.eval.ts` for clarity and future reference.
- Adjusted the `sequential-thinking-tool` to remove unnecessary fields and streamline the thought processing logic.

This refactor enhances the clarity and functionality of the think-and-prep agent, aligning it with the current project goals.
2025-07-22 11:56:40 -06:00
jacob-buster bffd375339 fix golden dataset eval file 2025-07-22 11:28:32 -06:00
jacob-buster 51920afe02 Golden Dataset Eval run file 2025-07-22 11:27:29 -06:00
Devin AI 58b1213480 feat: remove duplicate outputMessages field and standardize on conversationHistory
- Remove outputMessages from schema definitions in analyst-workflow.ts, types.ts, format-output-step.ts, mark-message-complete-step.ts, and analyst-step.ts
- Update step implementations to remove outputMessages assignments and use only conversationHistory
- Update test files to replace all outputMessages references with conversationHistory
- Remove fallback logic that checked both fields
- Fix variable shadowing issue in think-and-prep-step.ts

Fixes BUS-1476

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 16:15:04 +00:00
dal d1e697a877
Merge pull request #596 from buster-so/devin/BUS-1475-1753197860
Fix regression: maintain metricFilesToDashboardFiles associations in modify-dashboards-file-tool
2025-07-22 09:43:00 -06:00
Devin AI 5386905e38 fix: remove explicit any types to resolve lint errors
- Replace (row: any) and (item: any) with TypeScript inference
- Let DashboardYml interface provide proper typing
- Resolves noExplicitAny lint rule violations

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 15:37:21 +00:00
Devin AI 4fa1a66fa2 fix: maintain metricFilesToDashboardFiles associations in modify-dashboards-file-tool
- Add missing import for metricFilesToDashboardFiles table and drizzle operators
- Implement association management within existing transaction block
- Extract metric IDs from updated dashboard content and compare with existing associations
- Upsert records for added metrics with deletedAt set to null
- Soft delete records for removed metrics with deletedAt timestamp
- Follow same pattern established in create-dashboards-file-tool.ts
- Fix regression affecting public dashboard metrics inheritance

Fixes BUS-1475

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 15:24:21 +00:00
dal 464d3265d4
ls file working now 2025-07-22 09:23:11 -06:00
dal 51a1541abc
Merge branch 'staging' into devin/BUS-1467-1753083441 2025-07-22 09:13:43 -06:00
dal fc8ac85280
Merge branch 'staging' into devin/BUS-1465-1753085075 2025-07-22 09:12:05 -06:00
dal e1a60bdf11
build fixes 2025-07-22 09:11:36 -06:00
Devin AI 0c39a552ed Merge branch 'devin/BUS-1467-1753083441' of https://git-manager.devin.ai/proxy/github.com/buster-so/buster into devin/BUS-1467-1753083441 2025-07-22 14:53:19 +00:00
Devin AI fe77b4e3a8 fix: add optional chaining to ls_files tests for TypeScript strict null checks
- Follow patterns from read-files and edit-files tests
- Use optional chaining (?.) for array access to handle 'Object is possibly undefined' errors
- Fixes CI TypeScript compilation errors on lines 54, 55, 56, 65, 141, 142, 143

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:52:58 +00:00
dal 43f88dd3a4
Merge pull request #580 from buster-so/devin/BUS-1468-1753084167
feat: implement idle tool for agent system (BUS-1468)
2025-07-22 08:44:59 -06:00
Devin AI ce9de9e4c9 fix: resolve remaining TypeScript errors
- Add nullish coalescing operators for optional boolean properties
- Fix 'Object is possibly undefined' errors in unit tests
- Ensure type compatibility between Zod schema and helper functions

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:30:03 +00:00
Devin AI 6a11f76490 fix: resolve import path issues in bash_execute tool
- Fix import path for sandbox-context from '../../../' to '../../'
- Resolves CI failures: 'Cannot find module ../../../context/sandbox-context'
- Fixes type resolution: sandbox variable now resolves to Sandbox type
- All unit tests pass (8/8) and lint passes locally

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:28:28 +00:00
Devin AI 116393bfb4 fix: resolve TypeScript errors and complete restructuring
- Add all required boolean properties to unit test configurations
- Fix null check issues in test assertions
- Align helper function parameter types with Zod schema output
- Remove nullish coalescing operators since properties are now required
- Update integration test imports to match read-files-tool pattern

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:27:03 +00:00
Devin AI 9be8174945 Merge branch 'devin/BUS-1466-1753084880' of https://git-manager.devin.ai/proxy/github.com/buster-so/buster into devin/BUS-1466-1753084880 2025-07-22 14:15:07 +00:00
Devin AI bcaf303b55 fix: add comment to sandbox context check for clarity
- Add descriptive comment before sandbox availability check
- Matches pattern used in other working file tools
- Preparing to fix type resolution issue where sandbox resolves to unknown

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:14:41 +00:00
Devin AI e27a5ce0c5 fix: update bash-execute-tool tests to match working file tool patterns
- Use proper RuntimeContext<SandboxContext> type
- Add comprehensive mocking for @buster/sandbox and functions
- Test both sandbox and local execution paths
- Handle JSON parse errors and execution failures
- Follow patterns from create-files-tool tests

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:10:38 +00:00
Devin AI afd636d980 fix: complete restructuring with proper type compatibility
- Fix all TypeScript errors by making boolean properties optional
- Use nullish coalescing for default values consistently
- Complete restructuring to match read-files-tool pattern exactly
- All TypeScript errors resolved, ready for CI

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:06:57 +00:00
Devin AI fd7361a554 fix: resolve final TypeScript errors and complete restructuring
- Fix type compatibility between Zod schema and helper functions
- Add explicit type transformation for boolean properties
- Ensure all grep options have proper default values
- Complete restructuring to match read-files-tool pattern exactly
- All TypeScript errors resolved, ready for CI

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:06:57 +00:00
Devin AI 7f1b52a4b2 fix: resolve all TypeScript errors and complete restructuring
- Fix import path for runTypescript to use direct file path
- Make all boolean properties optional in helper function types
- Use nullish coalescing for default values consistently
- Complete restructuring to match read-files-tool pattern exactly
- All TypeScript errors resolved, ready for CI

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:06:57 +00:00
Devin AI 76ff51cbd9 fix: complete restructuring to match read-files pattern
- Fix import path for runTypescript from @buster/sandbox
- Align type signatures between Zod schema and helper functions
- Ensure consistent boolean property handling
- Complete restructuring following read-files-tool pattern
- All TypeScript errors resolved

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:06:57 +00:00
Devin AI f6c2dca523 fix: resolve TypeScript errors in restructured grep-search-tool
- Fix import path for runTypescript from @buster/sandbox
- Use any types temporarily to resolve circular import issues
- Ensure proper default handling for optional grep options
- Complete restructuring to match read-files-tool pattern

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:06:57 +00:00
Devin AI 0046ffa196 refactor: restructure grep_search to match read-files pattern
- Create grep-search-tool/ folder structure following read-files pattern
- Split into main tool file and helper functions
- Use SandboxContext for sandbox execution via runTypescript
- Generate TypeScript code with CommonJS syntax for sandbox
- Implement fallback to local execution when sandbox unavailable
- Maintain all existing grep functionality and options
- Update tool export in index.ts

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:06:42 +00:00
Devin AI 8383257b58 remove idle tool from analyst-agent integration
- Remove idleTool import and usage from analyst-agent.ts
- Keep only idle-tool.ts in communication-tools and its export
- No agent integration per user feedback
- Minimal TypeScript-only implementation

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-22 14:00:18 +00:00