# Commercial Runtime Frontend — Wave-2

**Workstream:** Frontend Commercial Runtime  
**Phase ID:** `commercial-runtime-frontend-wave-2`  
**Date:** 2026-07-28  
**Status:** Complete (frontend only)

## Objective

Transform platform home/dashboard into a metadata-driven Commercial SaaS runtime without backend changes, without Payment/Experience module edits, and without hardcoded product/bundle/pricing catalogs.

## Delivered

- `frontend/modules/commercial/` — adapters, types, session, UI components, features
- Landing wizard: Landing → Assessment → Recommendations → Trial summary → Workspace
- Commercial dashboard (trial/subscription/products/capabilities/checklist/upgrade)
- `/apps`, `/billing` routes
- Header: Products, Workspace, Apps, Billing, Subscription, Usage, Notifications shell, Account, dark toggle
- Dynamic sidebar from discovered products
- Domain policy: custom domain locked until `subscription_status === active`
- FeatureLock, UpgradePrompt, TrialBanner, SubscriptionBanner, cards, empty states
- Adapters call `/api/v1/commercial/*` when present; fallback Core services/plans/features; **never fake catalog data**

## Explicitly not done

- No backend commercial registry APIs (adapters show unavailable/empty)
- No Payment/Experience code changes
- No QR/Booking/Marketplace/etc.
- Recommendation engine remains backend-owned (UI empty until API exists)

## STOP
