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

archetech / archon / 34881835396
95%

Build:
DEFAULT BRANCH: main
Ran 14 Sep 2026 06:40PM UTC
Jobs 1
Files 99
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

14 Sep 2026 06:36PM UTC coverage: 92.414% (-0.03%) from 92.441%
34881835396

push

github

web-flow
test(gatekeeper): Structurally fuzz operation parity between the ports (#1144)

* test(gatekeeper): Structurally fuzz operation parity between the ports

The curated vectors compare the two gatekeepers on hand-authored value
cases. Four shipped divergences were structural edges nobody wrote down --
Date-parseable vs RFC 3339 (#1115), truthiness vs as_str on "" (#1118),
empty verificationMethod refuse vs Invalid operation (#1120), lexical vs
instant time ordering (#1134) -- and a single-port test cannot catch a
cross-port divergence by construction.

Add a fuzz phase to gatekeeper-parity.mjs: mutate a valid operation at
every field (delete, "", null, number, object, array; timestamp
re-encodings; corrupt proofValue) and assert both ports return the same
HTTP status. Status parity is the fork signal; error wording may differ
and is reported, not enforced. 139 mutations from the agentCreateValid
seed. Runs in the existing gatekeeper-parity CI job, both services up.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GYGMfX3foBcVqP7AQNXjWj

* test(gatekeeper): Re-sign fuzz mutations and set the JSON content type

Two flaws the first pass had, both real:

- The request omitted Content-Type: application/json, so Rust's Axum Json
  extractor rejected the media type before the handler -- the phase
  compared transport failures, not mutations (the red).
- The legacy seed signs the operation without its proof, so mutating an
  operation field invalidated the signature and both ports rejected at
  the signature check -- masking any structural-acceptance fork behind a
  500/500.

Build the seed with a generated key and re-sign every mutation (except
one to proofValue itself), so a port that wrongly accepts a malformed
field returns 200 where the other rejects. Verified in isolation: the
seed verifies true, and a re-signed bad-created op reaches the format
check rather than the signature.

This catches the acce... (continued)

4172 of 4797 branches covered (86.97%)

Branch coverage included in aggregate %.

10 of 13 new or added lines in 1 file covered. (76.92%)

8815 of 9256 relevant lines covered (95.24%)

776.71 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
96.12
-0.27% packages/gatekeeper/src/gatekeeper.ts
Jobs
ID Job ID Ran Files Coverage
1 34881835396.1 14 Sep 2026 06:40PM UTC 198
93.51
GitHub Action Run
Source Files on build 34881835396
  • Tree
  • List 99
  • Changed 86
  • Source Changed 1
  • Coverage Changed 86
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #34881835396
  • 4e00d870 on github
  • Prev Build on main (#34857041178)
  • Next Build on main (#34892184804)
  • 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