fix: preserve auth profiles for one-off model overrides · openclaw/openclaw@743413a
steipete
·
2026-05-10
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -845,6 +845,7 @@ async function agentCommandInternal(
|
845 | 845 | model = allowedInitialSelection.model; |
846 | 846 | providerForAuthProfileValidation = provider; |
847 | 847 | |
| 848 | +let sessionEntryForAttempt = sessionEntry; |
848 | 849 | if (sessionEntry) { |
849 | 850 | const authProfileId = sessionEntry.authProfileOverride; |
850 | 851 | if (authProfileId) { |
@@ -868,7 +869,14 @@ async function agentCommandInternal(
|
868 | 869 | resolveProviderIdForAuth(candidateProvider, { config: cfg, workspaceDir }), |
869 | 870 | ); |
870 | 871 | if (!profile || !acceptedAuthProviders.includes(profileAuthProvider ?? "")) { |
871 | | -if (sessionStore && sessionKey) { |
| 872 | +if (hasExplicitRunOverride) { |
| 873 | +sessionEntryForAttempt = { |
| 874 | + ...entry, |
| 875 | +authProfileOverride: undefined, |
| 876 | +authProfileOverrideSource: undefined, |
| 877 | +authProfileOverrideCompactionCount: undefined, |
| 878 | +}; |
| 879 | +} else if (sessionStore && sessionKey) { |
872 | 880 | await clearSessionAuthProfileOverride({ |
873 | 881 | sessionEntry: entry, |
874 | 882 | sessionStore, |
@@ -1034,7 +1042,7 @@ async function agentCommandInternal(
|
1034 | 1042 | modelFallbacksOverride: effectiveFallbacksOverride, |
1035 | 1043 | originalProvider: provider, |
1036 | 1044 | cfg, |
1037 | | - sessionEntry, |
| 1045 | +sessionEntry: sessionEntryForAttempt, |
1038 | 1046 | sessionId, |
1039 | 1047 | sessionKey, |
1040 | 1048 | sessionAgentId, |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。