-
-
Notifications
You must be signed in to change notification settings - Fork 69.5k
[Bug]: openclaw status / openclaw models status --json report stale default model from removed provider #38880
Description
Bug type
Behavior bug (incorrect output/state without crash)
Summary
Summary
openclaw status and openclaw models status --json can continue reporting a stale default model from a provider that has already been removed from config.
In my case, both commands still report:
anthropic/claude-opus-4-6
even though:
anthropic has already been removed from ~/.openclaw/openclaw.json
regenerated ~/.openclaw/agents/main/agent/models.json no longer contains anthropic
active runtime sessions are already using other models successfully (for example n1n/gpt-5.4)
Environment
OpenClaw: 2026.3.2
OS: macOS
Gateway service: LaunchAgent
Reproduction
Configure custom providers under models.providers
Previously have Anthropic-related provider/model usage in the environment
Later remove explicit anthropic provider from ~/.openclaw/openclaw.json
Restart gateway
Confirm runtime sessions are using a different provider/model successfully
Run:
openclaw status
openclaw models status --json
Actual behavior
openclaw status
Still shows a stale summary like:
Sessions 6 active · default claude-opus-4-6 (200k ctx)
openclaw models status --json
Still reports:
{
"defaultModel": "anthropic/claude-opus-4-6",
"resolvedDefault": "anthropic/claude-opus-4-6",
"auth": {
"missingProvidersInUse": ["anthropic"]
}
}
Expected behavior
Once a provider has been removed from config and regenerated model state no longer contains it:
openclaw status should stop reporting that removed provider's model as the default summary model
openclaw models status --json should stop reporting it as:
defaultModel
resolvedDefault
At minimum, if this comes from historical session metadata, that should be surfaced separately instead of looking like the current effective default.
What I verified
~/.openclaw/openclaw.json is valid JSON
anthropic is no longer present in models.providers
regenerated ~/.openclaw/agents/main/agent/models.json no longer contains anthropic
current active runtime sessions are already using non-Anthropic models successfully
there is at least one older recorded session still associated with claude-opus-4-6
Suspected cause
Looks like runtime model selection and status/model-summary resolution are using different sources of truth.
Possibly:
stale session metadata
stale summary/default-model cache
summary logic preferring an old “in use” model reference over current effective config
Notes
This seems similar in spirit to other model catalog / display-layer mismatches where runtime behavior is correct but status/UI output is stale or misleading.
Steps to reproduce
Reproduction
Configure custom providers under models.providers
Previously have Anthropic-related provider/model usage in the environment
Later remove explicit anthropic provider from ~/.openclaw/openclaw.json
Restart gateway
Confirm runtime sessions are using a different provider/model successfully
Run:
openclaw status
openclaw models status --json
Expected behavior
Expected behavior
Once a provider has been removed from config and regenerated model state no longer contains it:
openclaw status should stop reporting that removed provider's model as the default summary model
openclaw models status --json should stop reporting it as:
defaultModel
resolvedDefault
At minimum, if this comes from historical session metadata, that should be surfaced separately instead of looking like the current effective default.
Actual behavior
ctual behavior
openclaw status
Still shows a stale summary like:
Sessions 6 active · default claude-opus-4-6 (200k ctx)
openclaw models status --json
Still reports:
{
"defaultModel": "anthropic/claude-opus-4-6",
"resolvedDefault": "anthropic/claude-opus-4-6",
"auth": {
"missingProvidersInUse": ["anthropic"]
}
}
OpenClaw version
2026.3.2
Operating system
macOS Tahoe 26.3
Install method
No response
Logs, screenshots, and evidence
Impact and severity
No response
Additional information
No response