How do I handle the use case in a Journey where a lead in Salesforce can convert and become a contact, in which case we still want the customer record (lead or contact) to go through the same seamless experience as part of the journey, but also want to ensure that the communication includes any updated attributes that would now live on the contact level. Translating this better from a Salesforce schema perspective, is there a way to start referencing contact attributes when a lead converts while still going through a journey. Or is there a way to have a contact start the journey at the point where the lead converts?
Here is what you can try. When you convert a lead into a contact, ConvertedContactId gets populated. Maintain a Separate DE "ConvertedLeads"(also with attribute group) for all converted leads with all the converted id's. After a lead is converted if you have to refer anything related to contact, use an attribute to attribute comparison.
Example: ConvertedLeads(AttributeGroup).ConvertedContactID = Contact.ID AND hasoptedofemail = false
Please Note, if you have to do an attribute to attribute comparison, the fields should not be Nullable.