Commit Graph

4570 Commits

Author SHA1 Message Date
dal 6d148947c9
Merge pull request #574 from buster-so/devin/BUS-1462-1753076609
feat: add GitHub integrations table for BUS-1462
2025-07-21 00:05:19 -06:00
Devin AI 93e69e84c5 resolve: merge conflict in index.ts - include both editFiles and readFiles exports
Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-21 06:05:13 +00:00
dal 69f3843695
Merge pull request #560 from buster-so/devin/BUS-1448-1752896052
feat: implement read_files tool for BUS-1448
2025-07-21 00:01:03 -06:00
dal 0cb7e2a7cf
feat: enhance file reading capabilities with sandbox support
- Added support for reading files in a sandbox environment using @buster/sandbox.
- Introduced new file reading tool with async operations and error handling.
- Implemented integration tests for sandbox and local execution scenarios.
- Updated package.json and pnpm-lock.yaml to include new dependencies.

Co-Authored-By: [Your Name] <your.email@example.com>
2025-07-20 23:59:55 -06:00
Devin AI 9b9330982a fix: address PR review comments for GitHub integrations
- Make installationId and githubOrgId NOT NULL (required GitHub API fields)
- Change user foreign key to ON DELETE SET NULL to prevent blocking user deletion
- Add index on github_org_id for better query performance
- Maintain unique constraint on organization_id + installation_id pair

Addresses greptile-apps review comments on PR #574

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-21 05:59:39 +00:00
Devin AI 45749b881b fix: replace manual migration with properly formatted Drizzle migration
- Remove manual migration and use proper Drizzle format
- Update journal metadata to track migration 0084
- Follow exact pattern from auto-generated migrations
- Maintain all GitHub integrations table functionality

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-21 05:49:00 +00:00
Devin AI 6bc6602028 feat: add GitHub integrations table and migration
- Add githubIntegrationStatusEnum with states: pending, active, suspended, revoked
- Add githubIntegrations table with GitHub App architecture fields:
  - installationId, appId for GitHub App integration
  - githubOrgId, githubOrgName for GitHub organization info
  - tokenVaultKey, webhookSecretVaultKey for secure token storage
  - repositoryPermissions JSONB field for access control
- Add foreign key constraints to organizations and users tables
- Add indexes for organizationId and installationId for query performance
- Add unique constraints for tokenVaultKey and org-installation pairs
- Create migration 0084_github_integrations.sql following Drizzle pattern

Implements BUS-1462: GitHub integrations table for tracking GitHub App integrations

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-21 05:45:51 +00:00
dal 06249f5e8a
rearrange and get some things right for the initial read file tool 2025-07-20 23:04:11 -06:00
dal 7e1adbec2a
no dist 2025-07-20 22:45:50 -06:00
dal 2abd971be6
Merge branch 'staging' into devin/BUS-1448-1752896052 2025-07-20 22:45:17 -06:00
Devin AI ff0151a1e5 perf: optimize read_files tool with parallel processing
- Convert file operations from sequential to parallel using Promise.all()
- Use async/await with fs.promises for better performance
- Maintain error handling and 1000-line truncation functionality
- All unit tests continue to pass (10/10)

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-21 04:40:17 +00:00
Nate Kelley 53bfc42902
ensure list items are aligned correctly 2025-07-19 23:27:02 -06:00
Nate Kelley b087d45a1b
Merge branch 'staging' into big-nate/bus-1376-make-streaming-individual-words-use-the-streaming-affect 2025-07-19 22:58:11 -06:00
Nate Kelley 34e128874a
Remove height animation from reasoning 2025-07-19 22:57:58 -06:00
Nate Kelley f96d4f42c6
fix markdown with undefiend classes 2025-07-19 22:57:38 -06:00
Nate Kelley adf6d06995
pre cannot be a decendant of p 2025-07-19 22:31:47 -06:00
Nate Kelley 3a78dc0514
Merge branch 'staging' into big-nate/bus-1376-make-streaming-individual-words-use-the-streaming-affect 2025-07-19 22:27:33 -06:00
Nate Kelley a9f410f3af
Merge pull request #572 from buster-so/big-nate/bus-1461-prefetch-chats-as-well-as-dashboards-metric_files
prefetch chats route as well
2025-07-19 22:27:07 -06:00
Nate Kelley 2185d4c478
prefetch chats route as well 2025-07-19 22:26:48 -06:00
Nate Kelley 620ff75876
devin improvements to styles 2025-07-19 22:17:12 -06:00
Devin AI cd90bdd998 fix: revert icon barrel exports to maintain compatibility
Reverted explicit icon exports back to export * pattern to ensure
all icon imports continue working while maintaining bundle optimization
benefits from other changes.

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-07-19 16:34:22 +00:00
Devin AI 4b21570145 feat: optimize web app bundle size
- Fix Next.js config to enable bundle analyzer
- Replace barrel file exports with explicit named exports for better tree-shaking
- Create dynamic Chart.js component to reduce initial bundle size
- Optimize icon library exports to only include commonly used icons
- Update imports to use dynamic loading for Chart.js components

