Summary
Multiple Mistral "latest" alias entries in the local catalog have outdated pricing, context windows, and max output tokens. These aliases now resolve to new-generation models on Mistral's API, but the catalog still reflects the old-generation metadata. This is distinct from BT-4823, which tracks the missing versioned model IDs — this issue covers the stale metadata on existing entries.
Additionally, issue BT-4823 lists model IDs from Mistral's overview page (e.g., mistral-large-3-25-12), but the actual API model IDs confirmed on each model's detail page use a shorter format (e.g., mistral-large-2512). This note is included here for the downstream fix job.
Official sources
- Model detail pages (each confirms the API model ID, pricing, and context):
Local files inspected
packages/proxy/schema/model_list.json — entries at lines ~4542, ~4566, ~4590, ~4719, ~4738, ~4757
Gap Details
1. mistral-small-latest — pricing and context are wrong
| Field |
Local catalog |
Official (Mistral Small 4) |
input_cost_per_mil_tokens |
0.06 |
0.15 |
output_cost_per_mil_tokens |
0.18 |
0.6 |
max_input_tokens |
131072 |
256000 |
max_output_tokens |
131072 |
needs verification |
2. codestral-latest — pricing and context are wrong
| Field |
Local catalog |
Official (codestral-2508) |
input_cost_per_mil_tokens |
1 |
0.3 |
output_cost_per_mil_tokens |
3 |
0.9 |
max_input_tokens |
32000 |
128000 |
max_output_tokens |
8191 |
needs verification |
3. magistral-medium-latest — context window is wrong
| Field |
Local catalog |
Official (magistral-medium-2509) |
input_cost_per_mil_tokens |
2 |
2 ✓ |
output_cost_per_mil_tokens |
5 |
5 ✓ |
max_input_tokens |
40000 |
128000 |
max_output_tokens |
40000 |
needs verification |
4. magistral-small-latest — context window is wrong
| Field |
Local catalog |
Official (magistral-small-2509) |
input_cost_per_mil_tokens |
0.5 |
0.5 ✓ |
output_cost_per_mil_tokens |
1.5 |
1.5 ✓ |
max_input_tokens |
40000 |
128000 |
max_output_tokens |
40000 |
needs verification |
5. ministral-8b-latest — pricing changed, context missing
| Field |
Local catalog |
Official (ministral-8b-2512) |
input_cost_per_mil_tokens |
0.1 |
0.15 |
output_cost_per_mil_tokens |
0.1 |
0.15 |
max_input_tokens |
(not set) |
256000 |
max_output_tokens |
(not set) |
needs verification |
6. devstral-small-latest — alias is stale, now points to Devstral 2
The official docs show devstral-latest (alias for devstral-2512) at $0.4/$2 with 256k context. The local catalog has devstral-small-latest at $0.1/$0.3 which corresponds to the deprecated devstral-small-2507.
Why this is high confidence
Each model detail page on Mistral's official docs explicitly states the API model ID and that the -latest alias resolves to it. The pricing and context windows are stated on the same pages. The local catalog entries are clearly stale — in the case of codestral-latest, the pricing is 3x too high.
Relationship to BT-4823
Issue BT-4823 tracks the missing versioned model IDs (the new-generation models). This issue covers the existing "latest" alias entries that have wrong pricing and metadata. Both issues need to be fixed, but they are independent: fixing BT-4823 adds new entries, fixing this issue corrects existing ones.
Verification notes
- All pricing verified from individual Mistral model detail pages linked above.
max_output_tokens was not published on the model detail pages — marked "needs verification" for the downstream fix job.
mistral-large-latest ($0.5/$1.5) and mistral-medium-latest ($0.4/$2) pricing already match official docs and are NOT included in this issue.
{
"kind": "missing_model",
"provider": "mistral",
"models": [
"mistral-small-latest",
"codestral-latest",
"magistral-medium-latest",
"magistral-small-latest",
"ministral-8b-latest"
],
"status": "active",
"model_specs": {
"mistral-small-latest": {
"format": "openai",
"flavor": "chat",
"input_cost_per_mil_tokens": 0.15,
"output_cost_per_mil_tokens": 0.6,
"max_input_tokens": 256000,
"available_providers": ["mistral"]
},
"codestral-latest": {
"format": "openai",
"flavor": "chat",
"input_cost_per_mil_tokens": 0.3,
"output_cost_per_mil_tokens": 0.9,
"max_input_tokens": 128000,
"available_providers": ["mistral"]
},
"magistral-medium-latest": {
"format": "openai",
"flavor": "chat",
"input_cost_per_mil_tokens": 2,
"output_cost_per_mil_tokens": 5,
"max_input_tokens": 128000,
"available_providers": ["mistral"]
},
"magistral-small-latest": {
"format": "openai",
"flavor": "chat",
"input_cost_per_mil_tokens": 0.5,
"output_cost_per_mil_tokens": 1.5,
"max_input_tokens": 128000,
"available_providers": ["mistral"]
},
"ministral-8b-latest": {
"format": "openai",
"flavor": "chat",
"input_cost_per_mil_tokens": 0.15,
"output_cost_per_mil_tokens": 0.15,
"max_input_tokens": 256000,
"available_providers": ["mistral"]
}
},
"source_urls": [
"https://docs.mistral.ai/models/mistral-small-4-0-26-03",
"https://docs.mistral.ai/models/codestral-25-08",
"https://docs.mistral.ai/models/magistral-medium-1-2-25-09",
"https://docs.mistral.ai/models/magistral-small-1-2-25-09",
"https://docs.mistral.ai/models/ministral-3-8b-25-12"
]
}
Summary
Multiple Mistral "latest" alias entries in the local catalog have outdated pricing, context windows, and max output tokens. These aliases now resolve to new-generation models on Mistral's API, but the catalog still reflects the old-generation metadata. This is distinct from BT-4823, which tracks the missing versioned model IDs — this issue covers the stale metadata on existing entries.
Additionally, issue BT-4823 lists model IDs from Mistral's overview page (e.g.,
mistral-large-3-25-12), but the actual API model IDs confirmed on each model's detail page use a shorter format (e.g.,mistral-large-2512). This note is included here for the downstream fix job.Official sources
mistral-small-2603mistral-large-2512mistral-medium-2508magistral-medium-2509magistral-small-2509codestral-2508ministral-8b-2512ministral-14b-2512devstral-2512Local files inspected
packages/proxy/schema/model_list.json— entries at lines ~4542, ~4566, ~4590, ~4719, ~4738, ~4757Gap Details
1.
mistral-small-latest— pricing and context are wronginput_cost_per_mil_tokensoutput_cost_per_mil_tokensmax_input_tokensmax_output_tokens2.
codestral-latest— pricing and context are wronginput_cost_per_mil_tokensoutput_cost_per_mil_tokensmax_input_tokensmax_output_tokens3.
magistral-medium-latest— context window is wronginput_cost_per_mil_tokensoutput_cost_per_mil_tokensmax_input_tokensmax_output_tokens4.
magistral-small-latest— context window is wronginput_cost_per_mil_tokensoutput_cost_per_mil_tokensmax_input_tokensmax_output_tokens5.
ministral-8b-latest— pricing changed, context missinginput_cost_per_mil_tokensoutput_cost_per_mil_tokensmax_input_tokensmax_output_tokens6.
devstral-small-latest— alias is stale, now points to Devstral 2The official docs show
devstral-latest(alias fordevstral-2512) at $0.4/$2 with 256k context. The local catalog hasdevstral-small-latestat $0.1/$0.3 which corresponds to the deprecateddevstral-small-2507.Why this is high confidence
Each model detail page on Mistral's official docs explicitly states the API model ID and that the
-latestalias resolves to it. The pricing and context windows are stated on the same pages. The local catalog entries are clearly stale — in the case ofcodestral-latest, the pricing is 3x too high.Relationship to BT-4823
Issue BT-4823 tracks the missing versioned model IDs (the new-generation models). This issue covers the existing "latest" alias entries that have wrong pricing and metadata. Both issues need to be fixed, but they are independent: fixing BT-4823 adds new entries, fixing this issue corrects existing ones.
Verification notes
max_output_tokenswas not published on the model detail pages — marked "needs verification" for the downstream fix job.mistral-large-latest($0.5/$1.5) andmistral-medium-latest($0.4/$2) pricing already match official docs and are NOT included in this issue.{ "kind": "missing_model", "provider": "mistral", "models": [ "mistral-small-latest", "codestral-latest", "magistral-medium-latest", "magistral-small-latest", "ministral-8b-latest" ], "status": "active", "model_specs": { "mistral-small-latest": { "format": "openai", "flavor": "chat", "input_cost_per_mil_tokens": 0.15, "output_cost_per_mil_tokens": 0.6, "max_input_tokens": 256000, "available_providers": ["mistral"] }, "codestral-latest": { "format": "openai", "flavor": "chat", "input_cost_per_mil_tokens": 0.3, "output_cost_per_mil_tokens": 0.9, "max_input_tokens": 128000, "available_providers": ["mistral"] }, "magistral-medium-latest": { "format": "openai", "flavor": "chat", "input_cost_per_mil_tokens": 2, "output_cost_per_mil_tokens": 5, "max_input_tokens": 128000, "available_providers": ["mistral"] }, "magistral-small-latest": { "format": "openai", "flavor": "chat", "input_cost_per_mil_tokens": 0.5, "output_cost_per_mil_tokens": 1.5, "max_input_tokens": 128000, "available_providers": ["mistral"] }, "ministral-8b-latest": { "format": "openai", "flavor": "chat", "input_cost_per_mil_tokens": 0.15, "output_cost_per_mil_tokens": 0.15, "max_input_tokens": 256000, "available_providers": ["mistral"] } }, "source_urls": [ "https://docs.mistral.ai/models/mistral-small-4-0-26-03", "https://docs.mistral.ai/models/codestral-25-08", "https://docs.mistral.ai/models/magistral-medium-1-2-25-09", "https://docs.mistral.ai/models/magistral-small-1-2-25-09", "https://docs.mistral.ai/models/ministral-3-8b-25-12" ] }