$ cat ai-red-teaming/week/2026-11-02.log
the week in review · Nov 2 – Nov 8, 2026
Credential leaks patched in promptfoo and PyRIT
By RepoJournal · composed from the cited sources · human-reviewed weekly · methodology
PyRIT's GUI drops routine refresh buttons for quiet once-a-minute updates, and promptfoo restricts derived metric formulas to a numeric subset.
fix(deps): update Azure Identity to use patched MSAL Node promptfoo/promptfoo
Azure Identity 4.13.3 pulled a second MSAL Node at 6.0.1, the version hit by GHSA-xcx6-jx8p-x3h5; 4.14.1 picks up the 7.1.0 copy the root dependency already used. If you authenticate promptfoo against Azure OpenAI, this is the upgrade to take first.
FIX: Reject explicitly supplied --config-file paths that do not exist microsoft/PyRIT
A --config-file path that did not exist was silently dropped and the run continued on defaults, so a typo could leave pyrit_scan or pyrit_shell pointed at an unintended server or auth mode. Both now refuse to start.
[BREAKING] MAINT Move in-repo scorers onto the expectation-aware piece hook (phase 12, part 2) microsoft/PyRIT
In-repo scorers move onto the expectation-aware piece hook in phase 12, part 2. The change is flagged BREAKING, so re-check any custom scorer wiring before you pull it into a working pipeline.
fix(evaluator)!: restrict derived metric formulas promptfoo/promptfoo
Derived metric formulas now use a small set of numeric operations; anything else makes promptfoo name the metric and stop before any test case runs. Weighted averages, chained scores, and expressions using __count still work, but comparisons and conditionals do not.
9 - FEAT: Automatic Refresh microsoft/PyRIT
PyRIT's GUI removes the routine Reload and Refresh controls and instead updates visible views once per minute without dropping view state or unsaved edits. Background failures surface as error text only, so a stale view no longer announces itself with a failed refresh.
fix(providers): update OpenAI models and API compatibility promptfoo/promptfoo
The OpenAI provider picks up GPT-6.1 Terra and trusted-access model recognition along with retired endpoints and changed SDK contracts, while custom gateways and historical billing are preserved. Recheck any pinned model IDs and pricing assumptions in your configs.
fix(tracing): preserve OTLP receiver startup options promptfoo/promptfoo
Repeated calls to startOTLPReceiver were overwriting the shared endpoint's accepted formats and redaction/tool policies and trying to bind a second listener. The first successful startup's options now stick, and later callers register only their evaluation-level settings.
fix(attempt): match a comma-separated lang_spec in prompt_for and outputs_for NVIDIA/garak
prompt_for and outputs_for compared lang_spec with a bare !=, so a comma-separated spec like "en,de" never matched an English attempt. Both now split on commas and strip whitespace through a shared helper on Attempt.
$ ls ai-red-teaming/week/ # the briefings behind this review
Keep up with AI Red Teaming in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.
Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.