fix(oauth): keep the Kiro profileArn on IAM Identity Center logins (#10725)

Merged via merge-train (release/v3.8.50, batch1 2026-08-20) — static gates (typecheck/file-size/complexity/cognitive/changelog) green on the combined tree; test:unit reds observed in the boarded run were verified pre-existing on the pure release tip (unrelated flake), not caused by this PR. Thanks for the contribution!
This commit is contained in:
Michael YC JO
2026-08-20 18:29:08 +09:00
committed by GitHub
parent 08f23d0d0d
commit 83c77fb0bf
2 changed files with 80 additions and 1 deletions

View File

@@ -430,13 +430,17 @@ export default function OAuthModal({
const verifyUrl = data.verification_uri_complete || data.verification_uri;
if (typeof verifyUrl === "string" && verifyUrl) window.open(verifyUrl, "oauth_verify");
// Start polling - pass extraData for Kiro (contains _clientId, _clientSecret)
// Start polling - pass extraData for Kiro (contains _clientId, _clientSecret).
// _authMethod must be forwarded too: pollToken falls back to "builder-id" without it,
// which makes postExchange skip the Q Developer profile lookup. An IdC connection then
// gets persisted with no profileArn and every usage call returns 403.
const extraData =
provider === "kiro" || provider === "amazon-q"
? {
_clientId: data._clientId,
_clientSecret: data._clientSecret,
_region: data._region,
_authMethod: data._authMethod,
}
: provider === "ghe-copilot" && gheUrl.trim()
? { gheUrl: gheUrl.trim() }