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

dangernoodle-io / TaipanMiner / 25240780944
90%

Build:
DEFAULT BRANCH: main
Ran 02 May 2026 01:49AM UTC
Jobs 1
Files 28
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 May 2026 01:48AM UTC coverage: 93.51% (+0.04%) from 93.468%
25240780944

push

github

web-flow
feat(mining): SHA self-test gate halts mining + surfaces error on FAIL (TA-322) (#296)

Boot-time SHA-256("abc") known-vector check across every SHA path used in
mining; on FAIL, the mining task never starts and /api/health surfaces a
flag the dashboard renders as a non-dismissible error banner.

- new sha256_check_abc_vector(tag, hash) helper does the comparison + log;
  three backends call it with their digest reads:
  - sw  — sha256_sw_self_test (covers sha256_transform on every target)
  - ahb — sha256_hw_ahb_self_test (S3 AHB peripheral via sha256_hw_midstate)
  - dport — sha256_hw_dport_self_test (classic ESP32 DPORT peripheral)
- mining.c: s_sha_self_test_failed flag + mining_sha_self_test_failed() /
  mining_set_sha_self_test_failed() API. Mining task entry runs SW + HW
  self-tests for its target and returns early on failure.
- asic_task.c: asic_init runs the SW self-test before opening UART; on
  failure sets the flag and skips UART/ASIC bring-up entirely. main.c
  start_mining gates xTaskCreate on the flag so the device boots into a
  diagnosable state instead of hanging or panicking.
- /api/health gains sha_self_test_failed: bool via the existing
  taipan_health_extender pattern.
- Host tests cover the flag + the comparison helper for both PASS and FAIL
  branches (the FAIL branch is what catches a regression in sha256_transform).

The host test suite caught a real bug in the initial SW self-test — a
(uint32_t *)hash cast that compared LE-host words against BE-ordered
constants would have failed on every device at boot, refusing to mine.

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

707 of 842 branches covered (83.97%)

Branch coverage included in aggregate %.

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

1627 of 1654 relevant lines covered (98.37%)

251524.32 hits per line

Jobs
ID Job ID Ran Files Coverage
1 25240780944.1 02 May 2026 01:49AM UTC 28
93.51
GitHub Action Run
Source Files on build 25240780944
  • Tree
  • List 28
  • 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 #25240780944
  • cce352ae on github
  • Prev Build on main (#25224978545)
  • Next Build on main (#25240931573)
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