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

stacklok / toolhive / 24510354959
68%

Build:
DEFAULT BRANCH: main
Ran 16 Apr 2026 12:37PM UTC
Jobs 1
Files 633
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

16 Apr 2026 12:31PM UTC coverage: 66.003% (-0.007%) from 66.01%
24510354959

push

github

web-flow
Add v0.1 server browse endpoints (#4871)

* Add v0.1 server endpoints and combine registry router

Add upstream-compatible server browse endpoints:
- GET /registry/{name}/v0.1/servers (paginated, searchable)
- GET /registry/{name}/v0.1/servers/{serverName}/versions/latest

Servers are converted from ToolHive types to ServerJSON using
toolhive-core converters. Same pattern as the skills endpoint.

Combine skills and servers into a single RegistryV01Router with
shared helpers (provider accessor, pagination, JSON errors).
Refactor skills handlers to use shared helpers.

Ref: #4199

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

* Regenerate OpenAPI spec for v0.1 server endpoints

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

* Fix pagination overflow: parse limit before computing page cap

The page overflow guard was computed against the default limit (50)
before the actual limit from the query string was parsed. This meant
(page-1)*limit could overflow when both a large page and custom
limit were specified. Fix by parsing both page and limit first,
then computing the cap.

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

* Address review feedback

- Add ErrServerNotFound sentinel and use errors.Is() instead of
  fragile strings.Contains(err.Error(), "not found") pattern
- Wrap server-not-found errors in BaseProvider and APIRegistryProvider
  with the sentinel via fmt.Errorf("%w: ...", ErrServerNotFound, ...)
- Add @Failure 400 Swagger annotation for invalid server name encoding
- Regenerate OpenAPI spec

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

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

119 of 179 new or added lines in 6 files covered. (66.48%)

57322 of 86848 relevant lines covered (66.0%)

62.73 hits per line

Uncovered Changes

Lines Coverage ∆ File
45
57.14
pkg/api/v1/registry_v01_servers.go
13
80.3
pkg/api/v1/registry_v01.go
1
12.71
0.0% pkg/api/server.go
1
28.18
0.0% pkg/registry/provider_api.go
Jobs
ID Job ID Ran Files Coverage
1 24510354959.1 16 Apr 2026 12:37PM UTC 633
66.0
GitHub Action Run
Source Files on build 24510354959
  • Tree
  • List 633
  • Changed 6
  • Source Changed 6
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #24510354959
  • c2a8154c on github
  • Prev Build on main (#24510042617)
  • Next Build on main (#24512472441)
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