Repository navigation
feat(platform-app): add app onboard and explain accounts that haven't finished developer setup - #343
Open
jpage-godaddy wants to merge 4 commits into
Open
jpage-godaddy wants to merge 4 commits into
jpage-godaddy wants to merge 4 commits into
Conversation
…'t finished developer setup Accounts that never accepted the GoDaddy Developer agreements got a raw "GraphQL errors: … No organization found. Complete onboarding first." from `gddy platform app list` (and every other application command), with a fix about GraphQL query syntax. - Add `gddy platform app onboard`, which shows the agreements and completes developer setup. It does nothing when the account is already set up, accepts `--accept-agreements` for scripts, and supports `--dry-run`. - Report the missing-organization failure as `ONBOARDING_REQUIRED` with a fix that points at `gddy platform app onboard`. - Report an environment without an onboarding URL as a `CONFIG_ERROR` that names the variable to set, instead of a bare `ERROR`. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
jpage-godaddy
requested review from
axburgess-godaddy,
jpearlman-godaddy,
mguerrero3-godaddy,
qcai-godaddy,
rts1-godaddy,
sgopalan-godaddy,
smukherjee-godaddy and
wcole1-godaddy
as code owners
October 21, 2026 21:03
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
A new assertion necessarily fails, explicit agreement acceptance still prompts in terminals, and a follow-up lacks required parameter metadata.
3 open issues
What changed in this PR
Adds standalone developer account setup to the application CLI and clearer guidance for accounts that have not completed onboarding.
Changes:
- Adds
platform app onboardwith agreement acceptance and dry-run previews. - Introduces actionable onboarding and missing-configuration errors.
- Adds tests for setup states, command settings, and error mapping.
| File | Description |
|---|---|
| rust/src/platform/app/onboarding/mod.rs | Exports onboarding preview helpers. |
| rust/src/platform/app/onboarding/ensure.rs | Adds previews, completion tracking, and configuration errors. |
| rust/src/platform/app/commands/schemas.rs | Defines onboarding output fields. |
| rust/src/platform/app/commands/onboard.rs | Implements the standalone setup command. |
| rust/src/platform/app/commands/mod.rs | Registers onboarding and updates group help. |
| rust/src/platform/app/client.rs | Maps missing-organization errors to onboarding guidance. |
| rust/src/platform/app/client_tests.rs | Tests missing-organization error mapping. |
| rust/src/error.rs | Adds the onboarding error code, fix, and test. |
Review effort: Balanced
…ely and give its follow-up parameters - Say that `--accept-agreements` skips the prompt only when not running in a terminal; in a terminal the agreements are always shown for confirmation. - Mark every placeholder in the suggested `platform app init` follow-up as a required parameter. - Apply rustfmt to the onboarding fix text. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Say that a dry run only reports whether the account is set up and accepts no agreement, and that checking may start the account's setup record. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…pt in a terminal too Passing `--accept-agreements` is the explicit acceptance, so it now replaces the prompt everywhere it is offered (`app onboard`, `app init` and `app add native-extension`). Previously it only took effect when stdin was not a terminal; in a terminal the agreements were still shown and Enter was required. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Problem
An account that has never accepted the GoDaddy Developer agreements gets this from
gddy platform app list(and any other application command):The message doesn't say what "onboarding" is, and the fix is about GraphQL syntax. Today the only way to finish setup is
platform app init, which needs five unrelated flags before it reaches the agreement prompt.Changes
gddy platform app onboard. Shows the Terms of Use, Privacy Policy and Developer Agreement and completes developer setup on Enter. Does nothing if the account is already set up (it reportsalreadyOnboarded: true).--accept-agreementsaccepts without a prompt, in a terminal or not.--dry-runchecks the account's status and reports what would happen without submitting anything. The help text has a separateAI assistants:note that the user must accept the agreements themselves.ONBOARDING_REQUIRED, with the message "Your GoDaddy account hasn't finished developer setup yet" and a fix ofgddy platform app onboard. It applies to every application command, not justlist.ERRORwith no fix. It is nowCONFIG_ERROR, names the environment, and tells the user which variable to set (e.g.TEST_DEVX_CORE_URL).Notes
--accept-agreementsnow skips the agreement prompt in a terminal as well, for every command that offers it (app onboard,app init,app add native-extension). Before, it only took effect when stdin was not a terminal.ValidationError, so the new error is recognized by the message text ("Complete onboarding first"). If the service rewords it, the old generic error comes back. A dedicated error code from the service would make this robust.onboardwork for brand-new accounts.--dry-runtherefore isn't completely free of server-side effects for such an account.Tests
ONBOARDING_REQUIREDwith theapp onboardfix.🤖 Generated with Claude Code