Skip to content

MAINT: Split TAP node execution scheduling - #2382

Open
Roman Lutz (romanlutz) wants to merge 2 commits into
microsoft:mainfrom
romanlutz:romanlutz-split-tree-node-execution
Open

MAINT: Split TAP node execution scheduling#2382
Roman Lutz (romanlutz) wants to merge 2 commits into
microsoft:mainfrom
romanlutz:romanlutz-split-tree-node-execution

Conversation

@romanlutz

Copy link
Copy Markdown
Contributor

Description

TreeOfAttacksWithPruningAttack previously owned bounded node dispatch alongside tree orchestration. This change extracts that mechanical scheduling responsibility into a focused internal _TreeOfAttacksNodeExecutor, colocated in tree_of_attacks.py so the TAP implementation remains easy to navigate.

Nodes continue to own branch-local state and per-node conversation/scoring behavior. The attack continues to own branching, scorer-driven pruning, visualization, persistence references, best-node tracking, and result construction. Batch order, concurrency, failure propagation, cancellation behavior, TAP/PAIR APIs, and identifiers remain unchanged.

Tests and Documentation

  • Added deterministic coverage for batch ordering, node-state isolation, failure behavior, and cancellation propagation.
  • Ran the TAP/PAIR unit selection: 124 passed.
  • Ruff, ty, and commit hooks passed for the changed files.
  • Documentation was not changed because this is an internal, behavior-preserving responsibility split.

Copilot AI added 2 commits August 12, 2026 06:22
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
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.

2 participants