Repository navigation
Conversation
67a7b69 to
55bd6bc
Compare
55bd6bc to
6ebdb3c
Compare
6ebdb3c to
7c6eb9d
Compare
Review reportUpdated: 2026-10-21. Direct predecessor: #4739.
What changes and why the diff is largeAdd a static legacy-boundary scanner and an explicit WIP status document. No legacy code is deleted by this PR. Review mapSuggested entry points: scripts/audit_cdr_boundaries.py, docs/development/cdr-cutover-status.md. Complete file mapImplementation (1)
Documentation and replay inputs (1)
Review focus and scope reductions
ValidationFresh audit at Reproduction commands, not executed here unless stated aboveRun from this PR's own checkout root after installing its documented test dependencies. These are selected review entry points, not a claim of full-stack coverage. python scripts/audit_cdr_boundaries.py --output /tmp/cdr-boundaries.json
python scripts/audit_cdr_boundaries.py --checkRemaining workThe four documented #4739 blockers and remaining business graphs prevent cleanup. Static candidate counts must not be presented as 312 confirmed runtime failures. Actual legacy removal is still absent. |
7c6eb9d to
71c0889
Compare
What this adds
WIP audit of remaining legacy message imports and typed ports before deleting old APIs.
Base: #4739. No legacy implementation is removed here.
How to check
The audit reports 312 legacy port declarations and 998 imports. These are static candidates, not confirmed runtime failures.
--checkreturns nonzero while candidates remain.Repository hooks passed. Cleanup remains blocked on the four failures in #4739 and remaining graph migrations. Current status.
Review report: file map, scope and verification
This final layer also assembles the complete native/DimSim interoperability workflow after all dependent consumers exist. Lower feature layers run the available SDK checks.
Shared CDR foundation
Standard ROS definitions are fetched and verified through the existing source lock and generation pipeline in #4366. Native SDK support is included in #4722. Shared Python value implementations and regressions are reviewed in #4800–#4803 before the #4734 caller migration. SDK and consumers use the same generated Rust message crate, including
Time,TransformStampedandTFMessage; there is no separate TF schema package or generation command. Camera/depth callers migrate in #4734 and mapping/navigation callers in #4737.The external CDR and transforms library pins remain unchanged. Local verification passed 122 SDK tests, all existing native consumer suites, and all 24 real native/DimSim/port acceptance tests without skips. Seven staged Nix source layouts resolve exactly one message crate with locked Cargo metadata. This is not a full Nix build or hardware validation. Fresh CI runs verify #4722 independently and the combined stack tip.
Stack #4804 contains the 12 original feature PRs and four separately reviewed adapter/buffer PRs (#4800–#4803). The redundant #4774 is superseded by #4722. No feature PR has been merged into main; existing conflicts with main and the WIP cutover failures in #4739 remain.