Skip to main content
Version: 2.20.0 Last Updated: 2026-05-28 Matrix of cross-core integrations: who publishes/consumes what, with links to contract docs.

Quick Reference


Integration Matrix

| PM (PM-39) | PM-38, PM-10, CE-28, CE-29, PM-02, PM-41, FW-16 | Event / Data | ✅ | PM-39 Waitlist Management - no_match → waitlist; availability re-check → promotion | | PM (PM-12) | PM-01, PM-03, PM-09, PM-14, PF-08, CL-11 | Platform Layer / Data | 📝 | PM-12 Patient Portal & Self-Service - Self-scheduling, demographics, statements, messaging, clinical record (CL-11 Part 2); PF-08 intake/consent | | PM (PM-12-EN-01) | PM-12, PM-40, PM-42, PM-03, PF-08, PF-29 | Intra-core (PM) | ✅ | Patient Portal Intake Enhancements — pm_portal_packet_assignments + pm_portal_packet_items (FORCE RLS, portal-patient scoped via pm_portal_visible_patient_ids); scheduling-readiness guardrails; PM-42 staff workbench tab. Intra-core only — see .intra-core-only.json. | | PM (PM-14) | PM-12, PF-10, CL-01, CL-11 | Platform Layer / Data / Event / API | 📝 | PM-14 Secure Messaging - Messaging UI (PM-12); notifications (PF-10); chart docs (CL-01); Part 2 (CL-11) | | CL (CL-23) | PF-10, PM-14, CL-04, CL-08, CL-09, CL-11, PF-29 | Platform Layer / Event | ✅ | CL-23 Clinical In-Basket - In-basket items from co-sign, CDS, labs, referrals; PF-10 notifications; PM-14 deep-links | | PM (PM-11) | PM-07, PM-08, PM-09, PM-10, PF-12, FA-07 | Data / Platform Layer | 📝 | PM-11 Revenue Cycle Dashboard & Analytics - RCM KPIs, snapshots, benchmarks; PF-12 reports; FA-07 financial reporting (future) | | PM (PM-17) | PM-08, PM-15, HR (Platform Layer), PF-10 | Data / Platform Layer | 📝 | PM-17 Provider Credentialing & Enrollment Verification - Enrollment status for claim scrub (PM-08); clearinghouse readiness (PM-15); HR provider/credential context via platform; alerts (PF-10) | | PM (PM-16) | PF-10, PF-11, PM-09, PM-12 | Platform Layer / Data | ✅ | PM-16 Patient Statement Generation & Billing Communications - Statement runs, delivery (PF-10/PF-11), PM-09 statements/balances, PM-12 portal posting; payment plans and financial assistance | | PM (PM-18) | PM-08, PF-70 | Data / Platform Layer | ✅ | PM-18 Configurable Claim Scrubbing - Org-level scrub rule overrides; extends PM-08 claim scrubbing. EN-06: per-payer/claim-type overrides, pm_scrub_custom_edits table (custom rule overrides, not an event contract), effectiveness reporting; PF-70 for code validation in custom edits. Completed 2026-03-27 | | PM (PM-19) | FW-03, PM-07, PM-08, PM-09 | Event | 🔨 | PM-19 PM-Triggered Business Rule Automation - Automation rules triggered by PM events (claim status, charge approval, payment posting) | | PM (PM-20) | PF-01, PF-02, PF-10, PM-01, PM-02, PM-03, PM-07, PM-16 | Platform Layer / Data | ✅ | PM-20 Good Faith Estimate & Price Transparency - NSA GFE generation, delivery timing (1/3 BD), acknowledgment, 400+ dispute workflow; same-core dependencies only. Completed 2026-02-28 | | PM (PM-21) | PM-01, PM-07 | Data (same core) | ✅ | PM-21 Sliding Fee Discount Schedule Management - FPL-based patient discounts; PM-07 charge capture applies discount_pct from active assessment. Completed 2026-02-28 | | PM (PM-23) | PM-07, PM-08, PM-09, PM-11 | Data (same core) | ✅ | [PM-23 Contract & Fee Schedule](/architecture/integrations/contract-fee-schedule-integration) - Contracted rates for expected amount, underpayment detection, expiration alerts, analytics. Completed 2026-02-28 | | PM (PM-48) | PM-02, PM-09, PM-11, PM-20, PM-23, PM-32, PF-10, PF-11, PF-96 | Data / Event / Platform Layer | ✅ | [PM-48 Patient Cost Estimation & Financial Clearance](/architecture/integrations/patient-cost-estimation-financial-clearance-integration) - Insured-patient cost estimates (benefit data from PM-02, rates from PM-23); financial clearance workflow; auto-route to PM-32 above threshold; events `pm_cost_estimate_generated`, `pm_financial_clearance_completed`; accuracy tracking via PM-09 adjudication write-back. Completed 2026-04-07 | | PM (PM-24) | PM-02, PM-07, PM-08, PM-15, PF-30 | Data (same core) / Platform Layer | ✅ | [PM-24 Batch Operations](/architecture/integrations/batch-operations-integration) - Batch claim generation/submission, eligibility checks, charge approval; pm_batch_jobs audit table; 4 permission keys. Completed 2026-03-01 | | PM (PM-27) | PF-01, PM-08, PM-15, PM-11, PM-17 | Data / Platform Layer | ✅ | [PM-27 Multi-Site & Multi-NPI Configuration](/architecture/integrations/multi-site-multi-npi-configuration-integration) - Site-level billing config (NPI, tax ID, fee schedule, clearinghouse); claim defaults per site; patient site transfers; PM-08/PM-15 consume config. Completed 2026-03-01 | | PM (PM-46) | PM-17, PM-15, PM-27, PM-07, PM-08, PF-10 | Data / Event / Platform Layer | ✅ | [PM-46 Payer Enrollment & EDI Onboarding](/architecture/integrations/payer-enrollment-edi-onboarding-integration) - EDI enrollment lifecycle tracking per payer/NPI/transaction type; 2 tables (pm_payer_edi_enrollments, pm_edi_enrollment_status_history) + FORCE RLS + pm_user_has_org_access + append-only history + pm_transition_edi_enrollment_status RPC + 5 permissions + domain types (edi-enrollment.ts) + 6 hooks + EdiEnrollmentHubPage (3-tab: Matrix, ERA/EFT Gaps, Dashboard) + EdiEnrollmentDetailSheet + BulkCreateDialog + 2 Recharts + sidebar nav. Completed 2026-04-09 | | PM (PM-28) | PF-01, PF-30, PM-01, PM-08, PM-09 | Data / Platform Layer | ✅ | [PM-28 PM System Configuration & Admin Settings](/architecture/integrations/pm-system-configuration-admin-settings-integration) - Single org-level PM settings admin surface; pm_module_settings key reference; permission-gated (pm.settings.view/manage); PM-01/PM-08/PM-09 consume settings; Phase 2: PM-20/PM-22/PM-23 cards. Completed 2026-03-03 | | PM (PM-29) | PM-08, PM-09, PM-10, PM-11, PM-18 (Phase 2), PF-29, PF-70 | Data (same core) / Platform Layer | 🟡 | [PM-29 Claims Denial Management & Appeals](/architecture/integrations/claims-denial-management-appeals-integration) - Denial intake from ERA (PM-09), auth-denial link (PM-10), claim status/resubmit (PM-08), KPI analytics feed (PM-11), PF-29 auto-tasks on appeal submission, PF-70 CARC/RARC lookup; 3 permission keys. Phase 1 in progress — queue, detail, appeal workflow implemented; T6 analytics, T7 ERA intake pending. | | PM (PM-50) | PM-08, PM-18, PM-29, CL-36, PF-96, PF-10 | Platform Layer / Event / Data (same core) | ✅ | [PM-50 AI-Powered Denial Prediction & Prevention](/architecture/integrations/ai-denial-prediction-prevention-integration) - Pre-submission ML risk scoring in PM-08 queue; complements PM-18 scrubbing; CL-36 documentation completeness metadata via `@/platform/clinical`; PF-96 jurisdiction context; PM-29 outcomes feed retraining; 4 permission keys; 2 events planned. Completed 2026-04-07 | | PM (PM-25) | PM-11, CL-10, CL-15, PM-02, PM-01 | Data / Platform Layer | ✅ | [PM-25 VBP & APM Tracking](/architecture/integrations/vbp-apm-integration) - VBP programs, measures, incentives; PM-11 dashboards; CL-10/CL-15 gap identification; attribution (PM-02/PM-01). Completed 2026-03-01 | | PM (PM-33) | FA, PM-11, PM-01, PM-09 (future) | Event / Data (same core) | ✅ | [PM-33 Capitation & PMPM Revenue Reconciliation](/architecture/integrations/capitation-pmpm-revenue-reconciliation-integration) - Capitation contracts, PMPM periods, roster events, reconciliation with disposition state machine; capitation revenue in PM-11 dashboard. `capitation_payment_received` event to FA is planned for FA integration phase — not blocking PM-33 core completion. Completed 2026-03-26 | | PM (PM-42) | PM-38, PM-39, PM-40, PM-41, CE (`ce_leads`), FW-16, PF-30 | Data / Event / Platform Layer | ✅ | [PM-42 Coordinator Workbench](/architecture/integrations/coordinator-workbench-integration) - `pm_coordinator_tasks`, `pm_task_audit_log`; nullable `lead_id` (no composite FK); intake task queue, bulk actions, compliance export; realtime via FW-16. Completed 2026-03-29 | | PM (PM-51) | PM-08, PM-02, PM-09, PF-75, FW-46, PF-10, PF-11 | Event / Data (same core) / Platform Layer | ✅ | [PM-51 Payer Portal Automation (RPA)](/architecture/integrations/payer-portal-automation-rpa-integration) - Headless browser RPA for payer portals; claim status → PM-08, remittance staging → PM-09, eligibility → PM-02; PF-75 credential vault; FW-46 durable worker; events `pm.rpa.execution_completed`, `pm.rpa.consecutive_failures` | | PM (PM-36) | PM-07, PM-08, PM-09, PM-11, PF-29 | Data (same core) / Platform Layer / Scheduled Edge Function | ✅ | [PM-36 Automated Charge Reconciliation](/architecture/integrations/automated-charge-reconciliation-integration) - Nightly edge function detects 5 gap types (encounter→charge, charge→claim, claim→payment, duplicate, zero-amount); PF-29 tasks per gap; pm_charge_recon_daily_summary feeds PM-11 KPIs; 2 permission keys (pm.charge_recon.view/manage) | | PM (PM-44) | PM-09, PM-23, PM-29, PM-11, PF-10, PF-12, PF-96 | Event / Data (same core) / Platform Layer / Scheduled Edge Function | ✅ | [PM-44 ERA Reconciliation & Underpayment Detection](/architecture/integrations/era-reconciliation-underpayment-detection-integration) - Consumes `payment_posted` from PM-09; compares paid vs PM-23 contracted rates; publishes `pm_underpayment_detected`; payer performance snapshots (daily cron); AI pattern detection (weekly cron); appeal initiation via PM-29; 5 permission keys | | PM (PM-53) | FA, PM-09, PM-15, PM-29, PM-37 (proposed), PM-44, PM-45, PF-04, PF-10, PF-30, PF-44, PF-96 | Event / Data (same core) / Platform Layer | 📝 | [PM-53 Refund, Recoupment & Takeback Management](/architecture/integrations/refund-recoupment-takeback-management-integration) · [Spec](https://github.com/Encore-OS/encoreos/blob/development/specs/pm/specs/PM-53-refund-recoupment-takeback-management.md) - Publishes `payment_refund_issued` (FA consumes → GL journal entry writeback) and `payer_recoupment_detected` (PM-44 consumes → exclude active recoupment lines). 3 tables (`pm_refunds`, `pm_refund_approvals`, `pm_payer_recoupments`); multi-tier refund approval state machine; CARC `CO-45/100/104` + PLB `WO/50/72` takeback detection inside `process-era`; PM-29 dispute pre-population; 5 permission keys (`pm.refunds.view/create/approve`, `pm.recoupments.view/manage`); jurisdiction-aware dispute deadlines via PF-96; contextual contract rate interpretation via PM-44 (which depends on PM-23). Supersedes lite alternatives `PM-09-EN-11` and `PM-09-EN-15`. | | PM (PM-49) | PM-19, PM-29, PM-09, PM-45, PM-11, PF-01, PF-02, PF-10, PF-29, PF-96 | Event / Data (same core) / Platform Layer / Scheduled Edge Function | 📝 | [PM-49 Revenue Cycle Automation Rules Engine](/architecture/integrations/revenue-cycle-automation-rules-engine-integration) - Configurable RCM rules engine: small balance auto-adjust, denial resubmit via PM-29, collections transfer via PM-45, dynamic AR work queue scoring; 3 tables, 3 edge functions, 3 consumed events, 1 published event; PF-96 filing deadline resolution | | PM (PM-49) | PM-19, PM-29, PM-09, PM-45, PM-11, PF-01, PF-02, PF-10, PF-29, PF-96 | Event / Data (same core) / Platform Layer / Scheduled Edge Function | ✅ | [PM-49 Revenue Cycle Automation Rules Engine](/architecture/integrations/revenue-cycle-automation-rules-engine-integration) - Configurable RCM rules engine: small balance auto-adjust, denial resubmit via PM-29, collections transfer via PM-45, dynamic AR work queue scoring; 3 tables, 3 edge functions, 3 consumed events, 1 published event; PF-96 filing deadline resolution. Completed 2026-04-08 | | PM (PM-47) | PM-08, PM-10, PM-01, PF-10, PF-29 | Data (same core) / Platform Layer / Scheduled Edge Function | ✅ | PM-47 Managed Care Authorization Tracking — Auth lifecycle dashboard, concurrent review scheduling, denial appeals, auth-to-claim validation gate (pm-auth-claim-validation edge function), expiration alerts (pm-auth-expiration-alerts cron); 3 tables, 2 edge functions, 7 permissions. Completed 2026-04-08 | | PM (PM-26) | PF audit, PM-08, PM-09, PM-11 | Data (same core) / Platform Layer | ✅ | PM-26 Audit Trail & Compliance Reporting — Centralized billing audit log (pm_audit_log), compliance reports, payer audit export, internal controls, fraud/abuse flags. Completed 2026-03-01 | | PM (PM-31) | PM-07, PM-08, PM-09, PM-10, PM-15, PM-18, CL-17 (UUID ref), PF-70 | Data (same core) / Platform Layer / Cross-core UUID ref | ✅ | [PM-31 OTP/MAT-Specific Billing](/architecture/integrations/otp-mat-billing-integration) — OTP program config (G2067–G2080, G2215/G2216, H0020, T1012), weekly/daily billing periods, service components, charge/claim generation via PM-07/PM-08, PM-10 prior auth, CL-17 PDMP reference (ADR-002 UUID, no FK). Completed 2026-03-26 | | PM (PM-34) | PM-02, PM-03, PM-07, PM-12, PF-10, PM-28 | Event / Data / Platform Layer | ✅ | [PM-34 Real-Time Eligibility at Check-In](/architecture/integrations/realtime-eligibility-checkin-integration) - Auto-triggers PM-02 on PM-03 checked_in status; discrepancy detection (new plan, copay/deductible change, coverage gap, COB order change); pm_checkin_discrepancies; PF-10 notification to front desk; copay feed to PM-07 charge defaults; kiosk/portal trigger via PM-12; PM-28 configures timeout and notification. Completed 2026-03-26 | | PM (PM-34-EN-01) | PM-01, PM-02, PM-03, PM-09, CL-11, PF-10, PF-11, PM-28 | Data / Platform Layer | ✅ | PM-34-EN-01 Check-in Kiosk Self-Service — patient self-service check-in with demographics review, insurance card capture (PF-11), consent signing (CL-11 via @/platform/clinical), copay collection (PM-09), arrival notification (PF-10), kiosk device config (PM-28). 1 table (pm_kiosk_checkins), 5 settings columns, 9 hooks, 15 components, 2 permissions, 59 tests. Completed 2026-04-10 | | PM (PM-35) | PM-07 (charge snapshot), PM-25 (VBP consumer), FA-35 (event) | Event / Data (same core) | ✅ | [PM-35 Encounter-Level Cost Accounting](/architecture/integrations/cost-accounting-integration) - Cost categories, rates, auto-calculation on encounter_completed; pm_encounter_costs; encounter_cost_calculated event to FA-35; margin analysis (cost vs charge); PM-25 reads pm_encounter_costs for TCOC benchmarking. Completed 2026-03-28 | | PM (PM-30) | PM-01, PM-02, PM-07, PM-08, PM-09, PM-15, PM-16 | Data (same core) | ✅ | [PM-30 COB & Secondary Claims](/architecture/integrations/coordination-of-benefits-secondary-claims-integration) — COB priority order (pm_insurance_policies.priority_order); secondary/tertiary 837P/837I claim generation from primary ERA (COB2300/COB2400); Medicare–AHCCCS dual-eligible crossover; secondary ERA posting and patient balance update (PM-09, PM-16). Completed 2026-03-27 | | PM (PM-32) | PM-01, PM-02, PM-16, PM-20, PM-21, PF-08, PF-10 | Data (same core) / Platform Layer | ✅ | [PM-32 Patient Financial Counseling & Charity Care](/architecture/integrations/patient-financial-counseling-integration) — Financial counseling sessions with FPL calculation (pm_fpl_thresholds); assistance program referral tracking (AHCCCS, Medicare Savings, ACA, LIAP); charity care applications per board policy; PM-16 live join for charity indicator; PM-21 FPL-based sliding fee; PM-02 policy linkage on referral approval; PF-10 expiration reminders; HRSA FQHC compliance workflow. Completed 2026-03-26 | | CL (CL-02) | PF-01, PF-02, PF-08, PF-33, PF-10, CL-01, CL-03, CL-07 | API / Event | ✅ | [CL-02 Comprehensive Assessments](/architecture/integrations/comprehensive-assessments-integration) - 18-element assessments, CALOCUS/ASAM, expiration alerts, signatures; events to CL-03, CL-07 | | CL (CL-02-EN-60) | PF-96 | Platform Layer / RPC | ✅ | [CL-02-EN-60 Jurisdiction-Aware Assessment Requirements](/architecture/integrations/jurisdiction-aware-assessment-requirements-integration) - `useClinicalRules()` + `pf_resolve_jurisdiction_profile()` RPC for dynamic required elements; `cl_check_intake_elements` generic function; `intake_element_complete` column; AZ 18-element parity preserved as default profile. Complete 2026-04-03. | | CL (CL-02-EN-61) | PF-96, CL-02-EN-60 | Platform Layer / Merge Engine | ✅ | [CL-02-EN-61 Integration](/architecture/integrations/configurable-clinical-assessment-templates-integration) — Configurable clinical assessment templates; `cl_assessment_templates` + `cl_assessment_template_sections` tables; `mergeAssessmentSections` pure engine combining jurisdiction-required + org template sections; editor/list/version-history UI at `/cl/settings/assessment-templates`; 22 unit tests. Complete 2026-04-03. | | CL (CL-02-EN-59) | CL-02 (parent) | CL-internal | ✅ | CL-02-EN-59 Cognitive Screening Instruments — MoCA, SLUMS, MMSE seed into `cl_assessment_instruments`; `cognitiveScoring.ts` (6 pure scoring/threshold functions); `CognitiveAssessmentForm` + `CognitiveResultAlert` UI; 42 CFR Part 2 consent gating via `cl_has_sud_consent`; `cl_assessment_completed` event; 25 unit tests. Complete 2026-04-04. | | CL (CL-03) | PF-01, PF-02, PF-33, PF-10, CL-01, CL-02, CL-04 | API / Event | ✅ | [CL-03 Treatment Planning](/architecture/integrations/treatment-planning-integration) - Measurable goals, signatures, appeal rights, multi-disciplinary sign-off; review-due and event-triggered alerts; CL-02 findings, CL-04 progress; **Phase 2-3:** Goal progress viz, caregiver tracking, life-event automation, template library | | CL (CL-04) | PM (PM-07), PF-10, PF-33, HR-19, CL-01, CL-03 | Event / API | 📝 | [CL-04 Progress Notes & Session Documentation](/architecture/integrations/progress-notes-session-documentation-integration) - clinical_note_finalized event for charge capture; co-sign workflow (HR-19); signatures (PF-33); alerts (PF-10) | | CL (CL-04-EN-67) | PF-96 | Platform Layer | ✅ | [CL-04-EN-67 Integration](/architecture/integrations/jurisdiction-aware-progress-note-requirements-integration) — `useNoteRequirements` hook consuming `useClinicalRules()` + `useComplianceRules()` from PF-96; profile-driven attestation text, required note elements (12-element model), policy citation metadata, mandatory validation flag; `note-requirements-resolver.ts` pure functions with AZ AHCCCS fallbacks; 11 unit tests. Complete 2026-04-04. | | CL (CL-05) | CL-01, CL-06, CL-08, CL-09, CL-12 | API / Data | 📝 | [CL-05 Medication Management](/architecture/integrations/medication-management-integration) - Medication list, reconciliation at transitions, drug interaction (RxNav/NLM), monitoring protocols; CL-12 triggers reconciliation | | CL (CL-05-EN-01) | CL-05, CL-06, CL-08, CL-11, PM-10, PF-01, PF-96, External (FDB/Medi-Span) | API / External / Platform Layer | ✅ | [CL-05-EN-01 DDI Checking](/architecture/integrations/drug-drug-interaction-checking-integration) - Real-time DDI alerts during medication entry/reconciliation (CL-05) and e-prescribing (CL-06); override documentation with co-signature for contraindicated; provider alert suppression for minor interactions; CL-08 CDS delegates `drug_interaction` rule type; CL-11 consent gating for SUD meds (42 CFR Part 2); jurisdiction-aware (PF-96). Migration (`cl_ddi_overrides`, `cl_ddi_alert_suppressions`), types, 3 hooks, 3 UI components (DdiAlertPanel, DdiOverrideDialog, DdiSuppressionSettings), 4 permissions, 26 unit tests. Complete 2026-04-13. | | CL (CL-06) | CL-01, CL-05, CL-08, CL-17, Surescripts (external) | API / External | 📝 | [CL-06 E-Prescribing (EPCS)](/architecture/integrations/e-prescribing-epcs-integration) - Prescription routing, EPCS, RTPB; medication list (CL-05), CDS (CL-08), CSPMP (CL-17) | | CL (CL-07) | PF-10, PF-33, CL-01, CL-13 | Event / API | ✅ | [CL-07 Suicide Risk Screening & Safety Planning](/architecture/integrations/suicide-risk-screening-safety-planning-integration) - C-SSRS/PHQ-9/ASQ/SAFE-T; Stanley-Brown safety plan; high/imminent alerts (PF-10); signatures (PF-33); risk flag (CL-01); **EN-23–EN-26 (Phase 1, no domain events; PF-10 via direct `pf_notifications` insert):** lethal means counseling on `cl_safety_plans`, clinician-initiated patient PDF view, family notification (`cl_designated_contacts` + `cl_family_notification_log`, consent-gated), 988 transfers (`cl_988_transfers`, HCPCS free-text — PF-70 deferred). See [CL-07-ENHANCEMENTS-CONTEXT.md](https://github.com/Encore-OS/encoreos/blob/development/specs/cl/specs/CL-07-ENHANCEMENTS-CONTEXT.md). | | CL (CL-07-EN-01) | PF-01, PF-10, PF-96, PM-03, CL-07, CL-11 | Platform Layer / Event | ✅ | [CL-07-EN-01 Zero Suicide Framework](/architecture/integrations/zero-suicide-framework-integration) — Lethal means assessment instrument (`cl_lethal_means_assessments`), safety plan emergency contact sharing (`cl_safety_plan_shares`) with Part 2 consent gating (CL-11 `useConsentCheck`), automated 24/48/72 follow-up scheduling (PM-03 via `@/platform/scheduling`). Share uses Supabase Storage signed URL + PF-10 `action_url`. Events: `cl_safety_plan_shared`, `cl_zero_suicide_followup_scheduled`. Extends CL-07 EN-23 (assessment instrument) and EN-24 (emergency contact sharing). | | CL (CL-08) | CL-01, CL-05, CL-06, CL-10, PF-10, PF-70, RxNav (external) | API / Event / Edge Function | ✅ | [CL-08 Clinical Decision Support](/architecture/integrations/clinical-decision-support-integration) - Drug/allergy alerts, monitoring reminders, documentation/quality gaps; CL-05/CL-06 trigger; PF-10 delivery; CL-10 quality data; **EN-27:** evaluate-cds Edge Function (RxNav); **EN-28:** pathway guidance; **EN-29:** alert fatigue analytics | | CL (CL-09) | CL-01, CL-05, CL-08, PF-10, External Labs | Event / API / External | 📝 | [CL-09 Lab & Diagnostic Orders](/architecture/integrations/lab-diagnostic-orders-results-integration) - Lab orders, result ingestion (HL7v2/FHIR), trending; CL-08 abnormal alerts; CL-05 monitoring protocols | | CL (CL-09-ENH) | CL-09 (internal) | CL-internal | ✅ | CL-09-ENHANCEMENTS (EN-30, EN-31, EN-32): Standing order protocols, POC result entry, reference range customization. No cross-core deps beyond parent CL-09. Complete 2026-02-26. | | CL (CL-10) | PF-01, PF-02, PF-12, CL-01, CL-02, CL-03, CL-12, CL-15, RH | Data / Platform | 🏗️ | [CL-10 Outcomes Tracking & Measurement](/architecture/integrations/outcomes-tracking-measurement-integration) - PROMs, HEDIS (FUH/FUM/IET/AMM), program outcomes; RH program_id FK; CL-12 transitions; CL-15 quality reporting. **CL-10-ENHANCEMENTS** (EN-1, EN-2): Performance instrumentation, SAMHSA NOMs/CBE/HEDIS MY 2026 terminology, source tags. Complete 2026-02-26. | | CL (CL-12) | PF-01, PF-02, PF-10, PF-11, CL-01, CL-03, CL-05, CL-07, CL-16, PM-06 | Event / Data / API | 📝 | [CL-12 Care Coordination & Transitions](/architecture/integrations/care-coordination-transitions-integration) - Care teams, transitions, discharge checklist, FUH 7/30-day; referral_accepted (PM-06); C-CDA/ADT (CL-16) | | CL (CL-12-EN-67) | CL-12, PM-06, FindTreatment.gov (external) | Data / External API | ✅ | [CL-12-EN-67 Integration](/architecture/integrations/bidirectional-referral-community-integration) — Closed-loop referral status tracking (`cl_referral_status_history`); `cl_referral_current_status` view; optional FindTreatment.gov directory search edge function; `cl_referral_status_updated` event. Complete 2026-04-14. | | CL (CL-15) | PF-12, CL-10, CL-01, CL-02, CL-03, CL-04, GR-03, GR-08, PF-10, CL-13 | Platform Layer / Event / Data | ✅ Phase 1 / 🏗️ Phase 2-3 partial | [CL-15 Clinical Reporting & Quality Measures](/architecture/integrations/clinical-reporting-quality-measures-integration) - Phase 1 (✅): Report definitions, runs, AZDHS incidents; PF-12 report engine; CL-10 outcome data for HEDIS/CARF; `cl_incident_reported` event consumed by GR (compliance/accreditation) and PF-10 (notifications). Phase 2/3 (🏗️ partial, see [CL-15-PHASE-2-3-EXPANSION](https://github.com/Encore-OS/encoreos/blob/development/specs/cl/specs/CL-15-PHASE-2-3-EXPANSION.md)): **shipped 2026-05-18** — `cl_module_settings` dual-track columns + dual-track deadline util + CL settings dual-track subsection + patient-context portal QM view. **Pending** — T5 clinical_audit report renderer, T7 deployment guide, T9 automated HEDIS QM, T10 CarfReadinessPage. **Blocked on CL-13** — T2 restraint_event_id migration, T4 restraint picker. Last verified: 2026-05-18 | | CL (CL-16) | CL-01, CL-11, CL-12, PM-10 | API / Event | 🟡 | [CL-16 FHIR Interoperability](/architecture/integrations/fhir-interoperability-data-exchange-integration) - Phase 1 (FHIR R4 facade, schema, RLS) in progress; Edge Function `fhir-r4` deployed; consent gating (CL-11); API contracts in [API_CONTRACTS.md](/architecture/integrations/API_CONTRACTS#cl-16-fhir-r4-api--edge-function-facade); events: `cl_fhir_bundle_exported` (Phase 1), `cl_ccda_document_sent`/`cl_ccda_document_received` (Phase 2) in [EVENT_CONTRACTS.md](/architecture/integrations/EVENT_CONTRACTS#cl-16-fhir-interoperability--data-exchange-events); Phase 2 (C-CDA/HIE) blocked on Contexture; Phase 3 (Da Vinci) blocked on PM-10. Last verified: 2026-02-23 | | CL (CL-16-EN-01) | CL-16, CL-11, CL-12, PM-10, PF-04, PF-11 | API / Event | ✅ | [CL-16-EN-01 TEFCA/QHIN Connectivity](/architecture/integrations/tefca-qhin-connectivity-integration) - TEFCA exchange log, patient matching, consent-gated outbound exchange, 42 CFR Part 2 redisclosure notices, HIPAA minimum necessary filter, exchange telemetry; extends CL-16 without duplicating CL-11 consent ownership. Last verified: 2026-04-09 | | CL (CL-17) | CL-06, CL-01, External (PMP Gateway/NABP, Bamboo Health, Arizona HIE) | API / External | 🏗️ | [CL-17 Arizona CSPMP/PDMP](/architecture/integrations/arizona-cspmp-pdmp-integration-integration) - PDMP query-in-workflow, prescriber attestation, delegate access; A.R.S. § 36-2606; scaffold complete (DB, RLS, hooks, UI, routes, edge fn scaffold); gateway integration pending vendor selection. Last verified: 2026-02-24 | | CL (CL-18) | PF-01, PF-02, PF-08, PF-70, CL-01, CL-02 | API / Data / Event | ✅ | [CL-18 SDOH Screening & Social Needs](/architecture/integrations/sdoh-screening-integration) - SDOH screening, referrals, Z-codes (PF-70); chart/assessment visibility; optional `cl_sdoh_screening_completed` event (deferred). Last verified: 2026-02-23 | | CL (CL-19) | CL-01, CL-04, CL-11, PM-03, PM-07, PF-70 | Event / Data / Platform | ✅ | [CL-19 Peer Recovery Support](/architecture/integrations/peer-recovery-support-services-integration) - Peer encounter docs; encounter-to-billing (PM-07); HCPCS (PF-70); Part 2 (CL-11). Last verified: 2026-02-23 | | CL (CL-40) | CE-28, PM-38, CL-18, CL-19, PM-07, PF-33, PF-70 | Event / Data / Platform | ✅ | [CL-40 Clinical Intake & SDOH](/architecture/integrations/clinical-intake-integration) - Intake orchestrator; consumes pm_appointment_created + ce_screening_completed; publishes cl_intake_finalized, cl_sdoh_referral_created, cl_peer_encounter_documented; PF-70 (ICD-10); PF-33 (e-sig); Part 2 (CL-11). Last verified: 2026-03-29 | | CL (CL-20) | PF-64, PF-11, CL-01, CL-02, CL-03, CL-04, CL-07, CL-11, CL-13, CL-14 | Platform Layer / Data | ✅ | [CL-20 Medical Record Export & Document Generation](/architecture/integrations/medical-record-export-document-generation-integration) - Per-document and full chart PDF export; PF-64 templates; Part 2 consent (CL-11). Last verified: 2026-02-23 | | CL (CL-21) | CL-05, CL-06, CL-10, CL-11, PM-07, PF-10, PF-70 | Data / Platform / Event | ✅ | [CL-21 MAT/MOUD Tracking](/architecture/integrations/medication-assisted-treatment-moud-tracking-integration) — MAT enrollment, medication/monitoring events; CBE #3400 (CL-10); consent (CL-11); charge triggers (PM-07); alerts (PF-10). **Breakdown by type:** Data → CL-05, CL-06, CL-10, CL-11; Event → PF-10; API → PM-07; Platform → PF-10, PF-70 (see integration doc). Last verified: 2026-02-23 | | CL (CL-36) | CL-04, CL-11, CL-14, CL-24, PF-01, PF-02, PF-27, PF-30, pm_encounters, External AI Vendors | Data / Platform / API (edge fn) | ✅ | [CL-36 AI-Assisted Clinical Documentation](/architecture/integrations/ai-documentation-integration) — AI draft generation from structured encounter data; ambient voice integration (Phase 3); attribution + attestation (`cl_ai_note_attributions`); Policy 940 quality validation; 42 CFR Part 2 consent gate (CL-11); tenant opt-in; PHI via edge function only. **No PHI may be sent to any external AI vendor until a BAA is fully executed** (CL-36 NFR-4; HIPAA 45 CFR 164.502(e)). See [REGULATORY_COMPLIANCE_TRACKER.md](/compliance/REGULATORY_COMPLIANCE_TRACKER) — "HIPAA — AI Vendor BAA" row for consistency. | | CL (CL-36-EN-01) | CL-36 (parent), CL-04, CL-11, PF-01, PF-02, PF-30, pm_encounters | Data / Platform | ✅ | CL-36-EN-01 AI Ambient Listening & Auto-Documentation — 3 tables (`cl_ambient_sessions`, `cl_ambient_transcripts`, `cl_ambient_session_events`); SOAP structuring; review queue/detail UI; ambient settings; 5 permissions (`cl.ambient.*`); RLS with SECURITY DEFINER helpers; 29 unit tests. Completed 2026-04-09. | | PF (PF-100) | PF-01, PF-04, PF-10, PF-27, PF-30, PF-46, PF-66, PF-70, PF-71, PF-76, PF-91, PF-93, PF-95, PF-96, CL-11, CL-36, CL-36-EN-01, pm_encounters, External AI Vendors (Deepgram, AssemblyAI, AWS Bedrock/Transcribe Medical/HealthScribe, Recall.ai, Plaud) | Platform Layer / Event / Data / API (edge fn) | 🚧 | [PF-100 Platform Ambient Recording, Transcription & AI Note Generation](/architecture/integrations/platform-ambient-transcription-integration) — Productizes CL-36's ambient pipeline as a PF capability consumable by CL/PM/HR/GR/CE/RH via `@/platform/transcription`. 14 `pf_transcription_*` tables; 16 permission keys (`pf.transcription.*`); 10 published events + 3 consumed events (`pf.transcription.session.*`, `.draft.*`, `.audio.*`, `.deletion_*`, `.policy.*`); per-tenant + Part-2 KMS aliases; vendor BAA matrix enforcement (PF-91); right-to-deletion processing. **Phase 3 CL-36 backend swap is non-breaking** — `cl_ambient_*` tables become VIEWs over `pf_transcription_*` (`module_key='cl'`) per ADR-002 (PF→PM `encounter_id` is a UUID with no FK; CL→PM FK preserved on the CL projection independently). 42 CFR Part 2 segmentation post-deadline remediation tracked in `REGULATORY_COMPLIANCE_TRACKER.md`. **No PHI may be sent to any external AI vendor until a BAA is fully executed** (HIPAA 45 CFR 164.502(e)). | | CL (CL-34) | CL-09, CL-21, CL-04, CL-11, CL-33, PM-07, PF-01, PF-02, PF-10, PF-30 | Data / Event / API / Platform | ✅ | [CL-34 Drug Testing / UDS Workflow](/architecture/integrations/drug-testing-uds-workflow-integration) — UDS orders with chain-of-custody; presumptive/definitive ordering; results interpretation (CL-05 cross-check); MOUD unexpected-negative alerts (CL-21 + PF-10); court-reportable flag → CL-33; billing CPT/G-codes → PM-07; Part 2 consent gating (CL-11). Migration, types, hooks, UI, RLS tests complete. Event/API contracts: planned for Phase 2. | | CL (CL-22) | CL-01, CL-08, CL-09, CL-10, CL-11, CL-16, PF-01, PF-02, PF-10, PF-70 | Data / Platform | ✅ | [CL-22 Vital Signs & Biometric Tracking](/architecture/integrations/vital-signs-biometric-tracking-integration) — Vitals, biometrics, metabolic monitoring; chart display (CL-01); CDS thresholds (CL-08); lab linkage (CL-09); outcomes inputs (CL-10); consent for metabolic events (CL-11); FHIR Observation mapping (CL-16). All integrations intra-CL or PF; no cross-core dependencies. Last verified: 2026-02-23 | | CL (CL-24) | PF-01, PF-02, CL-04, CL-07, CL-11, CL-14, PM (PM-07) | Data / API | 📝 | [CL-24 Telehealth Documentation & Compliance](/architecture/integrations/telehealth-documentation-compliance-integration) — Telehealth consent, session modality/location; GT/95 modifier logic (PM-07); CL-04 progress note link; CL-07 safety; CL-11/CL-14 consent and group telehealth | | CL (CL-25) | PF (audit), PF-01, CL-04, CL-07, CL-11, CL-15 | Data / Platform Layer | ✅ | [CL-25 Clinical Audit & Compliance Dashboard](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/clinical-audit-compliance-dashboard-integration.md) — Read from pf_audit_logs and CL tables; break-glass review queue; anomaly detection RPC. Complete 2026-04-01 | | CL (CL-26) | CL-02, CL-03, CL-07, CL-10, CL-11, CL-23, PM-12, PM-14 | Platform Layer / Data / Event | ✅ | [CL-26 Patient-Reported Outcomes & Self-Service Portal](/architecture/integrations/patient-reported-outcomes-self-service-portal-integration) — Patient screenings, check-ins, treatment plan view, consent self-service, messaging (PM-14), crisis resources; in-basket (CL-23); portal identity (PM-12) | | CL (CL-27) | PF-01, CL-14, PM-03, PM-04, RH | Data / Platform / Event | ✅ | [CL-27 Behavioral Health Program Scheduling Templates](/architecture/integrations/behavioral-health-program-scheduling-templates-integration) — Program templates (IOP/PHP/residential/outpatient), enrollment, group session auto-creation (CL-14), conflict check (PM-03/PM-04), RH census alignment. Last verified: 2026-02-25 | | CL (CL-29) | PF-01, CL-12, CL-03, CL-07, CL-10, CL-18, RH | Data / Event | ✅ | [CL-29 Discharge & Aftercare Planning](/architecture/integrations/discharge-aftercare-planning-integration) — Aftercare plans, follow-up contacts (HEDIS FUH), readmission risk; transition link (CL-12); housing coordination at residential discharge (RH). **Event contracts:** Discharge.AftercarePlan.Finalized (platform.events.aftercare; publisher CL-29, subscribers RH, reporting); RH.Referral.Status (platform.events.referrals; publisher RH, subscriber CL-29). Integration owners: CL team (CL-29), RH team (referral status). | | CL (CL-29-EN-65) | CL-29, CL-15, CL-35, PM (via platform), PF-70 | Data / Platform Layer | ✅ | [CL-29-EN-65 HEDIS FUH/FUM Tracking](/architecture/integrations/hedis-fuh-fum-tracking-integration) — HEDIS FUH/FUM flag columns on `cl_aftercare_plans`; `cl_hedis_fuh_fum_summary` view (security_invoker); CL-15 and CL-35 consume view for rates/export and care gap. Permission gates: `cl.hedis-tracking.view`, `cl.hedis-tracking.export`. ⚠️ AHCCCS HEDIS FUH/FUM MY 2025 reporting deadline: June 15, 2026 (9:00 PM ET), subject to final confirmation — track in [REGULATORY_COMPLIANCE_TRACKER](/compliance/REGULATORY_COMPLIANCE_TRACKER); confirm HOQ (House of Quality) status. | — HEDIS FUH/FUM flag columns on `cl_aftercare_plans`; `cl_hedis_fuh_fum_summary` view (security_invoker); CL-15 and CL-35 consume view for rates/export and care gap. Permission gates: `cl.hedis-tracking.view`, `cl.hedis-tracking.export`. ⚠️ AHCCCS HEDIS FUH/FUM MY 2025 reporting deadline: June 15, 2026 (9:00 PM ET), subject to final confirmation — track in [REGULATORY_COMPLIANCE_TRACKER](/compliance/REGULATORY_COMPLIANCE_TRACKER); confirm HOQ (House of Quality) status. | | CL (CL-31) | CL-02, CL-03, CL-04, CL-11, CL-15, CL-21, PF-01, PF-02, PF-30 | Data / Platform | ✅ | [CL-31 Spec/Integration Document](https://github.com/Encore-OS/encoreos/blob/development/specs/cl/specs/CL-31-co-occurring-disorder-integrated-documentation.md) — Complete 2026-05-12. Extends CL-02 (COD assessment tab + ASI-6/BASIS-32/GAIN-SS), CL-03 (treatment plan extension), CL-04 (progress note SUD section, consent-gated via CL-11 `cl_check_sud_consent()`), CL-15 (IET-COD HEDIS measure in `cl-hedis-calculator`); MOUD link via CL-21 FK. **Intra-CL only; no separate `CL-31-*-INTEGRATION.md` doc required** (no cross-core FKs, no published domain events; SUD redaction is request-time, not event-driven). | | CL (CL-35) | CL-02, CL-03, CL-07, CL-10, CL-15, CL-22, PF-01, PF-02, PF-30 | Data / Platform Layer / Event | ✅ | [CL-35 Integration](/architecture/integrations/population-health-integration) — Phase 2/3 complete: cl_risk_stratifications, cl_quality_measure_periods tables; dashboard, quality measures, clinician panel, supervisor panels pages; cl-risk-stratification and cl-hedis-calculator edge functions; FA VBP event contract. Last verified: 2026-04-01 | | CL (CL-12-EN-68, CL-22-EN-01, CL-29-EN-66, CL-51-EN-01) | CL-51 engine; PM-25-EN-01, PM-77, GR-28, GR-31 (consumers); PF-96, PF-108 | Event (`cl_quality_measure_period_calculated`) | 📝 | [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — New quality measures (HEDIS TRC, cardiometabolic SSD/SMD/SMC/SAA/APM, FUA/FUI, CCBHC clinic-collected) register in the CL-51 eCQM engine; engine publishes the canonical measure event to PM/GR consumers. CL-29-EN-66 also consumes PF-108 Contexture ADT for the FUA out-of-network denominator and emits the at-risk cohort to CL-35. | | CL (CL-51-EN-02) | CL-16; PM-77 (consumer) | API (FHIR DEQM) / Event | 📝 | [API Contracts § CL-51-EN-02](/architecture/integrations/API_CONTRACTS#cl-51-en-02-ecds--fhir-da-vinci-deqm-digital-quality-measure-api) — FHIR Da Vinci DEQM `Measure`/`MeasureReport`, `submit-data/collect-data`, NCQA ECDS tagging beside CL-51 QRDA; consumed by PM-77 for outbound payer submission. See [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) | | CL (CL-54-EN-01) | CL-54, CL-10, CL-47; PM-75 (consumer) | Event (`cl_cocm_registry_status_changed`) / Platform Layer | 📝 | [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — CoCM/BHI population registry + treat-to-target; emits registry-status signal that PM-75 gates CoCM billing on (active membership + consultant review). | | CL (CL-69) | CL-10, CL-11, CL-35, CL-47, CL-63; GR-28, GR-30, GR-31 (consumers); PF-96 | Event (`clinical.outcome_assessment.recorded`) | 📝 | [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — GPRA→SUPRT/NOMs longitudinal outcome capture; emits outcome event to GR grant-reporting consumers (CL captures, GR reports). SUD rows DS4P-labeled (CL-63) + Part 2 consent-gated (CL-11); hands reassessment cohort to CL-35. | | PM (PM-25-EN-01) | PM-25, PM-11; CL-51 (consumed); FA (reconciliation); PF-96 | Event (consumer) / Data | 📝 | [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — Consumes `cl_quality_measure_period_calculated` → measure-rate→threshold→accrued/withheld waterfall; recalculates on restated measure; reconciliation view to FA GL. | | PM (PM-75) | PM-01, PM-02, PM-07, PM-28; CL-54-EN-01 (consumed); PF-96 | Event (`cl_cocm_registry_status_changed` consume; `pm_care_management_charge_posted` emit) | 📝 | [PM-75 Care-Management Billing Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/PM-75-CARE-MANAGEMENT-BILLING-INTEGRATION.md) · [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — CoCM/BHI/CCM/PCM billing engine; gates on CL-54-EN-01 registry; posts charges to PM-07/PM-08; feeds PM-25-EN-01 accrual; MCO variance via PF-96. | | PM (PM-76) | PM-03, PM-42, PM-25; CL-35 (consumed); PF-96 | Event (`clinical.care_gap.identified` consumer) | 📝 | [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — Consumes CL-35 care-gap events; maps gap → PM-03 reminder + PM-42 coordinator task; tracks gap→appointment→closure on `pm_care_gap_actions`. | | PM (PM-77) | PM-15, PM-25; CL-51, CL-51-EN-02, CL-16 (consumed); PF-96 | API (FHIR DEQM) / External | 📝 | [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — Outbound payer quality/supplemental submission (DEQM `submit-data / ECDS / portal); consumes CL-51/CL-51-EN-02 outputs; transport via PM-15; inbound care-gap-file ingest. See [EXTERNAL_INTEGRATIONS.md](/architecture/integrations/EXTERNAL_INTEGRATIONS) | | GR (GR-25-EN-01) | GR-25, GR-28, GR-29, GR-30; PF-96 | Data (deadline seed) | 📝 | [GR-INTEGRATION § Grant-Reporting](/architecture/integrations/GR-INTEGRATION) — Seeds the GR-25 deadline engine with SAMHSA block-grant / TEDS / SPARS / FFR deadlines; calendar substrate for GR-28/GR-29/GR-30. | | GR (GR-28) | CL-69, CL-51-EN-01 (consumed); GR-22, GR-25; PF-96 | Event (consumer) / External (SPARS) | 📝 | [GR-INTEGRATION § Grant-Reporting](/architecture/integrations/GR-INTEGRATION) · [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — SPARS/PPR/CCBHC-E performance reporting; consumes CL-69 outcomes + CL-51-EN-01 measures (verbatim); ≥80% follow-up rate; staff-triggered SPARS upload; Part 2-gated. | | GR (GR-29) | CL-62, CL-29, CL-34 (consumed); GR-26; PF-96 | Event (clinical.sud_episode.*consumer) / External (BHSIS) | 📝 | [GR-INTEGRATION § Grant-Reporting](/architecture/integrations/GR-INTEGRATION) · [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — TEDS-A / TEDS-D generation from CL-62/CL-29 SUD episodes; BHSIS state submission; per-state element variation via PF-96; feeds GR-30. | | GR (GR-30) | GR-29, GR-26; CL-69 (consumed); FA (budget); PF-96 | Data / Event (consumer) / External (WebBGAS) | 📝 | [GR-INTEGRATION § Grant-Reporting](/architecture/integrations/GR-INTEGRATION) · [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — Block-grant set-aside tracking, URS tables (NOMs from CL-69), Synar; WebBGAS annual report; consumes FA expenditures. | | GR (GR-31) | CL-38, CL-51-EN-01, CL-69 (consumed); GR-08, GR-22; FA; PF-96 | Event (consumer) / Data | 📝 | [GR-INTEGRATION § Grant-Reporting](/architecture/integrations/GR-INTEGRATION) · [CL-PM-GR Care-Quality & Grant Integration](https://github.com/Encore-OS/encoreos/blob/development/docs/architecture/integrations/CL-PM-GR-CARE-QUALITY-GRANT-INTEGRATION.md) — CCBHC six-criteria certification tracker + care-coordination agreement registry; consumes CL-51-EN-01 measures + CL-69 outcomes; PPS/QBP cost-report deferred (no AZ SPA). | | CL (CL-04-EN-66) | CL-04, PF-02, PF-30, PF-70, PF-10 | Platform Layer / Data | ✅ | [CL-04-EN-66 Note Quality Pre-Submission Validation](/architecture/integrations/note-quality-pre-submission-validation-integration) — Pre-finalize Policy 940 validation gate oncl_progress_notes; INSERT-only override audit cl_note_940_override_audit; org-configurable enforcement (block/warn); break-glass with PF-10 notification; credential check (PF-02); diagnosis match (PF-70). Complete 2026-04-03 | | CL (CL-11-EN-01) | CL-11, PF-01, PF-02, PF-04, CL-16 | Data / Platform Layer | ✅ | [CL-11-EN-01 Electronic Consent & Redisclosure](/architecture/integrations/electronic-consent-42cfr-redisclosure-integration) — E-signature consent capture (cl_electronic_consents); 42 CFR Part 2 redisclosure chain-of-custody (cl_redisclosure_log, append-only); extends CL-11 consent framework; deferred CL-16 HIE coordination. Complete 2026-04-10 | | CL (CL-14) | CL-01, CL-03, CL-11, PM-04, PM-07 | Platform Layer / Data | ✅ | [CL-14 Group Therapy Documentation](/architecture/integrations/group-therapy-documentation-integration) - Group sessions, attendance, individual documentation; Part 2 consent (CL-11); scheduling (PM-04); billing/HQ (PM-07). **CL-14-ENHANCEMENTS:** Curriculum library (cl_group_curricula), outcome metrics dashboard, family/multi-family group subtype. Last verified: 2026-02-26 | | CL (CL-14-EN-01) | CL-14, PM-07, PM-08, CL-39, PF-70, PF-96 | Event / Data / Platform | ✅ | [CL-14-EN-01 Group Encounter Generation](/architecture/integrations/group-encounter-generation-integration) — Auto-generates pm_encounters+cl_group_encounter_generationsfrom group attendance; consumescl_group_session_documented; publishes cl_group_encounters_approved→ PM-07 charge creation; batch review/reconciliation UI; jurisdiction-aware CPT proposal (PF-96). Complete 2026-04-09 | | PM, CL | Platform / PM, CL | API | 📝 | [API Contracts](/architecture/integrations/API_CONTRACTS#planned-api-contracts-clpm-ehr--practice-management) - Eligibility check, Claim status, Consent check, Document export, Patient demographics | | PM (PM-05) | PM-03, PM-04 | Data / API | ✅ | [PM-05 Provider Schedule & Availability](/architecture/integrations/provider-schedule-availability-integration) — Availability consumed by appointment and group scheduling. Complete 2026-02-20 | | PM (PM-05) | HR-04 | Boundary | ✅ | [PM-05 Provider Schedule & Availability](/architecture/integrations/provider-schedule-availability-integration) — No shared tables; HR-04 may consume availability for display. Complete 2026-02-20 | | PM (PM-04) | CL (CL-14) | Data / Platform | 📝 | [CL-PM Group Sessions](/architecture/integrations/CL-PM-GROUP-SESSIONS) - Group scheduling (PM-04) vs clinical documentation/attendance (CL-14); ownership boundaries and schedule_id linkage | | PF-27/PF-59 | All Cores | API (Edge Functions) | ✅ | [API Contracts](/architecture/integrations/API_CONTRACTS#pf-59-ai-edge-functions-openrouter) - AI Edge Functions (OpenRouter) | | PF-30 | All Cores | API (DB Function) | 🟡 | [API Contracts](/architecture/integrations/API_CONTRACTS#pf-30-permission-check-api) - Phase 1 Complete | | PF-30 | PF-26 | Direct Dependency | 🟡 | Three-tier permission check integration (Phase 2) | | PF-30 | PF-02 | Direct Dependency | 🟡 | System role integration (Phase 2) | | FA | RH | API | 🟡 | [API Contracts](/architecture/integrations/API_CONTRACTS#fa-01-episode-balance-query) — Edge functionfa-episode-balance(cachedrh_episode_payment_status; FA AR linkage 📋) | | FA-UX-05 | FW-03 | API | 📝 | [FA-UX-05 / FW-03 Integration](/architecture/integrations/FA-UX-05-FW-03-INTEGRATION) - Purchase Order Approval Submission | | HR | RH | API | 📝 | [API Contracts](/architecture/integrations/API_CONTRACTS#hr-01-employee-lookup) | | HR | RH | API | 📝 | [API Contracts](/architecture/integrations/API_CONTRACTS#hr-01-employee-search) | | RH | CL | API | 📝 | [API Contracts](/architecture/integrations/API_CONTRACTS#rh-01-current-residencebed-query-cl-chart--optional) | | HR | FA | Platform Layer | 📝 | [HR-PAY-03 Integration](/architecture/integrations/HR-PAY-03-direct-deposit-INTEGRATION) - Direct deposit & Plaid (FA-20). **Security:** AES-256-GCM encryption (NIST SP 800-38D) for plaid_access_token_encryptedandaccount_number_encrypted; key rotation via Supabase Vault (annual or on compromise); SOC 2 Type II and PCI-DSS compliance; all operations audit-logged to pf_audit_logs; Plaid tokens retained per NACHA/Open Finance Data Security Standard (max 7 years or per org policy). | | HR (HR-PAY-03) | HR (HR-12) | In-App | 📝 | [HR-PAY-03 Integration](/architecture/integrations/HR-PAY-03-direct-deposit-INTEGRATION) - Pay stubs & bank accounts (self-service) | | HR-11 | HR-PAY-02 | Event | ✅ | [Event Contracts](/architecture/integrations/EVENT_CONTRACTS#hr-11--hr-pay-02-benefit-enrollment-events-payroll-deductions) - Benefit enrollment created/terminated → auto-create or end-date deductions | | HR-PAY-02 | HR-07 | Data | ✅ | [HR-PAY-02 Integration](/architecture/integrations/HR-PAY-02-payroll-deductions-INTEGRATION) - Payroll run consumes deductions; creates deduction items and YTD updates | | HR-PAY-02 | HR-PAY-01 | Data | ✅ | [HR-PAY-02 Integration](/architecture/integrations/HR-PAY-02-payroll-deductions-INTEGRATION) - Pre-tax deductions reduce taxable income before tax calculation | | HR-PAY-02 | PF-11 | Outbound | ✅ | [HR-PAY-02 Integration](/architecture/integrations/HR-PAY-02-payroll-deductions-INTEGRATION) - Court order document storage; link via custom_fields on employee deduction | | HR | FA | Event | ✅ | [Event Contracts](/architecture/integrations/EVENT_CONTRACTS#hr-pay-04-employer-tax-liability-events-tax-forms-compliance) - hr.employer_tax_liability.calculated (HR-PAY-04 → FA; Phase 2/3 e-filing + multi-state W-2 complete). See HR-PAY-03 security constraints for payroll data handling. | | HR-34 | HR-PAY-04, PF-10, HR-02 | Platform Layer / Data / Event | ✅ | [HR-34 Integration](/architecture/integrations/contractor-contingent-workforce-integration) - Contractor profiles, contracts, classification, approved time → 1099-NEC inputs via hr_get_contractor_1099_totalsRPC ([API_CONTRACTS](/architecture/integrations/API_CONTRACTS#hr-34-contractor-1099-totals-rpc)); renewal/credential notifications via PF-10; event stubs:hr_contractor_created, hr_contractor_contract_renewal_due, hr_contractor_credential_expiring([EVENT_CONTRACTS](/architecture/integrations/EVENT_CONTRACTS#hr-34-contractor--contingent-workforce-events)); credential types FK → HR-02. Complete: schema, hooks, UI, routes, notifications, 1099 export, 62 tests, compliance evidence. | | IT | IT-02, IT-05 | API | 📝 | [IT Integration Contracts](/architecture/integrations/IT_INTEGRATION_CONTRACTS#it-01-asset-lookup-api) - Asset lookup | | IT | IT-01, IT-04, IT-06 | API | 📝 | [IT Integration Contracts](/architecture/integrations/IT_INTEGRATION_CONTRACTS#it-03-vendor-lookup-api) - Vendor lookup | | **External API Integrations** | | HR | Checkr (External) | API (Edge Function) | 📝 | HR-20 Checkr Integration (superseded by HR-09-P5.2; archived atdocs/archive/architecture/integrations/HR-20-checkr-background-check-INTEGRATION.md`) | | FA | Ramp (External) | API (Edge Function) | ✅ | FA-30 Ramp Corporate Cards & Spend - Card transaction sync, connection management; FA-12 Phase 2 corporate card integration | Legend:
  • Implemented - Fully implemented and tested
  • 📝 Planned - Specified but not yet implemented
  • 📋 Draft/Spec - Specification complete, implementation not started
  • 🟡 In Progress - Partially implemented
  • 🚧 Work in progress / partial delivery - Active development with partial feature delivery

Encounter Lifecycle (CL-PM)

The encounter (pm_encounters, owned by PM) is the canonical entity linking scheduling, clinical documentation, and billing. State transitions are driven by events and platform layer usage. References: CL-PM Encounter-to-Billing, ADR-002 (cross-core FK exception for encounter references).

Integration by Core

RH (Recovery Housing)

Integration Doc: RH-01 Bed Board & Census Integration Facility Types (added RH-01.1):
  • recovery_housing (POS 55) — NARR Level 2/3 recovery housing
  • psychiatric_residential (POS 56) — Behavioral health residential (RTC/BHRF)
  • inpatient_unit (POS 51) — Inpatient psychiatric unit
Bed Board: /rh/bed-board — real-time board with facility_type filter, accessible from RH module launcher. Publishes Events (persisted to fw_domain_events):
  • rh_resident_admitted → FA / PM (🟡 persistence ✅; batch consumers 📋) — facility_type for PM-07 POS
  • rh_resident_discharged → FA / PM (🟡 persistence ✅; batch consumers 📋)
  • rh_phase_advanced → FW-16 / PF-10 (🟡 persistence ✅; automations 📋)
  • invoice_creation_requested → FA (📝 Planned) — includes facility_type; align name with FA before implement (see EVENT_CONTRACTS)
  • rh_bed_assigned / rh_bed_released → HR (📝 Planned) — register in KnownEventName + triggers when HR consumer is scheduled (legacy names bed_assigned / bed_released deprecated)
  • critical_incident_reported → PF-10 (📝 Planned)
  • attendance_threshold_breached → PF-10, RH-05 (📝 Planned)
  • compliance_deadline_approaching → PF-10 (📝 Planned)
  • non_compliance_detected → PF-10 (📝 Planned)
Consumes Events:
  • payment_received from FA (📝 Planned)
  • employee_assigned_to_site from HR (📝 Planned)
Consumes APIs:
  • /api/v1/fa/episode-balance from FA (🟡 Edge function fa-episode-balance; uses cached rh_episode_payment_status until FA episode AR is linked)
  • /api/v1/hr/employees/{employee_id} from HR (📝 Planned)
  • /api/v1/hr/employees from HR (📝 Planned)
Exposes APIs:
  • /api/v1/rh/current-residence → CL (📝 Planned) — current residence/bed for patient chart; API Contracts
Provides Census Data (Platform Layer):
  • src/platform/census reads rh_beds and rh_residences (including facility_type) for HR workload and PM reporting
  • See Platform Census README
Uses Platform Layers:
  • Forms (PF-08) - Resident intake forms
  • Census (Platform) - useCensusData, useSiteCensus consumed by HR/PM
  • Workforce (Platform) - Staff assignments
  • Data Lookup (PF-15) - Site and staff selectors
  • Notifications (PF-10) - Compliance alerts
  • Documents (PF-11) - Resident agreements

FA (Finance & Accounting)

Publishes Events:
  • vendor_bill_approved → FW-03, PF-10, FA-03 (✅ Implemented)
  • payment_processed → FA-02, PF-10, FA-06 (✅ Implemented)
  • journal_entry_posted → Event Consumer, FA-07, PF-10 (✅ Implemented)
  • budget_approved → FW-03, PF-10, FA-07 (✅ Implemented)
  • budget_exceeded → PF-10, FA-08 (✅ Implemented)
  • consolidation_completed → FA-07, PF-10, Event Consumer (✅ Implemented)
  • payment_received → RH (📝 Planned)
  • tax_1099_generated → PF-10 (📝 Planned - FA-10)
  • tax_w2_generated → PF-10, HR-07 (📝 Planned - FA-10)
  • tax_year_closed → PF-10, FA-07 (📝 Planned - FA-10)
  • asset_created → FM-05, PF-10 (📝 Planned - FA-11)
  • asset_disposed → FM-05, PF-10, FA-02 (📝 Planned - FA-11)
  • depreciation_posted → FA-02, FA-07 (📝 Planned - FA-11)
  • expense_report_submitted → FW-03, PF-10 (📝 Planned - FA-12)
  • expense_report_approved → FA-05, PF-10 (📝 Planned - FA-12)
  • expense_report_rejected → PF-10 (📝 Planned - FA-12)
  • expense_reimbursement_processed → FA-02, PF-10 (📝 Planned - FA-12)
  • project_created → FA-08, PF-10 (📝 Planned - FA-13)
  • project_budget_exceeded → PF-10, FA-08 (📝 Planned - FA-13)
  • grant_drawdown_received → FA-02, PF-10 (📝 Planned - FA-13)
  • cash_position_updated → FA-07, PF-10 (📝 Planned - FA-14)
  • investment_maturity_approaching → PF-10 (📝 Planned - FA-14)
  • credit_limit_approaching → PF-10 (📝 Planned - FA-14)
  • idc_rate_calculated → FA-13, PF-10 (📝 Planned - FA-15)
  • idc_allocated → FA-13, FA-02 (📝 Planned - FA-15)
  • kpi_threshold_exceeded → PF-10 (📝 Planned - FA-16)
  • intercompany_transaction_created → FA-02, FA-09 (📝 Planned - FA-17)
  • intercompany_elimination_generated → FA-09, FA-02 (📝 Planned - FA-17)
  • fa_revenue_recognized → FA-02, FA-05, FA-13 (✅ Implemented FA-18 Phase 2 WS3 — published via fw_domain_events from fa_process_revenue_recognition)
  • fa_revenue_schedule_completed → FA-05, FA-13, LO (✅ Implemented FA-18 Phase 2 WS3 — emitted when a schedule fully recognizes its total revenue)
  • close_period_started → PF-10, FA-02 (✅ Implemented - FA-19)
  • close_period_completed → PF-10, FA-07 (✅ Implemented - FA-19)
  • close_period_approved → PF-10, FA-07, FW-03 (✅ Implemented - FA-19)
  • close_task_assigned → PF-10 (✅ Implemented - FA-19)
  • close_task_completed → PF-10 (✅ Implemented - FA-19)
Consumes Events:
  • rh_resident_admitted from RH (🟡 Event persisted; FA batch consumer 📋) — facility_type for service-line tagging
  • rh_resident_discharged from RH (🟡 Event persisted; FA batch consumer 📋) — facility_type and LOS
  • invoice_creation_requested from RH (📝 Planned) — payload includes facility_type
  • resident_charge_created from RH → FA-05 (📝 Planned - Auto-invoice generation)
  • merit_increase_approved from HR-15 → FA-08 (✅ Implemented) - Budget impact tracking
  • compensation_cost_allocated from HR-15 → FA-08 (✅ Implemented) - Departmental cost forecasts
  • compensation_analysis_completed from HR-15 → FA-16 (✅ Implemented) - Analytics integration
  • payroll_run_completed from HR-07 → FA-10 (📝 Planned - W-2 generation)
  • vendor_payment_processed from FA-03 → FA-10 (📝 Planned - 1099 updates)
  • purchase_order_received from FA-04 → FA-11 (📝 Planned - Asset creation)
  • workflow_approved from FW-03 → FA-12 (📝 Planned - Expense approval)
  • workflow_rejected from FW-03 → FA-12 (📝 Planned - Expense rejection)
  • journal_entry_posted from FA-02 → FA-13, FA-15 (📝 Planned - Project/cost allocation)
  • vendor_bill_approved from FA-03 → FA-13 (📝 Planned - Project expense allocation)
  • invoice_sent from FA-05 → FA-13, FA-16, FA-18 (📝 Planned - Project revenue, DSO, revenue recognition)
  • bank_balance_updated from FA-06 → FA-14 (📝 Planned - Cash position updates)
  • payment_processed from FA-03 → FA-14 (📝 Planned - Cash flow forecast)
  • fiscal_period_closed from FA-02 → FA-19 (📝 Planned - Close period linking)
Exposes APIs:
  • /api/v1/fa/episode-balance → RH (🟡 Edge function fa-episode-balance; full FA AR join 📋)
  • /api/v1/fa/tax/1099/generate → Internal (📝 Planned - FA-10)
  • /api/v1/fa/assets/{asset_id}/depreciation → FA-07 (📝 Planned - FA-11)
  • /api/v1/fa/assets/register → FA-07 (📝 Planned - FA-11) - Fixed asset register report
  • /api/v1/fa/depreciation/schedule → FA-07 (📝 Planned - FA-11) - Depreciation schedule report
  • /api/v1/fa/depreciation/run → Internal (📝 Planned - FA-11) - Run monthly depreciation
  • /api/v1/fa/expenses/reports/{report_id}/approve → FW-03 (📝 Planned - FA-12)
  • /api/v1/fa/projects/{project_id}/budget-vs-actual → FA-07, FA-08 (📝 Planned - FA-13)
  • /api/v1/fa/idc/rates/{rate_id}/allocate → FA-13 (📝 Planned - FA-15)
  • /api/v1/fa/analytics/dashboard → Internal (📝 Planned - FA-16)
  • /api/v1/fa/intercompany/eliminations/generate → FA-09 (📝 Planned - FA-17)
  • /api/v1/fa/revenue/recognize → Internal (✅ Implemented FA-18 Phase 2 — RPC fa_process_revenue_recognition + edge function fa-process-revenue-recognition HTTP wrapper)
  • /api/v1/fa/close/periods/{period_id}/approve → FW-03, Internal (✅ Implemented - FA-19)
  • /api/v1/fa/close/periods/{period_id}/status → FA-07, FA-02 (✅ Implemented - FA-19)
  • /api/v1/fa/cash/position → FA-07, FA-16 (📝 Planned - FA-14)
Consumes APIs:
  • /api/v1/hr/payroll/tax-data from HR-07 → FA-10 (📝 Planned - W-2, 941/940)
  • /api/v1/fa/vendors/payments from FA-03 → FA-10 (📝 Planned - 1099)
  • /api/v1/fa/purchase-orders/{po_id} from FA-04 → FA-11 (📝 Planned - Asset creation)
  • /api/v1/fm/assets/{asset_id} from FM-05 → FA-11 (📝 Planned - Facilities asset reference)
  • /api/v1/it/assets/{asset_id} from IT-01 → FA-11 (📝 Planned - IT asset reference)
  • /api/v1/hr/employees/{employee_id} from HR-01 → FA-12 (📝 Planned - Employee data)
  • /api/v1/fa/accounts from FA-01 → FA-12, FA-13, FA-15 (📝 Planned - GL accounts)
  • /api/v1/fa/payments/create from FA-05 → FA-12 (📝 Planned - Reimbursement)
  • /api/v1/fa/budgets/{budget_id} from FA-08 → FA-13 (📝 Planned - Project budgets)
  • /api/v1/hr/employees/ftes from HR-01 → FA-15 (📝 Planned - FTE allocation base)
  • /api/v1/fa/projects/{project_id}/direct-costs from FA-13 → FA-15 (📝 Planned - Direct cost base)
  • /api/v1/fa/reports/balance-sheet from FA-07 → FA-16 (📝 Planned - Ratio calculations)
  • /api/v1/fa/reports/statement-activities from FA-07 → FA-16 (📝 Planned - Analytics)
  • /api/v1/fa/budgets/variance from FA-08 → FA-16 (📝 Planned - Variance analysis)
  • /api/v1/fa/journal-entries/create from FA-02 → FA-17 (📝 Planned - Intercompany entries)
  • /api/v1/fa/consolidations/{consolidation_id} from FA-09 → FA-17 (📝 Planned - Consolidation)
  • /api/v1/fa/invoices/{invoice_id} from FA-05 → FA-18 (📝 Planned - Revenue schedule)
  • /api/v1/fa/projects/{project_id} from FA-13 → FA-18 (📝 Planned - Project revenue)
  • /api/v1/fa/fiscal-periods/{period_id} from FA-02 → FA-19 (📝 Planned - Close periods)
  • /api/v1/fa/reports/close-status from FA-07 → FA-19 (📝 Planned - Close reports)
  • /api/v1/fa/bank-accounts from FA-06 → FA-14 (📝 Planned - Cash positions)
  • /api/v1/fa/budgets/cash-flow from FA-08 → FA-14 (📝 Planned - Cash forecasts)
Uses Platform Layers:
  • Forms (PF-08) - Payment forms, vendor portal forms, expense forms
  • Workforce (Platform) - Employee selection for expenses
  • Notifications (PF-10) - Budget alerts, tax deadlines, collection notices, close notifications
  • Documents (PF-11) - Vendor contracts, tax forms, receipts, close documentation
  • Reports (PF-12) - Financial reports

HR (Workforce)

Publishes Events:
  • credential_expired → Event Consumer, HR-04 (✅ Implemented)
  • credential_verified → Event Consumer (✅ Implemented)
  • onboarding_completed → Event Consumer (✅ Implemented)
  • offboarding_completed → Event Consumer (✅ Implemented)
  • performance_review_completed → LO-03, HR-15, HR-16 (✅ Implemented - HR-10)
  • performance_goal_completed → LO-03 (📝 Planned - HR-10)
  • performance_improvement_plan_terminated → HR-03, HR-14 (✅ Implemented - HR-10)
  • benefits_enrollment_approved → HR-07 (📝 Planned - HR-11)
  • benefits_enrollment_terminated → HR-07 (📝 Planned - HR-11)
  • disciplinary_action_termination → HR-03 (✅ Implemented - HR-14)
  • incident_reported → GR-06, PF-10 (✅ Implemented - HR-14)
  • grievance_filed → GR-03 (✅ Implemented - HR-14)
  • merit_increase_approved → HR-07, FA, PF-10 (✅ Implemented - HR-15)
  • compensation_analysis_completed → FA, PF-10 (✅ Implemented - HR-15)
  • compensation_cost_allocated → FA (✅ Implemented - HR-15)
  • successor_identified → PF-10 (📝 Planned - HR-16)
  • talent_promoted → HR-16 (📝 Planned - HR-16)
  • survey_completed → PF-10 (📝 Planned - HR-17)
  • exit_interview_completed → HR-03 (📝 Planned - HR-17)
  • employee_assigned_to_site → RH (📝 Planned)
  • employee_created → GR (📝 Planned)
Consumes Events:
  • credential_expired from HR-02 → HR-04 (✅ Implemented) - Blocks employee from scheduling
  • employee_hired from HR-09 → HR-10 (📝 Planned) - Create initial performance goals
  • organizational_goal_created from LO-03 → HR-10 (📝 Planned) - Link to employee goals
  • performance_review_completed from HR-10 → HR-15 (✅ Implemented) - Trigger merit increase planning
  • employee_terminated from HR-03 → HR-11, HR-14, HR-17 (✅ Implemented for HR-14) - Terminate benefits, close cases, trigger exit interview
Exposes APIs:
  • /api/v1/hr/employees/{employee_id} → RH (📝 Planned)
  • /api/v1/hr/employees → RH (📝 Planned)
  • /api/v1/hr/performance/reviews/:id/export → PF-12 (📝 Planned - HR-10)
Uses Platform Layers:
  • Forms (PF-08) - Onboarding forms, performance review forms, feedback forms, benefits enrollment forms, exit interview forms
  • Workforce (Platform) - Employee selection (internal use)
  • Notifications (PF-10) - Credential alerts, review reminders, feedback requests, enrollment reminders, incident notifications
  • Documents (PF-11) - Employee documents, review documents, benefits documents, compensation statements
  • Reports (PF-12) - Employee reports, performance analytics, workforce analytics
Internal Integrations:
  • HR-04 (Scheduling) subscribes to HR-02 credential events for automatic blocking
  • HR-10 (Performance) integrates with HR-01, HR-02, HR-09, HR-14, GR-02 (✅ Complete - PIP Termination → HR-14, Competency → HR-02/GR-02)
  • HR-11 (Benefits) integrates with HR-01, HR-06, HR-07, FA
  • HR-12 (Self-Service) integrates with all HR modules (HR-01 through HR-11)
  • HR-13 (Skills) integrates with HR-01, HR-02, HR-04, HR-09, GR-02
  • HR-14 (Employee Relations) integrates with HR-01, HR-03, GR-03, GR-06, PF-10, PF-11 (✅ Phase 4 Complete)
  • HR-15 (Compensation) integrates with HR-01, HR-07, HR-10, FA (✅ Phase 4 Complete)
  • HR-16 (Succession Planning) integrates with HR-01, HR-10
  • HR-17 (Engagement) integrates with HR-01, HR-03, PF-08
  • HR-18 (Analytics) aggregates data from all HR modules (HR-01 through HR-17)

FW (Forms & Workflow)

Database Tables (FW-57):
  • fw_workflow_templates — extended with healthcare pattern metadata (pattern_category, compliance_tags, required_node_ids, regulatory_references) (✅ Implemented)
  • fw_regulatory_change_log — org-scoped regulatory change tracking for templates (✅ Implemented)
Publishes Events:
  • automation_trigger → FW-03 (✅ Implemented)
  • execution_failed → PF-10 (📝 Planned - FW-22)
  • fw_external_form_submitted → PF-10, FW-03 (✅ Implemented - FW-32; published via pg_notify in portal-form-submit edge function)
  • fw_approval_submitted → PF-10, FW-03 (📝 Planned - FW-34)
  • fw_approval_completed → FW-03, PF-10 (📝 Planned - FW-34)
  • fw_approval_escalated → PF-10 (📝 Planned - FW-34)
Exposes APIs (Edge Functions):
  • workflow-query-action → Automation Executor (📝 Planned - FW-19)
  • workflow-api-action → Automation Executor (📝 Planned - FW-19)
  • workflow-debug-control → Debug UI (📝 Planned - FW-22)
  • sandbox-execute → Testing UI (📝 Planned - FW-24)
  • test-datasets-import → Testing UI (📝 Planned - FW-24)
  • test-cases-run → Testing UI (📝 Planned - FW-24)
  • approval-escalation → Scheduled cron job (📝 Planned - FW-34)
Uses Platform Layers:
  • Data Lookup (PF-15) - Dynamic form field lookups, Query action whitelist base
  • Custom Fields (PF-16) - Custom field definitions
  • Field Configuration (PF-17) - Field layout configuration (Phase 4/5 Complete: versioning + wizard forms)
  • Workflow Variables (FW-18) - Query result storage
  • Notifications (PF-10) - Failed execution alerts (FW-22), Approval notifications (FW-34)
  • Permissions (PF-30) - Approval authorization (FW-34)
  • Supabase Realtime - Live execution dashboard (FW-22), Approval inbox updates (FW-34)
Database Tables (FW-19):
  • fw_api_connections - SFTP/API connection configs (📝 Planned)
  • fw_query_whitelist - Org-specific table whitelist (📝 Planned)
Database Tables (FW-22):
  • fw_execution_logs - Searchable execution logs (📝 Planned)
  • fw_debug_sessions - Debug session state (📝 Planned)
Database Tables (FW-24):
  • fw_test_datasets - Test data storage (📝 Planned)
  • fw_test_scenarios - Scenario definitions (📝 Planned)
  • fw_test_cases - Automated test cases (📝 Planned)
  • fw_sandbox_executions - Sandbox execution history (📝 Planned)
  • fw_test_coverage - Coverage metrics (📝 Planned)
Database Tables (FW-25):
  • fw_workflow_retry_configs - Retry configuration per node (✅ Implemented)
  • fw_workflow_circuit_breakers - Circuit breaker state per node (✅ Implemented)
  • fw_workflow_recovery_workflows - Recovery workflow definitions (✅ Implemented)
  • fw_workflow_compensation_actions - Compensation action definitions (✅ Implemented)
SECURITY DEFINER Functions (FW-25):
  • fw_has_rule_org_access(rule_id, user_id) - Check org access via automation rule for RLS (✅ Implemented)
Database Tables (FW-34):
  • fw_approval_chains - Approval chain definitions (📝 Planned)
  • fw_approval_steps - Steps in approval chains (📝 Planned)
  • fw_approval_requests - Submitted approval requests (📝 Planned)
  • fw_approval_assignments - Approver assignments (📝 Planned)
  • fw_approval_delegations - Delegation records (📝 Planned)
  • fw_approval_history - Audit trail (📝 Planned)
SECURITY DEFINER Functions (FW-34):
  • fw_user_can_view_request(request_id, user_id) - Check if user can view approval request (📝 Planned)
  • fw_get_pending_approvals(user_id) - Get pending approvals for user including delegations (📝 Planned)
  • fw_process_approval_action(assignment_id, action, comment, reason) - Process approval/reject action (📝 Planned)
Scheduled Jobs (FW-34):
  • fw-approval-escalation - Hourly cron job for reminder/escalation processing (📝 Planned)
Database Tables (FW-16):
  • fw_workflow_events - Global event registry with 11 seed events (✅ Implemented)
  • fw_domain_events - Organization-scoped event log (✅ Implemented)
Platform Integration Layer (FW-16):
  • /src/platform/events/ - Event publishing for all cores (✅ Implemented)
    • publishEvent() - Direct function for event publication
    • usePublishEvent() - React hook with loading state
    • Type definitions for known events
Database Tables (FW-17):
  • Conditions stored in fw_workflow_definitions.node_data JSONB (✅ Implemented)
Platform Integration (FW-17 → PF-17): Database Updates (FW-18):
  • fw_workflow_executions.variables - JSONB column for variable state (✅ Implemented)
  • Index: idx_fw_executions_variables - GIN index for variable queries (✅ Implemented)
Edge Function Shared Code (FW-18):
  • supabase/functions/_shared/expressionEvaluator.ts - Deno-compatible evaluator (✅ Implemented)
Database Tables (FW-29):
  • fw_workflow_notification_rules - Notification rules per workflow (✅ Implemented)
  • fw_workflow_alert_rules - Alert rules for conditions (✅ Implemented)
  • fw_workflow_alerts - Active and historical alerts (✅ Implemented)
  • fw_workflow_notification_preferences - User notification preferences (✅ Implemented)
Edge Functions (FW-29):
  • workflow-notification-trigger - Process status changes, evaluate alert rules (✅ Implemented)
  • process-alert-escalations - Scheduled escalation processing (✅ Implemented)
Database Triggers (FW-29):
  • fw_execution_status_notification_trigger - Triggers notification on execution status change (✅ Implemented)

LO (Leadership Operating System)

Publishes Events:
  • rock_completed → FA, PF-10, PF-04 (✅ Implemented)
  • todo_created → PF-10 (✅ Implemented)
  • todo_completed → PF-10, LO-03 (✅ Implemented)
  • todo_overdue → PF-10 (✅ Implemented)
  • scorecard_updated → PF-10, PF-12 (✅ Implemented)
  • metric_threshold_breached → PF-10, LO-06 (✅ Implemented)
  • meeting_scheduled → PF-10 (✅ Implemented)
  • meeting_completed → PF-04, PF-10 (✅ Implemented)
  • action_item_created → LO-04, PF-10 (✅ Implemented)
  • issue_identified → PF-10, LO-06 (✅ Implemented)
  • issue_resolved → PF-04, PF-10 (✅ Implemented)
  • assessment_distributed → PF-10 (✅ Implemented)
  • assessment_completed → PF-12, PF-10 (✅ Implemented)
  • goal_created → FA, GR, FW (📝 Planned - LO-16)
  • goal_completed → RH, FA, GR (📝 Planned - LO-16)
  • action_assigned → HR, PF-10 (📝 Planned - LO-16)
  • action_completed → LO-14, PF-10 (📝 Planned - LO-16)
Uses Platform Layers:
  • Forms (PF-08) - Assessment forms
  • Notifications (PF-10) - Task and meeting notifications
  • Documents (PF-11) - Knowledge articles
  • Tasks (PF-29) - Unified task system (✅ Phase 2/3 Complete — 2026-02-27)
  • Reports (PF-12) - Scorecard and assessment reports

FM (Facilities Management)

Full contract schemas: FM_INTEGRATION_CONTRACTS.md
Publishes Events — Implemented (FM-01 through FM-05, FM-13):
  • work_order_created → PF-10, FA (✅ Implemented)
  • work_order_completed → FA, FM-04, FM-05, FM-06, FM-03 (✅ Implemented)
  • work_order_overdue → PF-10 (✅ Implemented)
  • inventory_low_stock → PF-10, FA-04 (✅ Implemented)
  • inventory_item_used → FM-01, FA (✅ Implemented)
  • vendor_certification_expiring → PF-10, GR (✅ Implemented)
  • vendor_work_order_assigned → PF-10, FA-03 (✅ Implemented)
  • pm_due → PF-10, FM-05 (📝 Planned — FM-04 publisher not yet wired)
  • pm_overdue → PF-10, GR (📝 Planned)
  • pm_completed → FM-05, FA (📝 Planned)
  • asset_purchased → FA (📝 Planned — FM-05 publisher not yet wired)
  • asset_disposed → FA, FM-04 (📝 Planned)
  • asset_warranty_expiring → PF-10 (📝 Planned)
  • vehicle_registered → PF-10, FM-05 (📝 Planned — FM-13 publisher)
  • vehicle_status_changed → PF-10, FM-05 (📝 Planned)
  • license_expiring → PF-10, GR (📝 Planned)
  • registration_expiring → PF-10, GR (📝 Planned)
  • fleet_maintenance_due → PF-10, FM-01 (📝 Planned)
  • fleet_maintenance_overdue → PF-10, GR (📝 Planned)
Publishes Events — Planned (FM-06 through FM-12, pending implementation):
  • inspection_due → PF-10, GR (📝 Planned — FM-06)
  • inspection_failed → PF-10, GR, FM-01 (📝 Planned — FM-06)
  • inspection_compliant → GR, FM-05 (📝 Planned — FM-06)
  • budget_variance_alert → PF-10, FA-08 (📝 Planned — FM-09)
  • capital_project_approved → FA-09, PF-10 (📝 Planned — FM-12)
  • energy_anomaly_detected → PF-10, GR (📝 Planned — FM-10 Deferred Expansion)
  • space_occupancy_threshold → PF-10, HR (📝 Planned — FM-11)
  • facilities_report_generated → PF-10 (📝 Planned — FM-07)
Consumes Events:
  • work_order_completed → Updates vendor performance (✅ Implemented)
  • purchase_order_approved → Update FM-02 inventory preferred vendor PO (📝 Planned — from FA-04)
  • vendor_invoice_matched → Update FM-03 vendor WO invoice status (📝 Planned — from FA-03)
  • budget_approved → Unlock FM-09 budget period for actuals (📝 Planned — from FA-08)
  • it_asset_maintenance_required → Create FM work order from IT asset alert (📝 Planned — from IT)
Uses Platform Layers:
  • Forms (PF-08) — Work order forms, inspection checklists
  • Workforce (Platform) — Staff assignments
  • Finance (@/platform/finance) — FM cost summary interface for FM-09/FM-12 (📝 Stub per FM-16)
API Contracts (FM as provider, pending implementation):
  • GET /api/v1/fm/budgets/{id}/actuals → FA-08 (📝 Planned — FM-09)
  • GET /api/v1/fm/capital-projects/{id} → FA-09 (📝 Planned — FM-12)
  • GET /api/v1/fm/spaces/{id}/occupancy → HR (📝 Planned — FM-11)
  • Data Lookup (PF-15) - Site and asset selectors
  • Notifications (PF-10) - Work order and maintenance alerts
  • Documents (PF-11) - Equipment manuals, certifications

GR (Governance)

GR-15 Platform Layer Integrations: GR-16 Platform Layer Integrations: Publishes Events:
  • policy_created → GR-02, GR-03 (📝 Planned — GR-01)
  • policy_acknowledged → GR-02, GR-03 (📝 Planned — GR-01)
  • training_completed → GR-03, HR-02 (📝 Planned — GR-02)
  • requirement_created → GR-04, GR-06 (📝 Planned — GR-03)
  • compliance_status_changed → GR-04, GR-05, GR-06 (📝 Planned — GR-03)
  • audit_created → GR-06 (✅ Complete — GR-04 / GR-UX-07)
  • audit_finding_created → GR-08 (accreditation CAP), GR-05, GR-06 (✅ Complete — GR-04-EN-01; PHI-free payload; CAP auto-creation for critical/high findings)
  • risk_created → GR-06 (📝 Planned — GR-05)
  • risk_assessed → GR-06 (📝 Planned — GR-05)
  • qi_project_created → GR-03, GR-04 (✅ Complete — GR-07 / GR-UX-08)
  • accreditation_created → GR-03, GR-04 (📝 Planned — GR-08)
  • incident_created → GR-05, GR-06, CL (✅ Implemented — GR-09; also see CL-GR bridge)
  • incident_resolved → GR-05, GR-06 (✅ Implemented — GR-09)
  • gr_incident_created → CL (chart flag), GR-14 (regulatory classification) (✅ Implemented — GR-09 trigger deployed; emits only for chart-linked incidents where custom_fields->>'chart_id' is present; GR-14 should subscribe to incident_created for all incidents; see CL-GR-CLINICAL-INCIDENT-INTEGRATION.md, GR-14 Integration)
  • regulatory_report_submitted → GR-03 (compliance evidence, ✅), GR-08 (accreditation evidence, ✅), PF-10 (notification, 📝) (✅ Complete — GR-14-EN-01; idempotent via source_event_id)
  • gr_state_gap_analysis_completed → PF-91 (compliance dashboard), PF-10 (critical gap notifications) (📝 Planned — GR-06-EN-01)
  • procedure_approved → GR-02, GR-03, PF-10 (✅ Complete — GR-11)
  • procedure_execution_completed → GR-03, PF-10 (✅ Complete — GR-11)
  • procedure_gap_identified → GR-07 QI project candidate (✅ Complete — GR-13-EN-01, 2026-04-19; see GR-13 Integration)
  • gr_template_instantiated → GR-03, PF-10 (📝 Planned — GR-12)
  • gr_template_contributed → GR-03 (📝 Planned — GR-12)
  • gr_coi_cycle_launched → PF-10 (notifications to participants), GR-03 (compliance tracking) (✅ Complete — GR-15)
  • gr_whistleblower_report_submitted → PF-10 (notify compliance officer) (✅ Complete — GR-15)
  • gr_template_instantiated → GR-03, PF-10 (✅ Complete — GR-12)
  • gr_template_contributed → GR-03 (✅ Complete — GR-12)
Consumes Events:
  • employee_created from HR → GR onboarding policy/training assignment (📝 Planned — Event Contracts)
  • incident_reported from HR → GR-03, GR-04 (✅ Implemented — HR-14)
  • grievance_filed from HR → GR-03 (✅ Implemented — HR-14)
  • vendor_certification_expiring from FM → GR compliance check (✅ Implemented — FM Integration Contracts)
  • pm_overdue from FM → GR (📝 Planned)
  • inspection_due from FM → GR (📝 Planned)
  • inspection_failed from FM → GR (📝 Planned)
  • inspection_compliant from FM → GR (📝 Planned)
  • it_security_incident_created from IT → GR (📝 Planned — IT Integration Contracts)
  • it_critical_vulnerability_detected from IT → GR (📝 Planned)
  • it_asset_disposed from IT → GR (📝 Planned)
  • cl_safety_plan_activated from CL → GR draft incident (📝 Planned — CL-GR Bridge)
  • cl_restraint_event_documented from CL → GR draft incident (📝 Planned — CL-GR Bridge)
  • cl_incident_reported from CL-15 → GR-03, GR-04, GR-08 (✅ Implemented — CL-15 Integration)
  • goal_completed from LO → GR (📝 Planned — LO-16)
Uses Platform Layers:
  • Forms (PF-08) — Policy acknowledgment forms, audit checklists, compliance surveys
  • Notifications (PF-10) — Policy review reminders, compliance check due dates, audit finding alerts
  • Documents (PF-11) — Policy documents, audit evidence, compliance certificates
  • AI (PF-27) — AI Compliance Advisor (GR-06); AI contract analysis (GR-10 Phase 2, planned)
  • Permissions (PF-30) — Granular permission system for GR access control
  • Workflow (PF-73) — Swim lane diagram generation from GR-01 policies and GR-11 procedures (✅ Implemented)
Integration Docs:

IT (Information Technology)

Publishes Events:
  • it_asset_purchased → FA (📝 Planned)
  • it_asset_assigned → PF-10, HR (📝 Planned)
  • it_asset_maintenance_required → FM (📝 Planned)
  • it_asset_disposed → FA, GR (📝 Planned)
  • it_ticket_created → PF-10 (📝 Planned)
  • it_ticket_status_changed → PF-10 (📝 Planned)
  • it_sla_breached → PF-10 (📝 Planned)
  • it_contract_expiring → PF-10 (📝 Planned)
  • it_license_created → FA (📝 Planned)
  • it_license_expiring → PF-10 (📝 Planned)
  • it_license_renewed → FA (📝 Planned)
  • it_license_compliance_alert → PF-10 (📝 Planned)
  • it_security_incident_created → GR, PF-10 (📝 Planned)
  • it_critical_vulnerability_detected → GR, PF-10 (📝 Planned)
  • it_patch_deployment_overdue → PF-10 (📝 Planned)
  • it_purchase_request_submitted → FW-34, PF-10 (📝 Planned)
  • it_purchase_request_approved → FA-04, PF-10 (📝 Planned)
  • it_purchase_request_received → IT-01, PF-10 (📝 Planned)
Exposes APIs:
  • /api/v1/it/assets/{asset_id} → IT-02, IT-05 (📝 Planned)
  • /api/v1/it/assets → IT-02, IT-04, IT-05, IT-06 (📝 Planned)
  • /api/v1/it/vendors/{vendor_id} → IT-01, IT-04, IT-06 (📝 Planned)
  • it_check_license_compliance() → IT-04 Dashboard (📝 Planned)
Consumes APIs:
  • /api/v1/hr/employees/{employee_id} from HR (📝 Planned)
  • /api/v1/hr/employees from HR (📝 Planned)
Uses Platform Layers:
  • Forms (PF-08) - Ticket submission, purchase request forms
  • Workforce (Platform) - Employee assignments for assets/tickets
  • Data Lookup (PF-15) - Asset, vendor, employee selectors
  • Notifications (PF-10) - SLA, expiration, compliance alerts
  • Documents (PF-11) - Warranties, attachments, contracts
  • Approval Workflows (FW-34) - Purchase request approvals
  • Custom Fields (PF-16) - Org-specific metadata on all IT entities
Internal Integrations:
  • IT-02 links tickets to IT-01 assets
  • IT-04 links licenses to IT-01 assets and IT-03 vendors
  • IT-05 links patches/vulnerabilities to IT-01 assets
  • IT-06 uses IT-03 vendors and creates IT-01 assets on receipt
Full Documentation: IT Integration Contracts

CE (Community Engagement / CRM)

Publishes Events:
  • ce.email.synced → CE-04 (📝 Planned - CE-07) - Auto-create activity
  • ce.email.tracking → PF-10 (📝 Planned - CE-07) - Open/click notifications
  • ce.sms.sent → CE-04 (📝 Planned - CE-08) - Auto-create activity
  • ce.sms.received → CE-04 (📝 Planned - CE-08) - Auto-create activity
  • ce.campaign.started → PF-10 (📝 Planned - CE-09) - Campaign notifications
  • ce.campaign.completed → CE-05 (📝 Planned - CE-09) - Analytics update
  • ce_web_form_submitted → CE-01, CE-05 (📝 Planned - CE-10) - Lead creation
  • ce_screening_completed → PM-38, PM-39, CE-29 (📝 Planned - CE-28) - Screening disposition triggers appointment/waitlist/conversion
  • ce_lead_waitlisted → PM-39 (📝 Planned - CE-28) - Screened lead routed to waitlist (no bed available)
  • ce_crisis_alert_created → PF-83, PF-10, CE-29 (📝 Planned - CE-28-ENHANCEMENTS EN-01) - Crisis-keyword detection on inbound intake; ID-only payload (no PHI)
Consumes Events:
  • N/A (CE is primarily a publisher of CRM events)
Exposes APIs:
  • N/A (internal module APIs only)
Consumes APIs:
  • /api/v1/hr/employees/{employee_id} from HR (📝 Planned) - Contact assignment
  • /api/v1/hr/employees from HR (📝 Planned) - Staff search
Uses Platform Layers:
  • Notifications (PF-10) - Email tracking alerts, SMS delivery
  • Documents (PF-11) - Email attachments
  • Reports (PF-12) - Campaign analytics (CE-05)
  • Custom Fields (PF-16) - Contact/partner custom data
Internal Integrations:
  • CE-07 creates activities in CE-04 via database trigger
  • CE-08 creates activities in CE-04 via database trigger
  • CE-07 links emails to CE-01 contacts and CE-02 partners
  • CE-08 links SMS to CE-01 contacts
  • CE-09 creates leads in CE-01 contacts
  • CE-10 creates leads in CE-01 and triggers CE-09 campaign tracking
External Integrations:
  • Gmail API (OAuth 2.0) - CE-07
  • Microsoft Graph API (OAuth 2.0) - CE-07
  • RingCentral SMS API - CE-08
Full Documentation: CE-07 Email Integration

CL (Clinical & EHR)

Note (EN-66): CL-04-EN-66 is complete. EN-66 uses a shared canonical validatePolicy940 function from src/cores/cl/shared/validation/validatePolicy940.ts. CL-36 Phase 2 ambient documentation should consume this same validator to avoid duplication. See CL-04-EN-66 integration doc Contract Validation Checklist. Publishes Events:
  • assessment_completed → PM (optional), FW, PF-10 (📝 Planned) — Event Contracts
  • treatment_plan_signed → FW, PF-10 (📝 Planned)
  • progress_note_signed → PM (charge capture), PF-10 (📝 Planned)
  • medication_recon_completed → PF-10 (📝 Planned)
  • prescription_sent → PM, PF-10 (📝 Planned)
  • pdmp_query_completed → CL (audit) (📝 Planned) — CL-17
  • cl_lab_order_created → PF-10, FW (📝 Planned) — CL-09
  • cl_lab_result_received → CL-08, PF-10 (📝 Planned) — CL-09
  • cl_lab_result_reviewed → PF-10, PF-04 (📝 Planned) — CL-09
Consumes Events:
  • prior_auth_required from PM (📝 Planned)
  • prior_auth_received from PM (📝 Planned)
  • eligibility_verified from PM (📝 Planned)
  • patient_registered from PM (📝 Planned)
  • appointment_scheduled from PM (📝 Planned)
  • encounter_completed (CL/PM) (📝 Planned)
Uses Platform Layers:

PM (Practice Management)

Publishes Events:
  • claim_submitted → FA (optional), PF-10 (📝 Planned) — Event Contracts
  • claim_adjudicated → PM-09, PF-10 (📝 Planned)
  • prior_auth_required → CL, PF-10 (📝 Planned)
  • prior_auth_received → CL, PM-07/08, PF-10 (📝 Planned)
  • eligibility_verified → CL, PM-07, PF-10 (📝 Planned)
  • patient_registered → CL, RH (optional), PF-10 (📝 Planned)
  • appointment_scheduled → CL, PF-10 (📝 Planned)
  • encounter_completed (CL/PM) → PM (charge capture), PF-10 (📝 Planned)
  • pm.fhir_app_authorized → PF-04 audit, GR (📝 Planned, PM-55)
  • pm.fhir_app_revoked → PF-04 audit, GR (📝 Planned, PM-55)
  • pm.fhir_information_blocking_logged → GR-08 incident reporting (📝 Planned, PM-55)
  • pm.fhir_access_logged → PF-04 audit stream (📝 Planned, PM-55)
Consumes Events:
  • assessment_completed from CL (optional billing) (📝 Planned)
  • treatment_plan_signed from CL (📝 Planned)
  • progress_note_signed from CL (charge capture) (📝 Planned)
  • prescription_sent from CL (📝 Planned)
  • cl.part2_consent_granted / cl.part2_consent_revoked from CL-11 (📝 Planned, PM-55) — re-evaluate active FHIR app consents that include SUD scopes
Uses Platform Layers:

Dependency Graph


Integration Pattern Usage

When to Use Each Pattern

Platform Integration Layer (Pattern 1):
  • ✅ Multiple cores need the same functionality
  • ✅ Reusable UI components or hooks
  • ✅ Domain-agnostic functionality
  • Examples: Forms, Workforce, Data Lookup, Custom Fields
Event-Based Integration (Pattern 2):
  • ✅ Loose coupling between cores
  • ✅ Asynchronous workflows
  • ✅ Audit trails of state changes
  • Examples: Resident admission → Billing account creation
API Contracts (Pattern 3):
  • ✅ Synchronous request-response
  • ✅ Real-time data queries
  • ✅ Event-driven patterns not suitable
  • Examples: Episode balance queries, Employee lookups

Spec Coverage Index (Q2 2026 closure waves)

This section guarantees every spec under specs/{core}/specs/ has at least one row in the canonical contract surface. Each row points to the integration pattern, key publishers/consumers, and either an existing dedicated *-INTEGRATION.md file, the relevant EVENT_CONTRACTS / API_CONTRACTS anchor, or a per-spec note here. Rows added during the Q2 2026 closure waves are tracked in the archived triage report at docs/archive/integrations/_GAP_TRIAGE_2026Q2.md.
Status meanings as of 2026-04-17 closure pass: ✅ contract documented and matches implementation; 📝 contract documented as planned (spec implementation pending); 🟡 contract partially documented; the spec is implemented but the contract surface here is the new authoritative summary.

CE — Community Engagement (Wave CE)

CL — Clinical (Wave CL)

FA — Finance & Accounting (Wave FA)

FM — Facilities Management (Wave FM)

FW — Forms & Workflow (Wave FW)

GR — Governance & Risk (Wave GR)

HR — Human Resources (Wave HR)

IT — IT Asset Management (Wave IT)

LO — Leadership Operating System (Wave LO)

PF — Platform Foundation (Wave PF)

PM — Practice Management (Wave PM)

RH — Recovery Housing (Wave RH)



Quick Reference Guide

Integration Pattern Decision Tree

Need to share functionality across multiple cores?
  • ✅ Yes → Platform Integration Layer (Pattern 1)
    • Examples: Forms, Workforce, Data Lookup, Custom Fields, Notifications, Documents, Reports
Need asynchronous, loosely-coupled communication?
  • ✅ Yes → Event-Based Integration (Pattern 2)
    • Examples: Resident admission → Billing account creation, Credential expiry → Scheduling block
Need synchronous, real-time data query?
  • ✅ Yes → API Contract (Pattern 3)
    • Examples: Episode balance query, Employee lookup

Common Integration Scenarios

Scenario 1: RH needs to display employee information
  • ✅ Use: Platform Workforce Integration Layer (EmployeeSelector, useEmployeeLookup)
  • ❌ Don’t: Direct import from HR core
Scenario 2: FA needs to create billing account when resident is admitted
  • ✅ Use: Event-Based Integration (rh_resident_admitted in fw_domain_events; alias resident_admitted deprecated)
  • ❌ Don’t: Direct function call from RH to FA
Scenario 3: RH needs to query episode payment balance
  • ✅ Use: API Contract (/api/v1/fa/episode-balance)
  • ❌ Don’t: Direct database query to FA tables
Scenario 4: HR-04 needs to block scheduling when credential expires
  • ✅ Use: Event-Based Integration (subscribe to credential_expired event)
  • ❌ Don’t: Poll HR-02 credential tables

Integration Status Summary

Platform Integration Layers: 7 layers (Forms, Workforce, Data Lookup, Custom Fields, Field Config, Notifications, Documents, Reports)
  • ✅ Complete: 7
  • 🟡 In Progress: 0
  • 📝 Planned: 0
Event-Based Integrations: 50+ events
  • ✅ Implemented: 22 (including FM-03 vendor events)
  • 📝 Planned: 28+ (including 18 IT module events)
API Contracts: 7 contracts
  • ✅ Implemented: 0
  • 📝 Planned: 7 (including 4 IT module APIs)

Status Legend


Next Review: 2026-06-20 (Quarterly)