MotorSignal-App/website/tests
Developer c014c2f04f fix(website): stop club rank matrix from faking a permission save (WEB-W1)
The Ranks & Roles "Operational Permission Matrix" previously waited ~400ms and
showed a "Saved" state without persisting anything. No Firestore document, API
route, or security rule stores or enforces a per-rank capability matrix; club
authorization is role-based (Owner/Admin via getPortalPermissions). Persisting
the matrix would require frozen security-rule changes and would create an
unenforced permission model that misleads owners.

Make the control truthful instead of faking success:
- Render the matrix as a read-only reference of the standard governance model
  by default (persistenceAvailable=false): no Save/Reset controls, disabled
  toggles, a "View-only reference" indicator, and a notice stating that access
  is enforced by Owner/Admin roles and per-rank customization is planned.
- Remove the fake setTimeout save handler and the unconditional success state.
- Retain a forward-compatible editable path behind persistenceAvailable for
  when a backend contract ships.
- Document the precise backend contract required to enable persistence.

Tests: read-only matrix renders no Save control, reports no save, and does not
mutate permissions even for Owner/Admin; editable path still fires toggle/save
/reset when persistenceAvailable=true.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-14 11:20:29 -04:00
..
auth-form.test.tsx feat(website): add club curated routes, live squad chat, and portal navigation 2026-10-02 12:39:38 -04:00
auth-recovery-verification.test.tsx feat(mobile): add community social feed, tactical layers, club wall, launch curves, and curvy routes (v1.0.2+102) 2026-09-29 11:50:48 -04:00
club-community-data.test.ts feat: add club members and wall management 2026-10-01 08:31:45 -04:00
club-community-ui.test.tsx feat(website): add club moderation, stats, and group rides management 2026-10-02 11:07:44 -04:00
club-ranks-roles-interactive.test.tsx fix(website): stop club rank matrix from faking a permission save (WEB-W1) 2026-10-14 11:20:29 -04:00
club-rides-discovery.test.ts feat(group-rides): secure club join moderation and discovery (Phase 3A) (#26) 2026-09-24 12:00:48 -04:00
community-personal-rides.test.ts feat(core): reconcile local development, hybrid design, sensor fusion, and docs 2026-10-09 05:12:01 -04:00
deployment-revision.test.cjs feat(website): expose and verify deployed Git revision (#13) 2026-09-20 18:59:17 -04:00
firebase-client-emulator.test.ts fix(website): isolate Firebase configuration for staging and enforce safety guards 2026-10-08 10:50:28 -04:00
firebase-staging-isolation.test.ts fix(website): isolate Firebase configuration for staging and enforce safety guards 2026-10-08 10:50:28 -04:00
founder-moderation.test.tsx feat(website): add club moderation, stats, and group rides management 2026-10-02 11:07:44 -04:00
founder-notifications.test.tsx fix: open club updates from the notification bell 2026-10-01 08:32:06 -04:00
founder-portal.test.cjs feat(group-rides): secure club join moderation and discovery (Phase 3A) (#26) 2026-09-24 12:00:48 -04:00
founder-routes-chat.test.tsx feat(website): add club curated routes, live squad chat, and portal navigation 2026-10-02 12:39:38 -04:00
founder-stats.test.tsx feat(website): add club moderation, stats, and group rides management 2026-10-02 11:07:44 -04:00
group-ride-join-requests.test.ts feat(group-rides): secure club join moderation and discovery (Phase 3A) (#26) 2026-09-24 12:00:48 -04:00
group-rides-page.test.tsx feat(website): add club moderation, stats, and group rides management 2026-10-02 11:07:44 -04:00
navigation-auth.cjs feat(website): standardize dark glass design system, obsidian contrast buttons, and rider account management 2026-09-18 18:35:31 -04:00
operations-speedtest.test.tsx feat(ops): add dual speedtest options, support ticket fixes, cms sync, and overview card redesign (#23) 2026-09-22 01:38:54 -04:00
ops-experience.test.cjs feat(ops): add dual speedtest options, support ticket fixes, cms sync, and overview card redesign (#23) 2026-09-22 01:38:54 -04:00
radar-access-lifecycle.test.tsx feat(core): reconcile local development, hybrid design, sensor fusion, and docs 2026-10-09 05:12:01 -04:00
replay-recorded-data.test.tsx feat(core): reconcile local development, hybrid design, sensor fusion, and docs 2026-10-09 05:12:01 -04:00
responsive-layout.test.cjs feat(website): standardize dark glass design system, obsidian contrast buttons, and rider account management 2026-09-18 18:35:31 -04:00
ride-telemetry-api.test.ts feat(core): reconcile local development, hybrid design, sensor fusion, and docs 2026-10-09 05:12:01 -04:00
support-report-modal.test.tsx feat(ops): add dual speedtest options, support ticket fixes, cms sync, and overview card redesign (#23) 2026-09-22 01:38:54 -04:00
telemetry-replay-export.test.tsx fix: resolve Android CI breakpoint overflow and address Codex PR #28 findings 2026-10-09 18:53:39 -04:00
telemetry-track-regression.test.ts feat(core): reconcile local development, hybrid design, sensor fusion, and docs 2026-10-09 05:12:01 -04:00
website-session-proxy.test.ts feat(core): reconcile local development, hybrid design, sensor fusion, and docs 2026-10-09 05:12:01 -04:00