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

dangernoodle-io / breadboard / 28564007362
100%

Build:
DEFAULT BRANCH: main
Ran 02 Jul 2026 03:50AM UTC
Jobs 1
Files 40
Run time 1min
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

02 Jul 2026 03:49AM UTC coverage: 100.0%. Remained the same
28564007362

push

github

web-flow
refactor(bb_pub): back store-forward ring with bb_pool in a private arena (B1-478 PR D, B1-419) (#655)

migrates bb_pub's store-and-forward ring buffer off the lazily
heap-allocated bb_ring_t (never freed from the global heap — B1-419)
onto a bb_pool FIFO carved from a bb_pub-private static-BSS bb_arena
(s_ring_arena_buf). No shared "app-pool" component is introduced; each
bb_pub consumer of bb_pool owns its own arena per B1-478's design
decision (SSE gets its own in PR E).

- ring_pool_get() replaces buffer_get(); lazily creates a bb_pool FIFO
  (EVICT_OLDEST) from the private arena on first enqueue (on-failure
  mode) or eagerly at init (always-on mode via bb_pub_buffer_init_eager)
- bb_pub_buffer_stats: count/dropped sourced from bb_pool_count/dropped;
  truncated is always 0 (buffer_capture already rejects oversized
  entries before ever calling bb_pool_push, same as the pre-migration
  bb_ring behavior)
- bb_pub_test_reset: bb_arena_reset + recreate instead of destroy+
  recreate, preserving the same dropped-counter-resets-to-zero semantics
  with zero heap churn in tests
- idle-tick bookkeeping (s_buffer_idle_ticks) is retained purely so the
  bb_pub_test_set_idle_free_ticks() test hook keeps a stable API/ABI
  surface; reaching the threshold no longer destroys/recreates storage
  since there is no heap allocation left to reclaim once the ring lives
  in a permanent static-BSS arena
- JSON cache: NOT added. bb_pub's current serialize-once-per-tick path
  already frees the heap JSON string within the same tick (no
  cross-phase heap hold), so there is nothing here to migrate onto
  bb_pool. Externally-consumed JSON output is unchanged (same
  bb_json_serialize/bb_json_free_str call sites, unmodified).

net RAM: store-and-forward is opt-in (CONFIG_BB_PUB_BUFFER_ENABLE=n
default) and unchanged for boards that don't enable it. For boards that
do: the ring's ~8-9 KB moves from an on-failure-lazy heap allocation to
a permanent static-BSS reservation (... (continued)

1840 of 1840 branches covered (100.0%)

Branch coverage included in aggregate %.

3167 of 3167 relevant lines covered (100.0%)

1301.34 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28564007362.1 02 Jul 2026 03:50AM UTC 40
100.0
GitHub Action Run
Source Files on build 28564007362
  • Tree
  • List 40
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28564007362
  • 3b3d7ca5 on github
  • Prev Build on main (#28563196129)
  • Next Build on main (#28565678360)
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