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

archetech / archon / 32577416705
87%

Build:
DEFAULT BRANCH: main
Ran 22 Aug 2026 02:04PM UTC
Jobs 1
Files 91
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

22 Aug 2026 02:00PM UTC coverage: 93.894%. Remained the same
32577416705

push

github

web-flow
test(lightning-mediator): Extract an app factory and cover all 17 routes (#922)

* test(lightning-mediator): Extract an app factory and cover all 17 routes

Closes #909.

main() built the app, the store and the listener in one function and
exported nothing, so there was no way to get an app instance in a test.
All 17 routes of a service that moves money were uncovered, and the SSRF
guards #908 kept could only be verified by reading the call sites.

Split the way services/didcomm/server does it: lightning-mediator.ts
exports createApp(deps) and index.ts wires the production dependencies and
listens. The store, resolver, lnbits and cln clients, readiness probe,
version and Tor-hostname read are now parameters rather than module state,
which also takes ioredis and the package.json read off the API module.

The public-host cache moves into the app instance. As module state it
leaked the first config's answer into every later app -- wrong for any
process building more than one, and silent cross-test coupling.

Entry point is now dist/index.js in package.json, the Dockerfile, and the
compose entrypoint script.

46 tests. Ranked by risk rather than line count, as the issue asked: both
zap branches (LUD-16 and DID) including every scheme guard, the redirect
re-check, the sendable bounds and the loopback shortcut; the L402 pending
lifecycle; admin-key enforcement; and the 400-vs-502 error mapping.

Mutation-tested rather than assumed. Dropping the callback https check,
the onion scheme rules, the admin-key length guard, or routing the SOCKS
path through the built-in fetch each turn the suite red; replacing
fetchHttpsOnly with plain fetch fails three tests.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* fix(test): Hoist the mediator's deps so its tests resolve from the root

CI failed with `Cannot find module 'morgan'`. The lightning mediator is
not an npm workspace, so its dependencies live only in its own
node_modules; the root `npm ci... (continued)

3806 of 4293 branches covered (88.66%)

Branch coverage included in aggregate %.

8465 of 8776 relevant lines covered (96.46%)

689.48 hits per line

Jobs
ID Job ID Ran Files Coverage
1 32577416705.1 22 Aug 2026 02:04PM UTC 182
94.92
GitHub Action Run
Source Files on build 32577416705
  • Tree
  • List 91
  • Changed 77
  • Source Changed 0
  • Coverage Changed 77
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #32577416705
  • 969d4558 on github
  • Prev Build on main (#32572235705)
  • Next Build on main (#32585001255)
  • 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