Conversation
AI-authored (deepseek-v4-flash-free, default params): - Add PublishRecord() publishing uavcan.diagnostic.Record.1.0 on fixed subject 8184 via the shared udpardTxPublish pipeline, alternating INFO/WARNING severity with a formatted text payload (# + uptime) - memset-style init to avoid the generated initialize_() -Warray-bounds gotcha - Gate on a 1 s tick alongside the Heartbeat publisher - Host Catch2 tests: wire layout (LE timestamp, severity, text len), round trip, 112-byte text cap, fixed port-ID registry check Human: requested the publishes for yactui visibility; subject 8184 chosen per DSDL. Verified: LLVM 19/19, AppleClang 19/19, M4 + M7 cross workflows build.
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.
Closes #48.
Publishes
uavcan.diagnostic.Record.1.0so the messages show up in yactui(yactui subscribes on the standard DSDL port, which is fixed subject 8184
for Record.1.0).
Changes
CyphalApp::PublishRecord(): builds a Record (memset-style init to dodge thegenerated
initialize_()-Warray-boundsgotcha), alternates INFO/WARNINGseverity, formats
nucleo-cyphal diagnostic #N uptime=Nstext, and publishes onthe shared
udpardTxPublishpipeline atUdpardPriorityLow.Execute()alongside the Heartbeat publisher.cyphal-record: LE wire layout (56-bit timestamp,3-bit severity, text length byte), serialize/deserialize round trip,
112-byte text capacity, and fixed port-ID registry check.
Tests
Note:
on-host-native-gccis not buildable on macOS (pre-existing, see AGENTS.md).