- Add recipientSmsPhone InvocableVariable to DocusignEnvelopeRequest
- Add SMS_PLACEHOLDER_EMAIL constant to DocusignCompositeEnvelopeBuilder
- Update resolveRecipients() and buildRecipient() to accept smsPhone param
- Chain .withSmsDelivery(smsPhone) on recipient when smsPhone is provided
- Substitute placeholder email when recipient has no email and SMS phone given
- Add Flow V4 with Get_Recipient_Contact lookup, Is_Recipient_Email_Blank
decision, and SMS_Phone_Screen to collect phone for no-email recipients
- V3 left untouched for existing Salesforce deployments