cocottetech/@platform/codebase/@features/prospecting/docs/cross-provider-graph.screen.md

5.7 KiB

cross-provider-graph.screen — web FE

Priority: Low. The graph's primary surface is conversational (copilot inline cards). This screen exists for ops, support, and the small fraction of providers who want a non-conversational view of network signal.

Surface: quinn.prospecting (Quinn's instance) → /graph route. Calls: platform.api only.

Layout

┌────────────────────────────────────────────────────────────────────┐
│  Graph                                       [consent] [contributors]│
├────────────────────────────────────────────────────────────────────┤
│  Search subject ▾  [phone / handle / photo-drop]                   │
├────────────────────────────────────────────────────────────────────┤
│  Subject card                                                       │
│  ─ confidence band: ███████░░░ (high, 47 contributors)              │
│  ─ outcomes: ▮ converted 31  ▮ ghost 8  ▮ blocked 2  ▯ no-show 6   │
│  ─ velocity: median 4 touchpoints, 38h first→outcome                │
│  ─ safety flags: 1 active peer-attested (open in coop-drawer)       │
│  ─ qualification fingerprint: [chips: fast-replier, photo-pre-veri,│
│                                  declines-deposit, weekend-only]    │
├────────────────────────────────────────────────────────────────────┤
│  Your local prospects matching this subject  (2)                    │
│  ┌──────────────────────────────────────────────────────────────┐  │
│  │ prospect-1284   • last touch 2d  • not booked  • [open]      │  │
│  │ prospect-0973   • last touch 4mo • booked      • [open]      │  │
│  └──────────────────────────────────────────────────────────────┘  │
├────────────────────────────────────────────────────────────────────┤
│  Network contributions (anonymised)                                 │
│  ─ "23 providers contributed to this subject's signal"              │
│  ─ "Last contribution: 11h ago"                                     │
│  ─ no per-provider attribution unless attributed-contribution opted │
└────────────────────────────────────────────────────────────────────┘

Gestures

  • Tap subject card → expand to full attribution view (only attributed contributors visible).
  • Tap local prospect row → opens prospect-detail.screen (existing, in ai-copilot/docs/).
  • Tap safety flag → opens coop-drawer.screen filtered to this subject.
  • Long-press / right-click subject card → "Report wrong match" → emits subject-key-collision correction (feeds specialist-graph-resolver's correction lens).
  • [consent] button → opens consent management screen for this Person's graph participation.
  • [contributors] button → directory of attributed contributors (those who opted into attributed contribution for this subject).

States

State Behaviour
No consent given Screen shows a single CTA: "Join the prospect graph" with what's shared / what isn't. No subject search until consent.
Consent given, empty network Search works but returns "provider-local only" badge; aggregates absent.
Sparse network Confidence band capped at "medium"; explicit hint "based on 5 contributors".
Subject opted out Search returns "subject has opted out of the graph" with no further detail.
Network partition Banner: "Graph degraded — provider-local data only." Per degraded-mode.flow.md.
Audit replay When entered from audit-drawer, all aggregates render as they were at the audited timestamp (no live data).

Privacy invariants

  • Never show a contributing provider's name unless that provider opted into attributed contribution for this specific subject-key.
  • Never show raw messages from another provider's tenant — anywhere, ever.
  • Subject opt-out sentinel renders identically regardless of how many contributions existed pre-opt-out (no inference of prior signal volume).
  • Search-by-photo-drop hashes locally before query; the photo never leaves the client.
  • Differential-privacy noise is applied at contribution; the displayed confidence band reflects post-noise certainty.
  • cross-provider-graph.brief.md, cross-provider-graph.contract.md
  • @features/ai-copilot/docs/prospect-detail.screen.md (per-row drill-in)
  • @features/ai-copilot/docs/coop-drawer.screen.md (safety flag drill-in)
  • @features/ai-copilot/docs/audit-drawer.screen.md (audit replay)
  • @features/ai-copilot/docs/degraded-mode.flow.md
  • @features/ai-copilot/docs/00-system-visual-system.md (typography, spacing, chip styles)