Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -81,3 +81,5 @@ supabase/.temp/

# Operator-local QA spec fixtures (not shipped in customer installs)
e2e/_qa-*.spec.ts

demo-output/
378 changes: 378 additions & 0 deletions data/cro/deals.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,378 @@
{
"$schema_version": "1.0.0",
"table": "cro.deals",
"description": "WaveX partner-deal pipeline tracker. Source of truth for the `open_deals` snapshot produced by routine WAVAAAAA-17 (workflow:cro.demo:on_fire). One record per partner_id; multiple contacts at the same company use distinct ids (e.g. wolt-samuel, wolt-niilo).",
"stages": ["identified", "contacted", "demoed", "negotiating", "verbal", "won", "lost"],
"open_stages": ["identified", "contacted", "demoed", "negotiating", "verbal"],
"currency": "USD",
"gmv_basis_default": "design-partner pilot = $3000 (3 mo × $1k/mo per send-design-partner-day10.mjs offer). Identified pre-send rows carry $0 until first response.",
"updated_at": "2026-05-20T16:00:00Z",
"updated_by": "cro.close (agent b1dedd5b)",
"deals": [
{
"partner_id": "onfleet",
"company": "Onfleet",
"contact": "Kjell",
"email": "kjell@onfleet.com",
"stage": "contacted",
"last_touch_at": "2026-05-19T13:00:00Z",
"last_touch_kind": "wave1-followup",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Wait 5 business days for reply; if no response by 2026-05-26, move to lost.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave1-followup.mjs"
},
{
"partner_id": "buildops",
"company": "BuildOps",
"contact": "Dzmitry",
"email": "dzmitry@buildops.com",
"stage": "contacted",
"last_touch_at": "2026-05-19T13:00:00Z",
"last_touch_kind": "wave1-followup",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Wait 5 business days for reply; if no response by 2026-05-26, move to lost.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave1-followup.mjs"
},
{
"partner_id": "current",
"company": "Current",
"contact": "Trevor",
"email": "trevor@current.com",
"stage": "contacted",
"last_touch_at": "2026-05-19T13:00:00Z",
"last_touch_kind": "wave1-followup",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Wait 5 business days for reply; if no response by 2026-05-26, move to lost.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave1-followup.mjs"
},
{
"partner_id": "slice",
"company": "Slice",
"contact": "David Billingham",
"email": "david.billingham@slice.com",
"stage": "contacted",
"last_touch_at": "2026-05-19T13:00:00Z",
"last_touch_kind": "wave1-resend-original-bounced",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Verify deliverability; if no response by 2026-05-26, move to lost.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave1-followup.mjs"
},
{
"partner_id": "wolt-samuel",
"company": "Wolt",
"contact": "Samuel Tervaskanto",
"email": "samuel.tervaskanto@wolt.com",
"stage": "contacted",
"last_touch_at": "2026-05-17T09:00:00Z",
"last_touch_kind": "design-partner-day0-cold",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Send Day-7 follow-up on 2026-05-24T09:00Z (tools/send-design-partner-day7.mjs).",
"next_action_owner": "cro.outbound",
"source": "tools/send-design-partner-day7.mjs"
},
{
"partner_id": "wolt-niilo",
"company": "Wolt",
"contact": "Niilo",
"email": "niilo@wolt.com",
"stage": "contacted",
"last_touch_at": "2026-05-17T09:00:00Z",
"last_touch_kind": "design-partner-day0-cold",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Send Day-7 follow-up on 2026-05-24T09:00Z (tools/send-design-partner-day7.mjs).",
"next_action_owner": "cro.outbound",
"source": "tools/send-design-partner-day7.mjs"
},
{
"partner_id": "discord",
"company": "Discord",
"contact": "Thomas Jacques",
"email": "thomas.jacques@discord.com",
"stage": "contacted",
"last_touch_at": "2026-05-17T09:00:00Z",
"last_touch_kind": "design-partner-day0-cold",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Send Day-7 follow-up on 2026-05-24T09:00Z (tools/send-design-partner-day7.mjs).",
"next_action_owner": "cro.outbound",
"source": "tools/send-design-partner-day7.mjs"
},
{
"partner_id": "robinhood",
"company": "Robinhood",
"contact": "Mayank Agarwal",
"email": "mayank.agarwal@robinhood.com",
"stage": "contacted",
"last_touch_at": "2026-05-17T09:00:00Z",
"last_touch_kind": "design-partner-day0-cold",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Send Day-7 follow-up on 2026-05-24T09:00Z (tools/send-design-partner-day7.mjs).",
"next_action_owner": "cro.outbound",
"source": "tools/send-design-partner-day7.mjs"
},
{
"partner_id": "n26",
"company": "N26",
"contact": "Gino Cordt",
"email": "gino.cordt@n26.com",
"stage": "contacted",
"last_touch_at": "2026-05-17T09:00:00Z",
"last_touch_kind": "design-partner-day0-cold",
"expected_gmv": 3000,
"gmv_basis": "design-partner pilot ($1k/mo × 3 mo)",
"next_action": "Send Day-7 follow-up on 2026-05-24T09:00Z (tools/send-design-partner-day7.mjs).",
"next_action_owner": "cro.outbound",
"source": "tools/send-design-partner-day7.mjs"
},
{
"partner_id": "duolingo",
"company": "Duolingo",
"contact": "Natalie Glance",
"email": "natalie@duolingo.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "address-resolved-after-bounces",
"expected_gmv": 0,
"gmv_basis": "no contact yet; first send pending in Day-7 batch",
"next_action": "First send goes out 2026-05-24 in Day-7 batch (nglance@ + natalie.glance@ both bounced; correct address resolved via WAVAAAA-446).",
"next_action_owner": "cro.outbound",
"source": "tools/send-design-partner-day7.mjs"
},
{
"partner_id": "cerebral",
"company": "Cerebral",
"contact": "Sarah Griffis",
"email": "sarah.griffis@cerebral.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave2.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave2.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "lemonade",
"company": "Lemonade",
"contact": "Tal Cohen",
"email": "tal.cohen@lemonade.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave2.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave2.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "jobber",
"company": "Jobber",
"contact": "Ryan Jones",
"email": "ryan.jones@getjobber.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave2.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave2.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "housecall-pro",
"company": "Housecall Pro",
"contact": "Manish Singh",
"email": "manish.singh@housecallpro.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave2.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave2.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "bringg",
"company": "Bringg",
"contact": "Alexander Simenduev",
"email": "alexander.simenduev@bringg.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave2.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave2.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "companycam",
"company": "CompanyCam",
"contact": "Keegan Rice",
"email": "keegan@companycam.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "connecteam",
"company": "Connecteam",
"contact": "Daniel Nuriel",
"email": "daniel@connecteam.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "zuper",
"company": "Zuper",
"contact": "Raghav Gurumani",
"email": "raghav@zuper.co",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "raken",
"company": "Raken",
"contact": "Kevin McKee",
"email": "kevin.mckee@rakenapp.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "fieldpulse",
"company": "FieldPulse",
"contact": "Gabriel Pinchev",
"email": "gabriel@fieldpulse.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "breezeway",
"company": "Breezeway",
"contact": "Paul Northup",
"email": "paul.northup@breezeway.io",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "greenlight",
"company": "Greenlight",
"contact": "Sameera Rao",
"email": "sameera.rao@greenlightcard.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "step",
"company": "Step",
"contact": "Alexey K.",
"email": "alexey@step.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "albert",
"company": "Albert",
"contact": "Rishi Patel",
"email": "rishi@albert.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
},
{
"partner_id": "brightline",
"company": "Brightline",
"contact": "Vicki Mar",
"email": "vmar@hellobrightline.com",
"stage": "identified",
"last_touch_at": null,
"last_touch_kind": "enriched-pre-send",
"expected_gmv": 0,
"gmv_basis": "gated on board approval 599e267e — no GMV until live send",
"next_action": "Live send via tools/send-wave3.mjs once gate 599e267e is lifted.",
"next_action_owner": "cro.outbound",
"source": "tools/send-wave3.mjs",
"blocked_by": "board gate 599e267e"
}
]
}
Loading
Loading