[bug] text chat --api responses --tool web_search: non-streaming requests systematically fail with headers timeout; --stream works
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 57/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- node.js, typescript
- Bereich
- backend-api-design, cli
Rechercherichtung
Start by reading the bl text chat command and its --stream option handling, then trace how non-streaming Responses API requests with tools are sent and how headers timeouts are handled. Reproduce the reported non-TTY request with --api responses --tool and compare it with --stream. Done means the non-streaming tool request can return successfully, or the CLI handles the timeout as intended; add a regression test for the behavior.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Environment
- CLI: bl 2.1.0
- Skill: 2.1.0
- Node: v25.9.0
- OS: macOS 26.5.2 (arm64)
- Region: cn-beijing (domestic; config profile
token-plan, base_urlhttps://token-plan.cn-beijing.maas.aliyuncs.com)
Reproduce
# Non-TTY (agent) invocation — systematically times out:
bl text chat --api responses --tool '{"type":"web_search"}' --timeout 300 \
--system "Reply in 简体中文。" \
--message "<a search question>"
# Same request with forced streaming — succeeds:
bl text chat --api responses --stream --tool '{"type":"web_search"}' --timeout 550 \
--system "Reply in 简体中文。" \
--message "<the same search question>"
Expected
Both invocations return the model's answer with web search results.
Actual
Without --stream: request systematically fails with headers timeout — Error: Network request failed: UND_ERR_HEADERS_TIMEOUT: Headers Timeout Error (exit 6) or Error: Request timed out ... This operation was aborted (exit 5). ~13 of 14 attempts failed over a period of hours; the single success took several minutes.
With --stream: 3/3 attempts succeeded, responses returned normally.
Analysis
bl text chat --help says --stream Stream response tokens (default: on in TTY). In non-TTY (agent/pipe) context the default is non-streaming, so the CLI waits for the full Responses-API + web_search run (multi-round searches, server-side) before receiving response headers — which reliably exceeds the gateway's headers timeout. Streaming receives headers early and works. Suggestion: for --api responses with tools (or in non-TTY generally), default to streaming, or automatically retry with streaming on UND_ERR_HEADERS_TIMEOUT.
Already tried
bl update/ skill version aligned (2.1.0 across CLI, npm, skills)- Network ruled out: direct
curl --noproxy '*'to the endpoint returns 404 in ~0.1s; same with system proxy — no local connectivity issue --timeoutraised to 550s — non-streaming still fails; streaming succeeds with the same timeout- Multiple retries over several hours: non-stream failure rate ~13/14, stream success 3/3
Notes
- Frequency: always (non-streaming); none so far (streaming)
- Invoked via: agent (non-TTY automation)
- No request ID available: headers timeout means no response headers/ID were ever received
- Vorherrschende Sprache
- TypeScript
- Sterne
- 527
- Forks
- 33
- Ø Merge
- 17 Std. 17 Min.
- Gemergte PRs (30 T.)
- 32
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus modelstudioai/cli
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
modelstudioai/cli#242 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[bug] vision describe: default base URL is the Coding Plan endpoint → HTTP 404 for all VL/OCR modelsOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
modelstudioai/cli#241 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
modelstudioai/cli#240 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
modelstudioai/cli#202 · 1 Kommentar · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
modelstudioai/cli#195 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in modelstudioai/cli
Ähnliche Issues
-
test: make the #3408 Claude OAuth token fixture obviously fake so secret scanners stop flagging itOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
code-yeongyu/senpi#3436 ·
Maintainer antworten meist innerhalb von 1 Tag
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 78/100
lingdojo/kana-dojo#32505 · 1 Kommentar · 5 Reaktionen ·
Maintainer antworten meist innerhalb von 1 Tag
-
code-quality refactoring
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
github/gh-aw-firewall#10040 ·
Maintainer antworten meist innerhalb von 1 Tag
-
review-followup
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
griffinwork40/agent-afk#3868 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area: import-export bug status: needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
amatya-aditya/obsidian-rss-dashboard#1191 ·
Maintainer antworten meist innerhalb von 1 Tag