Skip to content

MAINT: Standardize garak Doctor default strategy to DEFAULT - #2128

Merged
varunj-msft merged 1 commit into
microsoft:mainfrom
varunj-msft:varunj-msft/8380-Standardizing-Scenarios-Garak-Doctor
Jul 7, 2026
Merged

MAINT: Standardize garak Doctor default strategy to DEFAULT#2128
varunj-msft merged 1 commit into
microsoft:mainfrom
varunj-msft:varunj-msft/8380-Standardizing-Scenarios-Garak-Doctor

Conversation

@varunj-msft

Copy link
Copy Markdown
Contributor

Description

Part of standardizing our scenarios.

Flips the garak Doctor scenario's default_strategy from ALL to DEFAULT so it matches the convention used by the other standardized scenarios (e.g. WebInjection). DoctorStrategy already defines a DEFAULT aggregate and both concrete techniques (PolicyPuppetry, PolicyPuppetryLeet) are already tagged "default", so DEFAULT and ALL currently resolve to the same two techniques.

This is a behavior-preserving change: a no-strategy run executes the same techniques as before. Its value is consistency and future-proofing — if a non-default technique is added later, ALL and DEFAULT diverge correctly without another change to the default.

VERSION is intentionally left unchanged. The scenario's resume/identity eval-hash is derived from the resolved techniques (plus datasets, params, target, scorer), not from the default_strategy label, so resolving to the same techniques means the hash is unchanged and existing results still resume. Bumping the version would only cause spurious invalidation.

Tests and Documentation

  • Added a test asserting the default strategy is now DoctorStrategy.DEFAULT.
  • Added a test that a no-strategy (default) run expands to both Policy Puppetry techniques.
  • Made the existing ALL-expansion test pass DoctorStrategy.ALL explicitly (previously it relied on the default), so ALL and DEFAULT are both covered.
    All doctor unit tests pass; ran ruff, ruff format, and ty clean.

Documentation: none needed — no user-facing docs reference the Doctor default strategy.

Flip the Doctor scenario's default_strategy from ALL to DEFAULT for
consistency with the other standardized scenarios (matching WebInjection).
Both Policy Puppetry techniques are already tagged "default", so DEFAULT and
ALL resolve to the same techniques -- this is a behavior-preserving change and
the VERSION is intentionally unchanged (the resume eval-hash derives from the
resolved techniques, not the default-strategy label).

@rlundeen2 rlundeen2 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.

nice catch! Although all is the same as default rn, I think this is better in case we add more

@varunj-msft
varunj-msft added this pull request to the merge queue Jul 7, 2026
Merged via the queue into microsoft:main with commit eac19f7 Jul 7, 2026
53 checks passed
@varunj-msft
varunj-msft deleted the varunj-msft/8380-Standardizing-Scenarios-Garak-Doctor branch July 7, 2026 17:03
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