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

stacklok / toolhive / 26816718324
66%

Build:
DEFAULT BRANCH: main
Ran 02 Jun 2026 11:34AM UTC
Jobs 1
Files 746
Run time 3min
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

02 Jun 2026 11:27AM UTC coverage: 65.924% (-0.02%) from 65.939%
26816718324

push

github

web-flow
Add upgrade-check REST endpoints for workloads (#5408)

* Add upgrade detection for registry workloads

CLI and API users have no way to discover when a newer version of a
registry-sourced MCP server is available; only Studio implements drift
detection, in its frontend. Introduce a backend package that all clients
can consume.

Add pkg/workloads/upgrade with a Checker that compares a running
workload's image tag against its registry entry (semver-aware, with a
string fallback) and reports environment-variable and configuration
(transport / permission-profile / network-isolation) drift. Comparison
degrades safely to "unknown" for :latest, digest refs, repository
changes, and non-registry-sourced workloads, so only a strictly-newer
tag on the same repository yields "upgrade-available".

This is the read-only detection core (RFC THV-0068, phase A); the apply
path, API endpoints, and CLI follow in later changes.

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

* Address review feedback on upgrade detection

- Lowercase an uppercase "V" tag prefix so semver comparison works;
  "V1.2.0" vs "V1.3.0" no longer falls through to undecidable and
  hides a real upgrade.
- Drop the raw provider error from CheckResult.Reason (it is serialized
  into the API response and can leak internal addressing); log it at
  DEBUG and return a fixed string. Same for the CheckAll path.
- Add a defensive default to the comparison switch so an unexpected
  value yields StatusUnknown rather than the least-safe StatusUpToDate.
- Stop reporting network-isolation drift: the registry has no
  network-isolation field, so it fired for every isolated workload
  regardless of the candidate version. Remove the ConfigDrift field
  and the now-unused BoolChange type.

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

* Add upgrade-check REST endpoints for workloads

CLI, Studio, and automation need a single backend source of truth for
upgrade availabi... (continued)

70 of 131 new or added lines in 2 files covered. (53.44%)

11 existing lines in 3 files now uncovered.

65996 of 100109 relevant lines covered (65.92%)

64.4 hits per line

Uncovered Changes

Lines Coverage ∆ File
36
66.04
pkg/api/v1/workloads_upgrade.go
25
21.02
-0.95% pkg/api/v1/workloads.go

Coverage Regressions

Lines Coverage ∆ File
6
20.11
-3.45% pkg/client/manager.go
3
70.0
-3.33% pkg/state/local.go
2
56.68
-0.18% pkg/workloads/manager.go
Jobs
ID Job ID Ran Files Coverage
1 26816718324.1 02 Jun 2026 11:34AM UTC 746
65.92
GitHub Action Run
Source Files on build 26816718324
  • Tree
  • List 746
  • Changed 9
  • Source Changed 3
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26816718324
  • 16ce897e on github
  • Prev Build on main (#26814807150)
  • Next Build on main (#26818362175)
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