4079ed9d26
- Import smsSend from ./sms.js - Add TCPA opt-out constant - Check email+SMS logs separately to allow independent sends - Add smsOptIn and phoneE164 to client query - Conditionally send SMS for opted-in clients with valid E.164 phone - SMS message: pet name, service, groomer, confirm/cancel links, TCPA text - SMS failures logged but don't block email delivery - Feature flag: only attempts SMS when SMS service is initialized - Idempotency: per-channel reminder log prevents duplicate sends Co-Authored-By: Paperclip <noreply@paperclip.ing>