Repository navigation
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## cc/feat/cdr-runtime-cutover #4370 +/- ##
===============================================================
- Coverage 74.07% 74.07% -0.01%
===============================================================
Files 1746 1746
Lines 177219 177219
Branches 16506 16506
===============================================================
- Hits 131280 131279 -1
- Misses 42483 42486 +3
+ Partials 3456 3454 -2
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
This was referenced Oct 2, 2026
TomCC7
removed this pull request from stack #4372
October 6, 2026 07:56
TomCC7
added this pull request to stack #4446
October 6, 2026 07:56
TomCC7
force-pushed
the
cc/test/cdr-record-replay
branch
from
October 15, 2026 07:34
b24b39c to
d0393cc
Compare
TomCC7
force-pushed
the
cc/feat/cdr-runtime-cutover
branch
from
October 15, 2026 07:34
59ce3b8 to
4dcc03a
Compare
TomCC7
removed this pull request from stack #4446
October 20, 2026 22:26
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Linear project: Message Encoding Refactor
Problem
Reviewers need the generator, bulk message definitions/packages and transport integration in their respective stack layers.
Solution
Integrated record/replay acceptance above the runtime layer. Normal merge propagation preserves this layer’s parent-relative patch.
Layer 6/8 of native stack #4446. Published HEAD:
055d9983ab8dad1432661630f82bee86819f2d1f. Base:cc/feat/cdr-runtime-cutover. Normal forward commits/merges; existing ancestry and reviews are preserved, with no force push.Parent-relative git diff (binary lockfile excluded from textual line counts): 8 files changed, 2975 insertions(+).
Layout-repair validation: unchanged namespace-policy test plus generator tests: 41 passed; ownership/project checks: 19 passed; clean source/wheel/sdist/editable installation with Cargo/rustc/CMake/C++ disabled: 1 passed. A fresh backend wheel has api modules/stubs and no stale package initializers. C++/Rust/schema outputs are byte-identical to the pre-layout validated outputs; final built-in generation --check passed. Scoped strict typing and hooks passed. These focused checks are not a complete new-HEAD CI pass.
Production Rust declarations now come from pinned ros2msg 0.5.3 in a normal Cargo build.rs; Python installation only packages its sources and does not invoke Cargo. C++ declaration and CDR field traversal use pinned upstream ROSIDL/FastRTPS templates, with documented strict-bool patches. Python uses rosbags-generated declarations and CDR traversal with scoped malformed-input checks; the separate handwritten wire-layout walker was removed. Default, bounds, ownership and Sequence compatibility adapters remain. PR1 core: ten files including both helpers total 1,380 physical lines versus the original eight-file 1,463. Including maintained typing stubs gives 1,493 -> 1,444, a net 49-line reduction (83 is core-only). Full-stack message_codegen maintained non-test sources total 2,573 lines including stubs; CLI/SDK sources elsewhere are outside that count. Vendored sources and generated/copied artifacts are disclosed separately. Runtime native consumers use the distributed message crate; the redundant four-file Python/Cargo bootstrap (126 lines) was removed. No generator code was hidden in uncounted helpers.
Exact-new-HEAD remote CI is pending; no reruns or manual dispatches were requested for this batch. Historical runs do not verify these commits. Benchmark investigation remains paused, without a waiver or weakened gate.
Complete proposal walkthrough. M20 SDK/access, host multicast and human viewer acceptance remain external; no hardware operation, registry release or merge is claimed.
Replaces closed, unmerged #4364. Original refs/history remain preserved.
Upstream generator contracts, compatibility adapters and maintenance counts.
Namespace repair: five nonempty upstream initializers and two matching typing stubs are relocated to ordinary api modules; the empty parser initializer is omitted. Imports/EmPy templates reference modules directly. Licenses and original upstream source paths/hashes remain recorded, with the relocation and omitted empty file documented in manifests. test_no_init_files is unchanged; no blanket vendor exemption was added. The earlier mypy vendor-discovery boundary remains separate, and first-party strict settings remain enabled. The coauthor policy check remains unresolved; no attribution removal/history rewrite, force push, benchmark gate change, rerun or manual CI dispatch was requested.