GPT-6 Astra: long_context tier reports 872k prompt tokens while model capabilities report 1,050k
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- vscode
- Domain
- api
Research direction
Start with the bundled Copilot SDK's client.listModels() response for gpt-6-astra and compare capabilities.limits with billing.tokenPrices.longContext. Trace the VS Code picker through _createModelConfigSchema, nb(), and _P() to confirm which values it surfaces. Done means identifying the enforced limit and making the catalog metadata consistent, or documenting why the values differ.
Written by the indexing model from the issue text.
Description
Describe the bug
The model catalog returned by the Copilot runtime for gpt-6-astra is internally inconsistent. The model's capabilities.limits advertise a 1,050,000-token prompt limit (1,178,000 context window), but the billing.tokenPrices.longContext tier — which VS Code's context-window picker uses to build its choices — caps out at 872,000.
As a result, VS Code offers Astra as 272K / 872K while every other 1M-class model (e.g. Claude Fable 5.1) is offered at its full advertised prompt limit. Selecting the long_context tier does not change this; the session is already on long_context and still shows 872k.
For comparison, claude-fable-5.1 is self-consistent: max_prompt_tokens = 936,000 and longContext.maxPromptTokens = 936,000.
Affected version
Copilot runtime @github/copilot-linux-x64 1.0.84-4 (bundled with VS Code on Linux x64), queried via the bundled Copilot SDK.
Steps to reproduce the behavior
- Using the bundled SDK, start the runtime over stdio and call
client.listModels(). - Inspect the
gpt-6-astraentry. - Compare
capabilities.limits.max_prompt_tokenswithbilling.tokenPrices.longContext.maxPromptTokens.
Observed (verbatim, trimmed):
{
"id": "gpt-6-astra",
"limits": {
"max_context_window_tokens": 1178000,
"max_output_tokens": 128000,
"max_prompt_tokens": 1050000
},
"billing": {
"tokenPrices": {
"contextMax": 272000,
"maxPromptTokens": 272000,
"longContext": {
"contextMax": 872000,
"maxPromptTokens": 872000
}
}
}
}
Reference model for comparison (consistent):
{
"id": "claude-fable-5.1",
"limits": {
"max_context_window_tokens": 1000000,
"max_output_tokens": 64000,
"max_prompt_tokens": 936000
},
"billing": {
"tokenPrices": {
"longContext": { "contextMax": 936000, "maxPromptTokens": 936000 }
}
}
}
- In VS Code, open the context-window picker for GPT-6 Astra: choices are 272K and 872K. The picker enum is built from
tokenPrices.contextMax/tokenPrices.longContext.contextMax(agent host_createModelConfigSchema→nb()→_P()), so the 1,050k capability value is never surfaced.
Expected behavior
Either:
billing.tokenPrices.longContext.maxPromptTokensforgpt-6-astrashould matchcapabilities.limits.max_prompt_tokens(1,050,000), so the UI offers the full advertised context; or- if 872,000 is the actually enforced prompt limit on the long-context tier,
capabilities.limits.max_prompt_tokens/max_context_window_tokensshould be lowered to match, and the documented "1M context" for Astra should be qualified.
Clarification of which value the service actually enforces would be appreciated, since the two figures imply a ~178k-token difference in usable prompt budget.
Additional context
- Observation:
872,000 = 1,000,000 − 128,000and1,050,000 = 1,178,000 − 128,000. The two values look like they were derived from different total-window figures (1M vs 1.178M) minus the same 128k output reservation, which suggests one side of the catalog was not updated. - Not client-configuration related:
contextTieris alreadylong_contextin the session log, and theprovider_modelstable in the local runtime DB is empty (metadata is fetched live), so there is no local override in play. - Related but distinct: #4638 concerns how the CLI derives a total from prompt+output; this report concerns the server-supplied tier metadata disagreeing with the server-supplied capability metadata.
- Dominant language
- Shell
- Stars
- 11.2k
- Forks
- 1.9k
- Avg merge
- 14h 16m
- Merged PRs (30d)
- 6
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from github/copilot-cli
-
triage
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
github/copilot-cli#4932 ·
-
triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
github/copilot-cli#4909 ·
-
triage
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
github/copilot-cli#4906 ·
-
triage
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
github/copilot-cli#4848 ·
-
area:agents area:mcp
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
github/copilot-cli#4729 ·
All issues in github/copilot-cli
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
elastic/gradle-plugins#156 ·
-
Priority/High ready-for-agent Severity/Major Type/Bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
comp/cli P3 type/docs
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
NousResearch/hermes-agent#119756 · 1 comment ·
-
comp: build/pipeline type: bug version: current (v17+)
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
angular/angularfire#3766 ·
-
out-of-date
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
CachyOS/CachyOS-PKGBUILDS#1903 ·