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

stacklok / toolhive / 18851856932
51%

Build:
DEFAULT BRANCH: main
Ran 27 Oct 2025 06:34PM UTC
Jobs 1
Files 300
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

27 Oct 2025 06:29PM UTC coverage: 47.434% (-0.04%) from 47.476%
18851856932

push

github

web-flow
Add Virtual MCP Server routing interfaces and domain model (#2333)

* Add Virtual MCP Server routing interfaces and domain model

Implement foundational domain interfaces for Virtual MCP Server (vMCP)
following Domain-Driven Design principles. This enables parallel
implementation of vMCP features across multiple teams.

Package structure:
- pkg/vmcp/types.go: Shared domain types (BackendTarget, Tool, etc.)
- pkg/vmcp/errors.go: Common domain errors
- pkg/vmcp/router/: Request routing interfaces
- pkg/vmcp/aggregator/: Capability aggregation interfaces
- pkg/vmcp/auth/: Authentication interfaces (incoming & outgoing)
- pkg/vmcp/composer/: Workflow engine interfaces
- pkg/vmcp/config/: Platform-agnostic configuration model
- pkg/vmcp/cache/: Token caching interfaces

Key design decisions:
- Shared types in root package avoid circular dependencies
- Extensible authentication via Strategy interface
- BackendDiscoverer abstraction enables CLI and K8s implementations
- RoutingTable maps capabilities to backends (composite tools excluded)
- Configuration model matches proposal YAML structure

Related: #2106

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Address PR feedback on vMCP routing interfaces

Changes:
- Use ConflictResolutionStrategy enum instead of string in ResolvedTool
- Remove specific auth strategy examples from OutgoingAuthenticator docs
  until design decisions are finalized

Addresses feedback from:
- yrobla: Use typed enum for conflict resolution strategy
- jhrozek: Defer auth strategy details until design is complete

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>

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

18 existing lines in 2 files now uncovered.

19075 of 40214 relevant lines covered (47.43%)

15.44 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
6
0.0
pkg/vmcp/cache/cache.go

Uncovered Existing Lines

Lines Coverage ∆ File
4
56.0
-0.48% pkg/workloads/manager.go
14
54.74
-10.53% pkg/secrets/keyring/keyctl_linux.go
Jobs
ID Job ID Ran Files Coverage
1 18851856932.1 27 Oct 2025 06:34PM UTC 300
47.43
GitHub Action Run
Source Files on build 18851856932
  • Tree
  • List 300
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #18851856932
  • 295a70b6 on github
  • Prev Build on main (#18850558928)
  • Next Build on main (#18852336652)
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

© 2025 Coveralls, Inc