Bundle analyzer reports generated showing optimization impact.
Addresses BUS-1459.

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-07-19 16:19:11 +00:00
dal f90081faf4
Merge pull request #570 from buster-so/staging
Hotfix: concurrency
2025-07-18 23:34:29 -06:00
dal d3e2577d13
New polling logic 2025-07-18 23:30:28 -06:00
dal 18dde9e40b
concurrency and queuing 2025-07-18 23:19:48 -06:00
dal ac4cfc314b
Merge pull request #569 from buster-so/dallin/bus-1458-queue-messages-and-filter-out-duplicates
Enhance task triggering by adding concurrency key for sequential processing
2025-07-18 23:02:18 -06:00
dal 6e65bec499
Enhance task triggering by adding concurrency key for sequential processing
- Updated `createChatHandler` to include a `concurrencyKey` when triggering the `analyst-agent-task`, ensuring tasks are processed sequentially per chat.
- Adjusted related test cases to verify the inclusion of the `concurrencyKey`.
- Integrated the `concurrencyKey` in the `slackAgentTask` to manage task queuing and notify users when tasks are queued.
2025-07-18 23:01:32 -06:00
dal 8daceae2e3
Add duplicate message check in slack-agent-task
- Introduced a new function `checkForDuplicateMessages` in the database queries to verify if a message already exists in the same chat.
- Integrated the duplicate check in the `slackAgentTask` to prevent processing of duplicate messages, enhancing task efficiency and logging warnings for duplicates detected.
2025-07-18 22:53:02 -06:00
dal 61666b2943
Merge pull request #568 from buster-so/staging
Hotfix
2025-07-18 22:37:33 -06:00
dal 6ab256004c
Merge pull request #567 from buster-so/dallin/bus-1456-stop-button-in-buster-not-working-need-to-debug-and-figure
Add trigger run id to the message during slack task
2025-07-18 22:37:02 -06:00
dal 0e46d64683
trigger run id being added during the slack agent task 2025-07-18 22:34:02 -06:00
dal 6f707a7552
Merge pull request #566 from buster-so/staging
Release
2025-07-18 22:21:32 -06:00
dal a6c3474464
Merge pull request #564 from buster-so/devin/BUS-1457-1752898251
Replace 'Unknown' user name fallback with email address (BUS-1457)
2025-07-18 22:16:55 -06:00
Devin AI a0dc9e03d2 Fix syntax highlighting flicker by replacing PrismAsyncLight with Shiki
- Replace react-syntax-highlighter with Shiki for synchronous highlighting
- Convert existing light theme to Shiki format in shiki-light-theme.ts
- Eliminate flicker in reasoning slide-out component
- Maintain compatibility with existing SyntaxHighlighter usage
- Remove react-syntax-highlighter dependencies from package.json

Fixes BUS-1445

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-07-19 04:14:17 +00:00
Devin AI 9896b5cc90 Replace 'Unknown' user name fallback with email address
- Update Rust handlers to use user_email instead of 'Unknown' fallback
- Add user_email field to MessageWithUser and ChatWithUser structs
- Update database queries to select user email field
- Update TypeScript chat-helpers to use email fallback
- Maintain final fallback to 'Unknown'/'Unknown User' if email is null

Fixes BUS-1457

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-19 04:12:13 +00:00
Devin AI 20bf6d8bf9 fix: address code review suggestions
- Use consistent regex for both validation and replacement
- Add reasonable upper limit (100) for bulk operations to prevent memory issues

