Skip to main content

Phase 7.1 · Customer-ready

Onboarding runbook A→E

Cole can run commercial/legal → client_config → access → connectivity → go-live gates without tribal knowledge. Every item has how-to steps. Synthetic only. Code gates — not a HIPAA attestation.

Loading checklist… · runbook docs/customer-ready/11-cole-onboarding-runbook.md

Packaging lock

Paid door = Med Review (VantaUM). Included free only under UM’s Vanta med-review contract. Not a standalone free UM SKU. Not free with another shop’s med review. docs/customer-ready/01-product-boundary.md

Hard constraints

  1. Synthetic fixtures only. Tokenized refs. No live PHI in this runbook, UI, or packs.
  2. Do not flip ENABLE_AWS_AUTH or any ENABLE_AWS_* default. Do not invent production vendor keys.
  3. VantaUM sells Med Review (paid wedge). Brief Engine / UM is free only when the buyer uses Vanta med review under UM’s contract — no standalone free UM SKU, no free UM with a third-party review shop. VantaHG = IRO + IDR only. Optum frozen (no outreach).
  4. Checking boxes is a code / ops gate, not a HIPAA attestation. BAA is a hard gate before live PHI.
  5. Every live determination is human MD-signed. No silent auto-approve.

Day script

Same cadence as 02-onboarding.md. Expand a day for the exact steps.

  • Day 0KickoffPhases A · B
    1. Confirm LOBs, SLAs, one primary intake mode, determination channels, CX owner, reviewer queue.
    2. Confirm packaging: buyer uses Vanta med review under UM’s contract (VantaUM sells Med Review). Brief Engine is included free only under that contract. VantaHG is IRO + IDR only.
    3. Write it down, then publish client_config v1 from the synthetic fixture (or a real staging tenant with synthetic data).
  • Day 1–2Config + users + connectivity (staging)Phases B · C · D
    1. Phase A artifacts on file (MSA, BAA, subprocessors, Meow billing contact) before any PHI path.
    2. Publish / confirm client_config (append-only). PATCH/DELETE → 409; SLA or route changes need a new version + written CX confirm.
    3. Invite client admin. Do not flip ENABLE_AWS_AUTH. Test /client, /cx, /med-review on staging.
    4. Pick one primary intake. Empty HMAC slots = synthetic allow. Document it in clients/{id}/connectivity.md.
  • Day 3–4E1 synthetic packPhases E
    1. Run npm run test:go-live-synthetic or click Run synthetic pack on this page.
    2. Expect ≥10 cases: happy path + missing clinicals (R01 → intake_incomplete, SLA paused) + gray zone (md_queue).
    3. Client watches /client and /med-review. Still synthetic.
  • Day 5–7E2 shadowPhases E
    1. POST /api/golive/shadow or click Run shadow pack.
    2. ≥10 live-shaped synthetic packets. MD signs. Fan-out records intent only.
    3. member_provider_final_sends must be 0. go_live_mode=shadow / shadow_mode=true.
  • Day 8+E3 live hypercare (first 25)Phases E
    1. Agree N with the client (default 25). Full fan-out. MD on every determination.
    2. Daily CX standup until first 25 clear. Scorecard: /cx + go-live log.
    3. If first-25 SLA miss rate > sla_miss_rollback_threshold (default 0.2): pause live intake, stay on shadow, root-cause.

Copy-paste commands

Local demo. No secrets. Do not point these at production with live PHI.

curl -s -X POST http://localhost:3000/api/client-config \
  -H 'content-type: application/json' \
  -d @docs/customer-ready/fixtures/client-config-synthetic.json
npm run test:go-live-synthetic
curl -s -X POST http://localhost:3000/api/golive/shadow \
  -H 'content-type: application/json' \
  -d '{}'

Phase A · · 0 required left

A

    Phase B · · 0 required left

    B

      Phase C · · 0 required left

      C

        Phase D · · 0 required left

        D

          Phase E · · 0 required left

          E

            Go-live log

            Non-PHI. Also written to memory SoR for this process.

            No entries yet. Run E1 / E2 / E4.

            Related: Client lens · CX first-25 scorecard · Med review queue · Production setup · TPA signups · Client reports