RVUinUSARVU payment tools
Operations

CMS Annual Refresh Runbook

Use this SOP when importing the next CMS year, validating generated data, and updating references across the site.

Annual process2026 baseline
Generated CMS files must remain under `src/data/generated`. Manual edits belong in the hand-authored data files only.

Runbook steps

  1. 1. Download the new CMS Physician Fee Schedule files and place them in the matching `data/raw` folder.
  2. 2. Run the year-specific import script for CPT and GPCI data.
  3. 3. Verify the generated files in `src/data/generated` and compare row counts to the source files.
  4. 4. Update year labels, conversion factor text, and CMS references in calculators and resource pages.
  5. 5. Run `npm run typecheck` and the import/data integrity tests before publishing.
  6. 6. Publish the refreshed data page and record the release date in the resources hub.

Validation gates

CheckPass condition
CPT importGenerated CPT count matches CMS source totals
GPCI importState and locality counts match source file
Conversion factorsNon-QPP and QPP factors updated
Page labels2026 labels updated to the new release year
Reference pagesResources hub and tool copy reflect the new year

Rollback plan

Restore the previous generated files from git if import output is malformed.
Rerun the previous stable year import script to repopulate `src/data/generated`.
Keep the raw CMS download alongside the release notes for auditability.
Do not patch generated output by hand; fix the source import instead.

Owner checklist

Source owner: CMS import maintainer
Review owner: product/data maintainer
Release owner: site operator
Evidence: diff, typecheck, data integrity tests, release note