11 · Gaps & audit status

Honest scoreboard so we develop the right things in the right order. Living detail: AUDIT-FINDINGS.md.

Fixed (do not re-litigate without re-verify)

  • Nginx /media/ for platform catalog images
  • SQL parameterized queries (flagged files)
  • Device auth secrets for kiosk/mobile routers
  • Session secret + Secure cookie + file perms
  • Legacy payments router disabled
  • Auth middleware log noise → logger.debug
  • Master-admin mutation audit events
  • HR admin role gates + benefits IDOR lockdown
  • Bare /api unscoped auth on maintenance/bi/billing/financial
  • kitchen_tickets ensure-if-missing

Still open

ItemTypePriority class
Parallel routes/api/* router tree (S11-10)Architecture debtCareful cleanup project
Frontend Vite-in-productionOps maturityMedium
Offline service worker disabledReliabilityMedium
KDS → signage live boardRoadmap featureProduct
Inventory field UI (isConsumable, weight/volume)Product depthTier 3
Unit field design reconciliationSchema clarityTier 3
Register ceremony for solo operatorsICP / UXValidate with users
Gift cards / loyalty full E2E re-verifyVerificationBefore big promo clients
Timeclock arbitrary staffIdIntegrityTrace UI first
Analytics vs main DB report reconciliationCorrectnessMedium
ICP workbook unfilledStrategyNon-code workshop
No version control on live boxProcess riskgperep now

Recurring product pattern

Capable backend · thin default UI Seen in inventory units, weight fields, isConsumable, register ceremony weight for small tenants. Prefer completing UI / toggles over rewriting services.