Commit Graph

173 Commits

Author SHA1 Message Date
Nate Kelley ae2b21dcd9
update server markdown to platejs 2025-07-29 10:53:24 -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 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 57dd2895d2
dry run for these two bad boys 2025-07-25 19:00:07 -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
Nate Kelley af090d467e
fix tests 2025-07-23 22:53:54 -06:00
Nate Kelley 5eb43d0373
Add expanded threedot menu for menus 2025-07-23 22:33:16 -06:00
Nate Kelley df3533ffc7
pass in better props 2025-07-23 17:18:45 -06:00
Nate Kelley 503c9fafa4
response types update 2025-07-23 16:56:17 -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
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 97a8bb4c56
lint errors done & unit tests passing 2025-07-18 16:02:24 -06:00
Nate Kelley c5fe152bee
DEFAULT must defined colors 2025-07-18 15:38:55 -06:00
Nate Kelley 542795833a
use zod workspace in shared 2025-07-18 14:54:11 -06:00
Nate Kelley 84ba96ec74
tsx is a workspace package 2025-07-18 14:18:06 -06:00
Nate Kelley d134c06bb8
theme update is working 2025-07-18 13:42:10 -06:00
Nate Kelley 8988837248
stablize dictionary IDS 2025-07-18 12:48:22 -06:00
Nate Kelley 95e0c8d7b5
move currency around to dictionary 2025-07-18 12:37:03 -06:00
Nate Kelley 71b9843063
Merge pull request #544 from buster-so/devin/1752815489-hide-three-dot-menu
feat: add hideThreeDotMenu prop to conditionally show theme menu based on admin status
2025-07-18 11:30:22 -06:00
Nate Kelley 5f61995296
Fix linting errors 2025-07-18 10:48:49 -06:00
Nate Kelley 9048b6dad0
remove default colors from setter 2025-07-18 09:47:13 -06:00
dal 128d982244
fix: update server-shared tests to include new required fields
- Added workspace_sharing and workspace_member_count fields to all metric
  and share config test objects
- Removed references to 'canFilter' role which doesn't exist in the schema
- Fixed ShareRoleSchema test to only include valid roles

All tests in server-shared package now pass.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-18 09:24:56 -06:00
dal 3a43e21718
Merge remote-tracking branch 'origin/staging' into dallin/bus-1380-fix-unit-tests 2025-07-18 08:55:35 -06:00
dal a7e43c665e
fix unit tests 2025-07-18 00:04:28 -06:00
dal 51da02efbb
update package.json pass if no unit tests 2025-07-17 23:03:54 -06:00
dal ba61b6a3ea
Merge remote-tracking branch 'origin/staging' into dallin/bus-1380-fix-unit-tests 2025-07-17 22:31:32 -06:00
Nate Kelley 9f86f337ff
Merge branch 'staging' into dallin/bus-1419-enable-sharing-of-dashboards-or-collections-with-workspace 2025-07-17 22:13:53 -06:00
Nate Kelley 0a34db8989
revise front end to use shared components 2025-07-17 22:12:12 -06:00
Nate Kelley 70a5fd6ec0
Merge pull request #540 from buster-so/big-nate/bus-1424-default-color-palette-in-workspace-settings
Big nate/bus 1424 default color palette in workspace settings
2025-07-17 18:53:59 -06:00
Nate Kelley 10e37f07de
update all types to work better together 2025-07-17 18:51:45 -06:00
Nate Kelley 09e4b36bf5
add dictionaries for color schemes 2025-07-17 17:16:15 -06:00
dal cd8a50403f
Merge branch 'staging' into dallin/bus-1419-enable-sharing-of-dashboards-or-collections-with-workspace 2025-07-17 17:16:07 -06:00
dal b6cf6539ea
Merge branch 'origin/staging' into dallin/bus-1380-fix-unit-tests - Resolved conflicts in CLAUDE.md 2025-07-17 16:52:03 -06:00
Nate Kelley d2cd4fb173
create default them component 2025-07-17 16:24:46 -06:00
dal cc2dd7fa61
Enhance workspace member count integration across various handlers and components
- Introduced `count_workspace_members` utility function to retrieve the number of active users in a workspace.
- Updated chat, collection, dashboard, and metric handlers to include `workspace_member_count` in their responses.
- Modified relevant types to accommodate the new `workspace_member_count` field.
- Adjusted frontend components to display the number of workspace members in the ShareMenu and related UI elements.

