Bug fixes
Company name clobber on nameless upserts (issue #853)UpsertCompany operations that arrive without a company name fell back to
using the domain as the name. That fallback exists for record creation —
Attio requires a name — but the same value also shipped on the update path,
where Attio’s PATCH replaces the attribute outright. A repeat RB2B visit
whose payload lacked company_name, or any Cal.com booking whose host’s
company already existed, silently rewrote a curated name like
“Acme Corporation” to the bare domain (“acme.com”, or “gmail.com” for
personal Cal.com hosts).
The dispatcher now gates name behind merge_only_if_empty exactly like
industry, employee_count, estimate_revenue, and linkedin_url:
- RB2B visit upserts declare
namein their merge list, so a populated Attio name survives repeat visits. An empty name still fills with the domain. - Cal.com host upserts pass
merge_only_if_empty=["name"], making them true ensure-exists writes: the domain is attached, the name is never touched. - The domain-as-name fallback still applies when a nameless upsert creates a record, since Attio requires a name on create.