Skip to Content
Living documentation — last reviewed 2026-05-28
FeaturesDashboardQA plan — dashboard overview

QA plan — dashboard overview

No flag setup: dashboard-overview-revamp was merged permanently ON on 2026-08-22 and deleted, so the layout below is what every org gets.

G1 — owner, schedule org

  1. One header, one greeting; no duplicate session list anywhere (no classes-count tile — the Today panel owns the day).
  2. Action Center shows seeded finance + operations rules sorted by severity; row click navigates to drilldown with /{lang} prefix.
  3. Pulse: collected-MTD tile shows MoM delta arrow; tasks tile = overdue + due-today with the overdue count called out and links to /tasks; leads tile shows untouched (new) leads and links to /leads; members tile counts role=member only (invite a coach — number must not change).
  4. Today panel lists the WHOLE day: visit after the last class — past sessions render dimmed with “ended”, not an empty panel; a future session with no linked workout shows the amber chip and its menu says “Add workout”.
  5. Empty feed shows the all-clear row (not a blank page).
  6. Roster (“performance by member”, dual-mode orgs): only members enrolled in an active coaching program appear; a schedule-only member must not.

G2 — coach

  1. Schedule org: Action Center shows only staff rules (no debt/failed charges), no Pulse strip, Today panel populated (no 403 in network tab).
  2. Coaching org: coach KPIs incl. needs-attention; roster renders with a single header.
  3. No “Add Member” button.

G3 — coaching-mode owner (sole operator)

  1. Pulse = collected + active clients + due today + 7-day completion.
  2. Today = roster only; a single h1 on the page.

G4 — Ask Spotter

  1. Button on every feed row; opens the sheet and sends the localized prompt; agent answer references the insight (context carries insightId).
  2. Check-ins row: click expands the inline review queue; “Mark reviewed” updates the count after refetch.

G5 — i18n / RTL

  1. he + ru: every new string localized (feed titles, chips, greetings, all-clear); RTL: severity rail sits on the inline-start edge, chevrons point start-ward.