Buyer-facing enrichment logs: Default runs no longer print one INFO line per profile URL when a website inbox is found. Harvests are rolled into Profiles saved recap lines (website inbox harvested for N profile row(s)) and remaining counts land in the shutdown summary. verboseLogs: true restores Verbose — INFO lines per harvest with mailbox + shortened profile/source URLs only for troubleshooting.
Local output.csv: Default uses a compact (~21 column) CRM order (id, name, merged phone, merged email, address, geo, ratings, budget, bio short, social links, directory + profile URLs, photo, scrape_error). phone column prefers storefront telephone, split contact_point_*, then phone_from_website. Detailed CSV also omits split phone cols, email_from_website / phone_from_website helper URLs (email_website_fetch_url, phone_website_fetch_url), email_website_status, filling email from Houzz first, then outbound website harvest when that field is blank. Dataset JSON still carries the granular fields (contact_point_*_phone, email_from_website, phone_from_website, etc.) for tooling that needs provenance.
Outbound website inbox discovery: No more hard-coded /contact / /cgu ladders. The Actor GETs the outbound homepage, parses a[href] anchors in DOM order, and sequentially opens up to 10 distinct same-origin HTML targets (asset-like paths skipped) until a mailbox is found or websiteEmailMaxPages (default 11 homepage + follow-ups, 12 max) is exhausted.
Console / status UX: Crawlee’s periodic “Crawled X/Y pages…” platform status and default Statistics INFO lines are disabled in favour of this Actor’s own English, outcome-first messages; catalog heartbeats no longer print page i / max or saved / cap fractions.