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

archetech / archon / 28143747602
92%

Build:
DEFAULT BRANCH: main
Ran 25 Jun 2026 02:58AM UTC
Jobs 1
Files 51
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

25 Jun 2026 02:55AM UTC coverage: 85.653% (+0.05%) from 85.607%
28143747602

push

github

web-flow
fix: read DIDComm mailbox via the local gateway, not the public endpoint (#646)

* fix: read DIDComm mailbox via the local gateway, not the public endpoint

receiveDidComm/mediateDidComm resolved the identity's *published* DIDCommMessaging
endpoint and dialed it directly to read the owner's own mailbox. When that endpoint
is the auto-discovered Tor onion (no ARCHON_DRAWBRIDGE_PUBLIC_HOST), a client with
no Tor fails with a bare "fetch failed" — and even with Tor it pointlessly routes
out through the onion to reach the owner's own relay.

Reading your own mailbox is a local-gateway operation, the mirror of Phase 8 sends.
Factor the node-URL derivation out of sendDidComm into didcommGatewayBase /
_didcomm_gateway_base and use it in all three: mailbox reads now go to
<nodeURL>/didcomm (Drawbridge's /didcomm proxy → relay), never the published public
endpoint. An explicit --endpoint still overrides. The published endpoint stays what
it is for — *others* sending to you. Also guard the challenge fetch in receive/mediate
so a non-2xx gateway response is a clean KeymasterError, not a raw .json() throw.

JS + Python in parity; design doc updated. Validated: JS e2e 7/7, JS didcomm units
62, Python didcomm 17; live CLI receive-didcomm through the gateway confirmed.

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

* fix: normalize gateway URL and tighten challenge status check (PR review)

Address Copilot review on #646:
- didcommGatewayBase / _didcomm_gateway_base: strip trailing slashes from the
  node URL before appending `/didcomm`, so a configured `ARCHON_GATEKEEPER_URL`
  ending in `/` no longer yields `host//didcomm`.
- Python challenge guards now fail on any non-2xx (`not response.is_success`)
  instead of only `>= 400`, matching the TypeScript `response.ok` behavior.

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

---------

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

2633 of 3268 branches covered (80.57%)

Branch coverage included in aggregate %.

0 of 12 new or added lines in 1 file covered. (0.0%)

5361 of 6065 relevant lines covered (88.39%)

883.1 hits per line

Uncovered Changes

Lines Coverage ∆ File
12
87.52
0.12% packages/keymaster/src/keymaster.ts
Jobs
ID Job ID Ran Files Coverage
1 28143747602.1 25 Jun 2026 02:58AM UTC 102
86.66
GitHub Action Run
Source Files on build 28143747602
  • Tree
  • List 51
  • Changed 47
  • Source Changed 1
  • Coverage Changed 47
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28143747602
  • f109c410 on github
  • Prev Build on main (#28137152414)
  • Next Build on main (#28184231850)
  • 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