Add system project infrastructure and project-scoped routing foundation#1209
Merged
Add system project infrastructure and project-scoped routing foundation#1209
Conversation
- Added isSystem field to ProjectSchema in cloud/project.zod.ts - Added is_system field to sys_project object schema - Implemented provisionSystemProject() method for bootstrapping platform - System project uses well-known ID and operates on control plane DB - Idempotent provisioning - returns existing if already created Co-authored-by: xuyushun441-sys <255036401+xuyushun441-sys@users.noreply.github.com>
- Added enableProjectScoping flag to RestApiConfigSchema - Added projectResolution strategy (required/optional/auto) - Enables /api/v1/projects/:projectId/data/... routing pattern - Control plane routes remain unscoped - Backward compatible with 'auto' strategy Co-authored-by: xuyushun441-sys <255036401+xuyushun441-sys@users.noreply.github.com>
- Add unit tests for provisionProject() with isSystem field - Add unit tests for provisionSystemProject() method - Test idempotent behavior of system project creation - Test system project metadata and well-known UUIDs - Fix missing isSystem field in provisionProject() - All 7 tests passing Co-authored-by: xuyushun441-sys <255036401+xuyushun441-sys@users.noreply.github.com>
- Document all completed Phase 1 implementation work - Detail system project schema and provisioning - Explain project-scoped routing configuration - Provide migration path and usage examples - Define Phase 2 runtime implementation requirements - Include benchmarking against industry standards (Airtable, Salesforce) Co-authored-by: xuyushun441-sys <255036401+xuyushun441-sys@users.noreply.github.com>
Claude created this pull request from a session on behalf of
xuyushun441-sys
April 22, 2026 02:11
View session
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
- Added tests for project-scoped routing in RestServer, covering unscoped, auto, and required modes. - Enhanced DispatcherPlugin to support project-scoping configuration. - Updated HttpDispatcher to resolve projectId from URL paths. - Introduced SystemProjectPlugin to ensure the existence of a system project. - Created integration tests for project-scoped REST routing in the client. - Added tests for SystemProjectPlugin to verify provisioning behavior.
| if (filterValue) { | ||
| if (this.parent._isFilterAST(filterValue) || Array.isArray(filterValue)) { | ||
| queryParams.set('filter', JSON.stringify(filterValue)); | ||
| } else if (typeof filterValue === 'object' && filterValue !== null) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements foundational schema and provisioning for ObjectStack's new architecture with a built-in "system" project and project-scoped API routing, following Airtable's workspace/base scoping model.
Schema Changes
System Project Support
isSystemboolean field toProjectSchemaandsys_projectobjectisSystem: false, system project set totrueProject-Scoped Routing Configuration
enableProjectScopingandprojectResolutionfields toRestApiConfigSchema'required','optional','auto'(default)/api/v1/projects/:projectId/data/...Provisioning Service
Implemented
ProjectProvisioningService.provisionSystemProject():Characteristics:
00000000-0000-0000-0000-000000000001Test Coverage
Added comprehensive test suite (7 tests, all passing):
isSystem=falseDocumentation
Created
docs/design/SYSTEM_ARCHITECTURE_IMPLEMENTATION.md:Architecture Benefits
System Project Isolation
isSystemflagProject-Scoped APIs (Schema Ready)
Phase 2 (Future Work)
Runtime implementation deferred to next PR:
Current implementation (~50% of total changes) provides production-ready schema and provisioning that can be safely deployed without breaking existing functionality.