Bug Fix

Fewer duplicate contacts from concurrent lead ingestion

When the same person arrived through two requests at nearly the same moment,
some ingestion paths could each decide “this contact doesn’t exist yet” and
create a separate record — leaving duplicate contacts to merge by hand. We
audited every place that creates a contact and closed the remaining gaps.

What’s Fixed

  • Lead-event webhooks now serialize contact creation per email/phone/external
    ID. If two events for the same person land together, one contact is created and
    the other request reuses it. (A momentary collision returns a retryable
    response instead of a duplicate.)
  • Marketplace inquiries now reuse an existing contact for a repeat inquirer
    instead of creating a new lead each time.
  • Inbox “Add as new lead” can no longer create two contacts from a
    double-click on the same conversation.
  • Encompass loan imports no longer create duplicate contacts when the same
    borrower or vendor email appears on two loans processed at once.
  • Email sync (Gmail / Outlook) no longer creates duplicate contacts when the
    same sender is synced by two connected mailboxes simultaneously.

Migration

No action required. Existing duplicates already in your account still need to be
merged manually; this change stops new ones from forming.