cocottetech/@platform/codebase/@features/prospecting/docs/prospecting.brief.md

57 lines
3.9 KiB
Markdown
Raw Normal View History

# prospecting.brief — parent product brief
**Code:** `prospecting`
**Tenancy:** Person-primary, Org-overlay (per `DESIGN.md §5`)
**Primary interface:** AI (copilot fleet). Web FE is a low-priority secondary surface.
**API plane:** `platform.api` on black (per `INFRA.md §4`). No new API service.
**Status:** P5 incubation; existing prospect-resolver in production under `ai-copilot/`.
## North-star metric
**Provider free-time per booked appointment.** Every prospecting subfeature is judged by whether it removes provider work, not by raw conversion. Conversion lift is the means; reclaimed hours are the end.
Secondary metrics:
- Time-to-first-response on inbound prospects (target: < 60s, AI-drafted, provider one-tap approve).
- Qualification accuracy (precision/recall of "this prospect will book" predictions, measured via held-out outcomes).
- Cross-provider signal contribution rate (% of consented providers whose prospect outcomes feed the graph weekly).
## Problem
A provider's day is dominated by repetitive prospect work: re-qualifying tire-kickers, re-drafting the same intro, manually triangulating "have I talked to this person before" across surfaces. Each provider sees their own slice of a prospect; the same person ghosting provider A and converting with provider B teaches nobody. And the highest-value providers spend prime hours triaging instead of working.
## Solution shape
Four subfeatures, all sharing `prospects` + `prospect_touchpoints` on `platform.db`, all addressable through the copilot fleet:
| # | Subfeature | What it removes from the provider's day |
|---|------------|------------------------------------------|
| 1 | Cross-provider graph | Re-qualifying prospects whose history exists elsewhere in the consented network. |
| 2 | Warm intros | Manually fielding cold pitches that another provider's copilot has already vetted. |
| 3 | Auto-qualify + draft | The first 3090s of every inbound message: read, score, draft a reply. |
| 4 | Internal marketplace (v2) | Hand-offs for overflow / wrong-fit prospects to vetted peers. |
## Constraints
- **No auto-merge across providers.** Per `Y-cross-org-marketplace.brief.md §Y4`, prospect rows stay per-provider. The graph surfaces *coop-attested intel about the same subject*, not a merged row.
- **Person-level consent for graph contribution.** Providers opt in per-prospect or per-policy; the consent state is auditable and revocable.
- **AI-first, FE-thin.** Web FE surfaces only what a copilot cannot conversationally render (dense tables, multi-prospect comparison, batch ops). Default consumption is voice/chat.
- **Single API plane.** All endpoints attach to `platform.api`; no new microservice. New tables migrate via `infrastructure/migrations/`.
- **Platform actions live upstream.** Any new "do X to a prospect" action contributes to `@ai/@skills/platform-prospecting/actions/*`, not into this repo.
## States (parent feature)
1. **Empty network** — provider just onboarded, no consented peers, graph is provider-local. Auto-qualify + draft still works.
2. **Sparse network** — 210 consented peers, graph signal is suggestive but not authoritative.
3. **Dense network** — 50+ consented peers in a category/region; warm intros become viable.
4. **Saturated** — overflow routing (v2 marketplace) becomes meaningful.
## Related docs
- `cross-provider-graph.brief.md`, `warm-intros.brief.md`, `auto-qualify-draft.brief.md`, `internal-marketplace.brief.md`
- `@features/ai-copilot/docs/specialist-prospect-resolver.contract.md` (row-level dedup; unchanged)
- `@features/ai-copilot/docs/prospect-detail.screen.md` (resolved-prospect drawer; unchanged)
- `@features/ai-copilot/docs/Y-cross-org-marketplace.brief.md` (external marketplace; orthogonal to internal v2)
- `@features/ai-copilot/docs/N-provider-coop.brief.md` (peer-vetting primitives; warm intros + marketplace depend on it)
- `DESIGN.md §5` (tenancy), `§7` (naming)
- `INFRA.md §4` (single API plane on black)