github / github/copilot-cli

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

Đang mở
#3,135 3 bình luận 1 reaction 0 người được giao Xem trên GitHub
area:configuration area:models
Ngôn ngữ chính
Shell
Star
11.2k
Fork
1.9k
Merge trung bình
14 giờ 16 phút
Pull request đã merge (30 ngày)
6

Mô tả

## 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)
```

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu với payload của statusline và debug log được mô tả trong issue, sau đó so sánh cách 1.0.40 và 1.0.41 truyền --effort high vào model.display_name cho BYOK với responses wire API. Hoàn tất khi statusline báo cáo gpt-5.5 (high) trong khi request vẫn tiếp tục sử dụng reasoning_effort: high.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Lĩnh vực
cli
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
45/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.