Reproduced on main a12d6ed942, Linux web dev app, Claude Code 2.1.303, with isolated Claude settings containing "maxEffortLevel":"xhigh".
Selected Claude Haiku 5.5 → Max → sent “Reply with just OK. Do not use tools.” The turn returned OK and the composer retained Max. The provider transcript recorded query.open with "effort":"max".
A follow-up through the same real app, directed to a local API recorder, received:
| 1 | {"path":"/v1/messages?beta=true","model":"claude-haiku-5-5","output_config":{"effort":"xhigh"}} |
The recorder deliberately returned HTTP 400 after capturing the request; the composer still displayed Max. A separate Claude CLI --effort max probe produced the same xhigh request. Windows desktop was not verified. No matching duplicate found among 950 open issues.
Successful real turn, Max retained: Haiku successful turn retains Max
Follow-up API capture, Max retained: Haiku API capture retains Max
Leaving open for maintainer scope review: the shared catalog also advertises MCP orchestration options and validates delegated-task selections. Making that catalog cap-aware changes the MCP tool surface, which is outside this automated triage flow's fix authorization. No implementation or PR created.