Peter Steinberger
1b6c42d1f0
refactor(openai): unify ChatGPT auth identity derivation in plugin SDK ( #126544 )
...
The OpenAI ChatGPT auth profile identity was derived in two drifted copies:
the plugin-sdk helper (used by Codex/Hermes import migrations) fell back to
bare JWT sub and leaked the workspace accountId into the user subject, while
the openai extension copy (used by login/refresh) composed the OIDC-stable
iss|sub pair and honored the credential email fallback.
Fold the extension's chain into the canonical SDK helper (credential-email
fallback, iss|sub before bare sub, no workspace-id subject), delete the
extension copy, and move all extension call sites onto
openclaw/plugin-sdk/provider-auth. Cross-checked against Codex OSS
(codex-rs/login/src/token_data.rs): chatgpt_account_id is workspace identity,
never user identity. No doctor migration: the divergent fallback branch only
fires for tokens lacking every user-id claim and email, which real ChatGPT
tokens do not produce, so no shipped install holds divergent keys from it.
2026-08-19 23:48:43 -07:00
Vincent Koc
18e107f494
fix(plugins): report request timeouts for stalled response bodies ( #116166 )
...
* fix(openai): preserve device-code request timeouts
* fix(msteams): preserve SharePoint upload timeouts
* fix(qqbot): preserve channel API request timeouts
2026-07-30 10:03:39 +08:00
lanyoung
ae8556fed3
fix(openai): retry transient Codex device polling failures ( #114094 )
...
* fix(openai): retry transient Codex device polling failures
* fix(openai): retry transient device polling errors
Co-authored-by: lanyoung <1014080235@qq.com >
Co-authored-by: loong954 <yuan.longhui@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: loong954 <yuan.longhui@xydigit.com >
2026-07-27 04:31:48 -04:00
Alix-007
6bd15d00c4
fix(openai): prevent device-code login hangs on stalled requests ( #109494 )
...
* fix(openai): bound device code requests
* fix(openai): preserve proxy routing for device code auth
* test(openai): simplify device proxy assertions
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 22:26:56 -07:00
Peter Steinberger
8310c565e0
feat(onboarding): add provider sign-in ( #104502 )
...
* feat(onboarding): add provider sign-in flows
* fix(oauth): keep callback compatibility
* fix(onboarding): reconcile lost auth outcomes
* fix(onboarding): lock auth cancellation at commit
* fix(onboarding): close provider auth lifecycle gaps
* fix(onboarding): make terminal auth failures dismissable
* fix(onboarding): satisfy native app checks
* fix(onboarding): reconcile absent auth sessions
* fix(onboarding): bound provider auth sessions
* fix(onboarding): open provider auth links safely
* test(onboarding): use scanner-safe auth fixtures
* revert: keep established onboarding auth fixtures
* fix(onboarding): close provider auth cancellation gaps
* fix(gateway): retain uncollected wizard results
* fix(onboarding): bind provider reconciliation attempt
* fix(i18n): avoid guessing moved string identities
* style(onboarding): normalize remote auth choices efficiently
* fix(protocol): refresh optional provider auth choices
* test(gateway): cover provider auth dispatch order
* refactor(macos): split onboarding setup support
* fix(macos): refresh merged native checks
2026-07-11 13:00:17 -07:00
Vincent Koc
59a93a817f
fix(openai): bound device code auth bodies
2026-06-19 20:43:17 +02:00
Peter Steinberger
96e5812426
docs: document medium extension sources
2026-06-04 21:33:54 -04:00
Peter Steinberger
22cb7fb6b7
chore(lint): enable no-promise-executor-return
2026-05-31 23:06:13 +01:00
Peter Steinberger
4c33aaa86c
refactor: unify OpenAI provider identity ( #88451 )
...
* refactor: unify OpenAI provider identity
* refactor: move legacy oauth sidecar doctor helpers
* test: align OpenAI fixtures after rebase
* test: clean OpenAI provider unification
* fix: finish OpenAI provider cleanup
* fix: finish OpenAI cleanup follow-through
* fix: finish OpenAI CI cleanup
2026-05-31 00:29:44 +01:00