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

dangernoodle-io / breadboard / 29883273570
96%

Build:
DEFAULT BRANCH: main
Ran 22 Jul 2026 01:31AM UTC
Jobs 1
Files 190
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

22 Jul 2026 01:30AM UTC coverage: 96.362% (-0.001%) from 96.363%
29883273570

push

github

web-flow
refactor: route diag.boot REST through bb_data_render() (#986)

- boot_get_handler() (GET /api/diag/boot) now renders via bb_data_render()
  against the diag.boot bb_data binding instead of the retired bb_json
  bb_cache serializer (bb_diag_boot_serialize(), deleted along with
  components/bb_diag/bb_diag_event_common.c)
- BREAKING: response shape changes from a bare object to the
  {"ts_ms":N,"data":{...}} envelope, using the new portable
  bb_http_resp_json_obj_set_raw() primitive (bb_http_server) to splice
  bb_data_render()'s pre-rendered JSON in without cJSON -- PR2's five
  remaining producers will reuse this same primitive; set_raw() rejects
  raw_len == 0 as BB_ERR_INVALID_ARG (no valid JSON value is zero bytes, so
  a zero-length render is a producer bug, not a null/{} fallback)
- ts_ms semantic: bb_clock_now_ms64() read at RENDER time ("when this
  response was generated"), not the underlying snapshot's sample time --
  bb_data_render() has no notion of one, and bb_diag_boot_gather() doesn't
  carry one either; acceptable since REST consumers of this shape are
  frozen/being rewritten (wire compat waived per KB 1384)
- kept the pre-render bb_cache_update() refresh in boot_get_handler():
  verified bb_diag_boot_gather() is a pure pass-through over bb_cache's
  stored snapshot, not a recompute -- dropping the refresh would freeze
  reboot_reason.age_s at publish time instead of reflecting the GET; PR2
  must re-verify this per producer rather than assume it generalizes
- added bb_diag_boot_bind() (mirrors bb_ota_check_config_bind()'s
  composition-time self-bind pattern), called from bb_diag_routes_init():
  B1-1053 was written assuming B1-1045 had already bound all six dissolved
  bb_event producers to bb_data, but it bound only "log" (examples/floor);
  diag.boot had no binding at all, so bb_data_render() would have returned
  BB_ERR_NOT_FOUND on every GET without this
- relaxed bb_cache_register()'s cfg->serialize from mandatory to optional... (continued)

7458 of 8054 branches covered (92.6%)

Branch coverage included in aggregate %.

31 of 31 new or added lines in 2 files covered. (100.0%)

12619 of 12781 relevant lines covered (98.73%)

1211.7 hits per line

Jobs
ID Job ID Ran Files Coverage
1 29883273570.1 22 Jul 2026 01:31AM UTC 190
96.36
GitHub Action Run
Source Files on build 29883273570
  • Tree
  • List 190
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #29883273570
  • 08823316 on github
  • Prev Build on main (#29879742386)
  • Next Build on main (#29883762080)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc