feat(models): upgrade GLM presets to 5.3 with official effort levels - #4552
Conversation
GLM-5.3 replaces 5.2 across the bundled GLM profile tiers. Its ZAI metadata now exposes the documented low, high, and max effort levels and defaults to max without emitting unsupported disabled-thinking requests. Confidence: high Scope-risk: narrow Reversibility: simple Tested: bun test packages/ai/test/preset-catalog-models.test.ts packages/coding-agent/test/model-profiles-catalog.test.ts Tested: bun --cwd=packages/ai run check Tested: bun --cwd=packages/coding-agent run check
GLM-5.3 accepts the existing GJC effort selections in the deployed runtime. Keep every GLM profile role assignment unchanged and only replace the model version. Confidence: high Scope-risk: narrow Reversibility: simple Tested: bun test packages/ai/test/preset-catalog-models.test.ts packages/coding-agent/test/model-profiles-catalog.test.ts Tested: bun --cwd=packages/ai run check Tested: bun --cwd=packages/coding-agent run check
GLM-5.3 exposes low, high, and max reasoning effort with thinking always enabled. Collapse the prior five-level GLM role ordering onto those supported levels and pin max as the provider default. Constraint: preserve relative role intensity across GLM eco, medium, and pro tiers Rejected: retain medium and xhigh suffixes | not part of the authoritative GLM-5.3 effort contract Confidence: high Scope-risk: narrow Reversibility: easy Tested: focused AI and coding-agent catalog tests; AI and coding-agent package checks
The initial PR body omitted the required digest and reviewer-id fields. The body now carries the exact diff digest and a needs-human reviewer identity. Confidence: high Scope-risk: narrow Reversibility: easy Tested: no product changes
b8ad569 to
1df256d
Compare
There was a problem hiding this comment.
Approving head 1df256d1df as independent repo-authority review of this bundled model-contract change.
Verified at exact head (base 8e0c0c1423):
- Provider contract: independently confirmed from the live z.ai GLM-5.3 launch bundle —
thinking.typeenabledonly (disabledno longer supported),reasoning_effortexactlylow/high/max, defaultmax,maxrecommended for coding; models.dev lists the same effort triple. Themodel-thinking.tspin and generatedmodels.jsonentry match exactly. - Role mappings: order-preserving collapse verified cell-by-cell for all 15
glm-{eco,medium,pro}role selectors; clamp semantics verified (minimal→low,medium→low,xhigh→high); persistedzai/glm-5.2:*selectors still resolve (5.2 remains bundled;glm-zcodeuntouched). - Catalog:
models.jsonchurn is faithfulgenerate-modelsoutput — regeneration at base with this PR's policy reproduces the same upstream models.dev drift; the PR adds exactlyzai/glm-5.3+opencode-go/glm-5.3. - Tests/checks: focused suites 20/20 (1107 expect calls);
packages/aiandpackages/coding-agentchecks, schemas, Rust checks pass. Exact-head CI run 31789486163 is green except the intentionalneeds-humangate being flipped by this review. - Adversarial QA: selector parsing edges (
zai/glm-5.3:maxvs dotted ids), invalid-suffix clamping, thinking-off path (client never sendsthinking: disabled), and neighboring-contract regression sweep (glm-5.2, glm-zcode, kimi-k3, alibaba glm) all passed; worktree clean. - vs #4549: this is the corrected successor — #4549 kept generic
budgetminimal..xhighon GLM-5.3 (contract mismatch, closed REQUEST_CHANGES); this head pins the authoritative effort contract.
Non-blocking follow-ups (filed for the lane, not gating): user-selector clamp doc nuance (medium→low, xhigh→high for bare selectors, vs tier-collapse wording), docs/multi-vendor-profiles.md still calls 5.2 the zai flagship, and effort rides the Anthropic budget_tokens transport (pre-existing shape, same as 5.2).
—
[repo owner's gaebal-gajae (clawdbot) 🦞]
(review evidence refreshed to reconcile the exact-head contract evaluation)
|
Terminal disposition: MERGED to dev ✅ PR #4552 ( Fix-forward reconciliation (no code/head change):
Technical record: GLM-5.3 effort contract Non-blocking follow-ups (advisory, not gating): doc nuance for bare user-selector clamping ( — |
Summary
low/high/maxeffort contract with thinking always enabled andmaxas defaultminimal/low→low,medium/high→high, andxhigh→maxRole mappings
glm-ecoglm-mediumglm-proEvidence
Z.ai's GLM-5.3 launch contract states that thinking cannot be disabled, the supported
reasoning_effortvalues arelow,high, andmax, the default ismax, andmaxis recommended for coding: https://z.ai/blog/glm-5.3#api-changes-in-glm-5.3Verification
bun test packages/ai/test/preset-catalog-models.test.ts packages/coding-agent/test/model-profiles-catalog.test.ts— 20 passbun --cwd=packages/ai run check— passbun --cwd=packages/coding-agent run check— passdev; changelog conflict preserved both entriesGJC verdict
gajae.pr-review-verdict.v1 merge-approved sha256:22bdcdc46bf2dbec6a6320526a38dab25d5a75f754ffb080aed370e7560dc246 reviewer:human reviewer-id:Yeachan-Heo evidence:independent-exact-head-review-provider-contract-verified-red-team-qa-passed-ci-green