fi-fhir
fi-fhir handles healthcare ingestion, transformation, and delivery in the FlexInfer stack. It turns legacy clinical formats into semantic events and routable workflows, with AI-assisted development paths that can run against private FlexInfer models instead of moving healthcare data into a shared SaaS control plane.
fi-fhir, on the record
Read from the Mills factory ledger, the synced docs, and the edilint build this site ships.
- Merged by Mills
- Docs
- Playground
From legacy feeds to explainable events
Healthcare integration work usually fails in the gaps between source quirks, validation, terminology, and operations. fi-fhir makes those boundaries explicit so they can be tested with repeatable samples and explicit contracts.
Configure
Source Profiles
Every feed carries its own configuration, mappings, validation expectations, and routing behavior, with vendor starter templates for Epic, Cerner, Meditech, and Allscripts that fork per interface.
Ingest
Format-agnostic ingestion
HL7v2, CSV, EDI X12, and CDA/CCDA inputs become semantic events that workflows can validate, transform, and route.
Route
Workflow routing
YAML workflow definitions with CEL filters route events to FHIR APIs, webhooks, databases, Kafka, Redis Streams, Google Cloud Pub/Sub, or validation-only test paths, with a GraphQL API (Beta in the status matrix) and a TypeScript SDK around the platform.
Deliver
FHIR and terminology output
FHIR R4 transaction delivery covers admission, lab, and six additional clinical event families, with Patient/Encounter references resolved. Pinned structural checks and live-server tests define coverage; official conformance validation remains open.
From parsing library to feed runtime
The engine connects authenticated ingress, profile selection, parsing, durable receipts, persistence, and workflow delivery. fi-fhir remains pre-1.0; the case study records implemented paths and the tests and release work still outstanding.
Component statusSynced docs · Sep 20
- 33Production
- 11Beta
- 9Alpha
- 2Planned
Components by maturity, as the repo’s status matrix states them; its latest dated update is Sep 20, 2026.
Ingress
Authenticated ingress
Authenticated HTTP, MLLP, and S3/SFTP batch paths feed one durable processor. HTTP HL7 ingress checks service, source, and tenant identity before accepting a submission.
Acceptance
Durable acceptance
Atomic durable submission gives every accepted message a receipt, idempotent duplicate handling, and restart-safe persistence before delivery.
Testing
Deterministic preview
Preview mode runs the same parsing and routing semantics as production without persisting or delivering, so feed tests exercise the real execution path.
Governance
Versioned, governed artifacts
Immutable profile and workflow revisions, typed secret references, and PHI-aware data classification keep integration changes auditable.
Keep assistance close to the data boundary
AI assistance supports specific tasks: help engineers explain warnings, draft workflows, and search terminology while keeping private healthcare context aligned with the runtime and governance boundary.
Explain
Warning explanations
AI-assisted explanations turn parse warnings and opaque healthcare field names into reviewable reasoning instead of tribal knowledge.
Draft
Workflow generation
Natural-language workflow drafting and explain-back run against live LLM operations in the Mapping Studio, for operators who know the integration behavior but not the DSL shape yet.
Search
Semantic terminology search
Meaning-based terminology search helps bridge local code systems, LOINC, RxNorm, and downstream FHIR expectations.
Score
Entity extraction and quality scoring
Clinical entity extraction and data-quality scoring run against any OpenAI-compatible endpoint, behind runtime capability checks.
Stack relationship
Connect healthcare workflows to private models
FlexInfer serves the models behind explanations and workflow drafting. Loom governs MCP, context, and agent access. MentatLab can orchestrate multi-step integration workflows as DAGs. fi-fhir supplies the parsing, mapping, validation, and delivery contracts. Data access and model permissions still need to be configured for each deployment.