Area: mobieusHelp (audit p7) · Surface: mobieusHelp (helpdesk) — ticket resolution + portal + admin dashboard · Dimension: competitor-gap · Severity: major
Zendesk, Intercom, and Help Scout all send an automatic satisfaction survey (good/bad or 1-5 CSAT, plus NPS) when a ticket is resolved, and surface CSAT as the headline agent/team KPI. mobieusHelp has no way to ask the requester whether the resolution helped, no rating store, and no CSAT reporting. For a support product this is the single most-cited quality metric customers expect to manage their team by. Its absence makes mobieusHelp look like a ticket tracker rather than a customer-experience tool, and blocks any 'measure agent quality' story in sales.
Evidence
Zero CSAT schema across all 31 helpdesk tables. `grep -iE 'csat|satisfaction|survey|rating|nps|score' database/migrations/2026-06-*helpdesk*.sql` returns only an unrelated comment line; `grep -riE 'csat|satisfaction|survey|nps' src/Models/Helpdesk src/Services/Helpdesk src/Controllers/Helpdesk` returns nothing. The admin dashboard (AdminController.php:20-46) tracks tickets/open/deflected/SLA but has no satisfaction metric. Status-change to resolved/closed in TicketService::changeStatus has no survey trigger.
Suggested fix. Add helpdesk_satisfaction_ratings (ticket_id, requester_id, score, comment, created_at). On status->resolved, queue a one-click rating email/portal prompt (reuse HelpdeskMailer + email_outbox). Add a CSAT tile + per-agent CSAT to the admin dashboard and agent dashboard. Optionally feed ratings into the existing HelpdeskAI knowledge-gap hook.
Filed by the automated tenant-app audit and adversarially evidence-verified. Status: verified. Open — not yet actioned.
Patrick Bass
@mobieus