Skip to content

CLI: Update Hypeman Go SDK to da50c337d8e3c05c89a07e9b0b25636f1b50e526 - #68

Open
kernel-internal[bot] wants to merge 5 commits into
mainfrom
cli-coverage-update
Open

kernel-internal[bot] wants to merge 5 commits into
mainfrom
cli-coverage-update

Conversation

@kernel-internal

@kernel-internal kernel-internal Bot commented Sep 2, 2026 •

Copy link
Copy Markdown
Contributor

This PR updates the Hypeman Go SDK dependency to the latest version.

SDK Update

  • Updated hypeman-go to da50c337d8e3c05c89a07e9b0b25636f1b50e526

Coverage Analysis

A full enumeration of SDK methods and CLI commands was performed. No coverage gaps were found.

All 63 methods in api.md have a CLI command, and every field of every *Params struct (including nested param types such as IngressRuleParam, HealthCheckParam, VolumeMountParam, AutoStandbyPolicyParam, SnapshotCompressionConfigParam, MemoryReclaimRequestParam and CreatePushRequestParam) maps to an existing flag, positional argument, or mount-spec segment. openapi.yaml marks no endpoint with x-cli-skip, so nothing was excluded on that basis. client.Instances.Get, client.Instances.Stat, client.Volumes.NewFromArchive, client.Health.Check, client.Instances.Logs and client.Builds.Events are reached internally or through streaming variants, as documented in the mapping guide.

The API surface is unchanged by this bump: da50c33 differs from the previously pinned 134587a only in go.mod and go.sum. Both report configured_endpoints: 63 with an identical method list, and da50c33 is the merge of the 2026-10-07 vulnerability remediation, which carries transitive dependency updates only.

Still pinned to main, so two generated symbols remain absent

As with the previous bump, this pin is a main commit and therefore does not include the "Windows hypervisor primitives" generation that lives on the SDK's next branch. Two symbols the CLI needs still do not exist in the generated bindings:

Missing symbol Used by
InstanceLogsParamsSourceSwtpm hypeman logs --source swtpm
InstanceGPU.DevicePath formatGPU in hypeman ps

openapi.yaml on main still specifies both (the source enum is [app, vmm, hypeman, swtpm], and device_path is on the GPU schema), so the API supports them and only the generated bindings lag. The existing workarounds on this branch are therefore retained unchanged:

  • source is a string-backed enum, so the local instanceLogsSourceSwtpm constant serializes identically.
  • device_path arrives in JSON.ExtraFields, so formatGPU decodes it from the raw JSON.

Both are commented at the call site and should return to typed access once next merges to main.

Verification

go build ./..., go vet ./... and go test ./... all pass. Because go mod tidy pruned 100+ now-unneeded go.sum entries, cross-compilation was also checked for windows/amd64, darwin/arm64 and linux/arm64, and go mod verify reports all modules verified.

This branch also carries a merge of main (resolving a go.sum conflict). History was preserved rather than rebased, so no force push was needed and the earlier work on the branch is intact.

Triggered by: kernel/hypeman-go@da50c33
Reviewer: @ulziibay-kernel

Bumps github.com/kernel/hypeman-go to
v0.28.1-0.20260902045311-0872a65a3733, which integrates vendor VFIO
vGPUs into the instance lifecycle.

The SDK now documents InstanceGPU.MdevUuid as populated on mdev hosts
only, and adds InstanceGPU.DevicePath for the sysfs path of an assigned
vGPU device. `hypeman ps` gated its GPU column on MdevUuid alone, so an
instance with a vendor VFIO vGPU and no profile name rendered as "-".
formatGPU now also checks DevicePath.

A full enumeration of api.md methods and CLI commands found no other
coverage gaps: every SDK method has a CLI command and every param field
has a corresponding flag.

Co-authored-by: Cursor <cursoragent@cursor.com>
@kernel-internal kernel-internal Bot changed the title CLI: Update hypeman SDK to 0872a65a3733c6bfcc7449222cc4bd28bba43807 and add new commands/flags CLI: Update Hypeman Go SDK to 0872a65a3733c6bfcc7449222cc4bd28bba43807 Sep 2, 2026
Bumps github.com/kernel/hypeman-go to
v0.28.1-0.20260902143136-e6c2b7bc0171, which adds the "swtpm" value to
InstanceLogsParamsSource as part of the Windows hypervisor primitives.

Teaches `hypeman logs --source` about swtpm and validates the flag up
front instead of forwarding an arbitrary string to the API, matching the
parseInstanceWaitState / parseSnapshotTargetHypervisor pattern.

Co-authored-by: Cursor <cursoragent@cursor.com>
@kernel-internal kernel-internal Bot changed the title CLI: Update Hypeman Go SDK to 0872a65a3733c6bfcc7449222cc4bd28bba43807 CLI: Update hypeman SDK to e6c2b7bc0171807b2c891a26e9ab4f4bb786072b and add new commands/flags Sep 2, 2026
kernel-internal Bot and others added 2 commits October 1, 2026 16:10
Co-authored-by: Cursor <cursoragent@cursor.com>

# Conflicts:
#	go.sum
Bumps github.com/kernel/hypeman-go to
v0.28.1-0.20261001160305-134587a222ac, which carries the SDK's 2026-09-30
vulnerability remediation.

This commit is on main, whereas the branch previously pinned e6c2b7b from
the SDK's next branch. The Windows hypervisor primitives generated there
are therefore absent, dropping InstanceLogsParamsSourceSwtpm and
InstanceGPU.DevicePath. Both values are still specified by the API, so
rather than regress `hypeman logs --source swtpm` and the vendor VFIO
vGPU column in `hypeman ps`, read them without the generated bindings:
the log source is a string-backed enum, and device_path arrives in
JSON.ExtraFields. Both can go back to typed access once next lands on
main.

Co-authored-by: Cursor <cursoragent@cursor.com>
@kernel-internal kernel-internal Bot changed the title CLI: Update hypeman SDK to e6c2b7bc0171807b2c891a26e9ab4f4bb786072b and add new commands/flags CLI: Update Hypeman Go SDK to 134587a222aca6307bb75dd0dbd78bf3f604c114 Oct 1, 2026

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 22e9c31. Configure here.

Comment thread go.mod
github.com/charmbracelet/lipgloss v1.1.0
github.com/charmbracelet/x/term v0.2.1
github.com/docker/docker v28.5.2+incompatible
github.com/docker/docker v28.5.3-0.20260325120914-0afb41ce194c+incompatible

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Insufficient docker dependency pin

Medium Severity

go.mod now pins github.com/docker/docker to a pseudo-version instead of upgrading go-containerregistry. That keeps the old docker client on the graph, so a pin in this range may not include the docker cp fix for GHSA-rg2x-37c3-w2rh.

Fix in Cursor Fix in Web

Triggered by learned rule: Prefer upgrading go-containerregistry over docker/docker replace pins

Reviewed by Cursor Bugbot for commit 22e9c31. Configure here.

Co-authored-by: Cursor <cursoragent@cursor.com>
@kernel-internal kernel-internal Bot changed the title CLI: Update Hypeman Go SDK to 134587a222aca6307bb75dd0dbd78bf3f604c114 CLI: Update Hypeman Go SDK to da50c337d8e3c05c89a07e9b0b25636f1b50e526 Oct 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants