Repository navigation
Conversation
❌ 4 Tests Failed:
View the top 3 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
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/refactor/cdr-legacy-retirement
branch
from
October 15, 2026 07:34
d6934a7 to
a1c7ab8
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
Native message libraries now supply Python/C++/Rust values and codecs. This update removes the owned compatibility/field-codec adapters and partial ROSIDL vendor tree, migrates runtime consumers, and keeps external-message authoring on the shared
dimos build/ pip backend. CDR changes encoding; LCM/Zenoh transport remains.Published HEAD:
236e58f9a29ec4938e04f0750d7fad6e0aa77b50. Base:cc/test/cdr-record-replay. Normal forward commits/integration merges preserve published ancestry. Parent-relative diff: 945 files changed, 19272 insertions(+), 108502 deletions(-).The latest repair preserves owned snapshots explicitly, handles NumPy arrays without ambiguous truth/equality, excludes class metadata from configuration fields, restores reference-typestore test isolation, and fixes remaining registry-codec consumers. The macOS TurboJPEG CI prerequisite from #4247 is included. Benchmark paths are unchanged.
Local validation: 86 previously failing nonbenchmark cases passed; 15 mapping/navigation cases passed against unchanged golden files, including forced-color CLI checks; all three mock-coordinator subprocess tests passed. The converter/migration suite passed 34 tests after integration. All 12 modified production files passed scoped strict typing, and changed-file repository hooks passed. Three local cross-instance LCM delivery checks still time out on this host; no host-network changes or weakened assertions were used.
Earlier retained acceptance covers shared cross-package Header identity/assignment, dependency schema/version conflicts, full MCAP closure, and Python/C++/Rust codec exchange. Python uses unmodified rosbags 0.11.0 and NumPy; its registry creates classes/codecs in memory, with no compiler/download/file generation at import. C++ distribution is source-only; prebuilt native SDK distribution is not claimed. The 19 precise native-library strict expected failures remain unchanged.
Exact-head main CI is in progress. Full wheel matrix passed. Standalone codegen passed; Jazzy reference and the main relay-image build failed before their checks because Docker Hub returned HTTP 429. These external failures remain red; no waiver, credential change, or all-green claim.
External-message walkthrough:
dimos build,pip install ., andpip install -e .share the project configuration/backend. Use matching proposal artifacts, not assumed public releases.M20 proprietary SDK/access, default-host multicast, Foxglove sign-in, and human visual acceptance remain distinct external limitations. No hardware operation, PR merge, or package-registry release occurred.
Preserved earlier description (implementation notes superseded by the update above)
Problem
Reviewers need the generator, bulk message definitions/packages and transport integration in their respective stack layers.
Solution
Legacy dependency retirement above recording acceptance. Normal merge propagation preserves this layer’s parent-relative patch.
Layer 7/8 of native stack #4446. Published HEAD:
2d7173467686b8cca4a072f205d0e208e7729f58. Base:cc/test/cdr-record-replay. 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): 10 files changed, 25 insertions(+), 517 deletions(-).
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 #4365. 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.