Fixed
- Campaign Performance now calculates read rate from campaign-scoped recipient rows whose WhatsApp provider status is
read. - Inbound customer replies and shared template-name matches no longer inflate the campaign read-rate column.
- Recipient status aggregation is paginated so campaigns with more than 1,000 recipients are not capped by Supabase row limits.