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

dangernoodle-io / breadboard / 30229385778
97%

Build:
DEFAULT BRANCH: main
Ran 27 Jul 2026 01:17AM UTC
Jobs 1
Files 200
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

27 Jul 2026 01:15AM UTC coverage: 96.536%. Remained the same
30229385778

push

github

web-flow
fix: flag request_schema initialized to a mutable buffer (B1-1244 defect class) (#1106)

mutating-route-needs-body-schema (B1-413) unconditionally trusted any
.request_schema variable reference, since the rule can't statically
inspect a runtime-patched value. That blind spot let B1-1244 ship: three
route descriptors were converted to degrade-and-continue while their
.request_schema still pointed at a static char buffer that is always
non-NULL, so the emitter's pointer-only gate stayed true on a doc-only
compose failure and emitted an empty-but-present requestBody instead of
omitting it (fixed in PR #1103 via NULL-then-patch).

Narrow the trust branch: a variable reference is now rejected when it
resolves, in the same file, to a mutable `char foo[N]` array declaration
(no const) -- the exact B1-1244 shape. Still accepted:
- NULL
- NULL /* patched at init */ (the sanctioned NULL-then-patch marker)
- a const char buffer / literal / macro
- any reference the rule can't resolve in-file (never flag what can't be
  proven mutable -- avoids false positives on legitimately opaque
  references)

Fix two false positives found in review of the resolver itself:
- it searched raw source instead of the comment/string-blanked text, so
  a mutable declaration merely mentioned inside a comment could flag a
  route whose real declaration is const
- it took only the first textual match via .search(), so a same-named
  mutable local in an unrelated function could shadow the real file-scope
  const declaration

The resolver now searches the comment/string-blanked `stripped` text
(never raw source) and collects every matching declaration via finditer
instead of just the first hit. A reference is flagged only when at
least one declaration is found and none of the matches are const; any
match carrying const trusts the reference, and no match at all
(unresolvable -- macro, pointer, out-of-file symbol) also trusts it,
same as before.

Verified the branch still fires against the... (continued)

7818 of 8421 branches covered (92.84%)

Branch coverage included in aggregate %.

13308 of 13463 relevant lines covered (98.85%)

2619.47 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30229385778.1 27 Jul 2026 01:17AM UTC 200
96.54
GitHub Action Run
Source Files on build 30229385778
  • Tree
  • List 200
  • 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 #30229385778
  • 3004a197 on github
  • Prev Build on main (#30228342948)
  • Next Build on main (#30302601871)
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