FHIR CI and Quality
Create repeatable checks without turning observed sample data into unreviewed clinical policy.
Bundled paths
Resolve <skill-root> to the directory containing this SKILL.md and <plugin-root> two directories above it. Shared deterministic tools live under <plugin-root>/skills/fhir-validation/scripts. Never resolve them relative to the user's workspace.
Workflow
Inspect the existing project scripts, package files, generated-artifact policy, and CI conventions.
Diagnose runtime/package readiness with
$fhir-project-doctorbefore generating a workflow when the runtime is unclear.Derive candidate rules and generate a starting workflow:
node "<plugin-root>/skills/fhir-validation/scripts/derive-quality-rules.mjs" <resource-directory> node "<plugin-root>/skills/fhir-validation/scripts/generate-ci.mjs" --json --dir <resource-directory>Review every inferred rule. Treat identifiers, code systems, profiles, cardinalities, and status values as domain policy unless directly required by a loaded FHIR profile. Write only
artifact.contentfrom the CI generator to the proposed workflow path.Pin third-party CI dependencies, use least-privilege permissions, avoid printing full resources, and keep hosted/API validation behind explicit privacy approval.
Validate the workflow syntax and run the local validation command before handing it back.
Modes
- Use local Records CLI by default.
- Add
--sushiwhen the repository owns FSH and must rebuild generated resources. - Add
--apionly when the user approves hosted validation and CI secrets are already in scope. - Add
--upload-artifactonly for redacted or non-PHI reports.
Output
Report runtime assumptions, privacy boundary, reviewed versus rejected candidate rules, changed CI files, and the exact local verification performed. Preserve the tools' contract and never describe inferred rules as authoritative without review.