Skip to content

Re-derive the campaign the README picture claims - #31

Merged
fl-sean03 merged 1 commit into
mainfrom
check-the-showcase-still-holds
Aug 15, 2026
Merged

Re-derive the campaign the README picture claims#31
fl-sean03 merged 1 commit into
mainfrom
check-the-showcase-still-holds

Conversation

@fl-sean03

Copy link
Copy Markdown
Owner

plates.json is what the showcase frame in the README is rendered from — every well of every round, what went into it, and what the colorimeter read. It is a published claim about what this code does, and nothing re-ran it.

A change to the optimizer, the dye model, or the instrument's noise would have left a picture in the README describing a campaign the code no longer runs, with every other check still green. Examples are not on the default test path, so nothing was watching.

Why not a byte diff

A campaign mints a fresh campaign_id and a fresh run_id per well on every execution, so the file differs on every run for the one reason that carries no meaning. Demanding byte equality would make this fail constantly and get deleted.

Identifiers are stripped at any depth; everything else is compared — the recipes tried, the colours measured, the errors, where the search ended up.

Verified failing, not just passing

Changing the simulator seed produces:

.best.measured_rgb[0]: committed 72.31714298414094, regenerated 71.68308612059515

That precision is the point. A bare "the campaign changed" would send somebody diffing a six-hundred-well JSON document by eye.

Good news from writing it: the committed showcase is currently honest. It reproduces exactly.

Its own CI job

It costs a minute, and as a step in test it would add that minute to all three Python versions. In parallel it costs nothing on the wall clock. Same reasoning the scene rebuild uses, one tier cheaper.

make showcase locally; documented in AGENTS.md alongside the other gates.

Gates

make lint 0 · make test 707 passed · make showcase passes in 59s

🤖 Generated with Claude Code

https://claude.ai/code/session_018PcmK6wy24Fokk5hqtfH74

`plates.json` is what the showcase frame is rendered from: every well of every round, what went
into it, and what the colorimeter read. It is a published claim about what this code does, and
nothing re-ran it. A change to the optimizer, the dye model, or the instrument's noise would have
left a picture in the README describing a campaign the code no longer runs, with every other check
still green. Examples are not on the default test path, so nothing was watching.

Byte equality is not available and demanding it would be worse than nothing: a campaign mints a
fresh id per run, so the file differs on every execution for the one reason that carries no
meaning. Identifiers are stripped and everything else is compared — the recipes tried, the colours
measured, the errors, where the search ended up.

Verified failing as well as passing. Changing the simulator seed makes it report
`.best.measured_rgb[0]: committed 72.31714298414094, regenerated 71.68308612059515`, which is the
level of detail this needs: a bare "the campaign changed" would send somebody diffing a
six-hundred-well document by eye.

Its own CI job rather than a step in `test`, because it costs a minute and would otherwise add that
minute to all three Python versions. In parallel it costs nothing on the wall clock.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018PcmK6wy24Fokk5hqtfH74
@fl-sean03
fl-sean03 merged commit 38de846 into main Aug 15, 2026
8 checks passed
@fl-sean03
fl-sean03 deleted the check-the-showcase-still-holds branch August 15, 2026 01:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant