Smoke: Salesforce contact reconciliation round-trip
D-130 P9 live-sandbox smoke recipe (gated by RECUED_SALESFORCE_LIVE_SMOKE=1 — CI default-skips when unset; sandbox creds in docs/deploy.md). Lists data.enrichment.connection.api.salesforce.contact.* rows via the enrichment-list kernel ingredient, halts if no rows are present, halts again if the first row's meta.email is null OR not lowercase-trimmed (D-130 P3 contact reconciler canonicalizes email — uppercase-or-padded is a regression signal). Renders a summary with first-row email + lifecycle_stage to confirm the cross-source-join key is intact for the cross-vendor engagement_score_per_contact topic. Also surfaces meta.account_id when present (links to salesforce.account target_id).
How it works
Inspect the data fetches, transforms, gates, and output this recipe runs.
Settings
Configurable at install. Defaults shown — change them anytime in Recued.
salesforce
setting
=
Trust & control
What installing this recipe would let it do. Recued grants these permissions at install — review them there before approving.