fix: add model stream idle timeout - #117
Conversation
Code reviewVerdict: Address the major findings before merging. · 🔴 0 · 🟠 1 · 🟡 1 · ⚪ 2 · 0/4 resolved
🤖 Fix all 4 open findings with your agent📋 Out-of-diff findings (4)
Reviewed 10 files · 0 inline · view all 4 findings ↗ aictrl · AI code review for fast-moving teams · aictrl.dev |
Review response — PR #117Verified all four automated findings against Issues addressed (pushed to this PR)
Review claims verified false (no change needed)
Not addressed here
|
ReviewOverall this is a solid implementation: the per-event timer reset, the 2^31-1 A few reliability/behavior items worth considering: 1. Pending interactive prompts are now killed by the suspended ceiling (medium)
2. Local tool ceiling silently overrides explicit tool timeouts (medium)The bash tool accepts an explicit 3. Timeout errors are terminal, not retried (low)
4. Coverage gap: other streams not wrapped (low)
Minor
Nothing here blocks merge in my view — items 1 and 2 are the ones I'd want a deliberate decision on. Reviewed SHA: 1911854 |
Code reviewVerdict: Looks good — only minor / nit comments below. · 🔴 0 · 🟠 0 · 🟡 2 · ⚪ 4 · 0/6 resolved
🤖 Fix all 6 open findings with your agent📋 Out-of-diff findings (6)
Reviewed 10 files · 0 inline · view all 6 findings ↗ aictrl · AI code review for fast-moving teams · aictrl.dev |
Review response — PR #117Verified the six findings from the review of Issues addressed (pushed to this PR)
Review claims verified false (no change needed)
Not addressed here
|
Code reviewVerdict: Address the major findings before merging. · 🔴 0 · 🟠 1 · 🟡 3 · ⚪ 4 · 0/8 resolved
🤖 Fix all 8 open findings with your agent📋 Out-of-diff findings (8)
Reviewed 11 files · 0 inline · view all 8 findings ↗ aictrl · AI code review for fast-moving teams · aictrl.dev |
ef850e7 to
d95444e
Compare
Review response — PR #117Verified the eight findings from the 2026-09-29 review against the rebased head Issues addressed (pushed to this PR)
Review claims verified false (no change needed)
Not addressed here
Verification: full CLI suite (1,492 passed, 7 skipped, 0 failed), |
d95444e to
3ba7a6d
Compare
Closes #80
Intent
A provider stream can stop producing events indefinitely. The CLI needs a bounded watchdog that reports this as a distinct timeout while allowing long-running local tools to finish.
Expected Impact on Users
Stalled provider streams produce a typed timeout and non-successful headless outcome. Local executable tools are not interrupted merely because their execution exceeds the provider-event timeout.
Expected Outcomes
Implementation
StreamIdleTimeoutError.Scope Caveat
This does not change provider retry policy or capture raw provider responses.
Test Plan
Verification
Risks and Rollout
The default remains five minutes. The environment variable is capped at the maximum supported timer delay; no migration is required.