InconclusiveCould not measure on claude-haiku-4-5Could not measure on gpt-5-miniCould not measure on gemini-3.1-flash-lite

Instructions before or after

Instructions placed after a document outperform instructions placed before it for extraction accuracy.

We could not measure this one. Our task was easy enough that both orderings scored full marks, so nothing separated them.

Why it matters

A test that both options pass tells you nothing about which one to choose.

Every model scored full marks with and without it, so the task set separated nothing.

What the marks mean

  • Could not measure
Show the per-model numbers

Could not be measured on claude-haiku-4-5, gpt-5-mini and gemini-3.1-flash-lite.

Circulates in practitioner communities. Tested because it circulates, not because it is endorsed.

This tip is OpenAddict's plain-language read of the measured result. The measurement below is the evidence, and it is what the reading has to answer to.

Ledger idC02-instruction-after

What was tested

This claim circulates in practitioner communities as advice about how to write prompts. That it circulates is an input to what gets tested here. It is a reason to test the claim, and it is not evidence for or against it. The result below is the evidence, and it is the only thing on this page that carries weight.

The comparison is paired. Two prompts differ in one respect, the manipulated variable, and are otherwise identical by construction. Nothing here supports a causal reading beyond that pairing.

Result

Per-model results. Means are over valid scored records only. Invalid records are excluded from every denominator and counted in coverage.
Measureclaude-haiku-4-5gpt-5-minigemini-3.1-flash-lite
Control arm1.000n 501.000n 501.000n 50
Treatment arm1.000n 501.000n 501.000n 50
Delta+0.000+0.000+0.000
Interval, 95 percent0.000 to 0.0000.000 to 0.0000.000 to 0.000
OrbitUnobservable100 of 100 recordsUnobservable100 of 100 recordsUnobservable100 of 100 records

Orbit is assigned by the frozen status_v1 rule. On this scale, deterministic pass rate, 0 to 1, the pass threshold is +0.20 and the failure floor is -0.20, each requiring an interval that excludes zero.

Method for this claim

Task set
10 synthetic records of roughly 180 to 240 words each, each containing exactly one retrievable total. The document text is byte identical between arms; only the position of the instruction moves. Hardened for instrument v2: v1 documents contained exactly one currency figure, so the answer was findable regardless of where the instruction sat. v2 documents carry five or six figures including a subtotal, tax, previous balance, credit note and a quoted estimate, with the invoice total not last and not largest. Position of the instruction now has something to bite on.
Runs per model per arm
5
Scoring
Deterministic, via scoreExactMatch. A committed function scores each answer with no model in the loop.
Pass criterion as written for the pilot
Treatment exact-match rate exceeds control by at least 10 percentage points on the same 10 documents.

The published verdict comes from status_v1, not from the pass criterion above. The criterion is recorded because it is what the claim was registered with before the run.

Model versions, as recorded

Read from the run records, not from configuration.
ModelVersion string returnedDelta on this claimInterval
claude-haiku-4-5claude-haiku-4-5-20251001+0.0000.000 to 0.000
gpt-5-minigpt-5-mini-2025-08-07+0.0000.000 to 0.000
gemini-3.1-flash-litegemini-3.1-flash-lite+0.0000.000 to 0.000

Reading across models

Sampling was not held constant across vendors, so comparing one model column against another compares two settings as well as two models.

gpt-5-mini rejected the fixed sampling setting and ran at its own default on all 1040 of its calls. The other models ran at temperature 0.

The tip above is editorial. Every figure inside the measurement is computed at build time from the committed pilot records by the status_v1 rule, and none of it is written by hand.