• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

OpenCyphal / libcanard
100%
master: 100%

Build:
Build:
LAST BUILD BRANCH: fix/rx-behavioral-correctness
DEFAULT BRANCH: master
Repo Added 24 Mar 2026 02:11PM UTC
Files 1
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH fix/rx-behavioral-correctness
branch: fix/rx-behavioral-correctness
CHANGE BRANCH
x
Reset
  • fix/rx-behavioral-correctness
  • experimental
  • experimental-subscription
  • master
  • pavel-kirienko-patch-1

02 Jul 2026 09:02PM UTC coverage: 100.0%. Remained the same
28621362151

Pull #260

github

pavel-kirienko
Add per-instance available-interfaces bitmap (canard_new API break)

canard_new() now takes an iface_bitmap describing the interfaces available on
the node. It is ANDed into the requested interface bitmap at the single TX
chokepoint (tx_push), so transfers are never queued for interfaces that cannot
be drained -- previously requests/responses (which always target all
interfaces) and all-publishes wasted heap on undrainable queues. A zero bitmap
declares a listen-only node: every enqueue becomes a clean no-op (no spool, no
error counter). canard_new rejects a bitmap with bits beyond CANARD_IFACE_COUNT.

All call sites, the demo, and the README example are updated. Regression tests
cover masking (request/publish/v0), the listen-only no-op, and -- under the
leak-detecting intrusive allocator -- refcount/cursor consistency and correct
transfer-freeing on the empty-intersection path.

Reviewed by Codex (gpt-5.5 xhigh) and Claude Fable 5 (xhigh): no major findings.
Also includes minor documentation tweaks (AGENTS.md, README).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pull Request #260: Fix RX behavioral defects: reassembly asserts, filter config, callback re-entrancy

218 of 218 branches covered (100.0%)

Branch coverage included in aggregate %.

31 of 31 new or added lines in 1 file covered. (100.0%)

880 of 880 relevant lines covered (100.0%)

14656.76 hits per line

Relevant lines Covered
Build:
Build:
880 RELEVANT LINES 880 COVERED LINES
14656.76 HITS PER LINE
Source Files on fix/rx-behavioral-correctness
  • Tree
  • List 1
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
28621362151 fix/rx-behavioral-correctness Add per-instance available-interfaces bitmap (canard_new API break) canard_new() now takes an iface_bitmap describing the interfaces available on the node. It is ANDed into the requested interface bitmap at the single TX chokepoint (tx_push), so ... Pull #260 02 Jul 2026 09:04PM UTC pavel-kirienko github
100.0
28606296795 fix/rx-behavioral-correctness Fix RX behavioral defects: reassembly asserts, filter config, callback re-entrancy Adversarial review of the v5 RX pipeline surfaced several behavioral defects, each fixed here with a regression test that fails on the pre-fix code: - rx_subscrib... Pull #260 02 Jul 2026 04:41PM UTC pavel-kirienko github
100.0
See All Builds (22)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc