fix(anthropic): add Claude Haiku 4.5 to static model catalog#91796
fix(anthropic): add Claude Haiku 4.5 to static model catalog#91796XuZehan-iCenter wants to merge 2 commits into
Conversation
Add claude-haiku-4-5-20251001 to both the anthropic and claude-cli provider model lists in the static model catalog, along with haiku-4.5 and haiku aliases. Without this entry, the model resolver returns 'Unknown model' because discovery mode is 'static' and the catalog was missing Haiku entirely. Fixes openclaw#90088
|
Codex review: needs real behavior proof before merge. Reviewed June 11, 2026, 4:54 AM ET / 08:54 UTC. Summary PR surface: Source +26, Tests +72. Total +98 across 2 files. Reproducibility: yes. from source with high confidence: current main uses static discovery for both providers and lacks the dated Haiku row, matching the linked issue's Review metrics: 2 noteworthy metrics.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Security Review findings
Review detailsBest possible solution: Keep the provider-local catalog change, correct the test import attribute, verify the model capabilities against Anthropic's official contract, and show a redacted configured OpenClaw invocation resolving Haiku 4.5. Do we have a high-confidence way to reproduce the issue? Yes, from source with high confidence: current main uses static discovery for both providers and lacks the dated Haiku row, matching the linked issue's Is this the best way to solve the issue? Mostly yes: updating the owning plugin manifest is the narrowest maintainable fix, but the test syntax must be corrected and the upstream capability metadata and configured user path still need proof. Full review comments:
Overall correctness: patch is incorrect AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 0c4fc0a2e3b3. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +26, Tests +72. Total +98 across 2 files. View PR surface stats
Acceptance criteria:
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
|
00cb06f to
b3d264a
Compare
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
…zation ClawSweeper P2 review: the PR added haiku-4.5 and haiku short aliases, but claude-haiku-4-5 (rolling ref) and claude-haiku-4.5 (dotted ref) were not mapped to the dated catalog row. Static catalog lookup does exact match after normalization, so these refs would fail to resolve. Add both rolling and dotted full-form aliases to the anthropic normalization table so all user-facing Haiku refs resolve correctly. Fixes openclaw#90088
b3d264a to
4d6bffb
Compare
|
ClawSweeper review: addressed — replaced the bespoke Python script with a focused Vitest test that exercises the real OpenClaw normalization path. Real behavior proof New test file:
Test run (no mocking, no simulator): Coverage:
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
Summary
claude-haiku-4-5-20251001to both theanthropicandclaude-cliprovider model lists in the static model catalog.haiku-4.5,haiku,claude-haiku-4-5, andclaude-haiku-4.5aliases inmodelIdNormalization.staticand the catalog was missing Haiku entirely.Change Type
Scope
Linked Issue/PR
Real behavior proof (required for external PRs)
Behavior or issue addressed:
anthropic/claude-haiku-4-5andanthropic/claude-haiku-4-5-20251001fail withmodel_not_foundbecause the static model catalog inextensions/anthropic/openclaw.plugin.jsonhad no Haiku entry. Additionally,claude-haiku-4-5(rolling ref) andclaude-haiku-4.5(dotted ref) were not mapped to the dated catalog row, so they would still fail after adding only short aliases.Real environment tested: OpenClaw source checkout on PR head
00cb06f613d, Node.js v24.16.0, Linux WSL2.Exact steps or command run after this patch:
Evidence after fix (alias normalization):
Observed result after fix:
claude-haiku-4-5-20251001now appears in both claude-cli and anthropic provider model lists with reasoning: true, contextWindow: 200000, maxTokens: 64000. All four alias forms (haiku,haiku-4.5,claude-haiku-4-5,claude-haiku-4.5) resolve to the dated model id. The rolling and dotted refs that were previously unmapped now resolve correctly.What was not tested: Live API call to
anthropic/claude-haiku-4-5(requires real Anthropic API key). The fix is verified through alias normalization simulation and JSON structure validation.Root Cause
In
extensions/anthropic/openclaw.plugin.json, the model catalog lists for bothanthropicandclaude-cliproviders contained Opus 4.6/4.7/4.8 and Sonnet 4.6 but had no Haiku entry. SincemodelCatalog.discovery.anthropic = "static", there is no runtime discovery to fill the gap.Additionally, the initial PR only added short aliases (
haiku,haiku-4.5) but missed the rolling (claude-haiku-4-5) and dotted (claude-haiku-4.5) full-form refs that users and test suites actually use. Static catalog lookup compares exact normalized IDs, so these refs would still fail after the first patch.Fix
Added
claude-haiku-4-5-20251001entry to both provider model lists (mirroring Sonnet 4.6 specs), plus four aliases inmodelIdNormalization:haiku->claude-haiku-4-5-20251001(shortest)haiku-4.5->claude-haiku-4-5-20251001(short form)claude-haiku-4-5->claude-haiku-4-5-20251001(rolling ref, NEW)claude-haiku-4.5->claude-haiku-4-5-20251001(dotted ref, NEW)This ensures all user-facing Haiku refs resolve correctly through the static catalog.