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

dangernoodle-io / breadboard / 30171256306
97%

Build:
DEFAULT BRANCH: main
Ran 25 Jul 2026 07:17PM UTC
Jobs 1
Files 197
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

25 Jul 2026 07:15PM UTC coverage: 96.497% (+0.002%) from 96.495%
30171256306

push

github

web-flow
feat: add bb_data_http describe table + bb_openapi topic-source seam (B1-1220 PR1) (#1080)

infra-only, deliberately inert: nothing migrates off
bb_openapi_register_topic_schema() in this PR, and no example is wired
to the new seam. Adds bb_data_http_describe()/bb_data_http_describe_
foreach(), a topic-schema table independent of the attach table (so
documenting a schema never implicitly starts SSE delivery for it), and
unions it into sse_schema_count()/build_sse_oneof_fragment() alongside
the legacy registry (legacy first, external source second -- stable
ordering as producers migrate one at a time in a later PR).

bb_openapi never links bb_data_http directly -- breadboard ships
primitives, composition is the consumer's job (CLAUDE.md's
composition-only banner), and bb_data_http's own render/generation/send
seams already follow this rule. A first pass added a direct
PRIV_REQUIRES edge; link-closure verification caught it dragging
bb_data_http into examples/smoke (bb_openapi but no SSE producer of its
own) with zero functional benefit there, so it was replaced with an
injected seam instead:

- bb_openapi_set_topic_source_fn() / the generated bb_openapi_topic_
  source_invoke() (BB_CALLBACK_SLOT_VOID, bb_callback_slot.h -- the
  consolidated single-slot injected-callback idiom, not a hand-rolled
  static+setter) let a composition root point bb_openapi's SSE oneOf
  synthesis at bb_data_http_describe_foreach() without a link-time
  dependency; NULL default reproduces pre-B1-1220 output byte-for-byte;
  single-slot last-write-wins -- a root unioning two sources writes its
  own combinator TU
- examples/floor and examples/smoke both stay UNTOUCHED and unwired --
  `git diff origin/main...HEAD -- examples/` is empty. Wiring floor was
  considered and reverted: floor's hand-wired app_main() never actually
  calls bb_openapi_init()/bb_openapi_reserve_routes() (only the
  gitignored, never-invoked codegen-proof file does), so floor doesn't
  serve /api/openap... (continued)

7700 of 8299 branches covered (92.78%)

Branch coverage included in aggregate %.

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

13152 of 13310 relevant lines covered (98.81%)

2585.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30171256306.1 25 Jul 2026 07:17PM UTC 197
96.5
GitHub Action Run
Source Files on build 30171256306
  • Tree
  • List 197
  • 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 #30171256306
  • b02955f8 on github
  • Prev Build on main (#30164363049)
  • Next Build on main (#30174570502)
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