feat(github-copilot): add Claude Opus 4.8 to default model catalog#88547
Conversation
|
Follow-up structural issue (the real fix — surface the union of live-discovered + static models so this never recurs): #88548 |
|
Codex review: needs maintainer review before merge. Reviewed May 31, 2026, 11:49 AM ET / 15:49 UTC. Summary PR surface: Source +10, Tests +4. Total +14 across 3 files. Reproducibility: yes. for the catalog gap at source level: the PR and related issue describe live Copilot entitlement to Review metrics: none identified. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land the narrow static catalog unblock if maintainers accept the mirrored metadata, and keep the broader live-discovery union work in #88548 as the canonical structural fix. Do we have a high-confidence way to reproduce the issue? Yes for the catalog gap at source level: the PR and related issue describe live Copilot entitlement to Is this the best way to solve the issue? Yes for the immediate unblock: adding the model to both static sources and asserting the default ID is the narrowest catalog-bump fix. It is not the complete structural solution, which remains the live-discovered-plus-static union tracked in #88548. AGENTS.md: found and applied where relevant. Codex review notes: model gpt-5.5, reasoning high; reviewed against d1c4c3344ebf. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +10, Tests +4. Total +14 across 3 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
|
fe0ecb9 to
d329f7e
Compare
GitHub Copilot now serves claude-opus-4.8 (verified via live /models endpoint), but the static default catalog stopped at 4.7, so the model was invisible in the picker and 'openclaw models list' until added manually. Add it to both the manifest and the defaults list, mirroring the existing 4.7 metadata shape.
d329f7e to
60580c4
Compare
|
Maintainer landing proof for exact head 60580c4:
Merging with admin override for the unrelated red checks. Thanks @saju01. |
Add Claude Opus 4.8 to the GitHub Copilot static model catalog and default model IDs. Updates provider manifest metadata and regression coverage so fallback/default discovery includes claude-opus-4.8. PR: openclaw#88547 Co-authored-by: saju01 <[email protected]>
Add Claude Opus 4.8 to the GitHub Copilot static model catalog and default model IDs. Updates provider manifest metadata and regression coverage so fallback/default discovery includes claude-opus-4.8. PR: openclaw#88547 Co-authored-by: saju01 <[email protected]>
Add Claude Opus 4.8 to the GitHub Copilot static model catalog and default model IDs. Updates provider manifest metadata and regression coverage so fallback/default discovery includes claude-opus-4.8. PR: openclaw#88547 Co-authored-by: saju01 <[email protected]>
What
Add
claude-opus-4.8to the GitHub Copilot default model catalog (manifest +DEFAULT_MODEL_IDS), plus a test assertion.Why
GitHub Copilot already serves
claude-opus-4.8for entitled accounts, but the static default catalog inextensions/github-copilot/stopped atclaude-opus-4.7. Because the picker /openclaw models listis seeded from this static list, an entitled model was invisible and unselectable until manually added to user config. This is a small catalog bump mirroring the existing 4.7 metadata shape.Real behavior proof
Behavior or issue addressed: GitHub Copilot serves
claude-opus-4.8for entitled accounts, but it did not appear inopenclaw models listor the model picker because the static default catalog stopped at 4.7. After this patch the model is discoverable and selectable.Real environment tested: OpenClaw 2026.5.28 on macOS (Darwin arm64), provider
github-copilotauthenticated against a real Copilot subscription (liveapi.githubcopilot.com).Exact steps or command run after this patch: ran the three commands below against the real setup.
Evidence after fix: live terminal output below (Copilot token redacted).
Observed result after fix: the live Copilot endpoint returns
claude-opus-4.8(account entitled);openclaw models listnow shows the model; and a real agent turn routes to it and returns the exact expected stringOK_OPUS48withwinnerModel: claude-opus-4.8andfallbackUsed: false— proving it is the winning model, not a silent fallback to 4.7.What was not tested: long-context (1M) Copilot variants and cost/usage accounting for 4.8 were not exercised; only base
claude-opus-4.8text+image routing was verified live.Note on the deeper issue
The Copilot provider already ships a live discovery hook (
fetchCopilotModelCatalog) documented to track per-account entitlements "without manifest churn," but the static default list still shadows discovery for the user-facing picker. This PR is the immediate unblock; follow-up structural issue: #88548.Supplemental checks
pnpm vitest run extensions/github-copilot/models.test.ts→ 36/36 pass (rebased on currentmain), incl. new assertion thatgetDefaultCopilotModelIds()containsclaude-opus-4.8.main; upstream model-catalog-pruning conflicts resolved.