Repository navigation
Add the project scoping plan and track its status in the plans index - #53
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
The move plan omits project-scoped EPackage handling, leaving external package references that buildManifest rejects and blocking checkpoints and dependent lifecycle operations.
3 open issues
What changed in this PR
Adds a five-phase plan for making projects the scoping unit for artifacts and tracks its progress in the plans index. This documentation-only PR records shipped work from #41, #42, and #44 while leaving Phase 5 hardening open.
Changes:
- Adds a master plan covering architecture, design decisions, sequencing, and rollout.
- Adds phase plans for backend foundations, frontend scope, creation rules, access control, and hardening.
- Marks the project-scoping track as in progress.
| File | Description |
|---|---|
plans/README.md |
Adds the project-scoping track and status. |
plans/project-scoping/phase-5-hardening-and-cleanup.md |
Plans required scoping, artifact moves, and cleanup. |
plans/project-scoping/phase-4-project-access-control.md |
Defines membership, sharing, and authorization work. |
plans/project-scoping/phase-3-scoped-creation-and-conformance.md |
Plans scoped creation, imports, and relationship validation. |
plans/project-scoping/phase-2-frontend-project-scope.md |
Describes project selection and frontend list filtering. |
plans/project-scoping/phase-1-backend-foundation.md |
Defines schema, API, and backfill foundations. |
plans/project-scoping/00-master-plan.md |
Summarizes scope, decisions, rollout, and current status. |
Review effort: Balanced
Comment on lines
+11
to
+12
| report any row in the 7 scoped tables with `projectId IS NULL`, excluding `isExample` | ||
| template packs (decision Q3). |
Comment on lines
+33
to
+35
| - Moving a **metamodel** moves its models, diagrams, and viewpoints with it (compute | ||
| the closure, show it, move atomically in a transaction). Codegen packs/test | ||
| cases/rules that resolve to it are moved too. |
Comment on lines
+54
to
+59
| ## 4. Server-side list filtering (performance, optional but planned) | ||
|
|
||
| Phase 2 filters client-side. Add `?projectId=` support to the list endpoints and pass the | ||
| current project from the frontend service caches, so large tenants stop shipping full | ||
| lists. Keep client-side filtering as fallback. This also positions the caches to be | ||
| per-project later if memory becomes an issue. |
The plan predates Phases 1 to 3 shipping. It audits seven scoped tables where the schema has nine, its move closure leaves the metamodel's EPackage behind, which checkpoints reject, and it treats server-side list filtering as future work although it has shipped.
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.

Adds the five-phase plan under
plans/project-scoping/for making a project the scoping unit for every artifact, and a Project scoping track row inplans/README.md.Phases 1 to 3 shipped in #41, #42 and #44.
projectIdis still optional on most artifact models, so Phase 5 (making it required) is open. The master plan's status line says so.