GOMAMA / BD
PHASE 1 DESIGN
  INTERNAL DRAFT · 2026-05-24 · FOR REVIEW

BD Intelligence
Engine.

A Notion-native intelligence layer that captures every BD conversation, extracts structured insight, and drafts outreach on demand.

Owner
CEO + Engineering
Horizon
4 weeks
Substrate
Notion only
Phase
1 of 3
01   PROBLEM

Context lives in
the CEO's head.

BD is founder-led, instinct-driven, inconsistent. Partner context is scattered across three channels — and lost the moment the CEO closes the app.

WhatsApp
PRIMARY · MOST BD THREADS
Threads with partners, mall ops, brand managers — none queryable.
Email
SECONDARY · PROPOSALS & NDAs
Follow-ups and contracts scattered across labels and inboxes.
Meetings
TERTIARY · UNDOCUMENTED
Whiteboard photos and recall — never written down.
02   WHY NOW

The loop we need to close.

Every BD function feeds the next. Phase 1 closes the loop end-to-end — only automated lead sourcing waits for Phase 2.

01
Lead
Intelligence
02 · PHASE 1
Outreach
03 · PHASE 1
Conversations
04 · PHASE 1
Intelligence
05 · PHASE 1
Pitch
06 · PHASE 1
Conversion
07 · PHASE 1
Insights
(loop back)
PHASE 1 · 4 WEEKS PHASE 2 — AUTOMATED LEAD SIGNALS
03   SOLUTION

Memory, intelligence,
outreach — all inside Notion.

01 / CAPTURE
Every BD message, automatically.
WhatsApp + Gmail webhooks land in a Notion Conversations DB within 60s / 5min. Tagged to Partner + Contact on ingest.
WhatsAppGmail60s SLA
02 / EXTRACT
Structured insight per thread.
Anthropic API extracts motivations, decision drivers, objections, interest level, next best action. Confidence-scored.
Haiku 4.5Opus 4.7Confidence
03 / SURFACE
Next-Best-Action on every partner.
Partner-level NBA refreshed after every event. Stuck-deal sweep daily. Weekly pattern digest Mondays at 08:00 SGT.
NBAStuck sweepWeekly digest
04 / DRAFT
CEO-approved outreach in seconds.
"Draft a follow-up for CapitaLand" → Day 0 / 3 / 7 / 14 cadence written into the Drafts DB. Never sends without approval.
D+0 / 3 / 7 / 14Human approves
04   ARCHITECTURE

One Worker. Eight primitives. Zero infra.

Source · Inbound WhatsApp Cloud API Webhook · HMAC verified · ~60% of volume
Source · Inbound Gmail API + Pub/Sub Push notifications on BD label · ~25% of volume
LLM Anthropic API Haiku 4.5 extraction · Opus 4.7 drafting / digest
Compute
Notion Worker
Single TypeScript deployment · ntn workers deploy
process.env secrets · built-in Pacer rate limiter
Webhook
ingestWhatsApp
Webhook
ingestEmail
Tool
draftOutreach
Tool
suggestNextAction
Tool
generateLeadAngle
Tool
composePartnerSummary
Sync · 1d
stuckDealSweep
Sync · 1d
weeklyDigest
Storage · Source of truth Notion DBs · 8 Partners · Contacts · Conversations · Insights · Deals · Drafts · Targets · PatternDigests
Interface Notion Custom Agent "GoMama BD" · team chats in plain language · binds Worker tools
Users CEO + BD Ops Notion UI · multi-user from day one · field-level AI/human ownership
05   DATA MODEL

Eight databases with explicit AI-owned and human-owned fields.

Partners01
One row per organization. NBA refreshed after every event; lockable.
HumanAI fields
Contacts02
One row per person. Phone + email indexed for inbound matching.
HumanAI fields
Conversations03
One row per partner per day. Raw excerpt + meta link, not full payload.
AI-written
Insights04
One row per extraction. Motivations, drivers, objections, interest, NBA.
AI-written
Deals05
One row per opportunity. Stuck flag set by daily sweep with per-stage threshold.
HumanAI fields
Drafts06
AI-generated outreach. Pending Review → Approved → Sent by human.
AI-writtenHuman approves
Targets07
Prospects not yet engaged. AI fills suggested PIC + angle on seed.
HumanAI fields
PatternDigests08
One page per week. Top objections, momentum shifts, hot + cold partners.
AI-written
06   INTERFACE

Worker primitives.

The entire system reduces to eight named entry points. Everything else is integration code.

Webhook· 2
ingestWhatsAppVerify HMAC, upsert Conversation, trigger extraction tool.Meta POST
ingestEmailFetch via Gmail API, dedupe by message-id, same pipeline.Pub/Sub POST
Tool· 4
draftOutreachDay 0 / 3 / 7 / 14 cadence drafted into Drafts DB, linked to Target.Agent · manual
suggestNextActionRefresh Partner-level NBA from latest Insights.Agent · auto
generateLeadAngleFill Target row: suggested PIC, angle (CSR / brand / ops / pilot), first draft.On Target create
composePartnerSummaryOne-paragraph brief for team handoffs — eliminates "ask the CEO".Agent
Sync· 2
stuckDealSweepFlag deals with no activity past stage threshold (7 / 10 / 14 / 21d).Daily
weeklyDigestAggregate the week's Insights into a themed PatternDigest page.Mon · 08:00 SGT
07   PLAN

4 weeks to live.

