Commit Graph

4 Commits

Author SHA1 Message Date
Yuzviak a05381ade2 feat(testing): per-frame JSONL trace in E2EHarness
Opt-in trace_path parameter dumps one JSON record per processed frame
with the fields diagnostics need:

  frame_idx, timestamp_ns, vo_success, alignment_success,
  tracking_state, confidence,
  eskf_initialized, eskf_position_enu (or None), eskf_pos_sigma_m,
  estimate_lat/lon, gt_lat/lon/alt

No perf cost when trace_path is None. File is rotated per run — safe to
point at /tmp/foo.jsonl for ad-hoc debugging.

First real run on EuRoC MH_01 (100 frames) immediately exposes the
concrete divergence: vo_success=0/100 (VO never engages on EuRoC
grayscale imagery with current SP+LG adapter), eskf_initialized=0/100,
alignment_success=77/100 (satellite-fallback path fires). Diagnosis
that was hidden behind a single "ATE=10.9 km" number is now machine-
readable per frame.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-18 14:29:34 +03:00
Yuzviak fd54af2d9f feat(testing): add max_frames parameter to E2EHarness
Caps the iteration length (and the matching GT slice) when set, so CI
tiers can stay fast on multi-thousand-frame sequences like EuRoC MH_01
(3682 frames ≈ 3+ hours at 3-5s/frame). Also useful for eyeballing a
new adapter's first N frames before committing to a full run.

Three new harness tests cover truncation, explicit None, and over-large
limits. No change to existing adapters or downstream tests.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-17 17:52:06 +03:00
Yuzviak 1b069e2bb3 style(e2e): ruff auto-fix imports and remove unused imports in e2e suite
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-16 22:02:29 +03:00
Yuzviak 95accb8f7a test(e2e): implement harness skeleton + synthetic smoke test + pytest markers
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-16 21:48:41 +03:00