Commit completed Torbat Pages admin frontend module, BFF proxy, routes, and validation artifacts for official platform deploy. Co-authored-by: Cursor <cursoragent@cursor.com>
2.4 KiB
2.4 KiB
Experience Frontend Validation Report (Quality Report)
Date: 2026-07-27
Scope: FE-11.0 – FE-11.5 (STOP)
Backend: experience-service v0.11.10.0 :8008
Automated checks
| Check | Command | Result |
|---|---|---|
| Route thinness | npm run validate:experience-routes |
Pass — app/experience/**/page.tsx ≤25 lines |
| Nav filter | node modules/experience/__tests__/nav-filter.mjs |
Pass |
| Accessibility smoke | node modules/experience/__tests__/a11y-smoke.mjs |
Pass — ARIA roles/labels on DS primitives |
| Performance smoke | node modules/experience/__tests__/perf-smoke.mjs |
Pass — ≥49 routes; API via BFF; no fake JSON |
| Architecture boundaries | npm run validate:architecture |
Pass |
| TypeScript | npm run typecheck |
Pass |
Full suite: npm run validate:experience
Manual test plan
- Hub & auth:
/experience/hub→ login →/experiencedashboard loads - Workspace switcher: select workspace persists after refresh (localStorage)
- CRUD: create workspace → site → page; edits include
version - Builder:
/experience/pages/{id}/builder— placements, reorder, media drawer, undo/redo - Forms: form builder saves
form_schema_json; invalid JSON rejected - Publishing: publish-targets provisional
publish_id; preview/experience/preview/page/{id} - Analytics: refresh snapshots →
POST /api/v1/analytics-snapshots/refresh - Embed: widget snippet with provisional
publish_id - Design system:
/experience/design-system— RTL/LTR toggle, brand color, charts/map/timeline/kanban - BFF: browser calls
/api/experience/...not direct:8008
Seed data
cd backend/services/experience
set AUTH_REQUIRED=false
set EXPERIENCE_SEED_TENANT_ID=<tenant-uuid>
python scripts/seed_experience.py
Known gaps (by design — stop at FE-11.5)
- No official Publish Target Registry — provisional IDs only
- No payment, booking, QR, short link, marketplace UI
- Published actions UI is catalog + local toggle only
- Fine-grained
experience.*RBAC deferred to identity integration
Artifacts
- Module:
frontend/modules/experience/ - Routes:
frontend/app/experience/(50 pages) - BFF:
frontend/app/api/experience/[...path]/route.ts - Snapshot:
docs/service-snapshots/experience-frontend.yaml - Handover:
docs/phase-handover/phase-experience-fe-11-5.md