fix(models): bound /models and models list catalog loading#92247
Conversation
|
Codex review: needs real behavior proof before merge. Reviewed June 12, 2026, 9:09 AM ET / 13:09 UTC. Summary PR surface: Source +290, Tests +340. Total +630 across 15 files. Reproducibility: unclear. The review failed before ClawSweeper could establish a reproduction path. Review metrics: none identified. Stored data model Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Risk before merge
Maintainer options:
Next step before merge
Review detailsBest possible solution: Retry the Codex review after fixing the execution failure. Do we have a high-confidence way to reproduce the issue? Unclear. The review failed before ClawSweeper could establish a reproduction path. Is this the best way to solve the issue? Unclear. Retry the review first so ClawSweeper can evaluate the actual issue and fix direction. AGENTS.md: unclear because the file could not be read completely. Codex review notes: model internal, reasoning high; reviewed against 0fc5a57a3440. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +290, Tests +340. Total +630 across 15 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
2776e4a to
f73bfe2
Compare
Mantis Telegram Desktop ProofSummary: Mantis captured native Telegram Desktop before/after GIF evidence with Convex-leased Telegram credentials.
Motion-trimmed clips: |
Co-authored-by: samson1357924 <[email protected]>
|
Land-ready verification for
Measured default Known proof gap: Windows timing and a live Telegram button-click timing capture were not rerun for this exact rewritten commit. The command/gateway paths and real official-provider tool calling were exercised directly. |




Summary
/modelsandopenclaw models listbrowsing to configured/read-only discovery; explicitallbrowsing retains full provider discovery.Verification
node scripts/run-vitest.mjs src/agents/model-provider-auth.test.ts src/auto-reply/reply/commands-models.test.ts src/agents/model-catalog-browse.test.ts src/commands/models/list.rows.test.ts src/commands/models.list.e2e.test.ts src/agents/model-runtime-aliases.test.ts src/gateway/server-methods/models.test.ts(116 tests)node scripts/run-vitest.mjs extensions/openai/openai-provider.test.ts extensions/anthropic/index.test.ts src/agents/anthropic-transport-stream.test.ts src/llm/providers/openai-responses-shared.test.ts src/llm/providers/openai-completions.test.ts src/llm/providers/openai-chatgpt-responses.test.ts(187 tests)node scripts/run-tsgo.mjs -p tsconfig.core.json --incremental --tsBuildInfoFile .artifacts/tsgo-cache/core.tsbuildinfonode scripts/run-tsgo.mjs -p test/tsconfig/tsconfig.core.test.json --incremental --tsBuildInfoFile .artifacts/tsgo-cache/core-test.tsbuildinfopnpm buildcheck:changed:run_ac95d2f9c585run_c417429409c0gpt-5.4-miniclaude-sonnet-4-6Real behavior proof
Behavior addressed: Default model browsing repeatedly performed full plugin/provider discovery, causing multi-second to minute-scale
/modelsandmodels listlatency on large installations.Real environment tested: macOS source checkout plus AWS Linux Docker gateway E2E, using real OpenAI and Anthropic API credentials.
Exact steps or command run after this patch: Repeated
node openclaw.mjs models list --json; exercised gateway-stylebuildModelsProviderDatawith a loaded metadata snapshot; ran the AWS Docker OpenAI tools E2E and direct forced tool calls against both official APIs.Evidence after fix: Default CLI runs completed in 1.42-1.73 seconds versus 6.15-6.71 seconds before the rewrite. Gateway-style browsing completed in 4.265 seconds cold and 0.382-0.406 seconds warm. Remote changed gate and Docker tool E2E both exited successfully.
Observed result after fix: Default browsing avoids cold full discovery, explicit
allstill discovers the full catalog, configured provider rows keep provider normalization, and official OpenAI/Anthropic tool calling remains functional.What was not tested: Windows timing and a live Telegram button-click timing capture for this exact rewritten commit.