Perform multi-lens adversarial review to challenge implementation correctness, structural fitness, and necessity. Applies Skeptic, Architect, and Minimalist lenses with 7 attack vectors (V1-V7) and a Destructive Action Gate. Produces a verdict (PASS/CONTESTED/REJECT), NOT code modifications. Trigger on: "adversarial review", "challenge this code", "attack the implementation", "review for edge cases", "check for destructive actions", "stress test the design". Do NOT trigger on: standard code review (use code-review skill), simple linting, formatting checks, or documentation review.
From super-devnpx claudepluginhub jenningsloy318/claude-skill-artifacts --plugin super-devThis skill uses the workspace's default tool permissions.
Challenge implementations from distinct critical lenses to catch issues that standard code review misses. Produces a verdict, NOT code modifications.
Announce at start: "Running adversarial review with multi-lens challenge and destructive action gate."
code-review or code-review-expert skills)Gather before starting the review:
{base_sha, head_sha} or a list of changed files| Size | Threshold | Reviewers |
|---|---|---|
| Small | < 50 lines, 1-2 files | 1 (Skeptic) |
| Medium | 50-200 lines, 3-5 files | 2 (Skeptic + Architect) |
| Large | 200+ lines or 5+ files | 3 (Skeptic + Architect + Minimalist) |
Each reviewer adopts one lens exclusively:
Ask:
Attack Vector Sub-Checks:
<script>, SQL injection patterns, path traversal (../), null bytesAsk:
Attack Vector Sub-Checks:
Ask:
Attack Vector Sub-Checks:
For each active lens, review its Attack Vector Sub-Checks:
Lens/Vector tags (e.g., Skeptic/V2, Architect/V7).Vector-to-Lens mapping:
An always-on checkpoint that scans the diff for irreversible operations. This gate runs on every review regardless of change size or lens count.
Scan all files in the diff for these categories:
| Category | ID | Pattern Examples |
|---|---|---|
| Data Destruction | DAT | DROP TABLE, DELETE FROM (no WHERE), TRUNCATE, rm -rf, unlink (recursive), fs.rm, cloud destroy/terminate-instances |
| Irreversible State | IRR | git push --force, git reset --hard, git branch -D, DROP COLUMN, npm unpublish, migration down() without up() |
| Production Impact | PRD | Deploy targeting prod/production/live, DB migration on non-dev env, DNS/SSL changes, load balancer config changes |
| Permission Escalation | PRM | chmod 777, chmod +s, adding admin/root roles, disabling auth/authz, CORS wildcard *, security header removal |
| Secret Operations | SEC | Deleting/rotating all API keys, revoking certs, clearing credential stores, hardcoded secrets in source |
Gate logic:
FOR each file in diff:
SCAN for patterns matching any destructive category
IF match found:
CHECK if confirmation/undo mechanism exists:
- Backup before delete?
- Soft-delete instead of hard-delete?
- Rollback migration provided?
- Confirmation prompt before destructive command?
IF no safeguard:
Emit HALT finding (category, file:line, blast radius)
ELSE:
Emit INFO note (safeguard acknowledged)
IF any HALT findings exist:
Gate Verdict = BLOCKED
Overall verdict forced to CONTESTED (minimum)
IF multiple HALT findings:
Overall verdict forced to REJECT
ELSE:
Gate Verdict = CLEAR
HALT finding format (DAG-XXX):
DAG-001 | Gate/[CATEGORY_ID] | `file:line`
Category: [category name]
Operation: [what the code does]
Reversibility: IRREVERSIBLE -- [why]
Blast Radius: [what is affected]
Safeguard Required: [concrete action to add safety]
Verdict logic:
IF Gate Verdict == BLOCKED (any HALT findings):
IF multiple HALT findings:
Verdict = REJECT
ELSE:
Verdict = CONTESTED (minimum, can still be REJECT based on other findings)
ELSE:
PASS -- no high-severity findings
CONTESTED -- high-severity findings but reviewers disagree
REJECT -- high-severity findings with reviewer consensus
HALT rules:
# Adversarial Review: [Feature/Fix Name]
**Date:** [timestamp]
**Reviewer:** adversarial-review skill
**Verdict:** PASS | CONTESTED | REJECT
## Intent
<what the author is trying to achieve>
## Verdict Summary
<one-line summary>
## Change Scope
| Metric | Value |
|--------|-------|
| Lines changed | X |
| Files changed | X |
| Size classification | Small/Medium/Large |
| Reviewers activated | Skeptic [+ Architect] [+ Minimalist] |
| Attack vectors applied | V1-V6 [+ V7] |
## Destructive Action Gate
**Gate Verdict:** CLEAR | BLOCKED
| Check | Status | Evidence |
|-------|--------|----------|
| Data Destruction (DAT) | CLEAR/HALT | [details or file:line] |
| Irreversible State (IRR) | CLEAR/HALT | [details or file:line] |
| Production Impact (PRD) | CLEAR/HALT | [details or file:line] |
| Permission Escalation (PRM) | CLEAR/HALT | [details or file:line] |
| Secret Operations (SEC) | CLEAR/HALT | [details or file:line] |
### HALT Findings
<DAG-XXX entries if any, or "None">
## Findings
<numbered list, ordered by severity: HALT -> high -> medium -> low>
<each finding tagged with Lens/Vector: e.g., Skeptic/V2>
### High
**AF-001** | Skeptic/V2 | `file:line`
**Issue:** [description]
**Recommendation:** [concrete action, not vague advice]
### Medium
**AF-002** | Architect/V7 | `file:line`
**Issue:** [description]
**Recommendation:** [concrete action]
### Low
**AF-003** | Minimalist/V7 | `file:line`
**Issue:** [description]
**Recommendation:** [concrete action]
## Vector Coverage
| Vector | Lens | Findings | Highest Severity |
|--------|------|----------|-----------------|
| V1: False Assumptions | Skeptic | 0 | -- |
| V2: Edge Cases | Skeptic | 0 | -- |
| V3: Failure Modes | Skeptic | 0 | -- |
| V4: Adversarial Input | Skeptic | 0 | -- |
| V5: Safety & Compliance | Skeptic | 0 | -- |
| V6: Grounding Audit | Skeptic | 0 | -- |
| V7: Dependencies | Architect | 0 | -- |
## What Went Well
<1-3 things the reviewers found no issue with>
DROP TABLE or rm -rf can cause irreversible damage.01.1-behavior-scenarios.md is available, the reviewer must verify that every SCENARIO-XXX has a corresponding passing test. Skipping this check allows behavior gaps to slip through to production.| Verdict | Meaning | What to Do |
|---|---|---|
| PASS | No high-severity findings | Safe to proceed |
| CONTESTED | High-severity findings or single HALT | Review findings; decide whether to fix or accept risk |
| REJECT | Consensus high-severity findings or multiple HALTs | Must fix before proceeding |
| Severity | Impact | Examples |
|---|---|---|
| HALT | Irreversible operation without safeguard | Destructive Action Gate only — DROP TABLE, rm -rf, git push --force, chmod 777 |
| High | Breaks correctness, security, or core functionality | Unhandled error paths, race conditions, security holes, missing validation |
| Medium | Structural weakness or unnecessary complexity | Coupling issues, premature abstractions, responsibility leaks |
| Low | Minor observations or style preferences | Naming suggestions, minor simplifications |
When used within the super-dev workflow:
When used standalone (outside super-dev):
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.