# FALSIFIER amendment 2: face-size (zoom) confound rule

Written: 2026-10-27T10:32:43Z (2026-10-27 04:32 MDT, America/Denver). Written before any detector was downloaded or run, and before any new score was computed.
Builds on FALSIFIER.md (sha256 f74b1b4f…) and FALSIFIER_AMENDMENT_1.md (sha256 f8d436ce…). Neither is changed.
The amendment-1 verdict (PASS) stands as recorded. This amendment adds a separate, second verdict.

## Why
In the test images, steering on feature 7446 also seems to turn the subject into a centred close-up
(raw/test/contact_seed0.jpg). A bigger face could raise a whole-image "mouth open" CLIP score without the mouth
opening any more. The question here: does the effect survive once face size is controlled?

## Data (no new generation)
The existing raw/test/img images: 20 test prompts x seeds 0-4, s = 2.0 (m = 291.61), baseline, F7446, the same
20 random matched-density features, and the planted fake. That is 2,300 images, read from disk with their sha256 as in RECEIPT.json.

## Detector (pinned)
google/owlv2-base-patch16-ensemble @ cfd3195ba4ea9592eec887ded089f4c08eff231d (Apache-2.0, ungated),
model.safetensors sha256 e1e130b9e404cf91a75ad45644c1da9d7fa5284085eecc864266a6923efb99e7. OWLv2 is an open-vocabulary detector,
so it works on animal heads (unlike human-face landmark models).
Text queries: "a head of an animal", "a face of an animal". Per image, keep the single highest-scoring box over both queries.
Detection succeeds if that score >= 0.10.
Pre-flight (calibration images only, raw/calib k0 baselines, 25 images): if the detector fails on > 50% of them,
switch to IDEA-Research/grounding-dino-tiny @ a2bb814dd30d776dcf7e30523b00659f4f141c71
(model.safetensors sha256 1a2412ef…42f3), same queries, box threshold 0.25. The switch is recorded. No other tuning.

## Measures
- area = box area / image area (512x512); log_area = ln(area).
- Face crop: the box made square around its centre, side = 1.3 x max(w, h), clipped to the image, resized by the CLIP processor.
- (a) S_crop = 100 x [cos(crop, "a photo of an animal with its mouth wide open") - cos(crop, "a photo of an animal with its mouth closed")],
  with the same pinned CLIP model as the main test.
- (b) Face-area ratio for intervention j: geometric mean over pairs of area(steered_j) / area(baseline). Descriptive only.
- (c) Primary size-controlled effect. Pooled pair-differenced OLS over all 22 interventions:
  dS_crop(j, pair) = b_j + c * dlog_area(j, pair) + e, with one shared slope c and a separate intercept b_j per intervention.
  Random-feature steering also changes face size without targeting mouths, which pins down c.
  b_F is F's mouth-score effect at zero change in face size.
- Matched-size check: pairs with |dlog_area| <= ln(1.25); mean dS_crop for F.

## Detection failures
A pair (prompt, seed) is excluded for intervention j if either its baseline or its steered_j image fails detection.
Failure counts per intervention are reported.
If more than 20 of F's 100 pairs are excluded, the verdict is INCONCLUSIVE.
Exploratory sensitivity only: failures replaced by the full image (area = 1). It cannot change the verdict.

## Decision rule (amendment-2 verdict)
PASS only if all hold:
- R1: b_F >= 1.0 CLIP logit units (half the original whole-image threshold X = 2.0, because crop scoring removes background context).
- R2: b_F > b_r for all 20 random features (rank 1 of 21).
- R3: prompt-cluster bootstrap (2,000 resamples of the 20 prompts, seed 2027, refitting the pooled model each time):
  the 2.5th percentile of b_F is > 0.
- R4: if >= 10 of F's pairs fall in the matched-size band, their mean dS_crop must be > 0. With fewer than 10, R4 is
  "not estimable" and is reported, but not counted.
- Validity gate: the planted fake, judged by R1-R3 against the 20 random features, must FAIL. If it passes, the result is INVALID.
  Each random feature is also judged by R1-R3 against the other 19, and the false-positive count is reported.
Outcomes: PASS / FAIL (listing failed rules) / INCONCLUSIVE / INVALID.
