EyeFlow 0.11.4rc1 waveform robustness validation
Pre-release
Pre-release
Validation-only build
This prerelease is intended for evaluation on a measurement PC before the upstream pull request is considered ready. It installs side by side as EyeFlow 0.11.4rc1 and should not replace your current reference installation or results.
What this build changes
- Preserves the existing high-confidence systolic detector, then conservatively recovers one supported upstroke inside an approximately two-cycle gap.
- Applies one paired artery/vein beat-quality mask to reject intervals distorted by motion spikes, dips, implausible duration, or waveform inconsistency.
- Re-extracts accepted beats from the original signal so a rejected long interval cannot distort the interpolation length of otherwise clean beats.
- Uses the same accepted beats for heart rate, velocity summaries, RI, PI, and waveform-shape metrics while leaving the metric formulas unchanged.
- Writes auditable beat-level QC results under
QualityControl/Beat.
Suggested measurement-PC test
- Keep your current EyeFlow installation and outputs as the reference.
- Install this RC and process a representative mix of clean recordings, missed-peak cases, minima dips, and motion artifacts with the same pipeline/settings.
- Compare the old and RC outputs, especially:
QualityControl/Beat/RecoveredBoundaryCount/valueQualityControl/Beat/AcceptedCount/valueQualityControl/Beat/RejectedCount/valueQualityControl/Beat/AcceptedMask/valueQualityControl/Beat/RejectionFlags/valueArtery/VelocityPerBeat/beatPeriodSeconds/value
- Check that supported missed boundaries are recovered, artifact intervals are rejected, and clean recordings remain effectively unchanged.
- Retain the output H5 files and note any recordings where a beat was unexpectedly recovered or rejected.
Validation completed before upload
- All 74 automated tests pass.
- Packaged CLI startup and help output pass.
- Packaged GUI opens a responsive
EyeFlow 0.11.4rc1window. - Local generalized regression: three supported missed boundaries recovered, four artifact beats rejected, and four clean controls were exact no-ops across 156 scalar summaries.
- Seeded stress testing: 100/100 attenuated beats recovered within two samples, with no false recovery in true pauses, no clean-run QC false positives, and no missed injected artifacts.
Deliberate limits
- Recovery handles one missing boundary, not multiple consecutive missed boundaries.
- A beat-shaped motion upslope at the expected phase cannot be distinguished by timing alone; residual and paired-template QC remain important.
- With too few clean reference beats, template rejection is disabled, while residual and duration checks remain active.
- If all intervals are rejected, the pipeline reports a clear error instead of silently using contaminated beats.
Build identity and integrity
- Commit:
e7d6b6bb5019175edf91d25feca83d23fe5c8943 - Installer SHA-256:
52E2D2B0C17F01B6892016515DD7E9855C5EB977ECBB912D17C6FE5AD2D3E504
The installer is not code-signed, so Windows SmartScreen may show an unrecognized-app warning. No measurement data or case identifiers are included in this release.