Skip to content

feat(autopilot): agent run time limits are settings (Coding 60, Review 30, Testing 45 min) - #289

Merged
hoangsnowy merged 1 commit into
mainfrom
feat/agent-run-time-limits-2
Oct 24, 2026
Merged

hoangsnowy merged 1 commit into
mainfrom
feat/agent-run-time-limits-2

Conversation

@hoangsnowy

Copy link
Copy Markdown
Owner

Summary

  • Problem: a run on a member's computer was capped at a fixed 20 minutes for Coding (Reviewer 20, Testing 30). VNChess fix(web): responsive windows & dialogs #102, a backfill-migration ticket, was cut off at 20 minutes and lost its work. The retry then ended with "Agent did not return a JSON summary".
  • New setting group, Settings › Autopilot › Run time limits (ISettingsContributor per ADR-0011, tenant scope, clamped to range):
    • Autopilot:CodingRunMinutes: default 60, range 10–240
    • Autopilot:ReviewRunMinutes: default 30, range 5–120
    • Autopilot:TestingRunMinutes: default 45, range 10–180
  • How agents read it: each run reads its limit through IAgentProfiles.RunLimitAsync. The method has a default interface implementation, so other implementers keep working. AutopilotSettings.RunLimitForAsync falls back to the built-in default when the value is missing or ≤ 0.
  • Docs: docs/CONFIG.md.

Test plan

  • AutopilotConfigurationTests: descriptor ranges and defaults; read, clamp, and an unknown key.
  • IssueWorkAgentTests.RunAsync_RunOnMachine_TimeoutIsTheTenantsCodingRunLimit.
  • dotnet test --solution AgentOs.slnx -c Release: 1,772 passed, 0 failed.
  • Standalone Web E2E AutopilotSettingsTests 3/3, including the 3 new rows. Checked in a screenshot in light and dark.
  • Claude Design: the settings-autopilot card needs the new "Run time limits" panel (next /design-sync).

🤖 Generated with Claude Code

https://claude.ai/code/session_018WAdQ7Rm24xss5QDSvXtJB

…w 30, Testing 45 min)

The Coding agent's run on a member's computer was capped at a fixed 20 minutes (Reviewer
20, Testing 30). VNChess #102 — a backfill-migration ticket — was cut off at 20 minutes,
lost its work, and the retry then ended without a reply. The caps are now Settings ›
Autopilot › Run time limits (Autopilot:CodingRunMinutes 10–240, ReviewRunMinutes 5–120,
TestingRunMinutes 10–180), read per run through IAgentProfiles.RunLimitAsync and clamped
to their range; a missing or non-positive value falls back to the built-in default.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018WAdQ7Rm24xss5QDSvXtJB
@hoangsnowy
hoangsnowy merged commit c7b0b41 into main Oct 24, 2026
4 checks passed
@hoangsnowy
hoangsnowy deleted the feat/agent-run-time-limits-2 branch October 24, 2026 16:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant