Product Integration — Audit & Scope Lock
Milestone: Product Completion / UX Completion / Enterprise Integration
Date: 2026-07-27
Source of truth: docs/project-status.yaml
Constraint: No new business services. No future roadmap phases (QR, Short Link, Booking, Clinic foundation, Payment 14.6+, Experience FE-11.6 registry engines).
In-scope services (IN_PROGRESS or COMPLETE + frontend incomplete)
| Service |
Backend |
Frontend |
Integration focus |
| Identity |
complete |
partial |
polish only |
| Accounting |
in_progress (5.11) |
partial |
API consumers only |
| CRM |
complete |
partial |
polish |
| Loyalty |
in_progress (7.6) |
exists (status stale at 0%) |
connect to flows |
| Communication |
complete |
in_progress |
SMS MVP usable |
| Sports Center |
in_progress (9.7) |
partial/hub |
no 9.8+ |
| Delivery |
in_progress (10.8) |
in_progress |
no 10.9+ |
| Experience |
complete |
complete (FE-11.5) |
scaffold→real CRUD; stop before FE-11.6 |
| Hospitality |
in_progress (12.8) |
hub exists |
no 12.9+ |
| Healthcare |
complete |
partial |
polish |
| Beauty |
complete |
partial |
polish |
| Payment |
MVP 14.5 + FE complete |
complete |
no 14.6+ |
Out of scope (future / planned)
Ecommerce, Marketplace, Clinic foundation, Hotel, Tourism, Link Shortener, QR, Digital Card, Booking, Notification foundation, Payment refunds/splits (14.6+), Experience Publish Registry FE-11.6+.
Part 1 — Frontend audit (summary)
| Area |
Finding |
Action |
| Experience list CRUD |
Many scaffold code/name/status forms mismatched API |
Patched workspace-bound creates; child lists → readOnly |
| Experience site-domains |
Required site_id caused [object Object] |
Fixed filters + error formatting |
Home torbatyar.ir |
App launcher only |
Transformed to Business Onboarding assessment |
| Onboarding |
Free-text business type |
Intent select + recommended bundle preview |
| Loyalty FE status |
project-status frontend_percent: 0 stale |
Corrected in status update |
| Hospitality/Delivery FE |
Hubs exist; depth varies |
Documented; no new phase APIs |
| Fake charts |
Payment/Experience dashboards use live counts |
Keep; no mock KPI invention |
Part 2 — Cross-service integration (existing APIs)
| Link |
Contract basis |
Status |
| Vertical → Payment |
ADR-020/021 publish_id / payment intent refs |
MVP APIs live; vertical connectors deferred (14.8) |
| Payment → Accounting |
Settlement intents / no shared DB |
Ledger in Payment; Accounting posting via provider pattern |
| Payment → Communication |
Receipt SMS via Communication |
Deferred until consumer wiring phase |
| Experience publish → others |
ADR-022 publish_id |
Architecture only until FE-11.6 / registry phase |
| Delivery → Accounting |
Settlement refs |
Implemented in Delivery 10.8 |
| Tenant isolation |
ADR-003 |
Enforced per service middleware |
| Bundle / feature toggles |
ADR-017/021 three-layer |
Per-service bundles exist; commercial catalog is FE recommendation layer |
Part 3 — E2E business flows
| Flow |
Executable today? |
Gap |
| Restaurant full (menu→publish→pay→dispatch→loyalty→SMS→accounting) |
Partial |
Publish registry, vertical payment connector, SMS trigger wiring incomplete |
| Doctor/clinic full |
Partial |
Clinic foundation + Booking future; Healthcare hub usable |
| Retail full (QR/short link) |
Blocked |
QR + Short Link + Ecommerce foundation not started |
Executable now: create tenant → pick intent → open recommended hubs → operate each service’s existing CRUD.
Part 4–6 — Home / Bundles / Accounting
| Item |
Delivered this milestone |
| Business Type Wizard (home) |
Yes — intent picker |
| Needs assessment + recommended services |
Yes — business-bundles.ts |
| Bundle builder / subscription invoice auto-create |
Catalog only — no new Accounting mutation without dedicated phase |
| Generated permissions/licenses |
Uses existing onboarding + per-service entitlements; no new Core entitlement engine |
Quality gates
- No new TODO/placeholder pages introduced
- Experience scaffolds reduced; remaining secondary resources either workspace-bound or readOnly
- Home is onboarding-first, not app-store-first
- Future phases explicitly not implemented