WorkWell Measure Studio implements the Total Worker Health (TWH) model: OSHA occupational safety compliance and clinical quality / wellness measures managed in a single platform. The TWH instance seeds all three categories on startup.
| Category | Count | Status | CQL |
|---|---|---|---|
| OSHA occupational safety — fully evaluated | 4 | Active | Full CQL, runnable |
| OSHA occupational safety — catalog only | 3 | Draft / Approved / Deprecated | Partial or no CQL |
| HEDIS wellness — fully evaluated | 4 | Active | Full CQL, runnable |
| CMS eCQM catalog (2026 performance period) | 49 | Draft | Catalog entry only — CQL authoring pending |
| Total | 60 |
Outcome buckets (all measures): COMPLIANT, DUE_SOON, OVERDUE, MISSING_DATA, EXCLUDED.
These four measures have complete CQL libraries, are seeded as Active, and run against the synthetic employee dataset.
- Policy reference: OSHA 29 CFR 1910.95 URL: https://www.ecfr.gov/current/title-29/section-1910.95
- CQL file:
backend/src/main/resources/measures/audiogram.cql - Tags:
surveillance,hearing,osha
- Program eligibility:
In Hearing Conservation Program - Exemption:
Has Active Waiver - Recency:
Most Recent Audiogram Date - Aging metric:
Days Since Last Audiogram
EXCLUDEDwhenHas Active Waiver = trueMISSING_DATAwhen enrolled, not waived, no exam dateOVERDUEwhen enrolled, not waived, days since exam > 365DUE_SOONwhen enrolled, not waived, days in (336..365)COMPLIANTwhen enrolled, not waived, days <= 335
- Policy reference: OSHA 29 CFR 1910.120 URL: https://www.ecfr.gov/current/title-29/section-1910.120
- CQL file:
backend/src/main/resources/measures/hazwoper.cql - Tags:
surveillance,hazmat,osha
- Program eligibility:
In HAZWOPER Program - Exemption:
Has Medical Exemption - Recency:
Most Recent Surveillance Exam Date - Aging metric:
Days Since Last Exam
EXCLUDEDwhenHas Medical Exemption = trueMISSING_DATAwhen in program, not exempt, no exam dateOVERDUEwhen in program, not exempt, days since exam > 365DUE_SOONwhen in program, not exempt, days in (335..365]COMPLIANTwhen in program, not exempt, days <= 335
- Policy reference: CDC TB screening guidance + organizational policy URL: https://www.cdc.gov/tb/topic/testing/healthcareworkers.htm
- CQL file:
backend/src/main/resources/measures/tb_surveillance.cql - Tags:
surveillance,infection-control,cdc
- Program eligibility:
In TB Screening Program - Exemption:
Has Medical Exemption - Recency:
Most Recent TB Screen Date - Aging metric:
Days Since Last TB Screen
EXCLUDEDwhenHas Medical Exemption = trueMISSING_DATAwhen eligible, not exempt, no TB screen dateOVERDUEwhen eligible, not exempt, days since last screen > 365DUE_SOONwhen eligible, not exempt, days in (330..365]COMPLIANTwhen eligible, not exempt, days <= 330
- Policy reference: Organizational seasonal policy informed by CDC guidance URL: https://www.cdc.gov/flu/professionals/vaccination/
- CQL file:
backend/src/main/resources/measures/flu_vaccine.cql - Tags:
vaccine,seasonal,immunization
- Program eligibility:
Clinical Facing Employee - Exemption:
Has Valid Exemption - Season completion:
Flu Vaccine This Season
EXCLUDEDwhenHas Valid Exemption = trueCOMPLIANTwhen eligible, not exempt, vaccinated this seasonMISSING_DATAwhen eligible, not exempt, not vaccinated this seasonOVERDUEis hard-coded false in current CQL
These three measures are seeded for catalog richness and demonstrate the full measure lifecycle (Draft → Approved → Deprecated). They have no runnable CQL evaluation.
| Name | Policy Ref | Status | Tags |
|---|---|---|---|
| Respirator Fit Test | OSHA 29 CFR 1910.134 | Draft v0.9 | surveillance, respiratory, osha |
| Hepatitis B Vaccination Series | OSHA 29 CFR 1910.1030 | Approved v2.0 | vaccine, bbp, osha |
| Lead Medical Surveillance | OSHA 29 CFR 1910.1025 | Deprecated v1.1 | surveillance, lead, osha |
Four employer wellness / HEDIS-style measures with complete CQL and active evaluation. These represent the wellness side of TWH — chronic disease management and preventive health screening programs run by occupational health departments.
- Policy reference: HEDIS BPC / JPMC Wellness Rewards
- CQL file:
backend/src/main/resources/measures/hypertension.cql - Tags:
wellness,hypertension,cardiovascular - Compliance window: 365 days (DueSoon 336–365)
- Policy reference: HEDIS HBD / JPMC Wellness Rewards
- CQL file:
backend/src/main/resources/measures/diabetes_hba1c.cql - Tags:
wellness,diabetes,hba1c - Compliance window: 180 days biannual (DueSoon 161–180)
- Policy reference: HEDIS WCC / Cigna Healthcare Wellness
- CQL file:
backend/src/main/resources/measures/obesity_bmi.cql - Tags:
wellness,bmi,obesity - Compliance window: 365 days annual
- Policy reference: HEDIS CBP / JPMC Wellness Rewards
- CQL file:
backend/src/main/resources/measures/cholesterol_ldl.cql - Tags:
wellness,cholesterol,cardiovascular - Compliance window: 365 days annual
All four wellness measures use the same outcome pattern:
EXCLUDEDwhenHas Medical Exemption = trueMISSING_DATAwhen enrolled, not exempt, no qualifying lab/screening dateOVERDUEwhen enrolled, not exempt, days since last event > compliance windowDUE_SOONwhen enrolled, not exempt, days approaching window endCOMPLIANTwhen enrolled, not exempt, days within window
49 official CMS electronic Clinical Quality Measures seeded as Draft v1.0 catalog entries. The policy_ref field stores the CMS eCQM ID (e.g., CMS128v14). The spec_json stores cmsEcqmId and mipsQualityId for downstream tooling. CQL authoring for these measures is future work.
The measures page renders CMS IDs as blue mono badges to distinguish them from OSHA CFR citations and HEDIS references.
Two new measures added in 2026 vs 2025: CMS146v14 (Appropriate Testing for Pharyngitis) and CMS154v14 (Appropriate Treatment for URI) in the new Respiratory / Antimicrobial Stewardship domain; CMS1173v1 (Diagnostic Delay of VTE) added to Cardiovascular; CMS1154v1 (Screening for Abnormal Glucose Metabolism) added to Diabetes. CMS249v7 (DXA Scans) retired from 2026 eligible clinician list.
| Domain | Measures |
|---|---|
| Mental Health / Behavioral | CMS2v15, CMS128v14, CMS136v15, CMS137v14, CMS149v14, CMS159v14, CMS177v14 |
| Cardiovascular | CMS22v14, CMS90v15, CMS135v14, CMS144v14, CMS145v14, CMS165v14, CMS347v9, CMS1173v1 |
| Diabetes | CMS122v14, CMS131v14, CMS142v14, CMS951v4, CMS1154v1 |
| Cancer Screening / Preventive | CMS69v14, CMS124v14, CMS125v14, CMS130v14, CMS138v14, CMS139v14, CMS153v14, CMS155v14 |
| Respiratory / Antimicrobial Stewardship | CMS146v14, CMS154v14 |
| Pediatric / Immunization | CMS74v15, CMS75v14, CMS117v14 |
| HIV / Infectious Disease | CMS314v3, CMS349v8, CMS1157v2, CMS1188v3 |
| Oncology | CMS129v15, CMS157v14, CMS645v9, CMS646v6 |
| Ophthalmology | CMS133v14, CMS143v14 |
| Functional Status / Orthopedic | CMS56v14 |
| Medication Safety | CMS68v15, CMS156v14 |
| Care Coordination | CMS50v14 |
| Urology | CMS771v7 |
| Radiology / Patient Safety | CMS1056v3 |
Full list with MIPS Quality IDs is embedded in MeasureService.CMS_ECQM_CATALOG and visible in the measures catalog at /measures.
For all runnable measures, the canonical stored status is the value of CQL define Outcome Status.
Persistence path:
- CQL engine evaluates all defines.
Outcome Statusstring is read from expression results.- Status is persisted in
outcomes.status. - Full define-level results are persisted in
outcomes.evidence_json.expressionResults.
Each outcome evidence payload includes:
- Key eligibility/exemption/recency defines for the measure.
- Computed day-difference define where applicable.
Outcome Statusdefine result.why_flaggedderived fields for the UI (last exam date, compliance window, days overdue, waiver status).
- TB and HAZWOPER recency checks use explicit procedure-code filtering in CQL so the seeded in-memory CQF evaluator can resolve the most recent exam date without relying on unsupported value-set token retrieval.
- All four HEDIS wellness measures are seeded via
ensureInstanceSeeds()whenWORKWELL_INSTANCE=ecqmortwh. - All 49 CMS eCQM catalog entries (2026 performance period) are seeded via
ensureCmsEcqmCatalogSeed()for the same instance values. They are Draft-only and do not participate in CQL evaluation runs until CQL is authored and compiled. On re-seed, existing measures are looked up by CMS ID prefix (LIKE 'CMSNNNv%') and updated in-place so version bumps (e.g., v13→v14) do not create duplicate DB rows.