Skip to content

Release per-row detector decisions for the WAITI 2026 paper - #125

Closed
architsharm wants to merge 2 commits into
mainfrom
claude/waiti2026-data-release
Closed

architsharm wants to merge 2 commits into
mainfrom
claude/waiti2026-data-release

Conversation

@architsharm

Copy link
Copy Markdown
Owner

What

benchmarks/releases/waiti2026/ has the per-row detector decisions behind the WAITI 2026 paper "No Tier Wins Everywhere". There are 19 files in rows/, one per dataset, about 16 MB in total; SafePyramid is gzipped. Each row has:

  • the gold label;
  • each tier's decision and its score where one was stored (code, PIGuard, ProtectAI, judgment model, LLM);
  • the dev/test half used for threshold selection;
  • for the injection sets, whether the row is in PIGuard's training data.

aggregates/ holds the counts the paper reports where per-row data was not stored, such as Table 3 and the AgentDojo provenance summary. prompts.json has our prompts verbatim. The README maps each file to the paper's tables and documents the fields, thresholds, sources and licences.

No third-party text

Rows are keyed by the dataset's own ID where it has one. Otherwise they are keyed by the source file and its 0-based index at 723fcec, plus a SHA-256 of the normalised row text so others can join the rows to their own copy. No dataset text is included.

I checked each source's licence on its card or repository. Two datasets are not released per row:

  • CoCoNot: its card names two different data licences.
  • R-Judge: its repository has no licence.

Their aggregate numbers are unchanged.

How to verify

python3 benchmarks/releases/waiti2026/verify.py

The script uses only the standard library. It recomputes the headline numbers and compares them with the paper's generated macros (paper_numbers.tex) and with the appendix cells (aggregates/camera_ready.json). Current result: 97 checks passed, 0 failed.

This adds files under benchmarks/ only, so the vendored wheels don't need a rebuild.

benchmarks/releases/waiti2026/ holds one JSONL file per dataset the paper
scores. Each row has the gold label and every tier's decision and stored
score: code, PIGuard, ProtectAI, the judgment model and the LLM. Each row also
has the dev/test half used to choose thresholds and, for the injection sets,
whether its text is in PIGuard's training data.

Rows are keyed by the dataset's own ID or by source file and index at
723fcec, plus a SHA-256 of the normalised row text. No dataset text is
included. CoCoNot (conflicting licences on its card) and R-Judge (no
licence) are left out per row; their aggregates stay in the paper.

verify.py (stdlib) recomputes the headline numbers and checks them against
the paper's generated macros and appendix cells: 97 checks pass.
@vercel

vercel Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
guardrails-api Ready Ready Preview Oct 23, 2026 6:06pm UTC
guardrails-dashboard Ready Ready Preview Oct 23, 2026 6:06pm UTC
guardrails-redteam-lang Ready Ready Preview Oct 23, 2026 6:06pm UTC

@architsharm

Copy link
Copy Markdown
Owner Author

Moved to https://github.com/architsharm/waiti2026-artifact (standalone artifact repo).

@architsharm
architsharm deleted the claude/waiti2026-data-release branch October 24, 2026 03:27

This branch was successfully deployed

3 active deployments
Preview – guardrails-api — 94ed92a4 Deployed Oct 23, 2026 by vercel[bot]
Preview – guardrails-redteam-lang — 94ed92a4 Deployed Oct 23, 2026 by vercel[bot]
Preview – guardrails-dashboard — 94ed92a4 Deployed Oct 23, 2026 by vercel[bot]
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