Individual skill
security-regression-tests
Turning a confirmed and fixed finding into a permanent guard: proving the test fails without the fix, asserting the effect and not only the status code, seeding the two principals an authorization test needs, making a timing or out-of-band proof deterministic enough for CI, and keeping the test in a job that can actually block. Use once a security finding has been confirmed and fixed, or when a security test is failing, skipped, or about to be deleted.
skills/security-regression-tests/SKILL.md
Source commit eaba88102d91df65a9aa6397e8507c315c018f5e
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- No
- Repository scan complete
- No
- Skill scan complete
- Yes
- Observed behavior
- Not checked yet
- Last checked
- Nov 6, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
Standard SKILL.md format has not been attested at this commit. No installation command is available; inspect the source.
Repository context
- Repository stars (not skill ratings)
- 23
- Repository last updated
- Aug 14, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 7,616 bytesreferences/test-by-class.mddoc · 5,810 bytesreferences/where-verification-runs.mddoc · 2,175 bytes
Read excerpt
# Security Regression Tests
## Rules (for AI agents)
### ALWAYS
- **Prove the test fails without the fix.** Revert the patch, or mutate the guard, and
confirm the new test goes red — then restore. A test written after the fix can be
vacuously green: wrong route, wrong fixture user, wrong assertion target, a typo in
the payload. It will stay green forever and nobody will learn anything from it. This
is the one step that distinguishes a guard from a decoration, and it is the one
most often skipped.
- Assert **both directions**: the attack input now yields the secure outcome, *and* a
legitimate input still succeeds. A deny-only test passes equally well against an
endpoint that is broken for everyone, so it will hold the line and tell you nothing