interview-synthesize
interview-synthesize is the cross-stakeholder analog of fathom-sync's meeting extraction:
given one project, it reads every submitted kickoff interview's source body and makes a
single forced-tool Claude call (the synth model role) that reconciles across respondents, rather
than summarizing each interview independently.
What it produces
One call produces four kinds of output, in one governed pass:
- A discovery brief.
- Risks, including scope-creep explicitly flagged against the project's guardrail.
- Clarity gaps and expectation conflicts — who said what, when two stakeholders disagree.
- A day-one data-and-access checklist.
Where the output lands
| Output | Table | Governance |
|---|---|---|
| Discovery brief | kickoff_briefs | One kickoff_brief approval proposal |
| Risks | project_risks | Folded into the brief's evidence |
| Clarity gaps / conflicts | clarity_gaps | Folded into the brief's evidence |
| Data/access items | data_access_requests | Decisions land in decisions; every blocking access item also gets its own asana_task_create approval proposal, riding the existing asana-act executor |
Nothing here writes to Asana directly — every proposal, including the access-item tasks, goes through the same approvals queue every other agent-proposed action goes through.
Re-runnable by design
A later brief supersedes an earlier one for the same project rather than duplicating it — if a new interview response comes in after the first synthesis ran, re-running produces an updated brief that reflects all responses to date, not two competing partial briefs.
Access
Admin/lead only, verified via the same Supabase JWT pattern as every other admin-gated function.
Where the code lives
sable-agents-demo/supabase/functions/interview-synthesize/index.tssable-agents-demo/supabase/functions/kickoff-intake/index.ts— the public intake that produces thesourcesrows this function readssable-agents-demo/supabase/functions/_shared/fathom.js—buildTaskApprovalRows,proposalKindPaused, shared with the meeting-extraction pipelinesable-agents-demo/web/interview.html,web/kickoff.html