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

digidem / multi-core-indexer / 31515029493
100%

Build:
DEFAULT BRANCH: main
Ran 11 Aug 2026 04:57PM UTC
Jobs 4
Files 5
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

11 Aug 2026 04:56PM UTC coverage: 100.0%. Remained the same
31515029493

push

github

web-flow
feat!: upgrade to hypercore 11 (#51)

* feat!: upgrade to hypercore 11

* fix: don't swallow pipeline errors that race close()

Replace the per-stream 'error' listeners and hand-rolled close-promise
capture with the streamx pipe callback, which fires exactly once after both
pipeline streams close: with null after a clean teardown, or with the
root-cause error. This removes the guard that deduplicated the same error
arriving from both streams, under which any real failure racing a
deliberate close() was silently dropped.

Because the pipe callback only fires after teardown completes, the indexer
also needs to know the moment the pipeline *starts* dying: the index
streams now emit a 'destroying' event synchronously from their streamx
predestroy hooks (forwarded from source core streams, which previously
could fail invisibly for their whole teardown). During that window
addCore() and idle() now throw instead of feeding a dying pipeline, an
error that preceded a user-initiated close() is still emitted, and
MultiCoreIndexStream.addStream() throws rather than accepting a stream
that would never be destroyed (leaking its storage handle and core
listeners).

* refactor: remove dead bitfield code and cover remaining branches

The hypercore 11 upgrade removed the blanket c8-ignore markers that had
hidden bitfield.js from coverage entirely, exposing its real coverage (90%
branch). Of the six uncovered branch legs: close() was unused outside tests
(the core index stream closes the storage directly) and is removed, the
u === v check in FixedBitfield.set was unreachable (the earlier same-value
check already guarantees the word changes) and is removed, and the
remaining legs (same-value set, clearing a bit on a missing page, and a
storage read failure during open) now have tests.

* test: annotate unreachable error-swallow guard for coverage

The swallow leg of #handleError's guard cannot be reached: an error only
arrives at the pipe callback if a stream was destroy... (continued)

272 of 272 branches covered (100.0%)

Branch coverage included in aggregate %.

250 of 250 new or added lines in 4 files covered. (100.0%)

1120 of 1120 relevant lines covered (100.0%)

76213.67 hits per line

Jobs
ID Job ID Ran Files Coverage
1 31515029493.1 11 Aug 2026 04:57PM UTC 5
100.0
GitHub Action Run
2 31515029493.2 11 Aug 2026 04:57PM UTC 5
100.0
GitHub Action Run
3 31515029493.3 11 Aug 2026 04:57PM UTC 5
100.0
GitHub Action Run
4 31515029493.4 11 Aug 2026 04:57PM UTC 5
100.0
GitHub Action Run
Source Files on build 31515029493
  • Tree
  • List 5
  • Changed 5
  • Source Changed 5
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #31515029493
  • 25729eb2 on github
  • Prev Build on main (#28295844716)
  • Next Build on main (#31517730058)
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