Skip to content

MAINT: Add DEFAULT strategy alias to airt.cyber scenario#2061

Open
varunj-msft wants to merge 1 commit into
microsoft:mainfrom
varunj-msft:varunj-msft/8380-Standardizing-Scenarios-Cyber
Open

MAINT: Add DEFAULT strategy alias to airt.cyber scenario#2061
varunj-msft wants to merge 1 commit into
microsoft:mainfrom
varunj-msft:varunj-msft/8380-Standardizing-Scenarios-Cyber

Conversation

@varunj-msft

Copy link
Copy Markdown
Contributor

Description

Part of the Standardizing Scenarios effort. This brings airt.cyber in line with
the convention the other scenarios follow: a DEFAULT strategy aggregate that drives the
default run, with ALL kept for the exhaustive run.

Cyber only has one technique today (red_teaming), so DEFAULT expands to exactly the same
thing as ALL — this isn't a behavior change, it's added for cross-scenario convention parity
so --strategies default works uniformly everywhere.

One wrinkle worth calling out: red_teaming isn't tagged default in the shared technique
catalog, so the usual TagQuery.any_of("default") would produce an empty aggregate and collapse
the default run to baseline-only. Cyber's DEFAULT matches core instead, which selects the
curated technique without tagging red_teaming globally (that would leak it into other
scenarios' default runs). There's a comment on _CYBER_TECHNIQUE_NAMES noting that adding
another core-tagged technique would pull it into DEFAULT.

Not a breaking change: the default run produces the same atomic attacks as before (same
red_teaming + baseline), so output is byte-identical and --resume stays compatible. No
VERSION bump needed.

Tests and Documentation

Tests (tests/unit/scenario/airt/test_cyber.py):

  • default strategy is now DEFAULT (was ALL)
  • DEFAULT expands to red_teaming and is non-empty (guards against the empty-aggregate footgun)
  • DEFAULT is a subset of ALL
  • updated existing assertions/docstrings that referenced ALL

All 25 cyber tests pass; full airt scenario suite (164) green. ruff, ruff format, and ty clean.

Documentation (doc/scanner/airt.py + .ipynb):

  • added DEFAULT to the Cyber "Available strategies" list
  • ran jupytext to keep the .py and .ipynb in sync

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