W1SUBSTRATE
Provision the substrate.
  • Seed 8 Notion DBs + view defaults
  • Spin up GoMama BD agent shell
  • Provision Meta WhatsApp Business number
  • Gmail watch on BD label
  • Deploy no-op Worker — verify URL routing
W2INGESTION
Webhooks live.
  • ingestWhatsApp + ingestEmail end-to-end
  • Anthropic extraction → Insight rows
  • Partner-level NBA update path
  • Test against one real partner thread
  • Tune extraction prompts mid-week
W3DRAFTER + AGENT
Outreach machinery.
  • draftOutreach with D+0/3/7/14 cadence
  • generateLeadAngle on Target rows
  • suggestNextAction + composePartnerSummary
  • Bind tools to GoMama BD agent
  • CEO training + prompt issue capture
W4PIPELINE + LEARN
Close the loop.
  • stuckDealSweep daily
  • weeklyDigest Mondays 08:00 SGT
  • Views: Stuck · Hot · Cold · Drafts Pending
  • Team SOP page in Notion
  • Run one week of real data; iterate
08   ROADMAP

After Phase 1 ships.

Phase 3 · The Moat 300-Pod Horizon
Partner Cockpit.
BD memory + product data shipped back to the partner as a product surface.

Partner-Facing

  • Shared Notion workspace per partner
  • Live pod usage + sensor dashboards (Suntec saw 73 mothers this week)
  • Monthly AI-generated CSR stories tied to brand campaigns
  • Automated proposal updates when partner data shifts
  • Multi-tenant white-label for resale to non-competing verticals

Strategic Outcome

  • Walk into CapitaLand with data no off-the-shelf CRM can produce
  • Renewal becomes a foregone conclusion — the cockpit is the contract
09   DONE

Phase 1 acceptance criteria.

01Every inbound WhatsApp BD message lands in a Notion Conversation row within 60 seconds.
02Every inbound BD email lands in a Notion Conversation row within 5 minutes.
03Every partner thread gets a structured Insight — motivations, objections, interest, NBA — non-empty.
04"Draft a follow-up for CapitaLand based on last call" works end-to-end in the GoMama BD agent.
05Hand a teammate a partner link and they can pick up the conversation without asking the CEO.
06Stuck-deal detection runs daily and surfaces flags in a dedicated view.
07Weekly pattern digest auto-generates one Notion page summarizing the week's trends.
10   HONESTY

What Phase 1 doesn't ship.

Three items from the brief that Phase 1 defers — with where they land and the workaround until they do.

01 / Deferred
Deck & proposal generation.
Why deferred
Tailored decks need pod usage + sensor + revenue data per partner. Without that join, decks are generic slop.
Lands
Phase 2 / 3
Phase 1 workaround
CEO continues manual decks. Substrate captures the context they'll later draw from.
02 / Deferred
Automated signal scraping.
Why deferred
LinkedIn + news APIs introduce reliability + cost noise that would bog the 4-week ship. Pattern is well-understood.
Lands
Phase 2 · worker.sync
Phase 1 workaround
signal_notes field on Target rows — manual paste or forwarded press releases.
03 / Pulled inWeek 3
Discovery questions per target.
Why in scope
Cheap to add — one Zod output field on the existing draft tool. CEO asked for it explicitly.
Lands
Phase 1 · Week 3
Implementation
Extend generateLeadAngle output with discoveryQuestions: string[] — pre-meeting thinking points alongside angle.
11   RISK

Known risks. Mitigated.

RiskMitigation
01 Worker timeout too short for synchronous LLM extraction inside webhook. Webhook acks fast; extraction fans out to a separate worker.tool() invocation.
02 AI extraction quality is too noisy to be useful. confidence field on every Insight + weekly random-sample review by CEO.
03 Notion lock-in intensifies as data grows. Acknowledged. Phase 2 Postgres ETL planned. Extraction logic is portable plain TS.
04 Meta WhatsApp template approval blocks outbound sends. Phase 1 is inbound-only. CEO sends manually. Template approval runs in parallel.
05 Notion Workers API surface shifts before Aug 11 GA. Pricing verified: $0.0023/run → ~$7-35/mo at our scale. Extraction logic stays in Notion-agnostic modules; Worker is thin glue.
12   WHY THIS MATTERS

The CapitaLand Suntec pod served 73 mothers last week, with peak demand on Saturday at 2 PM. Here is a draft CSR story tied to their 2026 brand campaign on family wellbeing. Shall I send it to Ms Tan?

PHASE 1 · NOW
BD Memory
Who Ms Tan is. What Capitaland cares about. Prior objections.
PHASE 2 · WEEK 5+
+ Product Data
Pod usage, sensor data, revenue. Meeting transcription. Warehouse + eval harness.
PHASE 3 · 300-POD SCALE
Partner Cockpit
Self-serve view for partners. Generative pitch composition.
13   ASKS

Decisions needed before Week 1.

01 Notion plan upgrade.Workers require Business or Enterprise. Confirm current tier. RecommendationUpgrade to Business immediately
02 WhatsApp number strategy.New Cloud API number vs migrate CEO's existing BD number? RecommendationNew number for Phase 1, migrate in Phase 2
03 Anthropic API spend cap.Worker cost ~$7-35/mo is negligible. LLM is the variable. Recommendation$300 / mo Anthropic hard cap
04 Unknown-sender default.Inbound message from an unrecognized phone or email — what happens? RecommendationStub Partner, status = Needs Linking
← / → · space