feat: adapt subagent timeouts to observed duration - #7195
Conversation
|
|
Open PR relationship auditThis is a consolidated, point-in-time code-level audit note. It compares complete merge-base diffs and current/merged code; it does not treat a shared topic as duplication or partial coverage as completion. Relationship findings
No PR, Issue, label, branch, or review state was changed by the relationship-note portion of this audit. |
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: This PR has been inactive for 7+ days with failing CI. I've assessed the blockers and they appear resolvable — I'll push fixes directly to this branch as a co-author. Assessment: The maintainer audit already mapped the rebase file-by-file (pure relocation conflict in If you'd prefer I don't touch this PR, add the |
|
Hi @rubencu, thanks for this one. Two things before it can land. Still worth doing, but the numbers need reworking. The motivation, a fixed 30-minute deadline killing healthy long runs, is already handled on main by a different mechanism: merged #8891 raised the static default in Overlap with #8003 (credit usage reporting, cc @welikoiwanenko). Shared files: Posted from the 2026-09-08 open-PR relationship audit (read-only, one auditor per PR); reply here if any of this is wrong. |
Problem / Motivation
Subagents have a fixed 30-minute default execution timeout. Real workloads that legitimately need longer are terminated unless an operator notices the pattern and manually increases
agent.subagent_timeout_secs.Why it matters
Long-running delegated work can lose progress at a predictable deadline even when it is healthy. Operators should not need to repeatedly tune a global timeout just because observed subagent workloads have grown beyond the initial default.
What changed (motivation → approach → change)
agent.subagent_timeout_secsas the operator-controlled floor and enable adaptive growth by default withagent.subagent_timeout_auto.agent.subagent_timeout_max_secs, defaulting to two hours and validated from 30 minutes through 24 hours. A manually configured floor above that ceiling remains authoritative.Tests
Manual verification
N/A — policy, persistence, lifecycle, race, and configuration behavior are covered by focused and regression tests; no external service or rendered UI path changes.
Screenshots / video
Why no screenshot: backend timeout policy and configuration only; no rendered UI changes.
Related Issues
no linked issue: reported directly by a user
Checklist
feat|fix|docs|refactor|perf|test|chore|ci|build|revert: ...)