PROFESSIONAL / LOCAL REGRESSION CHECK

Baseline vs Candidate

Compare two recordings captured under a comparable test mission. Identify metric changes and newly failing engineering checks; export repeatable JUnit and source-file SHA-256 evidence.

NO UPLOADS TO A SERVERSYNTHETIC EXAMPLE AVAILABLENOT CERTIFIED FLIGHT APPROVAL

01 / Input flights

Choose CSV or partially supported PX4 `.ulg` files. The same data format and mission profile are required for comparison.

BASELINE01 / Previous release
No baseline selected
CANDIDATE02 / New release
No candidate selected
Comparability declaration (required for a PASS) — supply the same test profile used by both recordings. These values are operator-declared, not extracted or independently verified from the logs.
Files are processed on this device.
A comparison is meaningful only for sufficiently similar aircraft configuration, route, test conditions and instrumentation. Differences alone do not prove a firmware defect.

03 / Matched-flight evidence

Single-pair heuristics may react to random variability. For at least five comparable, independent matched flight pairs, try the experimental Cohort Gate. Uncertainty causes REVIEW, not an automatic PASS.

Experimental percentile bootstrap; not independently validated, not certified, and not proof the firmware caused a difference.

04 / Run in CI

The downloadable source release includes a Node.js gate and an example GitHub Action. No Marketplace listing is published yet.

node scripts/flighttwin-ci.mjs --ci \
  --baseline flight_v1.ulg \
  --candidate flight_v2.ulg \
  --mission same-test-profile \
  --junit report.xml \
  --manifest inputs.json

The CLI fails closed on parser errors, missing coverage and review-required results. The GitHub workflow must be enabled by the repository owner. Do not upload classified or customer-restricted flight logs to public CI.