Implements Spec 095. What changed - Registers 4 Graph resources in the contract registry (plus required subresource template) - Refactors in-scope call sites to resolve Graph paths via the registry (no ad-hoc endpoints for these resources) - Adds/updates regression tests to prevent future drift (missing registry entries and endpoint string reintroduction) - Includes full SpecKit artifacts under specs/095-graph-contracts-registry-completeness/ Validation - Focused tests: - `vendor/bin/sail artisan test --compact tests/Feature/Graph/GraphContractRegistryCoverageSpec095Test.php tests/Feature/SettingsCatalogDefinitionResolverTest.php` Notes - Livewire v4.0+ / Filament v5 compliant (no UI changes). - No new routes/pages; no RBAC model changes. Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #114
23 lines
858 B
Markdown
23 lines
858 B
Markdown
# Phase 1 — Data Model: Graph Contracts Registry Completeness
|
|
|
|
## Summary
|
|
|
|
This feature introduces **no new database entities** and does not modify any existing schema.
|
|
|
|
## Affected “Entities” (Configuration-only)
|
|
|
|
Although no database model changes occur, the feature affects the following configuration concepts:
|
|
|
|
- **Graph Contract Type**: A named entry in `config/graph_contracts.php` representing a Microsoft Graph resource.
|
|
- **Graph Contract Subresource**: A named sub-path template belonging to a contract type (used to model nested resources).
|
|
|
|
## Ownership & Scope
|
|
|
|
- **Ownership**: Workspace scope.
|
|
- **Persistence**: Configuration only; no new tables/records.
|
|
|
|
## Validation Rules
|
|
|
|
- Contract type identifiers must be stable and used consistently in code.
|
|
- Resource paths must be representable via the registry and reusable by call sites.
|