fix: forward Launchable base image - #433
Conversation
|
Additional NemoClaw E2E evidence confirms this is the active failure mode for the same standing Launchable,
The v0.6.331 source trace matches this PR's root cause exactly: This PR remains necessary, and its documented Launchable repair remains separately necessary because the standing Launchable's stored request lacks
The family has advanced since the cited failure: the latest successful producer handoff visible at the time of this comment is run https://github.com/brevdev/nemoclaw-image/actions/runs/30628382825, exact image |
What
Forward
createWorkspaceRequest.imageIdfrom a Launchable response to theworkspace creation request as
baseImage.The regression coverage now checks both the populated
CreateWorkspacesOptions.BaseImagefield and the serializedbaseImageJSONfield.
Why
LaunchableWorkspaceRequestalready deserializes the API'simageId, butapplyLaunchableWorkspaceRequestdid not copy it intoCreateWorkspacesOptions.BaseImage. As a result,brev create --launchablesilently dropped a Launchable's custom VM image and the workspace could boot
from the default image instead.
This surfaced in the NemoClaw staging E2E when the workspace created
successfully but did not contain the image-baked
/etc/nemoclaw/provision.jsonreceipt:Validation
gofmt -d pkg/cmd/gpucreate/gpucreate.go pkg/cmd/gpucreate/gpucreate_test.gogo test ./pkg/cmd/gpucreateBoth ran with Go 1.25.
Manual follow-up after merge
This client fix is necessary but is not sufficient for the current NemoClaw
Launchable because its stored
createWorkspaceRequestdoes not currentlycontain an
imageId.Release a Brev CLI version containing this change.
In the Brev Console or Launchables API, create or update the standing
NemoClaw staging Launchable so its
createWorkspaceRequest.imageIdis:Confirm through the Launchable configuration/API response that
imageIdis present.
brev create --dry-rundoes not currently expose the selectedimage, so it is not sufficient for this check.
Create a disposable workspace using the new CLI release and Launchable.
Verify:
/etc/nemoclaw/provision.jsonexists./opt/nemoclaw-image/NemoClawexists.Update the NemoClaw workflow's pinned Brev CLI version and SHA-256 checksum
to the release containing this fix.
Manually update the NemoClaw repository variable
NEMOCLAW_STAGING_LAUNCHABLE_IDonly after the replacement Launchable haspassed the probe above.
Dispatch the trusted full NemoClaw E2E and verify provisioning, checkout,
test, and cleanup evidence.
This PR intentionally does not change
NEMOCLAW_STAGING_LAUNCHABLE_ID.