Generation is cheap. Judgment is not.
Every AI batch lands raw, and somebody has to decide what deserves to exist. This is the review layer we built to do that at production speed: a gallery, a keyboard, and a rule that decisions are data.
Why AI output needs a review layer at all
A generation batch is not a deliverable. It is raw coverage, and most of it will never ship. The work that actually decides quality happens after the model finishes: a human moving takes from raw to selects to final, fast enough that curation never becomes the bottleneck.
So we built the review layer as seriously as the generation layer. Nothing reaches a client without passing through it.
One file, no server, no login
Every review round is a single self-contained HTML page, opened straight off disk. No web app, no cloud dashboard, no service that has to stay up. It works on any laptop with a browser, and the round's decisions survive a reload because state lives locally.
Cards are grouped the way a director thinks, by section and character, never by model or raw file order. Each card carries the take, its ID, an expandable prompt excerpt, and the receipts: model, aspect, resolution, cost.
Keyboard-first, because rounds are big
A review round can be dozens to hundreds of items. So judgment runs at keyboard speed: one key approves, one rejects, arrows move, and a lightbox opens full resolution only when you actually want to look closer. Shortcuts switch off while you type feedback, so notes never get eaten.
One engineering rule keeps it alive at scale: the grid shows thumbnails, never the full-resolution files. A batch of 4K stills is gigabytes, and a page pointed at that much data simply goes blank. Full res is for the zoom, not the grid.
Decisions are data. They go back to the machine, not into a spreadsheet.
The decisions feed the pipeline
At the end of a round, one button exports every verdict and moves the files. The gallery is not a dead end. Its decisions move the production forward.
And substantive feedback, the kind that reveals a repeatable model lesson, gets written into the project's standing rules, so the next batch is prompted smarter than the last. One-off notes deliberately do not. Not every complaint is a law.
Raw
The batch lands
Selects
Approved by a human
Finals
Editor-ready, by section
Rejected
Feedback kept on record
We test the tool that tests the work
An early version of this board hardcoded judgments into its build script and pointed the grid at full-resolution files. Both broke, and both fixes became rules.
Now, before a human ever opens a freshly built review page, an automated browser opens it first and checks that it actually works: the right number of cards, thumbnails loading, no console errors, controls responding. Yes, we wrote QA scripts for our own QA tool. That is what it takes to trust a layer this load-bearing.
What ships is a fraction of what gets made
The volume is the easy part. One shot becomes eight variations, a campaign accumulates hundreds of images across rounds, and only a fraction earns its place in a delivery.
That filter is the product. Automation handles the volume, a human enforces the bar, and the review layer is where those two meet without slowing each other down.
Drowning in AI output nobody has judged?
If your team generates faster than it curates, the fix is a review layer, not fewer generations. Fifteen minutes and we will show you ours.
Book a 15 minute call