Repository navigation
feat(auth): upgrade cli-engine to 0.10.1; log in with an ephemeral callback port and OIDC scopes - #314
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
One test still uses a removed API, and explicit requests for the new OIDC scopes are rejected by local validation.
2 open findings
What changed in this PR
Upgrades cli-engine to support ephemeral OAuth callback ports and OIDC profile scopes while adapting affected APIs.
Changes:
- Enables ephemeral loopback callback ports and adds default
openid/profilescopes. - Migrates pagination construction to
PaginationConfig::new. - Migrates most rendering tests to
preview_human_view.
| File | Description |
|---|---|
rust/src/scopes.rs |
Registers OIDC scopes. |
rust/src/platform/app/commands/list.rs |
Updates pagination construction. |
rust/src/platform/app/commands/init.rs |
Updates rendering test. |
rust/src/platform/actions/mod.rs |
Updates pagination construction. |
rust/src/environments/mod.rs |
Adds default OIDC scopes. |
rust/src/email/list.rs |
Updates pagination construction. |
rust/src/domain/suggest.rs |
Updates rendering test. |
rust/src/domain/quote.rs |
Updates rendering tests. |
rust/src/domain/list.rs |
Updates pagination construction. |
rust/src/domain/available.rs |
Updates rendering tests. |
rust/src/dns/set/outcome.rs |
Updates rendering test. |
rust/src/dns/list.rs |
Updates pagination construction. |
rust/src/dns/delete.rs |
Updates rendering test. |
rust/src/dns/add.rs |
Updates rendering test. |
rust/src/auth.rs |
Enables ephemeral callback ports. |
rust/src/api/search.rs |
Updates pagination construction. |
rust/src/api/response.rs |
Updates pagination construction. |
rust/src/api/parameter.rs |
Updates pagination construction. |
rust/src/api/operation.rs |
Removes obsolete API reference. |
rust/Cargo.toml |
Upgrades cli-engine. |
rust/Cargo.lock |
Locks upgraded dependencies. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
At a glance this looks great, I'd love to see the default values hidden if they aren't overridden (env, provider) and have the |
2295789 to
3780ab1
Compare
|
@kperkins-godaddy I've created a separate Jira ticket to allow |
…llback port and OIDC scopes Login now listens for the OAuth callback on an OS-assigned loopback port instead of the fixed port 7443, so it no longer fails when that port is already in use. It also requests the standard `openid` and `profile` scopes so the identity token carries profile claims. Upgrading to cli-engine 0.10.1 requires two source changes: pagination settings are built with `PaginationConfig::new`, and tests render views through `preview_human_view`. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
`gddy auth login --scope openid` (or `profile`) was rejected locally as an unsupported scope even though both are now requested by default. Scope validation and the registry coverage test now use a shared `DIRECTIVES` list of standalone scopes. Also moves the import-result rendering test to `preview_human_view`, completing the cli-engine 0.10.1 migration. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
3780ab1 to
7d76689
Compare


Summary
gddy auth loginnow listens for the OAuth callback on an OS-assigned loopback port instead of the fixedlocalhost:7443, so login no longer fails when that port is taken.openidandprofilescopes, so the identity token carries profile claims.gddy auth login --scope openid/--scope profilepass local scope validation; standalone scopes are tracked in a sharedscopes::DIRECTIVESlist.cli-enginefrom 0.9.5 to 0.10.1, which provides both of the above, and adapts to its breaking changes:PaginationConfigis now#[non_exhaustive], so list commands build it withPaginationConfig::new.render_human_with_viewis no longer exported, so tests render views withpreview_human_view.Test plan
cargo check --workspacecargo clippy --workspace -- -D warningscargo test --workspacecargo fmt --check./rust/scripts/check-module-size.shgddy auth loginagainst an environment whose OAuth client has the new scopes and redirect registered🤖 Generated with Claude Code