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

dangernoodle-io / breadboard / 30604727579
97%

Build:
DEFAULT BRANCH: main
Ran 31 Jul 2026 04:41AM UTC
Jobs 1
Files 212
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

31 Jul 2026 04:39AM UTC coverage: 96.757% (+0.008%) from 96.749%
30604727579

push

github

web-flow
refactor: extract shared bb_system_restart_deferred primitive (#1161)

Two committed sites hand-rolled the identical lazily-created static
oneshot-timer + deferred restart idiom: bb_wifi.c's bb_wifi_reconfigure
and examples/floor's provisioning-is-transient reboot. Both now arm
the new bb_system_restart_deferred(src, detail, delay_us), deleting
their private work_fn + static-timer boilerplate.

- one shared static oneshot timer for the whole process, lazily created
- the pending src/detail statics and the timer (re-)arm are guarded by
  an internal bb_lock_t (lazily bb_lock_init()'d via bb_lock_once_ensure,
  same idiom as bb_lifecycle.c) -- both the arm() write path and the
  fire callback's read path take the lock, since a fire already
  dequeued off the shared timer-dispatch task can race a concurrent
  arm() call
- accepted caveat: two causes arming within the same window still
  collapse to last-arm-wins -- synchronization only rules out a torn/
  corrupted detail string, not which caller's write lands last
  (documented on the new function)
- host-tested via a BB_SYSTEM_TESTING capture seam (mirrors
  bb_system_routes.c's reboot_handler pattern), since the real
  bb_system_restart_reason() call exit(0)s the host test process; a
  dedicated lock-stats-based test proves the lock is genuinely
  acquired on both the arm and fire paths


Claude-Session: https://claude.ai/code/session_0119nuE2NZME9y2aYEVJTPB5

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>

8092 of 8668 branches covered (93.35%)

Branch coverage included in aggregate %.

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

13719 of 13874 relevant lines covered (98.88%)

2574.07 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30604727579.1 31 Jul 2026 04:41AM UTC 212
96.76
GitHub Action Run
Source Files on build 30604727579
  • Tree
  • List 212
  • 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 #30604727579
  • 3d75c98f on github
  • Prev Build on main (#30604434192)
  • Next Build on main (#30662265941)
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