EqualifyEverything / benchmarks-ai-alt

Keep a local copy of every corpus image
An item recorded by URL alone stops being scoreable the day its page changes, and the change is silent: nobody can tell afterwards whether the gold standard was right about the image the model was actually given. So the corpus now archives the bytes. tools/fetch-images.mjs copies each image into corpus/images/, names the copy after its item, and writes image_file and image_sha256 into the record. Nothing else writes that directory. The checks are split by what they can see. validate.mjs checks the shape of the reference and adds a corpus-level criterion, so an accepted item with an image URL must have a copy. fetch-images.mjs --verify checks the bytes on disk against the recorded hash. The loop runs both every round, and apply-verdicts.mjs refuses to promote an item whose image was never copied. A URL that has stopped resolving is an ordinary outcome: the item keeps its URL and waits. A copy whose bytes changed under us stops the round, because every judgment about that item was made against the old ones. The directives, the schema and the READMEs say all of this, and AGENTS.md names the directory in its one exception to the plain text rule. Self-tests: 12 validator, 10 apply-verdicts, 10 second-pass, 9 fetch-images, 22 loop. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Blake Bertuccelli-Booth Blake Bertuccelli-Booth committed on Aug 27, 2026, 07:52 PM
Showing 22 changed files +970 additions -64 deletions
Browse files at this commit →