@@ -25,7 +25,13 @@ What is true right now:
2525 map-alignment/covariance documentation set, Istanbul drift tuning, Koide outdoor recovery
2626 tuning, and Boreas diagnostic work.
2727- The 2026-05-22 release regression snapshot (` overall_pass=true ` ) plus the 2026-06-10
28- drift-tuning reconfirm are the latest recorded green boundaries.
28+ drift-tuning reconfirm are the latest recorded green boundaries on the Humble overlay.
29+ - New on 2026-06-11: the public regression suite is green on a ROS 2 Jazzy build for the
30+ first time (` overall_pass=true ` ): Istanbul 60 s no-IMU translation RMSE ` 0.673 m ` ,
31+ rotation RMSE ` 2.179 deg ` , alignment median ` 0.036 s ` ; HDL 60 s two-repeat medians
32+ ` 468.5 ` baseline / ` 459.0 ` IMU-candidate pose rows, IMU-candidate alignment median
33+ ` 0.084 s ` , fallback events ` 1 ` . The long Nav2 reinitialization-supervisor regression is
34+ the remaining release-suite stage (see execution log below).
2935- The P0 crash issues are fixed on ` main ` but still open on GitHub, which makes the
3036 package look more broken than it is to a new user. Closing them is gated on tagging the
3137 release that contains the fixes.
@@ -45,6 +51,13 @@ Known execution constraints:
4551- Jazzy builds still use the ` ndt_omp_ros2 ` ` humble ` branch, matching CI.
4652- ` run_release_regression_suite.sh --resume ` reuses failed run outputs; delete the failed
4753 subdirectories from the work dir before resuming.
54+ - The Nav2 reinitialization-supervisor regression depends on a workspace-local artifact
55+ that is not shipped in the repo: `artifacts/public/autoware_istanbul_60s_nav2_map/
56+ istanbul_60s_nav2_map.yaml`. On a fresh workspace it must be bootstrapped once from the
57+ Istanbul map with `scripts/generate_occupancy_map_from_pcd.py --pcd
58+ data/official/autoware_istanbul/pointcloud_map.pcd --output-dir
59+ artifacts/public/autoware_istanbul_60s_nav2_map --map-name istanbul_60s_nav2_map`.
60+ Folding this bootstrap into the regression entry script is an open cleanup item.
4861
4962## Phase 0: v1.1.0 Release Closeout
5063
@@ -54,9 +67,11 @@ the public state of the project matches the actual state of `main`.
5467Steps:
5568
56691 . Run ` scripts/run_release_regression_suite.sh ` on an idle machine and confirm
57- ` overall_pass=true ` . Status: blocked on machine availability; build, unit tests, and
58- experiment suite already pass; Istanbul RMSE passed even under load (1.39 m vs 6.0 m
59- gate) while throughput gates did not.
70+ ` overall_pass=true ` . Status: the public-suite half is green on Jazzy as of 2026-06-11
71+ (numbers in Current State); the Nav2 reinitialization-supervisor half is pending the
72+ occupancy-map bootstrap described in the execution constraints. Earlier same-day
73+ attempts under load ~ 37 failed only on throughput gates, not correctness; Istanbul RMSE
74+ passed even then (1.39 m vs the 6.0 m gate).
60752 . Move the ` Unreleased ` section of ` CHANGELOG.md ` to ` 1.1.0 ` , bump ` package.xml ` to
6176 ` 1.1.0 ` , record the validation snapshot in
6277 [ public_validation_log.md] ( public_validation_log.md ) , and tag ` v1.1.0 ` .
@@ -141,9 +156,12 @@ Runs in parallel with Phases 1-3; detailed phases live in
141156
142157- G1 (artifact-first map-wide candidates): ` MAP_GRID ` baseline implemented 2026-06-11
143158 (unit-tested, verified on the Istanbul map and against the registration job generator).
144- Next: evaluate it on the Koide 180 s window against the route-proximity artifact, then
145- implement ` BBS_2D ` to cut the candidate count by orders of magnitude, then ` FPFH_RANSAC `
146- as the full-3D fallback.
159+ A ` BBS_2D ` implementation (multi-resolution occupancy pyramid with admissible
160+ branch-and-bound over x/y/yaw, scan input from the bag at the request-window trigger) is
161+ being drafted and reviewed; it lands only with passing unit tests for bound
162+ admissibility and top-K ordering. Next after that: evaluate both engines on the Koide
163+ 180 s window against the route-proximity artifact, then ` FPFH_RANSAC ` as the full-3D
164+ fallback.
147165- G2 (runtime query service): opt-in service returning ranked candidates; starts after G1
148166 beats or matches route-proximity on the validated windows.
149167- G3 (guarded automatic reinitialization): connects ` /reinitialization_requested ` to G2
@@ -164,6 +182,51 @@ characterization, Jetson + MID-360 hardware validation as a separate track.
164182- BSD/MIT/Apache sources only for direct adaptation (e.g. ` hdl_global_localization ` is
165183 BSD-2 and safe to reference).
166184
185+ ## Execution Log
186+
187+ ### 2026-06-11: Jazzy bring-up and first Jazzy-green public suite
188+
189+ What happened, in order, on a fresh Jazzy-only workspace:
190+
191+ 1 . Workspace bootstrap: ` repo ` + ` build_ws ` (with ` ndt_omp_ros2 ` ` humble ` branch) +
192+ ` local_prefix ` , per [ local_build.md] ( local_build.md ) . ` colcon build ` succeeded; all 32
193+ unit tests and the experiment suite passed.
194+ 2 . Two environment fixes were needed and are now on ` main ` :
195+ - ` setup_local_env.sh ` hardcoded Humble; it now resolves
196+ ` LIDAR_LOCALIZATION_ROS_DISTRO ` / ` ROS_DISTRO ` / humble / jazzy in that order.
197+ - The HDL sample fetch patched rosbag2 metadata into the Humble-only string form,
198+ which Jazzy's rosbag2 (metadata version 9) rejects with a yaml-cpp ` bad conversion `
199+ at ` offered_qos_profiles ` ; the patch is now distro-aware.
200+ 3 . First release-regression attempt ran while the machine carried unrelated workloads
201+ (load ~ 37 on 20 hardware threads). Every timing-gated check failed (HDL alignment
202+ median ` 0.26-0.32 s ` vs the ` 0.10 s ` gate, pose rows ~ 95 vs 250) while correctness
203+ held (processes survived, Istanbul RMSE ` 1.39 m ` vs the ` 6.0 m ` gate). Lesson recorded
204+ in the execution constraints: performance gates are meaningless on a loaded machine.
205+ 4 . A ` --resume ` retry silently reused the broken HDL outputs and failed again in
206+ seconds; the failed subdirectories must be deleted first. Also recorded above.
207+ 5 . After load dropped to ~ 7, a clean rerun produced the first Jazzy-green public suite:
208+ ` overall_pass=true ` , Istanbul ` 0.673 m ` / ` 2.179 deg ` / alignment median ` 0.036 s ` ,
209+ HDL medians ` 468.5 / 459.0 ` pose rows with IMU-candidate alignment median ` 0.084 s ` .
210+ These numbers are comparable to the recorded Humble boundary (` 1.176 m ` Istanbul,
211+ ` ~550 ` HDL rows) and better on Istanbul RMSE for this run.
212+ 6 . The release suite then stopped at the Nav2 reinitialization-supervisor stage: the
213+ occupancy-map artifact ` istanbul_60s_nav2_map.yaml ` is workspace-local and absent on a
214+ fresh checkout. Regeneration from the public Istanbul PCD is in progress; folding the
215+ bootstrap into the entry script is an open cleanup item.
216+
217+ Release decision: ` v1.1.0 ` tags only after the full release suite (public + Nav2
218+ supervisor) is green in one run. The public-suite half is no longer the blocker.
219+
220+ ### 2026-06-11: Global localization G1 start
221+
222+ - ` MAP_GRID ` baseline merged: map-wide seed candidates (occupied-cell centroids with a
223+ per-cell ground-percentile z and discretized yaw) feeding the unchanged v1.1
224+ registration-scoring and dry-run command chain. Verified on the Istanbul map (21,172
225+ cells at 20 m spacing, deterministic striding to the candidate cap) and against
226+ ` make_registration_relocalization_jobs.py ` with ` candidate_index ` ordering.
227+ - ` BBS_2D ` drafting started the same day (see the track section above for the landing
228+ criteria).
229+
167230## Suggested Order Of Work
168231
1692321 . Phase 0 (release + issue hygiene) — small, high leverage, mostly waiting on an idle
0 commit comments