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

archetech / archon / 28629468079
92%

Build:
DEFAULT BRANCH: main
Ran 03 Jul 2026 12:09AM UTC
Jobs 1
Files 52
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

03 Jul 2026 12:05AM UTC coverage: 91.569% (+0.06%) from 91.514%
28629468079

push

github

web-flow
test(gatekeeper): supertest HTTP harness for the /1.0/identifiers surface (#680)

* test(gatekeeper): supertest HTTP harness for the /1.0/identifiers surface (#677)

The gatekeeper API layer had no HTTP-level tests — importing gatekeeper-api.ts
boots the DB/IPFS/server, so the routes couldn't be exercised in isolation.

Extract the conformant surface into a factory `createIdentifiersRouter(gatekeeper,
logger)` (new identifiers-router.ts), so it can be mounted on a bare Express app
with an in-memory Gatekeeper. gatekeeper-api.ts now imports and mounts it (no
behavior change); swaggerConf.js also scans the new file so the OpenAPI paths are
preserved (the regenerated spec reorders those three paths — content identical).

Add tests/gatekeeper/api.test.ts (supertest + DbJsonMemory + Helia, the existing
class-test harness): 16 cases covering resolve (triple only, data/registration
absent), /data + /registration dereference (agent empty {}, asset payload),
version selectors, invalidDid→400, notFound→404, unsupported-path→404, and the
thrown-error paths (InvalidOperationError→404, unexpected→500 internalError) via
stub Gatekeepers. 100% line / 88% branch coverage of the router.

Add supertest + @types/supertest dev deps. Establishes the first HTTP test
harness for this service; extending it to the rest of gatekeeper-api.ts (which
needs the app made importable without bootstrap) remains future work.

Closes #677.

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

* refactor(gatekeeper): type-only import for ResolveDIDOptions/DidCidDocument

Address Copilot review: these are used purely as types, so import them with
`import type` — matches the pattern elsewhere in this server code
(confirm-fallback.ts) and the other type-only imports in this same file
(Logger, Gatekeeper), and is safe under stricter TS/ESM module settings.
InvalidOperationError stays a value import (used with `instanceof`).

Co-Authored-By: Claude Opus 4.8 (1M context) <nore... (continued)

2816 of 3323 branches covered (84.74%)

Branch coverage included in aggregate %.

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

5851 of 6142 relevant lines covered (95.26%)

882.2 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28629468079.1 03 Jul 2026 12:09AM UTC 104
93.0
GitHub Action Run
Source Files on build 28629468079
  • Tree
  • List 52
  • Changed 47
  • Source Changed 0
  • Coverage Changed 47
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28629468079
  • 1b670656 on github
  • Prev Build on main (#28623026323)
  • Next Build on main (#28630920255)
  • Delete
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