First design-partner provider organization onboarded
PlannedA provider system that signs a design-partner LOI to co-develop the Care Router on a real cohort. Sized at one to three orgs across OB/GYN, primary care, and integrated health systems. This is the single highest-leverage unlock for the rest of the roadmap — every 'planned' BAA / IRB / SOC 2 item below is paced by when this lands.
Source: About / Milestones →Clinical advisory board formed
PlannedClinicians across OB/GYN, endocrinology, primary care, and behavioral health to validate the Care Router policy, risk-band thresholds, and pathway routing. Pace: 4–6 advisors before the first design-partner pilot launches.
Source: About / Team →pause_ingest → real JupyterHealth Exchange round-trip
Wired in prototypeNow runs against a real JupyterHealth Exchange Django instance (docker postgres + jhe-local container, OIDC RS256 key, seeded RBAC + Patient + Oura DataSource + Study with explicit per-scope consent rows + FhirSource + a client_credentials OAuth app named pause-ingest). examples/oura_sample_upload.py round-trips both a real Oura heart-rate sample (mapped handler, integer pk) AND a derived HRV-time-domain feature observation (auxiliary handler, UUID pk) with derivedFrom pointer to the raw row, prints 'OK — uploaded and round-tripped 2 observation(s)'. Three real-JHE-only gotchas the wire-level mock had not pinned were surfaced and fixed in the same session: pause_ingest was requesting OAuth scope strings JHE rejects, used Content-Type application/fhir+json which JHE's parser rejects, and wrote OMH codings whose system/code shape did not match JHE's mapped-Observation routing criteria so writes silently fell through to the auxiliary handler. The wire-level mock was tightened to enforce the same routing contract — codings outside https://w3id.org/openmhealth now 400 without an X-JHE-FHIR-Source-ID header. Followed up 2026-06-23 by shipping an opt-in PAUSE_USE_REAL_JHE=1 pytest marker (pause_ingest/tests/conftest.py + test_exchange_real_jhe.py) so the same 7 contract assertions run against the live JHE instance, not just the periodic manual smoke script — 7/7 green against jhe-local; surfaced + documented two more mock-vs-real divergences (POST response omits valueAttachment; GET /Observation?patient=<unknown> doesn't filter to empty Bundle). Transcript at docs/JHE_REAL_RUN_2026-06-16.md; runbook Path B in docs/JHE_SETUP_RUNBOOK.md.
Source: /proposal/integration →MuleSoft Anypoint — iterations 1–8 complete
ShippedEight iterations shipped: CloudHub 2.0 worker live (iterations 1–2), Flex Gateway runtime enforcement (iteration 3), Rate Limiting SLA (iteration 4), OAS 3.0 spec published to Exchange (iteration 5), stable ngrok domain pinned (iteration 6), JWT Validation via Auth0 RS256/JWKS replacing Client ID Enforcement + plain Rate Limiting (iteration 7), Phase-2 contract DataWeave deployed to CloudHub 2.0 as v1.0.4 with the full provider field set live behind Auth0-JWT (iteration 8, 2026-06-16). Current policy stack: JWT Validation + Rate Limiting (10 req/min global). Iteration 9 (persistent VM hosting for the Flex Gateway) is the remaining piece, tracked in the Now horizon above.
Source: /proposal/mulesoft →Data 360 Phase 2 — Data Cloud unified profile
ShippedLIVE in production: lib/salesforce/data-cloud.ts layers HRV z-score, vasomotor burden, and sleep disruption from three Data Cloud Calculated Insights on top of the Phase 1 SOQL grounding. The trailsignup DC tenant is provisioned, the CIs (Pause_HRV_RMSSD_30d, Pause_Vasomotor_Burden_30d, Pause_Sleep_Disruption_7d) are authored + activated over ssot__Individual__dlm, and SF_DC_TENANT_URL is set on Vercel; auth goes through the mandatory a360 token exchange. Each insight falls back to its intake baseline independently if a DC call fails. Demo-cohort values are seeded mock CIs — the next iteration swaps them for real JHE/DBDP wearable math (same client, same token flow). Walkthrough + gotchas in docs/PHASE_2_ACTIVATION_CHECKLIST.md.
Source: /proposal/data-360 →Provider graph Phase 1 + Phase 2 — shipped end-to-end
ShippedPhase 1 (NPPES bulk schema → menopause NUCC taxonomy filter → MSCP overlay → graphScore) and Phase 2 (Census 2020 ZCTA distance ranking, six NPPES service-line signals, three state license-sanction overlays dropping 1,720 sanctioned candidates at build, real-shaped synthetic insurance, /provider browseable UI + /provider/[npi] profile pages) are both wired and verifiable. The committed national run carries 2,015 providers behind the frozen /api/mulesoft/providers contract. See /changelog for the per-commit history and /proposal/provider-graph for the full architecture.
Source: /proposal/provider-graph →Provider graph Phase 2-bis — partnership + commercial-feed unlocks
PlannedTwo pieces wait on external dependencies, not engineering effort. (1) Licensed Menopause Society MSCP feed replaces the synthetic + self-reported overlay (the Society's terms-of-use prohibits scraping; gated on a partnership conversation). (2) Paid in-network insurance feed (Ribbon Health, Turquoise) replaces the synthetic SHA-256 derivation behind the same insuranceAccepted field. Both swap in behind the existing contract without consumer changes — the agent + Care Router + UI keep working unchanged. The synthetic shapes are calibrated to plausible real-world rates and clearly labeled in every API response.
Source: /proposal/provider-graph →