Go-Live Testing Playbook
Thursday afternoon and you
still do not trust your test data.
The cutover window opens Saturday at midnight. You have 14 test patients, all hand-built, all named variations of John Doe. Your staging environment has never seen a hyphenated last name, a Z-segment with insurance data, or an OBX with a critical reference range. You are about to go live on hope.
The gap between what you tested
and what production sends.
Your unit tests pass. Your integration engine routes every message correctly. But your test data has zero clinical complexity. The 14 hand-crafted ADTs you have been sending through staging do not contain the edge cases that crash real interfaces: attending providers your mapper has never seen, date formats that shift between vendor upgrades, PID.3 structures that vary by facility within the same health system.
The failures you are going to find on Saturday morning are not in your code. They are in the data you never tested with.
What 14 hand-built test patients miss.
The edge cases responsible for 80% of post-go-live failures never appear in hand-crafted test data.
Hyphenated last names
PID.5 with hyphen-delimited last names breaks parsers that were only tested with simple ASCII names. First live patient on Saturday morning and the ADT fails.
Z-segment variance
Custom Z-segments carrying insurance data, facility codes, or local extensions vary by vendor, by facility, and by upgrade version. Hand-built messages never include them.
Critical OBX ranges
Lab results with critical high/low reference ranges. OBX.8 flags that trigger downstream alerts. The NM data type with units your mapper has never seen.
Attending provider patterns
XCN field structures that vary by vendor version. NPI formats, assigning authority components, and provider type codes your mapper encounters for the first time in production.
Date format drift
TS fields that shift between YYYYMMDDHHMMSS and YYYY-MM-DD[THH:MM:SS] depending on HL7 version and vendor upgrade. The offset that breaks your temporal parser.
Multi-facility PID.3 variance
PID.3 patient identifier structures that differ by facility within the same health system. The CX data type with assigning authority components you never modeled.
Four steps from hope to confidence.
The workflow that turns go-live anxiety into go-live confidence. CLI-native, scriptable, automatable.
Generate vendor-specific test data.
Stop building test messages by hand. Generate 500 clinically coherent messages that match what your vendor actually sends — the field patterns, the Z-segments, the code sets your parser will encounter in production.
$ pidgeon generate ADT^A01 --count 100 --vendor epic
$ pidgeon generate ORU^R01 --count 200 --vendor epic
$ pidgeon generate RDE^O11 --count 100 --vendor epic278 trigger events. HL7 v2.3 through v2.8. FHIR R4. NCPDP SCRIPT. Correlated ICD-10 diagnoses, LOINC lab codes, and temporally coherent timestamps. A patient with CHF gets Furosemide, not Metformin.
Validate against your vendor profile.
The HL7 spec says one thing. Your vendor does another. Create a profile from sample traffic and validate every test message against what your specific EHR implementation actually sends.
$ pidgeon config analyze --samples ./epic_inbox/ --save epic_er.json
$ pidgeon validate --file ./test_messages/ --profile epic_er.json --mode compatibilityStrict mode for new builds. Compatibility mode for production traffic. The Golden Suite runs 50 clinically grounded scenarios that stress-test every common failure mode before you do.
Diff your environments.
Compare DEV against UAT. Compare UAT against PROD. See exactly which fields changed, which components drifted, and whether those changes matter or are cosmetic noise.
$ pidgeon diff ./dev_output ./uat_output --report diff.htmlField-level precision. HTML reports for stakeholder review. AI triage identifies root causes and suggests fixes in plain English.
Run the Golden Suite.
50 pre-built clinical acceptance scenarios that cover the edge cases responsible for 80% of post-go-live failures. Admissions with complex insurance. Lab results with critical ranges. Pharmacy orders with NDC codes your formulary may not recognize. Transfers between facilities with mismatched attending providers.
$ pidgeon workflow run --suite golden --profile epic_er.jsonIf the Golden Suite passes, your interface handles real clinical complexity. If it does not, the failure report tells you exactly which field, which segment, and which rule broke.
50 scenarios that cover the failures you forgot to anticipate.
Every go-live failure pattern documented across real healthcare interface deployments has been distilled into 50 pre-built clinical acceptance scenarios. They are not abstract edge cases. They are the specific field combinations that crash real interfaces on real cutover weekends.
- Admissions with complex multi-payer insurance in Z-segments
- Lab results with critical reference range OBX flags
- Pharmacy orders with NDC codes outside your formulary
- Transfers between facilities with mismatched attending providers
- Patients with hyphenated names, compound surnames, and titles
- Date-of-birth edge cases: future dates, missing fields, non-standard formats
Your phone is silent.
The interfaces activated on schedule. The ADT feed is processing real patients with hyphenated last names, insurance in Z-segments, and lab results with critical flags. Every edge case your staging environment caught this week is an incident your team did not have to triage this weekend.
Your go-lives are clean because your test data is real.
- ✕14 hand-built test patients, all variations of John Doe
- ✕No Z-segments with real insurance data
- ✕No OBX with critical reference ranges
- ✕Saturday morning: pharmacy cannot process orders
- ✕Team works 36 hours straight on incident response
- ✕Monday morning: leadership wants answers
- ✓500 vendor-specific messages generated in seconds
- ✓Vendor profile inferred from real sample traffic
- ✓Golden Suite catches NDC mapping gap on Tuesday
- ✓Saturday morning: interfaces activate on schedule
- ✓Phone stays silent; team goes home on time
- ✓Monday morning: retrospective, not post-mortem
This is the workflow that turns go-live anxiety into go-live confidence. CLI-native, scriptable, automatable. Run it before every deployment. Add it to your CI pipeline and the Golden Suite catches regressions before they reach staging.
This is the workflow you show clients on day one. Generate a validation report from their sample traffic in under a minute. The room goes quiet. You have just demonstrated more about their interface gaps than their previous three consultants combined.
The tools behind the playbook.
Post generates, validates, and diffs. Loft monitors what happens after you go live.
Generate & Validate
pidgeon generate and pidgeon validate are free forever. 278 trigger events, vendor profiles, compatibility mode, and the Golden Suite runner. The CLI is open source under MPL 2.0.
Download PostDiff & AI Triage
Directory diff with field-level precision, HTML reports, and AI triage that identifies root causes in plain English. The workflow that makes environment comparison take minutes instead of days.
Explore Post ProMonitor After Go-Live
After Saturday morning, Loft watches every message flowing through your interfaces in real time. Validates as it arrives. Alerts on failures before your support desk does.
Learn About LoftStart your Pre-Flight Check.
44MB binary. Zero dependencies. Your first realistic test message in under a minute.
Join the Console Waitlist
The Pidgeon Console brings the full Pre-Flight Check workflow into a visual interface. Runs completely locally. Zero PHI transmission. Enter your email to get early access.