-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
GitHub Copilot: static default model list shadows live entitlement discovery #88548
Copy link
Copy link
Closed
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:needs-live-reproClawSweeper needs live local, crabbox, or manual validation to confirm this issue.ClawSweeper needs live local, crabbox, or manual validation to confirm this issue.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:auth-providerAuth, provider routing, model choice, or SecretRef resolution may break.Auth, provider routing, model choice, or SecretRef resolution may break.issue-rating: 🐚 platinum hermitGood issue quality with a plausible reproduction path needing some confirmation.Good issue quality with a plausible reproduction path needing some confirmation.
Description
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:needs-live-reproClawSweeper needs live local, crabbox, or manual validation to confirm this issue.ClawSweeper needs live local, crabbox, or manual validation to confirm this issue.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:auth-providerAuth, provider routing, model choice, or SecretRef resolution may break.Auth, provider routing, model choice, or SecretRef resolution may break.issue-rating: 🐚 platinum hermitGood issue quality with a plausible reproduction path needing some confirmation.Good issue quality with a plausible reproduction path needing some confirmation.
Type
Fields
Priority
None yet
GitHub Copilot: static default model list shadows live entitlement discovery
Summary
The GitHub Copilot provider ships a live model-discovery hook (
fetchCopilotModelCatalog) that fetches${baseUrl}/modelsand is explicitly documented as tracking "per-account entitlements + accurate context windows without manifest churn." In practice, however, the static default catalog (extensions/github-copilot/models-defaults.tsDEFAULT_MODEL_IDS+openclaw.plugin.jsonmanifest models) is what seeds the user-facing model picker andopenclaw models list.When Copilot adds a new model (e.g.
claude-opus-4.8), entitled accounts can call it successfully, but it does not appear in the picker /models listuntil the static list is bumped or the user hand-edits config. This defeats the stated purpose of the discovery hook.Reproduction
claude-opus-4.8).GET https://api.githubcopilot.com/modelsreturns it (verified: 41 models incl.claude-opus-4.8).openclaw models list --provider github-copilotdoes not show it.--model github-copilot/claude-opus-4.8agent call succeeds (no fallback) — proving entitlement and routing both work; only discovery/visibility is missing.Impact
models.providers.github-copilot.models[]entries + aliases to use a model their plan already includes.⚠️ Gateway: agents.defaults.models.github-copilot/<model> failedwarning can appear for config keys containing the provider/model slash, even when the model resolves and runs fine.Proposed fix
/in a config key path doesn't render as a spurious "failed" path.Interim
PR #88547 adds
claude-opus-4.8to the static catalog as an immediate unblock.Environment
/modelsreturnsclaude-opus-4.8for the affected account.