[cockpit] Add SSH-key onboarding step before VM-request UI (D-23) #4
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Workspace decision D-23 locks: end-users own their SSH keys via forge.ourworld.tf themselves; deployer reads them at provision time and forwards openssh strings to
ComputeService.deploy_vm(Track D D4 landed at s142). The deployer'sprovision_vmRPC errors with a clear -32602 + actionable URL if the user has zero SSH keys uploaded:That error message is the safety net. For onboarding UX, cockpit should catch this before the user clicks "Provision VM" rather than after.
Suggested scope
One-screen "Your SSH key" page in the cockpit onboarding flow, between "Set your Forge token" (already shipped per D-16) and "Request your VM":
ForgeClient::list_user_ssh_keys(username)(admin scope, deployer-side proxy, OR use the user's owncockpit/USER_FORGE_TOKENagainstGET /user/keys) to check whether the user already has at least one pubkey.https://forge.ourworld.tf/user/settings/keysin a new tab (Forgejo's XFO blocks iframe, same L-08 pattern we saw at s136).Why now
The D-23 alt-2 design assumes the user is competent with SSH and already has a key — true for ~99% of dev-targeted Hero OS users. The 1% bounce on the deployer error message; this onboarding gate would catch them ~30s earlier with friendlier copy + a direct link.
Not in scope:
Related
Not blocking. Filing for onboarding polish ahead of F1 (first deployer-provisioned VM with a real user).
— mik-tf