design-unbiased-benchmarks

Design preregistered, neutral, reproducible benchmarks for software and model evaluations.

Updated Apr 27, 2026
One-click install
npx skills add https://github.com/standardbeagle/lci-cpp --skill design-unbiased-benchmarks-standardbeagle
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: design-unbiased-benchmarks
Source: https://github.com/standardbeagle/lci-cpp/tree/main/.agents/skills/design-unbiased-benchmarks
Command: npx skills add https://github.com/standardbeagle/lci-cpp --skill design-unbiased-benchmarks-standardbeagle

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Benchmarks and A/B evaluations often leak bias through leading prompts, non-equivalent treatment arms, shared-failure-mode oracles, or analysis rules chosen after seeing results. This Skill enforces a preregistered, falsifiable experiment design so benchmark outcomes can actually inform decisions. ## Core Features & Use Cases - Preregistration Manifest: Defines a JSON schema for decisions, claim boundaries, arms, hypotheses, metrics, controls, stopping rules, and oracle independence, validated by a bundled Python script. - Bias Stop Conditions: Blocks execution when arms differ beyond the declared treatment, prompts reveal the expected winner, or infrastructure failures would be scored as wrong answers. - Methodology Reference: Covers hypothesis registration, arm equivalence, neutral prompting, independent oracles, controls, failure handling, variance analysis, and reporting of nulls and misses. - Use Case: Before comparing two prompt formats across models, produce a validated manifest with opaque arm labels, a null control, an independent oracle with discrimination tests, and a frozen analysis plan timestamped before any results are collected. ## Quick Start Use the design-unbiased-benchmarks skill to design a preregistered A/B benchmark comparing two model configurations before running any evaluation.

Frequently Asked Questions about design-unbiased-benchmarks

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design an unbiased benchmark for model comparison?▼

Define the decision and narrowest claim first, then preregister hypotheses, metrics, controls, repetitions, and stopping rules before collecting results. Build equivalent arms that differ only in the declared treatment, use neutral prompts, and validate the manifest with the bundled Python script.

What is a preregistration manifest for benchmarks?▼

A preregistration manifest is a JSON document recording the decision, claim boundary, arms, hypotheses, metrics, controls, oracle, analysis plan, and fixture digests before results are collected. It is committed or timestamped so analysis rules cannot be chosen after seeing outcomes.

How do I validate a benchmark preregistration manifest?▼

Run the bundled validate_manifest.py script with the manifest path as its argument. It checks required fields, schema version, at least two arms with unique ids, a primary metric, a null control, oracle fields, and a repetition count of at least two.

When should a benchmark not be run?▼

Do not run when treatment arms differ beyond the declared treatment, prompts reveal the expected answer or preferred arm, the oracle shares the failure mode it evaluates, controls cannot produce the expected signal, or analysis choices remain open after outcomes are visible.

Why does an evaluation oracle need a discrimination test?▼

An oracle independent of the system under test can still be useless if it cannot tell right from wrong. The discrimination test proves it accepts a known-good case and rejects a plausible wrong case, preventing shared bugs from validating themselves.