Phase Handover — Experience 11.2 Component Library & Versioning
Metadata
| Field |
Value |
| Phase ID |
experience-11.2 |
| Title |
Component Library & Versioning |
| Status |
Complete |
| Service(s) |
experience (experience_db) |
| Version |
0.11.2.0 |
| Date |
2026-07-26 |
| ADR(s) |
ADR-016 |
Discovery Summary
Prior phase delivered sites/pages. Gap: versioned reusable components with immutable published revisions and page composition pins. Themes/layouts deferred to 11.3.
Reusable Components
| Component |
Location |
Reuse notes |
| Component catalog |
app/models/components.py, services/components.py |
Lifecycle + kinds |
| Immutable versions |
ExperienceComponentVersion.is_immutable |
Publish locks content |
| Composition shells |
PageComponentPlacement |
Slot pins only — no layout engine |
| Policies / specs |
app/policies/, app/specifications/ |
Transition + list UX |
| Commands / queries |
app/commands/, app/queries/ |
CQ separation |
Public APIs
| Method |
Path |
Permission |
| CRUD + activate/deprecate/archive |
/api/v1/components |
experience.components.* |
| CRUD + publish/retire |
/api/v1/component-versions |
experience.components.* |
| CRUD |
/api/v1/page-component-placements |
experience.components.* |
Events
| Event type |
Notes |
experience.component.* |
Catalog lifecycle |
experience.component_version.* |
Version lifecycle + immutability |
experience.page_component.* |
Placement create/update/remove |
Extension Points
| Extension point |
How to extend |
Forbidden uses |
definition_schema / props_defaults |
Theme/layout phases consume props |
Store theme tokens as layout engine in 11.2 |
render_hint |
Future render engines |
Bind foreign DB rows |
menu_ref / catalog_ref kinds |
Vertical entity refs via API |
Shared Hospitality/Marketplace tables |
Known Limitations
- No theme/layout engines (11.3)
- No visual section tree / page builder UI
- Placement requires published version only
- Metrics remain discovery-oriented
Migration Notes
| Item |
Detail |
| Alembic revision(s) |
0003_phase_112_components |
| Upgrade steps |
alembic upgrade head |
| Downgrade support |
Drops placements, versions, components |
| Breaking changes |
None (additive) |
Dependencies
| Dependency |
Type |
| experience-11.1 sites/pages |
Required parent |
| ADR-016 |
Boundaries |
Quality Gates
Next Phase Entry
| Field |
Value |
| Recommended next phase |
experience-11.3 Theme & Layout Engine |
| Entry checklist |
Read this handover + phase doc; implement themes/layouts only — no template catalog yet |
Completion Sign-Off
Related Documents