Internal documentation — not for public distribution
Protocol Health Club © 2026

Project Status

What's shipped, what's in progress, and what's next.

12

Shipped

2

In Progress

12

Planned

Timeline

✅ Shipped

Junction API integration

Production/US, smoke test passing

Done

GHL API integration

Full read/write on contacts, fields, tags, notes

Done

GHL data map

190 custom fields, 21 tags documented

Done

AWS Bedrock (Claude)

Haiku 4.5, Sonnet 4.6, Opus 4.7 confirmed working

Done

Next.js pipeline app

App Router, TypeScript, Tailwind, SQLite

Done

Pipeline step: Parse biomarkers

Claude Sonnet 4.6 extracts structured JSON from lab text

Done

Pipeline step: Clinical analysis

Claude Opus 4.7 generates summary, patterns, recommendations

Done

Pipeline step: Generate PDF

Puppeteer renders branded 2-section client report

Done

Observability dashboard

Live run list, step-by-step trace, token counts, timing

Done

Sample data seeder

4 realistic completed runs pre-seeded for demo

Done

DuckDNS + SSH access

protocolhc.duckdns.org → server, auto-renews every 5 min

Done

Engineering docs site

This site — Next.js, Mermaid diagrams, Cloudflare Pages

Done

🔄 In Progress

OCR fallback (Claude vision)

Try pdf-parse first; if scanned PDF, convert pages to PNG and send to Claude Sonnet vision

In Progress

GHL client wrapper

lib/ghl.ts — typed getContactByEmail, updateContact, addTags, addNote

In Progress

📋 Up Next

GHL write-back step

Wire writeGhl.ts into runner.ts as Step 6 — update call_notes, swap tags, create note

Planned

End-to-end test on real PDF

Run the sample scanned blood report all the way through the full pipeline

Planned

Next-Auth login

Individual logins per staff member on the dashboard — Google or email/OTP

Planned

Cloudflare + HTTPS

Port 443 + nginx + Cloudflare tunnel for proper browser access without SSH tunnel

Planned

BAA — AWS

Sign HIPAA Business Associate Agreement via AWS Artifact (free, online)

Planned

🔮 Future

Junction webhook trigger

Auto-trigger pipeline when lab_results.completed fires — no manual upload

Planned

BAA — GoHighLevel

Required before storing PHI in GHL custom fields at scale

Planned

EBS disk encryption

AWS admin task — encrypt EC2 volume at rest

Planned

AWS Secrets Manager

Move secrets off .env files into managed secret store

Planned

Bedrock key renewal

Confirm key is set to "no expiration" with AWS admin — or switch to IAM role on EC2

Needs action

Textract / IAM access

Requires IAM credentials from AWS admin — using Claude vision as fallback for now

Needs action

MFA on dashboard

One config line in Next-Auth — add when team grows

Planned