← Back

Weekly Digest

How we stay current on M&A activity in our sellers' industries. Every week the digest finds fresh, verified deal announcements across the sectors we're active in and surfaces the ones that matter to specific companies in our pipeline — so when something moves in a market we care about, we know that week, not when a database catches up. Rebuilt from v1 (a per-industry Perplexity report) and now running as a script job on the agent harness.

System Architecture
+--------------+ +---------------------------+ +--------------+ | HubSpot | | DISCOVERY SOURCES | | Microsoft | | (pipeline | | wire RSS (primary) | | Graph | | sellers) | | Exa | Google News | | sendMail | +------+-------+ | trade press | Perplexity | +------+-------+ | +------------+--------------+ ^ v | | +---------------------------------------------------------+ | WEEKLY DIGEST (harness script job) | | | | 1. Fetch Targets --> 2. Group by Industry | | | | | | v v | | 3. Discover (wires first) --> 4. Verify every item | | | | | | v v | | 5. Match to targets --> 6. Render + send | +---------------------------------------------------------+ SCHEDULE: Thursdays 11:00 UTC (harness job) DEPLOY: agent harness on Render
Data Flow
+------------------+ | HubSpot | | pipeline sellers | | (active status) | +--------+---------+ | v +------------------+ +------------------------------+ | Group by | | PER-INDUSTRY DISCOVERY | | industry, ---|---+| wire RSS (PRN, GNW, BW) | | derive niche | | Exa (domain-pinned) | | search terms | | Google News | trade press | +------------------+ | Perplexity (domain-pinned) | +--------------+---------------+ | v +------------------------------+ | STRUCTURE + DEDUPE | | Claude -> deal items; | | dedupe by URL, parties, | | fuzzy headline, and every | | item previously sent | +--------------+---------------+ | v +------------------------------+ | VERIFY | | URL resolves + names both | | parties + carries its own | | pub date (page date wins); | | rejects logged with reasons | +--------------+---------------+ | v +------------------------------+ | MATCH + SEND (Graph) | | Tier 1: news matched to | | specific pipeline cos. | | Tier 2: market pulse (cap) | | empty digest never sends | +------------------------------+
Process Steps
01

Fetch pipeline targets

Pull Seller-segment companies with an active lead status from HubSpot. Companies missing a description get a cached one-shot website scrape so matching has something to work with.

02

Group by industry

Blank industries get classified by Claude. Each group derives its own niche search terms — "fire protection services" searches differently than "specialty distribution."

03

Discover from many sources, wires first

The primary source is the M&A press-release wires — PR Newswire, GlobeNewswire, Business Wire — the same place the databases source deals; lower-middle-market announcements skew to the cheap wires. Exa search (domain-pinned) gives the shallow RSS feeds a full lookback window; Google News, trade-press and PE feeds, and Perplexity (domain-filtered so it can only cite real releases) round it out. Everything dedupes by URL, parties, fuzzy headline, and against every item previously sent.

04

Verify every item

A candidate only survives if its URL resolves, the page names the specific parties, and it carries its own publication date — which overrides whatever date the model claimed. Rejects are logged with reasons. No hallucinated deals, no stale news dressed up as fresh.

05

Match to the pipeline, two tiers

Each verified item is matched to the specific pipeline companies it's relevant to. Tier 1: same sub-sector with size/region/acquirer fit — the news that directly concerns a company we're talking to. Tier 2 "Market Pulse": sector consolidation signals worth knowing, capped so they never crowd the direct matches.

06

Render and send

Two-tier HTML email sent via Microsoft Graph. Every item shows its real published date with an age note — never implied fresher than it is. An empty digest is never sent.

Output Format
+--------------------------------------------------+ | WEEKLY M&A DIGEST | +--------------------------------------------------+ | | | MATCHED TO YOUR PIPELINE | | | | PE Firm Acquires Midwest Fire Protection Co. | | PR Newswire - 6 days ago | | Relevant to: Acme Fire & Safety (sub-sector, | | size, region) | | | | ---------------------------------------------- | | | | MARKET PULSE (max 5) | | | | - Strategic buys specialty distributor | | GlobeNewswire - 3 weeks ago | | - Platform add-on in HVAC services | | Business Wire - 2 weeks ago | | | +--------------------------------------------------+

Stack

Python HubSpot API Claude API Exa Perplexity Wire RSS Microsoft Graph Agent Harness
Weekly harness script job — Thursdays, 11:00 UTC. Empty digests never send.