Files
ten31-database/start9/0.4/startos/versions/v0.1.0.69.ts
T
Keysat 787d580550 outreach: follow-up radar — deterministic "needs attention" + one-click draft (v0.1.0:69)
The Outreach page now opens with a "Needs attention" list. A deterministic scan
(outreach_agent.follow_up_radar) surfaces investors per the email history: tier 0 "you
owe a reply" (their email is the most recent, unanswered, >=3d), tier 1 flagged + quiet,
tier 2 warm lead gone quiet (no contact in >=45d). Most urgent first; every reason is
verifiable from the data (no LLM in the surfacing — the deliberate fix for the trust
problem that sank objection-grounding). Excludes graveyard; needs email history. One
click sets the investor + suggested type (follow-up/nurture) and runs the existing
outreach drafter. Route GET /api/outreach/radar. Test mcp/test_outreach.py extended
(owe-reply/warm-quiet/recent/graveyard/order). Verified live in preview.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 21:31:52 -05:00

19 lines
949 B
TypeScript

import { VersionInfo } from '@start9labs/start-sdk'
// Follow-up radar on the Outreach page. A deterministic scan surfaces investors who
// need attention — "you owe a reply" (their email is unanswered), or a warm lead gone
// quiet (no contact in 45+ days) — most urgent first, each with a checkable reason from
// the email history (no LLM guesswork in the surfacing). One click drafts the suggested
// follow-up/nurture in your voice via the existing outreach drafter. No schema change.
export const v_0_1_0_69 = VersionInfo.of({
version: '0.1.0:69',
releaseNotes: {
en_US: [
'Outreach now opens with a "Needs attention" list: investors waiting on a reply or gone',
'quiet (45+ days), most urgent first, each with a reason you can verify from the email',
'history. One click drafts the right follow-up or nurture in your voice.',
].join(' '),
},
migrations: { up: async () => {}, down: async () => {} },
})