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

stacklok / toolhive / 27023954418
66%

Build:
DEFAULT BRANCH: main
Ran 05 Jun 2026 03:34PM 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

05 Jun 2026 03:28PM UTC coverage: 65.888% (+0.02%) from 65.864%
27023954418

push

github

web-flow
Domain-type the ElicitationRequester seam (#5456)

* Domain-type the ElicitationRequester seam

Replace composer.SDKElicitationRequester, which leaked mcp-go's
ElicitationRequest/ElicitationResult across the soon-to-be VMCP
boundary, with a domain-typed vmcp.ElicitationRequester interface and
ElicitationRequest/ElicitationResult value types that carry no mcp-go
types. This confines all mcp-go translation to the sanctioned adapter
(server/sdk_elicitation_adapter.go), closing anti-pattern #5 on the
elicitation path ahead of New(cfg) -> VMCP (#5437).

Implements changes for issue #5436:
- Add pkg/vmcp/elicitation.go with the domain interface and value types
  (form-mode only; no URL-mode fields)
- Retype DefaultElicitationHandler to the domain requester; security
  validation and the Content any->map assertion are unchanged
- Make sdkElicitationAdapter the sole domain <-> mcp-go translator, with
  an internal SDK seam so translation is unit-testable; copy Meta before
  NewMetaFromMap mutates it and omit _meta when nil
- Regenerate mocks under pkg/vmcp/mocks; drop composer/mocks

* Strengthen elicitation handler timeout and content tests

Addresses stacklok/toolhive#5456 review comments:
- MEDIUM elicitation_handler_test.go (3357216826): add accept case with
  non-map Content asserting it is treated as nil, covering the warn-log
  else branch the #5436 Testing Strategy requires
- MEDIUM elicitation_handler_test.go (3357216877): replace the weak
  timeout_capped_to_max table case with a dedicated test that captures
  the context deadline and asserts it is capped to maxElicitationTimeout,
  so the timeout-bomb protection is actually guarded

55 of 55 new or added lines in 3 files covered. (100.0%)

66461 of 100870 relevant lines covered (65.89%)

63.03 hits per line

Jobs
ID Job ID Ran Files Coverage
1 27023954418.1 05 Jun 2026 03:34PM UTC 747
65.89
GitHub Action Run
Source Files on build 27023954418
  • Tree
  • List 747
  • Changed 4
  • Source Changed 2
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #27023954418
  • 9968da82 on github
  • Prev Build on main (#26952689574)
  • Next Build on main (#27023988877)
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