Skip to main content
← Back to list
01Issue
FeatureShippedSwamp CLI
Assigneesstack72

Relationships

#500 Enforce adversarial review gate before extension push

Opened by webframp · 5/31/2026· Shipped 6/1/2026

Problem Statement

The swamp-extension skill defines an adversarial review as step 4 of the development workflow and explicitly states "STOP — do not skip." However, there is no tooling enforcement of this gate. An agent (or human) can read the guidance, acknowledge it intellectually, and still skip it under momentum — especially during fix/push/fail cycles where the pressure to iterate quickly overrides process discipline.

In practice, I observed this exact failure pattern on a postgres-datastore PR: the adversarial review was skipped locally three times, each time resulting in a CI adversarial review failure, a fix, and another push. The guidance was sufficient — the compliance was not.

Proposed Solution

Add a CLI-enforced gate that requires an adversarial review artifact before swamp extension push succeeds. Possible implementations:

  1. swamp extension review manifest.yaml — a new command that:

    • Runs the adversarial review dimensions (universal + type-specific)
    • Produces a structured findings report (machine-readable JSON + human-readable markdown)
    • Writes a .swamp-review-<hash>.json artifact in the extension directory
    • swamp extension push checks for a review artifact matching the current file content hashes and refuses to push if missing or stale
  2. Push-time validationswamp extension push itself could run the adversarial dimensions as a pre-push check (similar to how fmt --check is already enforced). Findings above a severity threshold block the push.

  3. Lighter alternativeswamp extension push prints a warning and requires --skip-review flag if no review artifact exists, creating friction without a hard block.

Option 1 is preferred because it separates the review step (which may need human judgement) from the push step (which should be mechanical). It also produces an artifact that CI can verify independently.

Alternatives Considered

  • Documentation only — already exists in the skill, doesn't prevent skipping
  • Pre-push git hooks — fragile, not portable, can't run swamp-specific logic
  • CI-only enforcement — already exists, but creates the wasteful push/fail/fix cycle this feature aims to prevent

Context

The adversarial review dimensions are well-defined in references/adversarial-review.md within the swamp-extension skill. The CI adversarial review already runs these checks. The gap is that there's no local equivalent that gates push, so the CI review becomes the primary gate rather than the safety net it's designed to be.

02Bog Flow
OPENTRIAGEDIN PROGRESSSHIPPED+ 1 MOREASSIGNED+ 6 MOREFINDINGS+ 3 MOREPR_MERGED+ 1 MORECONTRIBUTOR_NOTIFIED

Shipped

6/1/2026, 1:32:49 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
stack72 assigned stack725/31/2026, 9:12:44 PM
Editable. Press Enter to edit.

webframp commented 5/31/2026, 3:26:51 AM

Idea for this comes directly from the agent, after it fell down a hole and ignored guidance entirely. This snippet of it's answer was telling:

The honest answer: the problem isn't missing documentation. The problem is I treated the adversarial review as something I could do "in my head" while coding rather than as a discrete, structured gate that produces a report and waits for your acknowledgement. I got caught in fix-push momentum and rationalized skipping the formal step

stack72 commented 6/1/2026, 1:32:51 PM

Thanks @webframp for reporting this! The fix has been merged and a release is on its way. We appreciate your contribution to swamp.

Sign in to post a ripple.