Skip to content

Cross-system credit at the CALCULATION level — 'if they are compliant anywhere, they are compliant everywhere' #287

Description

@Taleef7

The gap

Doug's 2026-06-24 ask, verbatim from the meeting notes: "You can do calculations and attribute patient even if they came from two different EHR systems… If they are compliant anywhere, are they compliant everywhere? When doing quality calculations, give everybody credit regardless of who did it." (The cardiologist-gives-the-flu-shot example.)

Today this is display-only. E15 (#187, ADR-022) resolves a person across systems and shows a merged, system-tagged compliance timeline — but by design it never re-aggregates: quality snapshots, the hierarchy rollup, and the roster all count each tenant's record independently. A person vaccinated in system A still reads non-compliant in system B's numbers. Surfaced during the 2026-07-13 gap analysis (docs/INTEGRATION_RESEARCH_2026-07-13.md §5).

Proposed shape (design, not committed)

An additive, descriptive person-resolved quality view alongside the per-tenant one — never a mutation of stored outcomes:

  • A read model that, for each resolved Person (E15 resolvePeople), takes the best outcome across their linked records per measure ("credit anywhere") — the union of each record's evidence, CQL buckets untouched.
  • Surfaced as an opt-in scope (e.g. ?resolution=person on quality/history + roster, or a person-level panel on /people/[personId]), clearly labeled, with the per-tenant view remaining the default.
  • Invariants preserved: ADR-008 (CQL is the sole Outcome Status authority — this view selects among CQL-decided outcomes, never re-derives), ADR-019 (All = Σ tenants holds in the default view; the person-resolved view is a separate lens, not a re-count), ADR-022 (match-don't-auto-merge — credit only flows across human-confirmed or match-key-grouped records).

Open design questions

  1. Does "credit anywhere" apply only to PERMANENT (series-completion) measures, or also RECURRING ones (a recent audiogram in system A satisfying system B's window)? Doug's example (flu shot) is RECURRING — suggests both.
  2. Which surfaces get the person-resolved lens first — quality snapshots, roster, or the /people view?
  3. Interaction with the E16 snapshot store: a person-resolved snapshot scope level, or read-time only?

Depends on: E15 (shipped), and gains real data via E12 PR-2c + #187 PR-3 (WebChart identity sources). Buildable against the synthetic directory now.

🤖 Filed by Claude Code on Taleef's behalf (2026-07-13 gap analysis)

Metadata

Metadata

Assignees

No one assigned

    Labels

    backendenhancementNew feature or requestwebchart-convergenceJune-15 demo feedback: converge with MIE WebChart Vaccine Compliance

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions