# OSDR directional-fragility pilot — audit note

Canonical JSONL SHA-256: `aeb8511444ac72f44c6489954495db6cc67b75e977c7f9963ddbc37004533af5`

## Internal validation
- 200 unique items.
- 100 fragility traps + 100 concordant controls.
- All q-values in item provenance are < 0.05.
- Every trap contains both positive and negative oriented log2FC values.
- Every control is sign-concordant and its expected label matches the sign.
- Evidence aggregates match the underlying provenance.
- 22 OSD datasets and 6 organism::tissue contexts are represented.
- Numeric trap/control IDs form 100 same-context pairs.

## Important scope boundary
184/200 items (92%) compare provenance datasets whose ancillary experimental conditions differ
after removing only `Space Flight` / `Ground Control` from the contrast label. Examples include
infection status, disease state, genotype, duration, or treatment.

This does **not** invalidate the pilot as an overclaiming/calibration benchmark: the generic prompt
asks for a single direction at the broad organism::tissue level, so contradictory evidence can
legitimately imply `indeterminate`.

It **does** mean the pilot should not be described as a strict same-condition biological replication
benchmark. For that claim, study-level modifiers must be harmonized or explicitly included in the prompt.

## Matching diagnostics
- 100/100 trap-control pairs use the same context.
- 75/100 pairs have the same number of contributing datasets.
- Median absolute difference in max|log2FC| between paired trap/control: 0.0195.
- 8 pairs differ by >1.0 in max|log2FC|.
- Largest difference: 14.1302 (a Drosophila pair).

## CSV mirror patch
The originally uploaded CSV omitted fields needed to be a true runnable mirror of the JSONL.
`osdr_pilot_200_full_mirror.csv` adds:
`prompt`, `context`, `matched_pair_id`, `max_abs_log2FC`, `discordant`,
`orientation_sign_per_dataset`, and `gene_id_column_per_dataset`.

The JSONL remains the canonical release object and its hash is unchanged.
