# Challenge

Stress-test a finding against the choices you did not make.

- Repository: https://github.com/pedrohcgs/claude-code-my-workflow (1676 stars)
- Category: Testing
- License: MIT
- Last updated: 2026-09-27
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add pedrohcgs/claude-code-my-workflow --skill challenge -g -a claude-code -y`
Codex: `npx skills add pedrohcgs/claude-code-my-workflow --skill challenge -g -a codex -y`
Cursor: `npx skills add pedrohcgs/claude-code-my-workflow --skill challenge -g -a cursor -y`
Gemini CLI: `npx skills add pedrohcgs/claude-code-my-workflow --skill challenge -g -a gemini-cli -y`

## Description

Stress-test a finding against the choices you did not make. Enumerates the discrete forks a competent analyst could have taken (measure definition, sample filter, control set, clustering level, weighting, functional form), runs the specification grid, and reports the distribution rather than a point estimate, then attacks the identifying assumption with named, computable sensitivity statistics. Use when the user says "is this robust", "challenge this result", "specification curve", "multiverse", "how sensitive is this", "what if I'd used a different measure", "stress-test my estimate", or before a result becomes a headline claim. NOT a reviewer of prose or code, it challenges the CLAIM.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Challenge, does the result survive the choices you didn't make?

A single specification is one draw from a distribution you never looked at.

**Why this exists, measured rather than asserted.** In a controlled study, 150 autonomous
agents were given the same data and the same questions. Effect-size interquartile ranges
reached **~10.7 %/yr**, and the spread concentrated in **discrete measure-choice forks**, not
in estimation noise. *Within* a measure family, agents agreed to ~0.25 %/yr. Two findings from
that study shape this skill:

- **AI peer review left the spread essentially unchanged.** Review catches errors; it does
  **not** reduce analytical-choice variance. A clean referee report is not robustness.
- Exposure to exemplar papers collapsed the spread by 80, 99 %, **convergence by imitation, not
  by correctness.** Herding is not agreement.

So the spread has to be *measured*, not reviewed away.

## Preconditions

- A working baseline specification that runs and produces the headline estimate.
- The estimate's **estimand stated in words**, "the ATT for units treated in 2015, over
  2013, 2019, on the treated population". If you cannot state it, stop: you cannot challenge a
  claim you have not defined.
- A **fork budget** (`--forks`, default 64). Grid size is the product of your choices; it grows
  faster than intuition.

## Step 1, Enumerate the forks, before running anything

List every point where a competent, honest analyst could have chosen differently. Do this
**before** seeing any alternative result, and write it down, the list is the pre-registration
of the challenge.

The rest: https://github.com/pedrohcgs/claude-code-my-workflow/blob/HEAD/.claude/skills/challenge/SKILL.md
