Unify commercial runtime ownership across backend and frontend so platform, experience, and hospitality modules use the shared commercial source of truth. Co-authored-by: Cursor <cursoragent@cursor.com>
48 lines
2.0 KiB
Markdown
48 lines
2.0 KiB
Markdown
# Commercial Source Of Truth Report
|
|
|
|
> **Date:** 2026-07-28
|
|
> **Contract family:** `commercial.v1.2`
|
|
> **ADR:** ADR-023 · ADR-022 (ownership boundaries)
|
|
|
|
---
|
|
|
|
## Sole SoT
|
|
|
|
| Concern | Owner | API |
|
|
| --- | --- | --- |
|
|
| Products | Commercial Runtime | `/api/v1/commercial/products` |
|
|
| Bundles | Commercial Runtime | `/api/v1/commercial/bundles` |
|
|
| Pricing | Commercial Runtime | `/api/v1/commercial/pricing` |
|
|
| Plans / trials | Commercial Runtime | `/api/v1/commercial/plans`, `/trials` |
|
|
| Capabilities | Commercial Runtime | `/api/v1/commercial/capabilities` |
|
|
| Policies / assets / extensions / automation | Commercial Runtime | matching registry paths |
|
|
| Business types / recommendations / assessment | Commercial Runtime | engines + registries |
|
|
| Notifications templates | Commercial Runtime | `/api/v1/commercial/notifications` |
|
|
| Tenant subscriptions / licenses / entitlements | Commercial Runtime | `/subscriptions`, `/licenses`, `/entitlements/check` |
|
|
| Discovery | Commercial Runtime | `GET /api/v1/commercial/catalog` |
|
|
| Admin editing | Admin Commercial Portal | `/admin/commercial/*` |
|
|
|
|
Docs YAML under `docs/reference/*` are **seed/input catalogs**, not a second runtime.
|
|
|
|
---
|
|
|
|
## Explicitly NOT commercial SoT
|
|
|
|
| Concern | Owner |
|
|
| --- | --- |
|
|
| Payment L2 PSP/merchant packs | Payment service |
|
|
| Experience L2 page/form packs | Experience service |
|
|
| Hospitality L2 digital_menu/pos packs | Hospitality service |
|
|
| Delivery fee/capability ops | Delivery service |
|
|
| Money ledgers / invoices | Payment |
|
|
| Vertical operational data | Vertical services |
|
|
|
|
L2 packs are **referenced** by commercial capability codes; they are not duplicated commercial catalogs.
|
|
|
|
---
|
|
|
|
## Expansion rule
|
|
|
|
New commercial object = **publish registry row** (or register new kind via `POST /admin/kinds`).
|
|
**Zero** frontend and **zero** Commercial Runtime code changes for new products/bundles/pricing/capabilities/business types/automation/assets/extensions.
|