Dashboard
Tech Debt
Current debt items from docs/TECH_DEBT.md.
Mirror of apps/dashboard/docs/TECH_DEBT.md (last assessed 2026-09-03). Quality snapshot: architecture A-, React practices A-, security B+, code quality B- (~250 any casts, down from 335+), type safety B+.
Open items
| Priority | Item | Where |
|---|---|---|
| MEDIUM | Ratings UX hardening as backend contracts evolve | src/hooks/convex/use-ratings.ts |
| LOW | Run internal.productEngagement.mutations.backfillPurchases (bunx convex run productEngagement/mutations:backfillPurchases from packages/backend) | packages/backend/convex/productEngagement/mutations.ts |
| LOW | The store handle env var is wired. Drop the duplicated '9b19c9-40' fallback | products/components/edit/CollapsibleShopifyInfo.tsx, products/components/product-form.tsx |
The September 2026 dashboard audit tracks its remaining tasks (T19, T26 to T31) in apps/dashboard/docs/audit-2026-09/FIX_TASKS.md. The audit pages on this site are the dated record of that audit.
Ongoing
- Test coverage grows with changed hooks/components; add contract tests around Convex adapters.
- Incremental
anyreplacement withDoc<'table'>andId<'table'>. bun run format:checkonly checks. Keep formatting fixes explicit so validation never creates unrelated diffs.- The generated API catalog is the only endpoint inventory.
BACKEND_API_CHECKLIST.mdwas removed on 2026-09-05, so do not restore hand-counted endpoint tables.
Stale doc claims corrected by this site
- Role casing: the frontend now uses lowercase roles (older docs showed UPPERCASE).
- The claim that the Next 16 migration uses
proxy.tsis stale — no middleware file exists today.