github / github/copilot-cli

BYOK statusline shows medium effort in 1.0.41 despite --effort high

Aperta
#3,135 3 commenti 1 reazione 0 assegnatari Vedi su GitHub
area:configuration area:models
Lingua principale
Shell
Stelle
11.2k
Fork
1.9k
Merge medio
14h 16m
PR unite (30g)
6

Descrizione

## Description

After upgrading to Copilot CLI 1.0.41, when using `--effort high` with a BYOK/custom provider, the actual request is still sent with `reasoning_effort: "high"`, but the statusline receives `model.display_name` as `gpt-5.5 (medium)`.

The same setup works correctly in Copilot CLI 1.0.40, where the statusline displays `gpt-5.5 (high)`.

This looks like a regression in the statusline/UI display state: the actual request effort and the effort shown through the UI/statusline are out of sync.

## Environment

- Copilot CLI: 1.0.41
- OS: macOS
- Provider: BYOK / custom OpenAI-compatible provider
- Wire API: `responses`
- Model: `gpt-5.5`

Relevant environment variables:

```bash
COPILOT_PROVIDER_BASE_URL=http:///v1
COPILOT_PROVIDER_API_KEY=
COPILOT_PROVIDER_WIRE_API=responses
COPILOT_PROVIDER_TYPE=openai
COPILOT_MODEL=gpt-5.5
COPILOT_PROVIDER_MODEL_ID=gpt-5.5
COPILOT_PROVIDER_WIRE_MODEL=gpt-5.5
```

Launch command:

```bash
copilot --effort high
```

## Expected behavior

The statusline payload should reflect the reasoning effort that is actually being used.

For example, with `--effort high`, the statusline payload should contain:

```json
{
"model": {
"id": "gpt-5.5",
"display_name": "gpt-5.5 (high)"
}
}
```

## Actual behavior

In 1.0.41, the statusline displays:

```text
gpt-5.5 (medium)
```

That means the statusline payload display name is effectively:

```json
{
"model": {
"id": "gpt-5.5",
"display_name": "gpt-5.5 (medium)"
}
}
```

However, the debug log shows that the actual request is using `high`:

```text
Using custom provider: type=openai, baseUrl=http:///v1, wireApi=responses
"model": "gpt-5.5"
"defaultReasoningEffort": "high"
"reasoning_effort": "high"
```

So the issue appears to be limited to the UI/statusline display state, not the actual request.

## Comparison test

Using the same environment, same BYOK provider, same model, and same `--effort high` flag, only changing the Copilot CLI version:

| Version | Actual request `reasoning_effort` | Statusline `model.display_name` |
|---|---|---|
| 1.0.40 | `high` | `gpt-5.5 (high)` |
| 1.0.41 | `high` | `gpt-5.5 (medium)` |

Captured statusline payload from 1.0.40:

```json
{
"model": {
"id": "gpt-5.5",
"display_name": "gpt-5.5 (high)"
}
}
```

Captured request settings from the 1.0.41 debug log:

```text
"defaultReasoningEffort": "high"
"reasoning_effort": "high"
```

But the 1.0.41 statusline shows:

```text
gpt-5.5 (medium)
```

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia con il payload di statusline e il log di debug descritti nell’issue, quindi confronta come 1.0.40 e 1.0.41 trasferiscono --effort high in model.display_name per BYOK con la responses wire API. È completato quando la statusline riporta gpt-5.5 (high) mentre la request continua a usare reasoning_effort: high.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Ambito
cli
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.