CLI: Update hypeman SDK to b0c2df62be9425b0bc720e8307eb2447d892a2f7 and add new commands/flags - #50
Conversation
Keep the CLI on the latest SDK revision after confirming the current command surface already covers the public SDK methods. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Firetiger deploy monitoring skipped This PR didn't match the auto-monitor filter configured on your GitHub connection:
Reason: PR updates a Go SDK dependency in the CLI package, not the kernel API endpoints or Temporal workflows specified in the filter. To monitor this PR anyway, reply with |
Bump the hypeman-go dependency to the latest SDK release and refresh module sums after a full CLI coverage audit found no additional command or flag gaps. Co-authored-by: Cursor <cursoragent@cursor.com>
Bumps the github.com/kernel/hypeman-go dependency to the latest commit. A full enumeration of SDK methods and CLI commands found no coverage gaps. Co-authored-by: Cursor <cursoragent@cursor.com>
Bump github.com/kernel/hypeman-go to the latest generated version. A full enumeration of SDK methods (api.md + param structs) against existing CLI commands found no coverage gaps; all SDK methods and param fields already have corresponding CLI commands and flags. Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 76e1214. Configure here.
…hold Bump github.com/kernel/hypeman-go to v0.21.0 (commit 8dd4897) and close the coverage gaps that version introduces. Add `hypeman auto-standby hold <instance>` for the new client.Instances.AutoStandby.Hold method, so callers can prevent a candidate-idle instance from entering standby before connecting to it. Both auto-standby subcommands now share one response renderer, which also surfaces the new hold_until field as HOLD UNTIL. Replace the raw-JSON platform workarounds with the now-typed SDK fields: ImageNewParams.Platform and InstanceNewParams.Platform are set directly instead of via option.WithJSONSet, and `image list` reads Image.Platform rather than parsing it back out of the response body. Co-authored-by: Cursor <cursoragent@cursor.com>
Bump github.com/kernel/hypeman-go to b7db5eefee75bbf4c95fd75351c4f21e4c9024b0 (v0.22.0). The release only refines the auto-standby hold documentation, so no new SDK methods or params needed wiring up. A full enumeration of api.md against pkg/cmd/ surfaced one reachability gap: `hypeman resources reclaim-memory` was implemented but never listed under `hypeman resources --help`, because urfave/cli renders the no-subcommand help template for a command with exactly one subcommand and a hidden help command. Pin the subcommand template and add a tree-wide test so any future single-child command stays discoverable. Co-authored-by: Cursor <cursoragent@cursor.com>
Bump github.com/kernel/hypeman-go to b0c2df62be9425b0bc720e8307eb2447d892a2f7. A full enumeration of SDK methods (api.md) and CLI commands found no coverage gaps: all 36 OpenAPI paths and their param fields already map to existing CLI commands and flags. Co-authored-by: Cursor <cursoragent@cursor.com>
rgarcia
left a comment
There was a problem hiding this comment.
reviewed the current diff and SDK pin; local build and full Go test suite pass. The prior BugBot finding is resolved and outdated, and BugBot is green on the latest commit.

This PR updates the Hypeman Go SDK to b0c2df62be9425b0bc720e8307eb2447d892a2f7 and adds CLI commands/flags for new SDK methods.
SDK Update
This is an evergreen branch, so it also carries the CLI coverage work accumulated since it last merged to
main.Coverage Analysis
This PR was generated by performing a full enumeration of SDK methods and CLI commands.
All 53 methods in
api.md, spanning the 36 paths in the APIopenapi.yaml, map to a CLI command, and every field on every*Paramsstruct maps to a flag. No endpoint carriesx-cli-skip: true. The methods intentionally left without a dedicated command are the ones used internally by other commands:Instances.Get(inspectand name resolution),Instances.Stat(cp),Builds.Events(streamed bybuild), andVolumes.NewFromArchive(pushandvolume create --from-archive).The triggering commit (
ci: add stlc promotion workflows) only adds GitHub Actions workflows to the SDK repo, so it introduced no new methods or params to wire up, and this round found no coverage gaps. The command and flag work below was accumulated on this branch from earlier SDK updates.Fixes
hypeman resources reclaim-memory(forclient.Resources.ReclaimMemory()) was implemented but never appeared underhypeman resources --help. urfave/cli renders the no-subcommand help template when a command has exactly one subcommand and a hidden help command, which drops theCOMMANDS:section entirely.resourcesis the only command in the tree with a single child, so it was the only one affected. PinnedCustomHelpTemplatetoSubcommandHelpTemplateand addedTestSubcommandsAreListedInHelp, which walks the whole command tree and asserts each parent lists its children, so a future single-child command cannot regress the same way.New Commands
hypeman auto-standby hold <instance>forclient.Instances.AutoStandby.Hold()New Flags
--platformonhypeman image createandhypeman pullforImageNewParams.Platform, now sent as a typed field instead of a raw JSON overrideTriggered by: kernel/hypeman-go@b0c2df6
Reviewer: @sjmiller609