Architectural Placement — Below Signal, Above Raw CRM
This layer sits between the Signal Interpretation Engine (Layer 04) and the raw CRM data store. All agents read from the normalized graph. No agent writes directly to CRM primitives without graph validation. This is the substrate that makes probability modeling trustworthy.
Canonical Revenue Graph
The unified entity model agents operate on
Account (Atomic Unit)
↳ has_many
Contacts
↳ classified_as
Buying Group Roles (Economic · Technical · Champion · Influencer · Blocker)
↳ has_many
Opportunities (Financial Container)
↳ linked_to
Contact Roles on Opportunity
↳ has_many
Activities (rolled to Contact → Account → Opportunity)
↳ has_many
Campaign Membership (motion-tagged, program-tagged, time-bound)
↳ has
Product Usage (telemetry from Product Intel Agent)
↳ has
Partner Association (tier, co-sell history, overlap)
↳ assigned_to
Territory → Pod
1. Lead → Account Resolution
No account-level probability should run on orphan leads
Deterministic Match
High Confidence
Exact domain match · Known subsidiary mapping · Manual assignment · CRM-verified merge
Probabilistic Match
Requires Confidence Gate
Email pattern similarity · Company name fuzzy match · Third-party enrichment · IP-to-company mapping
If confidence < threshold → human review queue
Resolution Rules
✓Lead must be attached to Account before any signal scoring occurs
✓Orphan leads are excluded from APS calculation — they create noise, not signal
✓Subsidiary → parent mapping must be maintained for enterprise accounts
✕No auto-merge without deterministic match or human approval
2. Lead → Contact Conversion Governance
Conversion is structural mutation · Agents must not blindly convert
Conversion Policy (CRM-Agnostic)
◇Conversion only when qualification threshold met
◇No auto-opportunity creation without probability gate
◇Track original source lineage across conversion (lane + channel + timestamp)
◇Normalize regardless of CRM flavor (SFDC Lead→Contact+Account, HubSpot Contact→Company)
✕No conversion without account resolution — orphan contacts are as dangerous as orphan leads
3. Contact Role Mapping
If an opp has 1 contact, buying group coverage is unknown
Economic Buyer
Budget authority
Technical Buyer
Requirements gate
Champion
Internal advocate
Influencer
Shapes evaluation
Signal Agent Integration
→Buying group completeness factors into APS. 3+ stakeholders across different roles = probability lift
→Without role mapping, engagement density becomes inflated noise — 5 touches to 1 person ≠ buying motion
→Field Acceleration Agent uses stakeholder density as primary trigger for event investment
4. Opportunity Integrity
Financial containers must be governed
Opportunity Governance Rules
◆Max active opps per account — guard against duplication and pipeline inflation
◆Primary opp designation — clear when multiple exist (expansion vs new)
◆Territory alignment enforced — opp owner must match territory assignment
◆Partner association tagged — co-sell opps must carry partner metadata for lift measurement
◆Stage mutation locked — only Qualification Agent or human can advance stage
5. Activity & Campaign Tagging
Without normalized tagging, Learning Agent attributes on fiction
Activity Roll-Up
Contact → Account → Opportunity
Every activity must roll up through the graph hierarchy. Orphan activities (no contact link, no account link) are excluded from signal scoring. Activities carry: type · channel · timestamp · motion_tag
Campaign (Tracking Container)
Motion-Tagged · Program-Tagged · Time-Bound
SFDC Campaign objects must carry: acquisition_mode (lane) · program_id · date_range · segment_target. Not generic buckets like "Q2 Webinar."
Routing Agent Responsibilities
No routing without identity confirmation
Pre-Routing Validation Sequence
1Validate Account resolution — lead attached to canonical account entity
2Validate Territory alignment — account maps to correct territory/pod
3Validate Pod capacity — target pod not over utilization threshold
4Validate Buying group coverage — minimum role threshold for escalation
5Validate Duplicate opp check — prevent parallel opportunity creation
6Validate Partner tag — if co-sell eligible, partner metadata attached
CRM Failure Cascades
How bad mapping corrupts everything downstream
Orphan leads (no account)
APS runs on noise
Signal weights drift
False positive routing → wasted BDR
Duplicate accounts
Split engagement history
Understated probability
Missed high-value accounts
No contact roles on opp
Buying group unknown
Stage inflation
Forecast miss → pipeline shock
Untagged campaigns
Learning Agent blind
Cannot measure lift by lane
Budget allocated by politics, not data
Territory misalignment
Wrong pod gets account
Capacity overload / idle
Velocity degrades, SLA missed
Subsidiary unmapped
Parent treated as separate
ICP scoring fragmented
Enterprise deal sized as mid-market
Pre-Agent Deployment Safeguards
Run these before any agent touches CRM data
1
Duplicate Account Audit
Merge confirmed duplicates. Flag probabilistic matches for review.
2
Domain Normalization
Canonical domain per account. Subsidiary mapping table. Email pattern registry.
3
Contact Role Coverage Audit
% of active opps with ≥2 contact roles mapped. Target: 80%+.
4
Territory Consistency Check
Account territory matches opp owner territory. Zero misalignment tolerance.
5
Stage Mutation Lock
Permission audit on who/what can change opp stage. Lock to agents + approved humans.
6
Campaign Tagging Taxonomy
Every active campaign carries: acquisition_mode, program_id, segment_target, date_range.
Minimum Data Maturity Before Autonomous Routing
Not Ready — Manual Only
Duplicate rate >10%. Contact role coverage <50%. Campaign tagging <60%. Territory misalignment >5%. Agents assist humans — they do not route.
Partial — Agent-Suggested
Duplicate rate <5%. Contact roles >70%. Campaign tags >80%. Territory clean. Agents recommend routing — humans confirm.
Ready — Agent-Governed
Duplicate rate <2%. Contact roles >85%. Campaign tags >95%. Territory zero-mismatch. Agents route autonomously within bounded authority.
Interview Framing
"We treat CRM objects as a graph, not tables. Lead-to-account matching, contact role mapping, and opportunity integrity are prerequisites for probability modeling. Agents operate on normalized entities, not raw CRM records. And we gate agent autonomy to data maturity — no routing without identity confirmation."
The Gate Between Architecture and Operational Risk
Account is the atomic unit. Opportunity is the financial container. Contact is the signal carrier. Confuse those and probability collapses. Without this layer, agents amplify data disorder at machine speed. ABX degenerates into multi-channel chaos. The Identity Graph is not data hygiene — it is the substrate that makes every other layer trustworthy.