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

stacklok / toolhive / 40754094680
73%

Build:
DEFAULT BRANCH: main
Ran 28 Oct 2026 07:34PM UTC
Jobs 1
Files 986
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

28 Oct 2026 07:24PM UTC coverage: 72.009% (+0.04%) from 71.97%
40754094680

push

github

web-flow
Add configured delegate client metadata (#6952)

Delegate clients could only be secret-authenticated, token-exchange-only
clients. Issue #6893 needs a pre-provisioned broker that keeps its
client_id across key rotation, so the config now accepts an auth method,
a JWKS file, grant types and redirect URIs.

One validator in the registration package checks these fields and shares
the DCR private_key_jwt key check. It runs on RunConfig (keys not yet
loaded), on the resolved Config (keys loaded) before any client is
registered, and when the client is built. Redirect URIs follow the
confidential-client rule: https, not loopback. refresh_token requires
authorization_code, as in DCR. The constructor keeps today's bare client
for default inputs and never marks the result as DCR-issued.

Every delegate client still counts as confidential for the
cleartext-transport check, private_key_jwt ones included. They send no
reusable secret, but unlike token-exchange-only DCR private_key_jwt
clients they can hold authorization_code and refresh_token, so codes and
tokens would cross plain HTTP. This matches the CRD rules and can be
relaxed later if an in-cluster HTTP issuer is needed. The transport
errors now name both triggers instead of only confidential registration.

Replacing a configured client now also logs the WARN from #6918 when its
grant types, redirect URIs or auth method change. A JWKS change is key
rotation and stays silent.

The runner does not load the JWKS file or pass the new fields yet; the
next change in the stack wires them, and the two are meant to land
together.

Co-authored-by: Mecatl <noreply@mecatl.dev>

228 of 230 new or added lines in 9 files covered. (99.13%)

1 existing line in 1 file now uncovered.

90526 of 125714 relevant lines covered (72.01%)

130.49 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
90.5
1.0% pkg/authserver/server/registration/client.go

Coverage Regressions

Lines Coverage ∆ File
1
81.58
-0.12% pkg/vmcp/composer/workflow_engine.go
Jobs
ID Job ID Ran Files Coverage
1 40754094680.1 28 Oct 2026 07:34PM UTC 986
72.01
GitHub Action Run
Source Files on build 40754094680
  • Tree
  • List 986
  • Changed 12
  • Source Changed 9
  • Coverage Changed 12
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #40754094680
  • 3a2246ca on github
  • Prev Build on main (#40747333128)
  • Next Build on main (#40759288492)
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