Skip to content

feat: Add Rerun-based log visualization support via a new cu29-logviz#768

Merged
makeecat merged 10 commits into
masterfrom
yang/feat/logviz
Feb 12, 2026
Merged

feat: Add Rerun-based log visualization support via a new cu29-logviz#768
makeecat merged 10 commits into
masterfrom
yang/feat/logviz

Conversation

@makeecat

@makeecat makeecat commented Jan 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add Rerun-based log visualization support via a new cu29-logviz crate and generated logviz emitters.
  • Introduce a cu-logviz-demo example with standard and custom logviz binaries plus updated README guidance.

Related issues

Details

  • core/cu29_logviz provides log helpers for images, point clouds, transforms, IMU, time-of- validity handling, and a JSON fallback logger, plus as_components adapters for Rerun component logging.
  • gen_cumsgs! now emits a LogvizDataSet impl behind cfg(feature = "logviz"), with type-based dispatch for CuImage<Vec<u8>>, PointCloud, PointCloudSoa, Transform3D<f32/f64>, and muPayload, falling back to JSON flattening for other payloads.
  • New example examples/cu_logviz_demo generates logs and exposes -logviz and -logviz-custom binaries; includes sample tasks, config, and tests.
  • Workspace updates: add cu29-logviz and cu-logviz-demo, add cu-spatial-payloads and serde_json, and refresh compile-fail snapshots for the new logviz cfg.

Impact

  • Users can visualize Copper logs in Rerun via an app-specific logviz binary generated by gen_cumsgs!.
  • Adds an optional logviz feature path with new dependencies and test coverage, plus updated documentation for usage.

Test

# Generate a log
cargo run -p cu-logviz-demo --bin cu-logviz-demo
# Visualize it in Rerun
cargo run -p cu-logviz-demo --bin cu-logviz-demo-logviz --features logviz -- logs/logviz_demo.copper --spawn

# Visualize it in Rerun with the custom frame tree (map/base_link/...)
cargo run -p cu-logviz-demo --bin cu-logviz-demo-logviz-custom --features logviz -- logs/logviz_demo.copper --spawn

@makeecat makeecat requested a review from gbin January 29, 2026 17:17
@makeecat makeecat self-assigned this Jan 29, 2026
@makeecat makeecat added enhancement New feature or request help wanted Extra attention is needed invalid This doesn't seem right do-not-merge and removed invalid This doesn't seem right labels Jan 29, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 64cd18278d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread core/cu29_logviz/src/convert.rs Outdated
@makeecat makeecat linked an issue Jan 29, 2026 that may be closed by this pull request
@makeecat makeecat removed a link to an issue Jan 29, 2026
@makeecat makeecat changed the title WIP feat: logviz feat: logviz Jan 29, 2026
@makeecat makeecat force-pushed the yang/feat/logviz branch 2 times, most recently from 58895c4 to 9c56398 Compare February 3, 2026 13:07
@makeecat makeecat changed the title feat: logviz feat: Add Rerun-based log visualization support via a new cu29-logviz Feb 3, 2026
Comment thread core/cu29_derive/src/lib.rs Outdated
@makeecat makeecat linked an issue Feb 6, 2026 that may be closed by this pull request
…ting

- replace gen_cumsgs proc-macro payload type branching with runtime calls to
  `cu29_logviz::log_payload_auto`
- add `Any/TypeId` dispatch in `cu29-logviz` for `CuImage<Vec<u8>>`,
  `PointCloud`, `Transform3D<f32/f64>`, and `ImuPayload`, with fallback logging
- restore `PointCloudSoa<N>` rerun point logging by detecting SoA payloads and
  extracting `{len,x,y,z}` into `Points3D` instead of scalar fallback
- add/extend logviz tests for auto-dispatch and PointCloudSoa handling
- replace `CARGO_FEATURE_LOGVIZ` env checks with Cargo feature wiring
  (`cu29-derive/logviz`, `cu29/logviz`, demo feature forwarding)
- update trybuild stderr snapshots affected by cfg-warning removal
@makeecat makeecat requested a review from gbin February 7, 2026 03:02
Comment thread core/cu29_logviz/src/as_components.rs Outdated
Add an optional rerun feature/dependency in cu-sensor-payloads.

Implement rerun::AsComponents for CuImage, PointCloud, and PointCloudSoa.

Add tests for component emission and image format mapping.
Add an optional rerun feature/dependency in cu-spatial-payloads.

Implement rerun::AsComponents for Transform3D<f32> and Transform3D<f64>.

Add tests for transform component emission and translation extraction.
Enable payload rerun features in cu29-logviz dependencies.

Replace wrapper-based dispatch with direct payload trait logging.

Remove local as_components/convert modules and update tests for payload usage.
Enable payload rerun features under the demo logviz feature.

Remove local wrapper usage in custom logviz path and align transform assertions with current matrix layout.
@makeecat makeecat requested a review from gbin February 9, 2026 20:46
@makeecat makeecat removed the help wanted Extra attention is needed label Feb 9, 2026
@makeecat

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 07f7de0939

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread core/cu29_derive/src/lib.rs
Comment thread components/payloads/cu_spatial_payloads/src/rerun_components.rs

@gbin gbin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GTG

@makeecat makeecat requested a review from gbin February 11, 2026 23:55
@makeecat makeecat merged commit 3e9b857 into master Feb 12, 2026
23 checks passed
@makeecat makeecat deleted the yang/feat/logviz branch February 12, 2026 02:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement logviz with rerun

2 participants