mirror of
https://github.com/openclaw/openclaw.git
synced 2026-10-03 09:39:25 +00:00
Related: #136257 ## What Problem This Solves Fixes an issue where activating a verified replacement sign-in left existing and fresh chats using the old credential, even after a restart. An operator report on September 11 also found misleading model-access feedback, a “Replace key” action that could add an account, and missing command-line activation after unattended setup. ## Why This Change Was Made The shared credential selector now resolves the activated account for normal replies, `/btw` side questions, and worker inference, preserving explicit account choices and different-model behavior. Duplicate caller logic is removed. Activation also compares normalized runtime settings consistently, so omitted optional model fields do not cause a false connection-change error after saving. The existing setup owner also serves the new `openclaw models auth activate` command; both activation prompts default to Yes after verification. Saved model access is reported separately from application by the running Gateway, and the provider-wide key action is labeled accurately. ## User Impact - Automatic chats and `/btw` side questions use the activated account; explicit account pins retain precedence. - Unattended replacement setup prints a command that tests and activates the saved sign-in. - Enter accepts a successfully verified connection. - Saved-but-unapplied settings include recovery guidance instead of a failed-save message. ## Evidence - Real Gateway and recording-provider requests: old credential before; replacement afterward in existing and fresh chats. Explicit pins and a different model retain their expected account selection. - Real Telegram `/btw`: the activated replacement handles an existing automatic chat, while an explicit old-account pin still uses the old account. The same flow first exposed a false activation error for sparse saved model settings; the corrected flow succeeds. - Independent public CLI/browser validation confirms the printed activation command, Enter-to-activate, and the key editor. - Real Telegram Test Server: “Show all” saves the choice in both cases; disabled reload reports saved/unconfirmed, while enabled reload reports visible models. - The initial fixes passed 377 focused tests across nine files. The caller correction passed 309 tests across five files, including `/btw`, normal replies, worker inference, and person-linked account pins. The configured-account regression fails on the pinned base. A further 17 activation/acknowledgement tests pass, including sparse saved settings and rejection of real concurrent changes. - All 17 sanitized operator-config shapes reach Gateway readiness. The Tailscale-dependent fixture uses the supported per-run exposure override on the Linux test host; Tailscale Serve itself is not claimed. - Synthetic provider credentials only. No database, migration, configuration-key, or protocol changes in this PR. | Before | After | | --- | --- | |  |  | Captures are cropped to the changed control and exclude account identifiers. Additional catalog check: sign-in completes through the real xAI plugin against a simulated provider, but its existing endpoint metadata blocks live OAuth catalog discovery. That plugin is unchanged here. New-model discovery, first-account onboarding, and real vendor entitlement are not claimed by this PR. Co-authored-by: Ayaan Zaidi <hi@obviy.us> |
||
|---|---|---|
| .. | ||
| .generated | ||
| .i18n | ||
| announcements | ||
| assets | ||
| automation | ||
| channels | ||
| ci | ||
| cli | ||
| concepts | ||
| diagnostics | ||
| gateway | ||
| help | ||
| images | ||
| install | ||
| maturity | ||
| nodes | ||
| platforms | ||
| plugins | ||
| providers | ||
| reference | ||
| releases | ||
| security | ||
| snippets/plugin-publish | ||
| specs | ||
| start | ||
| tools | ||
| web | ||
| agent-runtime-architecture.md | ||
| AGENTS.md | ||
| auth-credential-semantics.md | ||
| ci.md | ||
| CLAUDE.md | ||
| date-time.md | ||
| docs.json | ||
| docs_map.md | ||
| index.md | ||
| logging.md | ||
| nav-tabs-underline.js | ||
| network.md | ||
| openclaw-agent-runtime.md | ||
| prose.md | ||
| style.css | ||
| vps.md | ||
| whatsapp-openclaw.jpg | ||