The prior registry entry was speculative: ``euroc_mh01`` pointing at an
old ``robotics.ethz.ch`` URL that no longer resolves (TCP timeout).
The dataset moved to ETH Research Collection (DOI 10.3929/ethz-b-000690084)
as a single 12.6 GB ``machine_hall.zip`` bundle containing MH_01…MH_05.
There's no stable direct download URL — DSpace gates behind a UI —
so:
- Renamed entry: ``euroc_mh01`` → ``euroc_machine_hall`` (matches the
actual artifact).
- SHA256 set to the real bundle hash 5ed7d07…
- URL left empty (same pattern as ``vpair_sample``); the CLI now
exits 3 and prints fetch instructions for empty-URL entries instead
of crashing on ``urllib.request.urlretrieve("")``.
- Adapter ``DatasetNotAvailableError`` message and conftest skip-reason
updated to tell engineers how to fetch/unpack manually.
- ``test_registry_has_euroc_machine_hall`` pin test replaces the old
pin; asserts real hash (not the ``"0"*64`` placeholder).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Real VPAIR sample layout differs from the prior speculative adapter:
- poses_query.txt (not poses.csv) with ECEF xyz + Euler roll/pitch/yaw
- no native timestamps — synthesised at 5 Hz
- PNG images referenced by relative filepath
Adapter now uses coord helpers (ecef_to_wgs84, euler_to_quaternion).
Test fixture and conftest skip-reason updated to match.
Integration test xfail condition extended to cover large ATE values
when VO+GPR is not yet tuned for 300-400m nadir aerial imagery.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>