Repository navigation
feat(sms): toll-free compliance before launch - #21
Conversation
…pages Co-authored-by: Ricardo Vega <github@noctusoft.com>
Co-authored-by: Ricardo Vega <github@noctusoft.com>
Review (Claude Code, against the Noctusoft relay contract)Passes:
Follow-up: Deploy order:
|
Renumber sms_consent migration to 0011 after develop's 0010_start_link. Landing page gets the Privacy/Terms footer; landing tests use signed form webhooks, OTP consent, and TwiML. The stranger start-link test is marked todo: the consent gate blocks that reply. Co-authored-by: Ricardo Vega <github@noctusoft.com>
|
Merged Simple conflicts (resolved): Open intent conflicts (need a decision):
|
…rsor/sms-compliance-9b88 Renumber sms_consent migration to 0012 after develop's 0011_email_signin. One inbound signature check: develop's INBOUND_SMS_URL and relaySignature, this branch's 503-in-production when the secret is unset. SMS consent is required for a mobile sign-in and for the add-mobile card, not for email. Develop's STOP-as-text and stranger start-link tests are marked todo: both conflict with TwiML keyword replies and the consent gate. Co-authored-by: Ricardo Vega <github@noctusoft.com>
Summary
sendText, including brand prefixing and relay21610handling./privacyand/terms#smspages, and site footer links.Test plan
npm run typechecknpm run lintnpm test(116/117 pass here; toolchain test expects Node ≥24 as in CI)test/sms-compliance.test.ts,test/legal-pages.test.ts,test/phone.test.ts