EP-MEL-12 — Multi-Tenant Theming & Per-Tenant Booking Flow Config
Companion: Backlog README ·
EPICS.md· canonical:07-epics-and-user-stories.md§14
Summary
| Wave | R1 (+ per-property overrides in R2) |
| Priority | P0 |
| Primary owner | theme-config-service |
| Participating services | file-storage-service, bff-consumer-service, bff-tenant-booking-service, notification-service |
| Journeys realised | J-13 (Onboard new tenant), J-22 (Theme update + rollback) |
| Workflows | WF-11 |
| Frontend surfaces | Owner Portal · Control Plane (reviewer surface) · Tenant Booking Web (live consumer rendering) |
| Story count | 6 |
Outcome
Each tenant configures their brand (tokens, layout presets, content blocks) and booking-flow rules (currencies, payment methods, cancellation policies) through a guarded preview-publish-rollback workflow gated by marketing review.
Cross-cutting AC for this epic
- Theme tokens validated for WCAG 2.2 AA contrast at write-time; AAA recommended.
- Sanitised HTML allow-list for content blocks; raw HTML rejected.
- Versions immutable once published; rollback creates a new version pointing to a prior state.
- Theme assets isolated per tenant under
tenants/{tenant_id}/prefix infile-storage-service.
Stories
| ID | Title |
|---|---|
| US-MEL-0099 | Token-based theme bootstrap |
| US-MEL-0100 | Layout presets |
| US-MEL-0101 | Content block editor with i18n |
| US-MEL-0102 | Preview vs Publish vs Rollback |
| US-MEL-0103 | Marketing review workflow |
| US-MEL-0104 | Per-tenant booking flow rule configuration |
Full AC in
../07-epics-and-user-stories.md§14.
Cross-references
- Frontend design guidelines:
../frontend/04-frontend-design-guidelines.md - Definition of Done (Frontend section):
../standards/DEFINITION_OF_DONE.md