These changes improve the visibility of workspace member information and enhance the overall user experience.
2025-07-17 16:21:14 -06:00
dal 4e2b6c235e
Refactor workspace sharing permissions across assets
- Updated the `WorkspaceSharing` enum to use camelCase for serialization.
- Introduced `workspace_permissions` field in update requests for chats, collections, dashboards, and metrics.
- Implemented handling of workspace sharing permissions in respective update handlers, allowing for setting and removing permissions.
- Adjusted frontend components and API interfaces to align with the new `workspace_sharing` naming convention.

This change enhances the consistency and usability of workspace sharing across different asset types.
2025-07-17 15:26:26 -06:00
dal d9f9182ab2
ui components and return the values 2025-07-17 14:51:53 -06:00
Devin AI 077d6de476 feat(slack): implement scope validation and re-installation flow for BUS-1435
- Create centralized OAuth scopes constants file
- Add scope validation to integration status check
- Update OAuth flow to handle re-installations while preserving user settings
- Add yellow 'Re-install Required' button to UI when scopes don't match
- Implement proper error handling and rollback logic for failed re-installations

Co-Authored-By: Dallin Bentley <dallinbentley98@gmail.com>
2025-07-17 19:54:49 +00:00
Nate Kelley 5dd7b20f25
fix broken linting 2025-07-17 13:18:32 -06:00
Nate Kelley b8de7a5c51
update rules 2025-07-17 13:12:11 -06:00
Nate Kelley 16045ced49
Added readme and other stuff for cursor 2025-07-17 12:56:42 -06:00
Nate Kelley 7b24d167b9
hex values checking before insert into database 2025-07-17 12:17:34 -06:00
Nate Kelley ee8cce71f8
Add additional error handling for endpoint 2025-07-17 12:06:57 -06:00
Nate Kelley e55632e074
initial commits for update org 2025-07-17 11:41:31 -06:00
Nate Kelley be6b510685
Merge branch 'staging' into big-nate/bus-1424-default-color-palette-in-workspace-settings 2025-07-17 10:51:17 -06:00
Nate Kelley f725ef9386
add avatar urls to the share 2025-07-17 10:50:49 -06:00
Nate Kelley 3bf3a324aa
equality check example 2025-07-17 10:25:53 -06:00
Nate Kelley 54feda404a
update type checking 2025-07-17 10:05:50 -06:00
Nate Kelley 06d8c1e568
Merge pull request #527 from buster-so/big-nate/bus-1420-add-searchable-menu-to-share-dropdowns
add searchable menu to share dropdowns
2025-07-16 23:48:44 -06:00
Nate Kelley 0be0744bd0
share update 2025-07-16 23:46:34 -06:00
Nate Kelley a24779d40f
Query request in line 2025-07-16 23:01:49 -06:00
dal da380485d9
added in the slack auto-sharing functionality 2025-07-16 16:54:09 -06:00
Nate Kelley bc5b0e4f84
update select 2025-07-16 14:48:33 -06:00
dal d4f216cb66
Merge remote-tracking branch 'origin/staging' into dallin/bus-1363-slack-agent-query-buster-from-slack-direct-query 2025-07-16 12:54:18 -06:00
Nate Kelley f11afec05a
query params update for cursor rules 2025-07-16 10:13:30 -06:00
Nate Kelley a032a966f8
make generic handler 2025-07-16 09:59:30 -06:00
Nate Kelley 0d01dfcb4c
array parter 2025-07-16 09:54:28 -06:00
Nate Kelley d9ed8b1423
finalize pagination endpoint 2025-07-16 09:25:51 -06:00
Nate Kelley fdf70abfb8
update database dev 2025-07-15 22:26:13 -06:00
Nate Kelley 094fc4c251
add pagination type responses 2025-07-15 17:23:32 -06:00
Nate Kelley fb0e79065f
udpate endpoint to accept more params 2025-07-15 16:54:18 -06:00
dal a751d22baa
initial slack challenge verification and receive messages 2025-07-14 16:08:01 -06:00
Nate Kelley 727e66a630
Fix files on lint 2025-07-14 14:30:07 -06:00
dal 69da316f6c
Merge remote-tracking branch 'origin/staging' into dallin/bus-1380-fix-unit-tests 2025-07-14 12:37:15 -06:00
dal 5a971dd8a1
fix on access-control tests 2025-07-14 11:01:53 -06:00
Nate Kelley 5352ae8f10
currency response 2025-07-14 09:41:25 -06:00
dal 2be9784516
Add unit and integration test scripts to package.json files across multiple packages 2025-07-14 09:11:20 -06:00
Nate Kelley 963bf6b2f2
fix all of the bugs 2025-07-12 22:14:08 -06:00
Nate Kelley 4810daef9f
Update packages/server-shared/src/type-utilities/index.ts
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-07-12 16:33:53 -06:00
Nate Kelley 5448af614a
lint fixes 👀 2025-07-12 16:32:47 -06:00
Nate Kelley aeaf7dbb57
type updates 2025-07-12 16:19:08 -06:00
Nate Kelley 2c2bf74475
Add prebuild script to server-shared 2025-07-12 16:07:55 -06:00
Nate Kelley d8e0146978
create a db utilities 2025-07-12 15:48:42 -06:00
dal 10431a81d3
add has_more_records to the server shared type 2025-07-11 15:30:53 -06:00
dal 87f3853ce8
stubbed out the cancel endpoint and added the trigger run col 2025-07-10 16:26:30 -06:00
Nate Kelley e7ee256072
move shared to be zod v4 2025-07-10 12:16:34 -06:00
Nate Kelley 7b9892129c
update imports and type checks 2025-07-10 10:52:21 -06:00
dal 4d7f1353ff
clean up tyeps 2025-07-10 07:52:41 -06:00
dal 3ca54c7f28
Refactor integration tests for domain management and workspace settings. Update error messages for permission checks to be more specific. Enhance domain handling logic for consistency and improve test cleanup procedures. 2025-07-10 07:45:04 -06:00
dal 29e6a6ae7f
Workspace Settings Done with auto-add 2025-07-10 07:01:23 -06:00
dal c047d7dd40
Refactor security API handlers to improve organization validation and domain management. Consolidate permission checks and domain operations into utility functions for better code reuse. Update endpoint routes for workspace settings and approved domains, ensuring consistent response formatting. 2025-07-10 05:30:10 -06:00
Nate Kelley c223309df2
Add slack integration endpoints 2025-07-09 14:08:29 -06:00
Nate Kelley 821ed90083
initial slack build out (no apis) 2025-07-09 11:52:33 -06:00
Nate Kelley e22a795326
Add additinal fixes 2025-07-09 11:06:25 -06:00
Nate Kelley 26d77fef53
create workspace settings 2025-07-09 10:58:51 -06:00
Nate Kelley 59e6aacd9d
part 1 of making workspace toggles 2025-07-09 09:42:16 -06:00
Nate Kelley 46c3fccb9b
invite link updates 2025-07-08 17:20:31 -06:00
Nate Kelley 9bd7824586
create security endpoints strucutre 2025-07-08 16:48:13 -06:00
Nate Kelley 7d22c42141
Move organization user to a server type 2025-07-08 15:06:17 -06:00
Nate Kelley 8850b1ffd8
Assumption cards 2025-07-08 12:54:18 -06:00
dal f21690acc0
added in the server shared types for post-processing and moved the type into shared from trigger. 2025-07-08 11:14:30 -06:00
Nate Kelley 6b437d8737
post processing messages 2025-07-08 10:12:51 -06:00
Nate Kelley f4c2515f25
truncate metric headers and values 2025-07-08 09:46:51 -06:00
Nate Kelley aabb6908d7
move types to be on server 2025-07-07 22:26:42 -06:00
Nate Kelley 4e888f9506
Merge pull request #427 from buster-so/big-nate/bus-1181-point-to-google-workspace-profile-pics
Big nate/bus 1181 point to google workspace profile pics
2025-07-07 16:17:54 -06:00
Nate Kelley 2a6bd2f5a8
avatar passthrough 2025-07-07 16:15:10 -06:00