Loop B2B-L3 · Marketing — B2B pipeline · reports to BU leads

The first leads that arrive with receipts attached.

When LinkedIn lead forms go live: every new lead is qualified against our ideal-customer profile and proposed into the CRM one at a time — with its source and campaign stamped on the record from birth.

Design on the shelfOn decision🕐 Per lead⚙️ Design on the shelf
Part 1 — the plain-english view

Paid leads with their origin story attached.

What it watches
  • Incoming LinkedIn lead-form submissions
  • Each one qualified against the same ICP gate as the lead-intelligence loop (shared machinery)
When & how it speaks

Per qualified lead: a proposal to the BU lead — approve and it enters the CRM with source, medium and campaign stamped.

Why it exists

Today 100% of our CRM deals have no source recorded — we literally cannot say which marketing produced which deal. Leads born through this loop are the first with full attribution from day one, which is what makes the B2B spend measurable at all.

100%
of today's CRM deals have no source recorded — the gap this loop closes for B2B
1 by 1
every record approved by the BU lead before it exists in the CRM
0
raw list imports — reply-only philosophy: contacts enter on real interaction only
📥

Lead form fires

A prospect submits on LinkedIn

🚪

ICP gate

Same qualification machinery as CRM-3

💬

Proposed to BU lead

With everything known about the lead

Approve per record

One at a time, no batches

🏷️

Born with receipts

Source/medium/campaign stamped at creation

What it will never doNever contacts a lead, never creates a CRM record without a named person's approval.
Where it stands today · July 2026Design on the shelf — activates with the B2B ladder once B2B-L1 exists (it needs campaigns to exist before forms do). The qualification machinery is already built and tested in CRM-3.
Part 2 — under the hood

How it's wired: systems, models, and the path a number takes.

For implementers and the technically curious. The full build sheet — verified queries, thresholds, and build notes — lives on the specs page.

ReadsLinkedIn lead forms
Submissions via the API
StepICP qualification
Shared gate with CRM-3
DeliversProposal to BU lead
Everything known, one lead per message
Human gateApprove / reject
Per record
Stepodoo-write gate
Created with source stamped — attribution from birth
System we read Automated step State / memory Human decision
SystemRole in this loop
LinkedIn Lead Genforms APIThe lead source — read-only pulls of form submissions.
Odoo 19 CRMread-only connectionThe live CRM. The loop reads deals, activities and teams through a read-only connection — writes are technically impossible on this credential.
odoo-write gateper-recordThe one write path, per-record approved, source fields mandatory.
Agent Vaultcredential storeWhere API keys live. Loops get read-only credentials from the vault; nothing is hardcoded in scripts.
Hermesagent runtime on our serverThe scheduler that wakes the loop up. Each loop is a cron job under a Hermes profile; the planned bizops profile will host the business digests (IT loops run under vpsops).
Email renderer + gwsrender_email.pyAll digests pass through one shared renderer: Huxberry-branded HTML, tables for repeated rows, a coral 'needs your response' box when the loop has questions, and an arrow link on every record. Sent from the loops mailbox via the Google Workspace CLI.
Model / brainWhat it does here
Claude Opusthe judgment modelReviews alert wording, thresholds, and anything a human will read and act on. Post-Fable, Opus owns everything that ships.
GPT-5.5 via Codexthe bulk-work modelWrote and maintains the mechanical parts — SQL, diffing, digest assembly. Effectively free on our existing subscription, so routine cycles cost almost nothing.
State & memory

Processed-submission ledger (no double proposals) + the shared ICP rubric.

Delivery

Per-lead proposal to the BU lead; weekly rollup of volumes and quality.

Safety rails

Reply-only sync principle; per-record approval; UTM attribution mandatory so the spend stays auditable.

Before it can run for real
  • B2B-L1 live (campaigns before forms)
  • BU-lead approval workflow agreed
Full build sheet →