Skip to content

RKO-LIO voxel compatibility and release-gate evidence — 2026-07-31

Scope

Clean candidate commit 42c87e9df499af7fb3a9a138b2a097b13cfe8402 pins RKO-LIO commit 597958e and completes the existing legacy_voxel_downsample compatibility contract. In double-downsample mode, compatibility now covers both the half-voxel map pass and the ICP-keypoint pass. The default remains false; no new public option was added.

This change fixes a Newer College Maths-Hard accuracy regression without changing the modern default path used by the other release profiles.

Root cause

A history bisect isolated upstream RKO-LIO commit d167eb6:

RKO-LIO revision first-pass sampler Maths-Hard APE RMSE
e27d9c8 pre-v0.3 unordered-map sampler 0.0812466 m
d167eb6 hash-sorted sampler 0.1407549 m

The latter result is identical to the v0.3.2 failure. The earlier legacy_voxel_downsample implementation changed only the second pass, so it could not restore the map input or the point representatives presented to that pass. The fix applies the compatibility sampler to both passes and adds separate single-pass and two-pass tests.

Verification

The RKO-LIO build passed all 66 discovered C++ tests. The two explicit legacy preprocessing tests also passed independently:

preprocess_scan: legacy voxel mode preserves compatibility order
preprocess_scan: legacy voxel mode covers both downsample passes

Five real-data runs were then generated from the clean parent commit. Every metrics.json records the same full candidate SHA and git_dirty: false.

Blocking profile mode APE RMSE pass pairs poses RTF status
Newer College Maths-Hard legacy two-pass 0.0812466 m 0.100 m 2,438 2,440 / 2,440 0.743 PASS
NTU VIRAL tnp_01 modern default 0.9832244 m 1.000 m 9,200 5,794 / 5,795 0.334 PASS
RTK-SLAM Construction 1 modern default 0.3211747 m 0.550 m 16 7,284 / 7,286 2.011 PASS
RTK-SLAM Construction 2 modern default 0.0864482 m 0.300 m 16 5,875 / 5,878 1.667 TARGET_MET
Leo Drive all-sensors-bag1 classic path 0.1388692 m 1.500 m 580 362 raw poses 1.470 TARGET_MET

Maths-Hard improved from 0.1407549 m to 0.0812466 m. NTU VIRAL and both RTK-SLAM values are bit-for-bit equal to their preceding clean-candidate accuracy values, proving that the modern default path did not change. Leo Drive also reproduced its preceding corrected APE value and its generated map passed all eight Autoware compatibility checks with zero failures.

The exact candidate gate completed with exit code zero:

python3 scripts/benchmark_summary.py \
  --root /path/to/v090_release_20260731 \
  --release-profile scripts/release_profiles.yaml \
  --required-git-commit 42c87e9df499af7fb3a9a138b2a097b13cfe8402 \
  --fail-on-profiles \
  --write-md /path/to/v090_release_20260731/release_gate.md

All blocking rows were PASS or TARGET_MET. The MID-360 cross-validation, Stadtgarten, and HILTI rows remained NO_DATA under their explicit report_only_until policies and did not authorize or block the candidate.

Reproduction

Run the form-gated Maths-Hard command in Benchmarking And Release Gate with legacy_voxel_downsample: true in that dataset's RKO-LIO parameter file. Run the canonical NTU command from the same guide, then execute:

python3 scripts/run_rtk_slam_accuracy_suite.py \
  --dataset-root /path/to/rtk_slam \
  --sequence construction_seq1 \
  --sequence construction_seq2 \
  --output-dir /path/to/release-evidence/rtk_accuracy

bash scripts/run_open_data_applanix_velodyne_gnss_benchmark.sh \
  --bag /path/to/all-sensors-bag1 \
  --output-dir /path/to/release-evidence/leo_drive \
  --verify-map

The raw datasets and generated benchmark outputs are not committed. Artifact identity is retained here so a copied evidence directory can be audited:

artifact SHA-256
Maths-Hard metrics.json db1f951938d09ceb406e78bfe0ed3d823b7994ab6f849cb840cac82f74f5b834
NTU VIRAL metrics.json 6dfce883b4cbe28aca43f12987add0ae8330e68a2a894153ec3e9fecb0460b2a
Construction 1 metrics.json 602ec9dd0b10f834a52d2084d800546981cacfe92dde1072f1ddc576c470ce6a
Construction 2 metrics.json 5a8155dbcc1212e5f35f7ea8f13ca8a2a3820ba3785b0b2f3f19b88a23fb04b4
Leo Drive metrics.json 7c7888e4079d482a2d112451c69b4b6892109298d922ed4923ca44812de907a1
rendered release gate b02c949ba4f08026e2e034fce7661ee0acf09c661b56c0cd5544535b7e1a034c

Each metrics artifact additionally embeds the input bag, reference, parameter-file, harness, runtime-binary, and software hashes required by the benchmark schema.