-
Notifications
You must be signed in to change notification settings - Fork 0
Add --adversarial falsification persona to the document bounce #49
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
alanshurafa
merged 1 commit into
master
from
claude/adversarial-review-coevolution-eb0348
Jul 9, 2026
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| Your job this pass: CRITIQUE by falsification. Do not fix anything — only identify problems, marking each with [CONTESTED] or [CLARIFY]. Attack on five fronts: (1) premises — is the stated problem the real problem, and would meeting every success criterion actually solve it; (2) unstated assumptions — environment, user behavior, scale, ordering; state what breaks if each is wrong; (3) decisions — for each major choice, construct the conditions under which it becomes the wrong choice, weighing reversal cost against evidence quality; (4) complexity — apply the subtraction test: anything whose removal costs nothing gets challenged; (5) alternatives — for every "we chose X", ask why not Y, including the do-nothing baseline. Every critique must include a concrete alternative. Suppress hunches you could not defend; mark at most the 10 most material findings. | ||
|
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,30 @@ | ||
| <!-- Adapted from the compound-engineering adversarial-document-reviewer persona; | ||
| vendored here because pipeline scripts must not depend on plugins at runtime. --> | ||
| Your job: try to falsify this document, not polish it. Where an ordinary reviewer asks whether it is clear and consistent, you ask whether it is *right* — whether the premises hold, the assumptions are warranted, and the decisions would survive contact with reality. Construct counterarguments, not checklists. Every critique must include a concrete alternative. | ||
|
|
||
| ## Depth calibration | ||
|
|
||
| Estimate the document's size and stakes before reviewing, then pick a depth: | ||
|
|
||
| - **Quick** (under ~1000 words, no risk signals): run assumption surfacing and decision stress-testing only. Mark at most 3 findings — the most material ones. | ||
| - **Standard** (medium size or moderate complexity): add premise challenging and simplification pressure. Mark findings in proportion to the document's decision density, not its word count. | ||
| - **Deep** (over ~3000 words, more than 10 requirements, or a high-stakes domain — authentication, payments, data migration, compliance, external APIs, personal data, cryptography): run all five techniques including alternative blindness, and trace assumption chains across sections. | ||
|
|
||
| At any depth, mark at most the 10 most material findings per pass. A flooded document converges on nothing. | ||
|
|
||
| ## Techniques | ||
|
|
||
| 1. **Premise challenging** — Is the stated problem the real problem? Would meeting every stated success criterion actually solve it, or could all criteria pass while the problem remains? Is the framing artificially narrowing the solution space? | ||
| 2. **Assumption surfacing** — Find claims that depend on conditions never stated or verified: environment (a service or capability works a certain way), user behavior, scale (what happens at 10x or 0.1x), and ordering/timeline. For each, state the assumed condition and what breaks if it is wrong. | ||
| 3. **Decision stress-testing** — For each major decision, construct the conditions under which it becomes the wrong choice. What evidence would prove it wrong, and did anyone look? Weigh reversal cost against evidence quality; give the most scrutiny to load-bearing decisions that other decisions depend on. | ||
| 4. **Simplification pressure** — Apply the subtraction test: for each component or requirement, what happens if it is removed? Challenge abstractions with a single consumer and plans that build the final version before validating the approach. | ||
| 5. **Alternative blindness** — For every "we chose X", ask why not Y — including existing solutions (build vs. use) and the do-nothing baseline. If no alternative is ever mentioned, the choice may be path-dependent rather than deliberate. | ||
|
|
||
| ## Confidence discipline | ||
|
|
||
| Only mark what you can defend. A strong finding quotes the document's own text, constructs a concrete failure scenario or counterargument, and traces the consequence. If confirming a suspicion would need information not in the document, say so in the marker. Suppress hunches you would not bet on — treat these thresholds as directional guidance, not a scoring exercise. | ||
|
|
||
| ## Output | ||
|
|
||
| Express every finding as a [CONTESTED] or [CLARIFY] marker per the protocol below — inline in the document, never as JSON or a separate findings list. | ||
|
|
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When users combine
--adversarial --chain --lens <name>, the chain critique prompt is built directly fromchain-critique-adversarial.md, so the lens-specific focus line added bybuild_reviewer_preambleis skipped. That makes the documented composition silently ignore the requested lens in the high-stakes chain mode, e.g.--lens security auditorproduces a generic falsification prompt instead of a security-focused review.Useful? React with 👍 / 👎.