Skip to content

feat: extract tool executor and support termination - #54

Merged
EeroEternal merged 1 commit into
mainfrom
feat/tool-executor-terminate
Aug 11, 2026
Merged

feat: extract tool executor and support termination#54
EeroEternal merged 1 commit into
mainfrom
feat/tool-executor-terminate

Conversation

@augmentcode

@augmentcode augmentcode Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Implements Agent Runtime Optimization Wave 4.

  • Extracts tool scheduling, hooks, permissions, plan-mode checks, output bounding, deduplication, and tool events into DefaultToolExecutor.
  • Keeps Agent as the composition/session-writeback layer.
  • Adds ToolBatchOutcome (Continue / Terminate) to the turn runtime contract.
  • Allows tools to opt into terminating the current tool batch via Tool::terminate_batch().
  • Prevents the automatic follow-up model call when a batch terminates successfully.
  • Preserves existing tool-result, mode-change, session writeback, and ACP behavior.

Validation

  • cargo check --workspace --locked
  • cargo test -p zene-turn -p zene-tools -p zene-core --lib
  • git diff --check
  • rustfmt check for the new executor

All targeted tests pass. Existing unrelated unused-import warnings remain.


Pull Request opened by Augment Code | View session

@EeroEternal
EeroEternal marked this pull request as ready for review August 11, 2026 17:50
@EeroEternal
EeroEternal merged commit 1bd4d55 into main Aug 11, 2026
2 checks passed
@augmentcode
augmentcode Bot deleted the feat/tool-executor-terminate branch August 12, 2026 03:24
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