12.55Common bad patterns
Bad #1
Query Salesforce
if not found:
Create
under concurrency.
Race condition.
Bad #2
Retry all timeouts with Create
Duplicates.
Bad #3
Use email as universal idempotency key
Unstable/non-unique business identity.
Bad #4
Deduplicate messages but ignore ordering
Stale state can still win.
Bad #5
Upsert Salesforce, therefore entire workflow is idempotent
Other side effects may duplicate.