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

stacklok / toolhive / 19077774703
51%

Build:
DEFAULT BRANCH: main
Ran 04 Nov 2025 05:48PM UTC
Jobs 1
Files 342
Run time 4min
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

04 Nov 2025 05:43PM UTC coverage: 48.217% (-0.01%) from 48.231%
19077774703

push

github

web-flow
Fix vmcp capability name mapping when forwarding to backends (#2457)

When conflict resolution strategies rename capabilities (tools, resources,
prompts), vmcp was forwarding the resolved/prefixed name to backends
instead of the original name that backends expect. This caused all tools
renamed by conflict resolution to fail with "unknown tool" errors.

For example, with prefix strategy:
- Client calls: fetch_fetch
- vmcp was sending to backend: fetch_fetch (❌ backend doesn't know this)
- vmcp should send to backend: fetch (✅ original name)

Changes:
1. Added OriginalCapabilityName field to BackendTarget to preserve the
   mapping between resolved names and original backend names
2. Updated routing table construction to store original names for all
   capabilities (tools, resources, prompts)
3. Added GetBackendCapabilityName() method to BackendTarget to
   encapsulate the name translation logic cleanly
4. Updated tool/resource/prompt handlers to use original names when
   forwarding requests to backends

This fix works for all conflict resolution strategies:
- Prefix: fetch → fetch_fetch (OriginalCapabilityName="fetch")
- Priority: tool_name → tool_name (OriginalCapabilityName="tool_name")
- Manual: fetch → custom_name (OriginalCapabilityName="fetch")

Added comprehensive tests for GetBackendCapabilityName() covering all
strategies and capability types.

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

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

17 of 35 new or added lines in 3 files covered. (48.57%)

17 existing lines in 2 files now uncovered.

21778 of 45167 relevant lines covered (48.22%)

37.46 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
6
86.85
-0.6% pkg/vmcp/aggregator/default_aggregator.go
12
63.36
-1.82% pkg/vmcp/server/server.go

Uncovered Existing Lines

Lines Coverage ∆ File
3
86.85
-0.6% pkg/vmcp/aggregator/default_aggregator.go
14
54.74
-10.53% pkg/secrets/keyring/keyctl_linux.go
Jobs
ID Job ID Ran Files Coverage
1 19077774703.1 04 Nov 2025 05:48PM UTC 342
48.22
GitHub Action Run
Source Files on build 19077774703
  • Tree
  • List 342
  • Changed 4
  • Source Changed 2
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #19077774703
  • 70fe5dfb on github
  • Prev Build on main (#19065673379)
  • Next Build on main (#19077779662)
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