Items #3-#7 all verified:
#3 Scheduled Tasks: all 8 Celery beat tasks verified (overdue detection,
SLA reminders, dept-response checks). 0 bugs.
#4 Email/SMS: complaint status email verified (correct subject, ref#, from/to,
HTML body). Notification service verified. SMS works via console backend.
0 bugs.
#5 Concurrent operations: 3 threads on same complaint — 2 succeeded, 1 correctly
rejected (invalid transition). No data corruption. State machine enforced.
#6 Performance: 12 pages measured, 0 slow (>3s), heaviest /my/ at 1.7s/287 queries.
All pages have >50 DB queries (N+1 patterns — optimization opportunity, not bug).
#7 Accessibility: axe-core WCAG audit on 15 pages. Findings (consistent patterns):
- button-name: icon-only buttons without aria-label (9 nodes/page — lucide icons)
- link-name: links with no discernible text (16 nodes/page — likely sidebar icons)
- color-contrast: some text below WCAG AA 4.5:1 ratio (4-8 nodes/page)
- select-name: select elements without aria-label (1-6 nodes/page)
- label: form inputs without associated <label> (1-2 nodes on public forms)
These are UX improvements, not functional bugs. Only public-landing page is clean.