feat: remove default per-turn step limit of 1000 - #186
Merged
Conversation
Previously, runTurn enforced a hard-coded default limit of 1000 steps per turn. This limit was often hit during long-running tasks. Now, when max_steps_per_turn is not configured, the turn has no step limit. Users can still set max_steps_per_turn in [loop_control] to enforce a custom limit if desired. - run-turn.ts: remove DEFAULT_MAX_STEPS, check maxSteps only when defined - docs: update default value description for max_steps_per_turn - tests: add test for omitted maxSteps case
🦋 Changeset detectedLatest commit: acefff5 The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
commit: |
- maxSteps check now requires maxSteps > 0, so 0 behaves the same as omitting the value (unlimited). - Relax config schema min from 1 to 0 for maxStepsPerTurn. - Update docs to document the 0-as-unlimited override semantics. - Replace maxSteps=0 boundary test with one asserting unlimited behavior.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related Issue
N/A — this is a small behavior change discussed during development.
Problem
The default per-turn step limit of 1000 was hard-coded in "runTurn". In practice, long-running tasks (e.g., large refactors, multi-file edits with many tool calls) frequently hit this ceiling, causing turns to abort with "loop.max_steps_exceeded". Users had to discover and configure "max_steps_per_turn" to work around it.
What changed
This is a backwards-compatible enhancement: users who already set "max_steps_per_turn" in their config retain their chosen limit.
Checklist