Adversarial datasets are usually a record of attacks that already worked. That is useful for regression and useless for discovery, because the next attack is not in the file.
The discipline that produces discovery is writing the attack first, in the same week the defense is being built.
Attack the capability, not the topic
A topic list produces a topic filter. What actually breaks systems is a legitimate request routed through a capability: encoding, indirection, role framing, or a multi-step task where the last step is the problem.
Write attacks by capability and the set stays useful as topics change.
Keep the failed attacks
An attack that did not work is as informative as one that did: it marks a boundary the model currently holds, and it is the first row to re-test after a change.
Most sets keep only successes, which is why they cannot tell you what regressed.
Score by consequence, not by wording
The output can be polite and still be a failure. Score what the response enables, not how it sounds, and write the criterion down before the review.
Refresh on a schedule
Capabilities improve, so attacks that failed last quarter may work now. Re-run the set on each release, and add new attacks at the same cadence.
Zovda builds these collections through Datuva, where each row records the attack technique it exercises. The corpus catalogue shows where boundary rows sit.
Tell us what your system must not enable. We reply within one business day.
