fathom-prod-checklist

v2026.09.24

Production readiness checklist for Fathom API integrations. Trigger with phrases like "fathom production", "fathom go-live", "fathom checklist".

GitHub
安装命令
npx skhub add jeremylongshore/fathom-prod-checklist
Markdown
SKILL.md

Fathom Production Checklist

Prerequisites

  • A named tenant/data owner, approved recording/consent/data-use policy, identity/secret boundary, and rollback plan.

Instructions

  1. Complete evidence gates for access, consent, retention, integrations, CRM mapping, observability, incident response, and rollback.
  2. Validate a synthetic or approved canary workflow and verify its access/data boundaries.
  3. Block production enablement when any data, consent, security, ownership, or recovery gate is unverified.

Output

  • A production-readiness receipt with evidence, owner, exceptions, canary result, and tested rollback path.

Examples

Pilot a production-like configuration using approved synthetic meeting data, verify consent/access/CRM behavior and alert routing, then observe the stated window. Restore the prior configuration if any gate fails; do not widen access or send real follow-ups to conceal a defect.

Overview

Fathom provides AI-powered meeting intelligence with automated transcription, summaries, and action item extraction. A production integration ingests meeting recordings, processes transcripts, and syncs action items to downstream systems. Failures mean lost meeting context, missed follow-ups, or transcript data leaking outside authorized channels. This checklist ensures reliable, compliant meeting data pipelines.

Authentication & Secrets

  • FATHOM_API_KEY stored in secrets manager (not environment files)
  • OAuth app registered if building public-facing integration
  • Key rotation schedule documented (90-day cycle)
  • Separate credentials for dev/staging/prod environments
  • Webhook signing secret configured for payload verification

API Integration

  • Production base URL configured (https://api.fathom.video/v1)
  • Rate limit handling with backoff (60 req/min standard tier)
  • Webhook endpoint registered and tested with sample payloads
  • Meeting recording retrieval handles large file downloads
  • Transcript pagination implemented for long meetings (>60 min)
  • Action item extraction tested with various meeting formats
  • Calendar integration sync verified (Google Calendar / Outlook)

Error Handling & Resilience

  • Circuit breaker configured for Fathom API outages
  • Retry with exponential backoff for 429/5xx responses
  • Empty or partial transcript handling (silent meetings, poor audio)
  • Webhook delivery failures trigger re-fetch via polling
  • Meeting data PII handling documented (GDPR consent, retention)
  • Backup webhook URL configured for failover

Monitoring & Alerting

  • API latency tracked per endpoint (meetings, transcripts)
  • Error rate alerts set (threshold: >5% over 10 minutes)
  • Failed transcript processing triggers notification
  • Webhook delivery success rate monitored
  • Daily digest of processed meeting counts vs scheduled

Validation Script

async function checkFathomReadiness(): Promise<void> {
  const checks: { name: string; pass: boolean; detail: string }[] = [];
  // API connectivity
  try {
    const res = await fetch('https://api.fathom.video/v1/meetings?limit=1', {
      headers: { Authorization: `Bearer ${process.env.FATHOM_API_KEY}` },
    });
    checks.push({ name: 'Fathom API', pass: res.ok, detail: res.ok ? 'Connected' : `HTTP ${res.status}` });
  } catch (e: any) { checks.push({ name: 'Fathom API', pass: false, detail: e.message }); }
  // Credentials present
  checks.push({ name: 'API Key Set', pass: !!process.env.FATHOM_API_KEY, detail: process.env.FATHOM_API_KEY ? 'Present' : 'MISSING' });
  // Webhook endpoint reachable
  const webhookUrl = process.env.FATHOM_WEBHOOK_URL;
  if (webhookUrl) {
    try {
      const res = await fetch(webhookUrl, { method: 'HEAD' });
      checks.push({ name: 'Webhook Endpoint', pass: res.ok, detail: `HTTP ${res.status}` });
    } catch (e: any) { checks.push({ name: 'Webhook Endpoint', pass: false, detail: e.message }); }
  } else { checks.push({ name: 'Webhook Endpoint', pass: false, detail: 'URL not configured' }); }
  for (const c of checks) console.log(`[${c.pass ? 'PASS' : 'FAIL'}] ${c.name}: ${c.detail}`);
}
checkFathomReadiness();

Error Handling

CheckRisk if SkippedPriority
API key rotationExpired key halts transcript pipelineP1
Webhook verificationSpoofed payloads inject bad dataP1
PII retention policyGDPR/CCPA violation on meeting dataP1
Empty transcript handlingDownstream systems crash on nullP2
Rate limit backoffBulk meeting import blocked by 429P3

Resources

Next Steps

See fathom-security-basics for meeting data privacy and consent patterns.

发现
标签

此技能尚未发布标签。

版本
最新版本元数据

版本

v2026.09.24

发布时间

Sep 24, 2026

分类

未分类

许可证

MIT

源路径

skills/.curated/fathom-prod-checklist

默认分支

main

最新提交

e5a6c3b

Tree SHA

c2dc8e8