TorbatYar/docs/experience-phase-11-0.md
Mortezakoohjani 203671a7bf feat(experience): ship Experience Platform phases 11.0-11.10
Add the experience service with sites through analytics/AI hooks, migrations through 0011, and phase docs/manifests marking the track complete.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 11:43:10 +03:30

84 lines
3.1 KiB
Markdown

# Phase: Experience Platform Foundation (11.0)
| Field | Value |
| --- | --- |
| Identifier | `experience-11.0` |
| Status | Complete |
| Owner | Platform |
| Module(s) | Experience foundation shells |
| Service(s) | `experience` (Torbat Pages) |
| Depends On | `experience-reg` |
| ADR(s) | [ADR-016](architecture/adr/ADR-016.md) |
| Manifest | [phase-manifest.yaml](ai-framework/phase-manifest.yaml) |
## Objective
Scaffold the independent Experience Platform service (`experience_db`, port 8008) with health/capabilities/metrics, tenant-aware foundation aggregates, permissions, publish-only events, audit/config shells, and provider contracts — without page/theme/template engines.
## Scope
### In Scope
- FastAPI service under `backend/services/experience`
- Alembic `0001_initial` for foundation tables
- `GET /health`, `/capabilities`, `/metrics`
- Workspaces, locale profiles, external providers, render-engine registrations, configurations, settings, audit
- Permissions `experience.*`; events `experience.*`
- Compose / `.env.example` / `init-dbs.sql` wiring
- Architecture, tenant isolation, security, migration, docs tests
### Models
| Entity | Soft delete | Audit | Tenant |
| --- | --- | --- | --- |
| ExperienceWorkspace | Yes | Yes | Yes |
| ExperienceLocaleProfile | Yes | Yes | Yes |
| ExperienceRole / Permission | Yes | Yes | Yes |
| ExternalProviderConfig | Yes | Yes | Yes |
| RenderEngineRegistration | Yes | Yes | Yes |
| ExperienceConfiguration | Yes | Yes | Yes |
| ExperienceSetting | Yes | Yes | Yes |
| ExperienceAuditLog | No | Append-only | Yes |
### Permissions
`experience.view|manage`, `experience.workspaces.*`, `experience.locale_profiles.*`, `experience.external_providers.*`, `experience.render_engines.*`, `experience.configurations.*`, `experience.settings.*`, `experience.audit.view`, plus planned `sites|pages|components|themes|templates|forms` trees.
### Events
`experience.workspace.*`, `experience.locale_profile.*`, `experience.external_provider.*`, `experience.render_engine.*`, `experience.configuration.*`, `experience.setting.upserted`
### APIs
| Method | Path |
| --- | --- |
| GET | `/health`, `/capabilities`, `/metrics` |
| CRUD shells | `/api/v1/workspaces`, `/locale-profiles`, `/external-providers`, `/render-engines`, `/configurations`, `/settings`, `/audit` |
### Tests
- [x] Unit / architecture / dependency / permissions
- [x] Integration / API + tenant isolation
- [x] Migration / security / documentation
## Out of Scope
- Sites / pages / page builder / themes / templates / CMS / forms engines
- Bundle licensing deep engine (shell readiness only via capabilities)
- Frontend builder UI
- Cross-DB access
## Completion Criteria
- [x] Scaffold + migration + health/capabilities/metrics
- [x] Tenant isolation + architecture + docs tests green
- [x] No page/theme/template engines beyond foundation shells
- [x] Docs / manifests / handover updated
## Related Documents
- [Experience Roadmap](experience-roadmap.md)
- [Handover](phase-handover/phase-11-0.md)
- [ADR-016](architecture/adr/ADR-016.md)
- [XP-Reg Handover](phase-handover/phase-xp-reg.md)