Skip to content

MAINT: extract technique factory resolution into its own module - #2871

Closed
Manohar Paturi (ManoharPaturi) wants to merge 1 commit into
microsoft:mainfrom
ManoharPaturi:fix/extract-technique-resolution
Closed

Manohar Paturi (ManoharPaturi) wants to merge 1 commit into
microsoft:mainfrom
ManoharPaturi:fix/extract-technique-resolution

Conversation

@ManoharPaturi

@ManoharPaturi Manohar Paturi (ManoharPaturi) commented Sep 26, 2026 •

Copy link
Copy Markdown
Contributor

extracts technique factory resolution into pyrit/scenario/core/technique_resolution.py, per the discussion in #2869, so non-matrix scenarios can resolve techniques without importing the matrix builder.

  • resolve_technique_factories, resolve_technique_factories_for_techniques and TechniqueResolutionError moved with identical signatures, docstrings, and error behavior
  • consumers updated: the matrix builder, benchmark/adversarial.py, and the two lazy imports in scenario.py
  • resolution tests split into their own module with full parity; patch targets in test_default_run_size_estimates.py point at the new module

64 scenario-core tests green, full scenario + backend suites pass (1403), ruff clean.

resolve_technique_factories, resolve_technique_factories_for_techniques and
TechniqueResolutionError move from matrix_atomic_attack_builder to a new
pyrit/scenario/core/technique_resolution module, so non-matrix scenario
shapes can resolve techniques without importing the matrix builder (issue
microsoft#2869). consumers and patch targets updated; resolution tests split into
their own module with full parity.

Signed-off-by: Manohar Paturi <186662190+ManoharPaturi@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings September 26, 2026 07:08

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

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