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

stacklok / toolhive / 26875109919
66%

Build:
DEFAULT BRANCH: main
Ran 03 Jun 2026 09:17AM UTC
Jobs 1
Files 747
Run time 2min
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 Jun 2026 09:10AM UTC coverage: 65.857%. Remained the same
26875109919

push

github

web-flow
Expose CIMD config in MCPExternalAuthConfig CRD (#5384)

* Validate CIMD scope, grant_types and response_types against AS policy

C3 - Thread ScopesSupported into NewCIMDStorageDecorator so CIMD scope
     handling is consistent with DCR. Uses registration.ValidateScopes
     (same function as the DCR handler) to validate declared scopes
     against the AS allowlist and compute the effective scope list.
     When ScopesSupported is unset, the document's declared scopes are
     used directly; omitted scopes default to DefaultScopes.

C4 - Reject CIMD documents that declare grant_types or response_types
     the embedded AS does not support for public clients
     (authorization_code + refresh_token; code). Consistent with DCR
     which returns invalid_client_metadata for the same cases.

buildFositeClient now receives pre-computed scopes from fetch() rather
than re-parsing doc.Scope, matching the DCR handler pattern where scope
computation and validation happen before client construction.

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

* Expose CIMD config in MCPExternalAuthConfig CRD

Adds EmbeddedAuthServerCIMDConfig to the CRD so operators can enable
CIMD through the normal VirtualMCPServer manifest workflow instead of
writing runconfig.json directly. Resolves the TODO(cimd) comment in
pkg/authserver/config.go.

The new cimd field on EmbeddedAuthServerConfig maps to
authserver.CIMDRunConfig in the generated RunConfig. CacheFallbackTTL
is stored as a Go duration string in the CRD (e.g. "5m") and parsed
to time.Duration by the converter.

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

* Update PR5 converter for CacheFallbackTTL string type

CIMDRunConfig.CacheFallbackTTL changed from time.Duration to string in
PR3. The operator converter now passes the string through unchanged;
parsing to time.Duration happens in resolveCIMDConfig in the runner,
after CIMDRunConfig.Validate() has already confirmed t... (continued)

12 of 26 new or added lines in 3 files covered. (46.15%)

5 existing lines in 2 files now uncovered.

66396 of 100818 relevant lines covered (65.86%)

63.76 hits per line

Uncovered Changes

Lines Coverage ∆ File
14
44.6
-0.24% cmd/thv-operator/api/v1beta1/zz_generated.deepcopy.go

Coverage Regressions

Lines Coverage ∆ File
3
78.17
-0.76% pkg/transport/proxy/httpsse/http_proxy.go
2
73.63
-0.64% pkg/runner/config.go
Jobs
ID Job ID Ran Files Coverage
1 26875109919.1 03 Jun 2026 09:17AM UTC 747
65.86
GitHub Action Run
Source Files on build 26875109919
  • Tree
  • List 747
  • Changed 9
  • Source Changed 4
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26875109919
  • 853e9e43 on github
  • Prev Build on main (#26831829786)
  • Next Build on main (#26876797430)
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