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

archetech / archon / 30673356018
93%
main: 93%

Build:
Build:
LAST BUILD BRANCH: fix/cipher-didcomm-module-mapper
DEFAULT BRANCH: main
Ran 31 Jul 2026 11:39PM UTC
Jobs 1
Files 86
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 11:36PM UTC coverage: 92.527% (+0.6%) from 91.937%
30673356018

Pull #815

github

macterra
test(keymaster): cover the server routers extracted in #706

#706 split keymaster-api.ts into 22 routers, but no test imported any of
them. Because jest.config.js sets no collectCoverageFrom, only files a
test loads are counted, so ~8,500 lines were both uncovered and invisible
to the coverage metric — the split registered a 0.00 delta on Coveralls
and no change to that surface could ever show up as a regression.

Mount every router against a mocked Keymaster and drive all 155 routes.
The mock is a Proxy that manufactures a jest.fn on first property access,
so the test does not have to enumerate ~150 Keymaster methods, and a
single flag flips the whole surface between resolving and rejecting.
Two table-driven tests then assert that every route reaches its handler
and that each maps a failing Keymaster to its own documented status
(52 routes answer 400, 22 answer 404, 79 answer 500).

The route table was generated by parsing each handler's catch block
rather than transcribed by hand; 153 of 155 entries were correct on the
first run and both mismatches were defects in the generated table:
/ids/:id/recover returns 404 only for a DIDNotFound-shaped error and 500
otherwise, and /ready never calls Keymaster at all.

Targeted tests cover the branches the table cannot reach: the
octet-stream download paths in the image and file routers, /keys/sign
parsing its request contents, /login passphrase handling, /version, the
readiness probe throwing, and the admin key middleware.

services/keymaster/server/src goes from 0 files instrumented to 24 at
100% (1000/1000 lines). Repo total 95.61% -> 96.19%, despite adding
1,000 lines to the denominator.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Pull Request #815: test(keymaster): cover the server routers extracted in #706

3109 of 3660 branches covered (84.95%)

Branch coverage included in aggregate %.

7316 of 7607 relevant lines covered (96.17%)

747.89 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30673356018.1 31 Jul 2026 11:39PM UTC 172
93.96
GitHub Action Run
Source Files on build 30673356018
  • Tree
  • List 86
  • Changed 57
  • Source Changed 0
  • Coverage Changed 57
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #30673356018
  • Pull Request #815
  • PR Base - main (#30672752859)
  • Delete
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