Synthetic local reference · 2026-11-02.1
Row counts match. Is the migration correct?
Check scoped identities, exact values and required relationships before treating matching row counts as migration evidence.
Start with identity, history and relationships.
Matching totals can hide a missing record balanced by a duplicate, a value mapped to the wrong field, or a reference to the wrong parent. Define the complete business key before comparing rows. Include tenant or insurer scope and historical version where those distinguish records.
A row comparison can also agree on a defect present on both sides. Declare the required relationships and compare them with the corresponding parent population. Agreement between supplied snapshots does not establish source completeness.
Try the shared-defect control.
The synthetic policy-history control has three policy periods on each side and matching mapped fields. One period on each side points to H-MISSING, which is absent from the insurer-scoped parent population. Both row comparisons pass; the bundle reports a relationship finding on each side and exits 2.
Run the local JSON validation example, then use its shared-defect input. Keep the reference control separate from your own extracts and declared mappings.
Run the reference locally.
Download the CLI, metadata and three JSON inputs into one new folder. Inspect the source and compare its SHA-256 with the version file before running. The full instructions include an integrity check. These commands do not send records or contact Jextra.
- CLI source
- Version and checksum
- Failing input
- Repaired control
- Shared-defect control
- Expected results
- Audit input schema
- Full local instructions
node jextra-workflows.mjs audit --input policy-history-audit.json --out failing-report.json
# Expected exit 2: differences in the deliberately flawed input.
node jextra-workflows.mjs audit --input policy-history-repaired.json --out repaired-report.json
# Expected exit 0: no differences in the supplied scope.
node jextra-workflows.mjs audit --input policy-history-shared-defect.json --out shared-defect-report.json
# Expected exit 2: both sides agree, but the required relationship is broken.
node jextra-workflows.mjs test --workflow insurance-fnol --out reference-tests.json
# Expected exit 0: 15 synthetic reference cases pass.
node jextra-workflows.mjs handoff --input policy-history-audit.json --workflow insurance-fnol --dir new-handoff
# Expected exit 0: files written. Findings and release gates remain open.Exit 1 means invalid input or a command error. Exit 2 is the expected result for the two defect controls. A handoff exit of 0 means the files were written; it does not approve the migration. Keep triage output and any optional local exception details private.
Use the brief with your team.
The new-handoff folder contains an implementation brief, acceptance summary, audit report and hashes. Review the exported content before sharing. No contact request or subscription is created by a local run.
Choose the high-level summary you want to share. Inspection of private systems, production validation, cutover and operating responsibility belong in an agreed implementation scope.