Addresses greptile-apps bot feedback on PR #561

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-19 03:57:45 +00:00
Devin AI 24aaa23a2f feat(BUS-1376): Replace AppMarkdown with AppMarkdownStreaming and fix animation issues
- Replace AppMarkdown with AppMarkdownStreaming in ChatResponseMessage_Text and ReasoningMessage_Text
- Map props correctly: markdown → content, showLoader → isStreamFinished
- Add wrapper divs to handle className prop
- Adjust spring physics in ReasoningMessageSelector to prevent height overshoot:
  - Reduce stiffness from 400→300 and increase damping from 32→40 for animate
  - Reduce stiffness from 450→350 and increase damping from 35→45 for exit
- Improves streaming text animation smoothness and prevents height expansion beyond content

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-07-19 03:57:22 +00:00
Devin AI 3d632c96ad feat: implement redirect-after-login for BUS-1455
- Update middleware to capture original URL and add as 'next' query param
- Modify layout redirect to include redirect parameter
- Update LoginForm to extract and pass redirect to all auth methods
- Add redirect parameter support to all sign-in functions
- Implement URL validation with fallback to home page
- Update OAuth callback to handle redirects consistently
- Support all authentication methods: email/password, Google, GitHub, Azure

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-07-19 03:56:19 +00:00
Devin AI 79336d5d9d feat(BUS-1447): Add useTrackAndUpdateNewMessages hook to track external message insertions
- Create new hook to detect message insertions from external sources like Slack
- Configure useShapeStream with 'insert' operations only
- Update chat message_ids array when new messages are detected
- Integrate hook into useChatStreaming alongside existing tracking hooks
- Handle message ordering and deduplication with uniq
- Fix TypeScript errors by ensuring id property is included in onUpdateChat calls

Co-Authored-By: nate@buster.so <nate@buster.so>
2025-07-19 03:47:42 +00:00
Devin AI 754de61bdf feat: implement edit_files tool for find-and-replace operations
- Add edit_files tool in packages/ai/src/tools/file-tools/
- Implement find-and-replace with exact single occurrence validation
- Support bulk operations with individual success/failure tracking
- Handle both relative and absolute file paths
- Return detailed error messages for various failure scenarios
- Follow established patterns using createTool and wrapTraced
- Add comprehensive unit tests with 11 test cases
- Export tool in packages/ai/src/tools/index.ts

Addresses BUS-1449

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-19 03:44:13 +00:00
Devin AI 74687223db feat: implement read_files tool for BUS-1448
- Add read_files tool in packages/ai/src/tools/file-tools
- Support both absolute and relative file paths
- Implement 1000-line truncation with indication
- Handle errors gracefully with discriminated union results
- Include comprehensive unit tests with 10/10 passing
- Export tool from main index
- Update sandbox index to export runTypescript and createSandbox
- Follow established patterns from execute-sql.ts

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-19 03:42:03 +00:00
dal ba04450469
Enhance Slack event handling by adding hourglass reaction on app mentions and refactoring reaction management in slack-agent-task. Update CLAUDE.md and global.mdc with new guidelines for testing and development workflows. Adjust .gitignore for rerank package to ensure proper directory exclusion. 2025-07-18 21:40:20 -06:00
Nate Kelley 364fe39069
inline code update 2025-07-18 16:51:09 -06:00
dal 2e7dcef3ef
Merge pull request #559 from buster-so/staging
Release
2025-07-18 16:14:47 -06:00
dal f9786c75c8
increase polling time for trigger bc 5 seconds or less still get charged lol 2025-07-18 16:12:03 -06:00
dal 97a8bb4c56
lint errors done & unit tests passing 2025-07-18 16:02:24 -06:00
Nate Kelley 6022f4b131
Merge branch 'staging' into big-nate/bus-1376-make-streaming-individual-words-use-the-streaming-affect 2025-07-18 15:58:28 -06:00
Nate Kelley 9fb8778b63
Install turbo in global package.json 2025-07-18 15:57:27 -06:00
Nate Kelley 8947758f6f
Fix linting errors 2025-07-18 15:54:46 -06:00
Nate Kelley f582065772
user safe selector 2025-07-18 15:50:23 -06:00