# First 20 — consolidated review

September 5, 2026. Local review only. **20 authored treatments; 0 completed
examples; no publication approval.** The approved benchmark is unchanged.

This review brings together the proposed coverage, reusable API, first source
choices, actual paired renders, independent findings and reuse pilots. It does
not ask you to accept an unresolved difference by approving the general plan.
Further production beyond this batch waits for your response.

The selected-generation index now links one hash-matched current source review
for each of the 20 treatments. `review-provenance.json` identifies
the review documents, selected artifacts and verification records. Historical
renders and reports remain separate; they cannot supply a current verdict.

## Open the work

From the repository root, run:

```sh
python3 benchmarks/remotion-library/scripts/serve_review.py
```

Open the loopback URL printed by the server. The [searchable review](review/)
has original and different-content movies, synchronized research comparisons,
source mapping, native-frame evidence, editable inputs and hash-bound findings.
The index is a checked snapshot, not a browser-side live verification service.

The [runnable project](project/README.md) and
[agent guide](project/AGENT_GUIDE.md) are the consumer entry points. An agent
retrieves a subset instead of reading all recipes or this review history.

## Decisions in this review

1. **Coverage:** approve or revise the family budget below. It targets 210
   distinct treatments, with at least 30 multi-shot passages included in that
   total. It is a production target, not a claim that 210 qualifying sources
   have already been found.
2. **Reuse contract:** approve or revise the native-timing, typed-input and
   rejection rules. They preserve the selected treatment rather than silently
   shrinking text, slowing movement or replacing its mechanism.
3. **First 20 source choices:** review the actual treatments and their
   content-substitution boundaries. Technical defects and material source
   differences remain uncounted until fixed or explicitly accepted by ID.

Approval of coverage or the contract is not approval of every example. No
material departure, inherited font difference or inspection limitation is
waived by default. Publication requires a separate approval of a frozen release.

## Coverage proposal

| Primary family | Target | Distinctness criterion |
| --- | ---: | --- |
| Openings | 16 | Construction, emphasis, hold and handoff |
| Typography | 24 | Grouping, anchors, reflow, replacement and departure |
| Camera moves | 22 | Path, focal target, blur and settle |
| Interface interactions | 24 | Action, state construction and readable outcome |
| Masks | 12 | Reveal geometry and clipping relationships |
| Selection/highlighting | 16 | Region, drag order and emphasis transfer |
| Overlays | 12 | Anchoring, stacking, construction and exit |
| Lower thirds | 10 | Spatial fields, onset relationship and removal |
| Layered compositions | 14 | Density, depth, trajectories and occlusion |
| Montage | 10 | Rhythm, image relationships and occupancy |
| Transitions | 14 | Visible mechanism and entry/exit relationship |
| Shot continuity | 12 | Preserved anchors, scale, state and attention |
| Logo reveals | 12 | Original identity construction, material and settling |
| Endings | 12 | Exit cadence, retained information and final hold |
| **Total** | **210** | **No cosmetic or duplicate-reference counting** |

Multi-shot is a cross-cutting tag, not an extra count. A passage must demonstrate
distinct coordination; merely concatenating two existing recipes does not create
a third treatment. The original five approved benchmark examples are preserved
separately and are not automatically credited toward this new completion test.

Discovery starts with the existing 100-film research corpus and continues with
actual OpenAI films where coverage is thin. Every counted treatment needs its
own inspected interval and consecutive evidence. Family quotas may change if
the sources do not support enough distinct mechanisms. See [COVERAGE.md](COVERAGE.md).

## Reuse contract

The toolkit uses one typed layer/timeline renderer with source-specific recipes.
Shared mechanisms cover text, masks, media, layered groups, camera transforms,
directional exposure, pointers, identity paths and explicit shot joins. The
book, wordmark and reverse-selection examples also have high-level content
builders; consumers do not have to author hundreds of pose paths.

| Consumer can change | What remains fixed unless separately reviewed |
| --- | --- |
| Text within the declared line, word and measured-width constraints | Type size, line pitch, crop, anchors and reveal order |
| Images, footage and screen specimens in declared local slots | Dimensions, fitting rule, layer count and depth ordering |
| Supported original identity geometry through its typed builder | Construction phases, camera, source cadence and supported topology |
| Declared colors and identity assets | The treatment's contrast hierarchy and supported material behavior |
| Explicit before/after holds, labelled as adaptations | Active movement timing; a hold cannot hide a bad transition |
| Full-shot assembly and declared reset/match joins | Each embedded recipe; a match declaration still needs visual inspection |

The current batch is 1920×1080, 16:9. Native rates are kept as exact fractions,
including 24000/1001 and 60000/1001. Other aspect ratios require reviewed layouts,
not an automatic crop. Mixed-rate passages map elapsed time onto an explicit
output clock; native single-shot renders remain available for source review.

Unsupported content throws. A character count does not prove fit: the loaded
licensed font is measured before rendering. `Sketch`, for example, does not
fit the reel's 181px first-row box and was rejected in an independent trial.
The brief was not rewritten, and the type was not made smaller.

Source footage, OpenAI identity and demo data stay in attributed research
comparisons. Reusable outputs use original or permitted assets. The illustrative
interfaces are not claims about real Poe behavior; real product captures require
separate Poe2 inspection and privacy checks. No all-hands presentation is being
produced here. Full rules: [CONTRACT.md](CONTRACT.md).

### Find and render a subset

From `project/`:

```sh
npm ci
npm --silent run catalog -- search "emphasize a word" --duration '<=3'
npm --silent run catalog -- show study-keyword-double-underline --contract
npm run render -- --recipe study-keyword-double-underline --variant adaptation --out out/underline-adaptation.mp4
npm run verify -- out/underline-adaptation.mp4
```

For new copy, use the selected record's typed Content contract or high-level
builder and pass its JSON with `--content`. Do not edit recipe tracks to force
a brief to fit. Search accepts intent, family, source, duration, input kind and
neighbor ID; it pages at 20 results by default. Neighbor matches are discovery
aids, not approved transitions. Exact setup and portable-package instructions
are in the project guide.

## First 20 source treatments

Frame intervals below are zero-based, with exclusive ends. Each treatment link
opens its selected original/adaptation pair and full source URL, evidence and
findings. Durations follow those frames, not rounded timing guesses. None of
these rows grants completion credit.

| Treatment | Source film | Inspected frames | Native fps |
| --- | --- | --- | --- |
| [Task card and attached explanation](review/?id=agent-task-card-explanation) | A Look at ChatGPT agent | [1156,1450) | 60/1 |
| [Wordmark subtraction and outlined identity finish](review/?id=agent-wordmark-outline-finish) | A Look at ChatGPT agent | [2650,2801) | 60/1 |
| [Outlined archive montage](review/?id=archive-outline-montage) | 10 years. | [648,780) | 24000/1001 |
| [Composer and contextual action reveal](review/?id=atlas-composer-context-reveal) | Introducing ChatGPT Atlas | [253,390) | 30/1 |
| [Reverse selection and attached action](review/?id=atlas-reverse-selection-action) | Introducing ChatGPT Atlas | [1325,1500) | 30/1 |
| [Traveling image trail](review/?id=chatgpt-traveling-image-trail) | ChatGPT Images | [754,906) | 30/1 |
| [Click release into a camera move](review/?id=codex-click-release-camera) | A first look at the Codex app | [412,536) | 24000/1001 |
| [Modal relay and pointer continuity](review/?id=codex-modal-relay) | A first look at the Codex app | [1390,1512) | 24000/1001 |
| [Word-tile collage](review/?id=codex-word-tiles-collage) | Build and share apps in Codex | [140,254) | 60/1 |
| [Translucent contour opening](review/?id=prism-translucent-contours) | Introducing Prism | [0,178) | 60/1 |
| [Device-to-editorial-card arc](review/?id=pulse-device-card-arc) | Introducing ChatGPT Pulse | [300,535) | 60/1 |
| [Moving result and pullback](review/?id=sora-moving-result-pullback) | How to blend videos with Sora | [4380,4680) | 60/1 |
| [Timeline insertion passage](review/?id=sora-timeline-insertion) | How to storyboard with Sora | [2880,3240) | 60/1 |
| [Keyword and double underline](review/?id=study-keyword-double-underline) | Introducing ChatGPT Study Mode | [153,213) | 30/1 |
| [Outlined book and page turn](review/?id=study-outline-page-turn) | Introducing ChatGPT Study Mode | [115,153) | 30/1 |
| [Chip retract and title expansion](review/?id=type-chip-retract-expand) | Work smarter with your company knowledge in ChatGPT | [240,360) | 60/1 |
| [Dock subtraction opening](review/?id=type-dock-subtraction) | Introducing ChatGPT Atlas | [0,99) | 30/1 |
| [Masked name reel and closing line](review/?id=type-masked-name-reel) | Apps in ChatGPT | [3596,3896) | 60000/1001 |
| [Oversized paragraph cuts](review/?id=type-paragraph-cuts) | 10 years. | [1411,1444) | 24000/1001 |
| [Staggered identity and outgoing headline](review/?id=type-staggered-identity) | Talk to ChatGPT Work | [68,123) | 24000/1001 |

### Findings that affect the decision

Fresh reviewers inspect actual moving source/output pairs and native frames,
not just metadata or successful exports. All 20 current reports are bound to
the selected movies and inputs. They report **nine material and 27 minor open
findings** within their stated scopes. The later Nook trial adds a separate
pill-geometry qualification; the source-report totals are not an exhaustive
count of every possible difference.

**Five scoped reviews report no open findings:** dock subtraction, chip retract,
double underline, word-tile collage and translucent Prism contours. That is not
user approval, an exhaustive pixel-equivalence claim, or completion of the
library's remaining reuse and publication requirements.

| Material findings remain | Selected generation | Material / minor | What still differs |
| --- | --- | ---: | --- |
| Wordmark/outlined identity | review02 | 2 / 1 | Six-lobe source density/topology and the late finishing deformation; O optics also differ |
| Archive montage | review03 | 2 / 2 | Procedural footage and incoherent replacement-identity counter/control relationships; faint strokes and a missing lower-arc gap |
| Traveling image trail | review01 | 1 / 0 | Recurring-subject continuity is lost in the substituted image set |
| Device/card arc | review03 | 1 / 4 | Editorial portfolio tiles replace illustrated subject cards; surface, ghosting, phone fade and closing type remain different |
| Moving result/pullback | review02 | 2 / 0 | Subject/material deformation and streak contours |
| Outlined book/page turn | review02 | 1 / 1 | Leaf/hinge curvature and occluded gaps; cover weight remains heavier |

The other nine source reports retain minor findings: task card (3), composer
(2), reverse selection (3), click-release camera (3), modal relay (3), timeline
insertion (1), masked reel (2), paragraph cuts (1) and staggered identity (1).
Their exact frames, geometry/timing observations, methods and limits are in the
linked records. In particular, a targeted retest is not a full-source waiver.

Several differences are substantive, not polish requests. The book still has
different leaf/hinge contours. The wordmark's four-/three-lobe original identities
do not reproduce the source's six-lobe density and internal finish. Photographic
or recurring-subject source passages cannot be treated as faithful merely
because their original procedural substitutes move on the same path. These
remain open and uncounted; no acceptance is requested by implication.

The licensed Geist substitute is not an identified source font. Specific
glyph/sidebearing differences remain disclosed even when timing and outer bounds
match. Reviewers' numeric envelopes and pixel counts support particular findings;
they are not universal fidelity thresholds.

The fresh Nook reuse review also measures fixed reel-pill spans that differ
from source: 436/384px source/output at local15 and 404/362px at59, for example.
Those are inherited recipe differences, not consumer edits. Earlier targeted
retests of fade, suffix and ending motion do not close this broader geometry
question. The trial remains qualified; the source example remains uncounted.

## What the verification establishes

The current review03 clean snapshot installs pinned dependencies, passes both
type checks and all 136 tests with no skips, and renders/verifies all 40
variants. Thirty-one rerenders are byte-identical to the selected movies;
nine are not. All nine differing pairs have been decoded and quantified in
`evidence/clean-review03-pixel-summary.json`. Shipped snapshot files and the
generation registry remain unchanged. Rendering is not claimed to be bitwise
reproducible; its variation does not establish a cause or perceptual
acceptability. The earlier review02
pixel comparisons remain a separately identified record, not a substitute for
the current run.

Every comparison binds its actual code, inputs, assets, source movie, native
frame mapping and outputs. Important boundaries include consecutive frames;
the gallery distinguishes them from sparse contact sheets. Reviewers disclose
re-encoding, reduced-size playback, sampled visual observation and dropped-frame
limits. Playback counters are not continuous human viewing.

Two consumer pilots produced real edits using only frozen delivered packages:
a mixed-native-rate paragraph/underline passage and an exact-copy Nook name
reel. Their mechanical audits pass with unchanged embedded recipes. The
paragraph/underline passage has a **scoped fresh-review pass**, with no new
adaptation or continuity defect, including its frame 82→83 reset cut. Inherited
source glyph differences and inspection limits remain open; this does not accept
the source example. The Nook pilot receives a qualified reuse-success
recommendation: choreography and exact content survive, while source-pill
geometry and an early npm-cache isolation uncertainty remain unresolved.
Two earlier attempts failed and remain recorded: a missing packaged config,
then an unsupported exact-copy width. The packager and discoverable fit limits
were corrected; those failures were not relabelled as successes. A separate
known-overwide paragraph brief is not counted as an executed trial.

The eventual library still requires at least 20 successful fresh-agent briefs
across every major family and several multi-shot sequences. See
[trial status](trials/STATUS.md) and [validation history](VALIDATION_NOTES.md).

## Preservation and proposed publication

The local baseline contains 18,679 pre-existing files. Its last check finds no
changed or missing file. This does not prove live preservation. The task-start
live release has 4,962 manifest entries, while the local public build is stale;
any approved release must rebase on the latest live manifest.

The proposed addition is `/videos/editing/benchmark/library/` in the existing
`openai-film-fieldnotes-100` Cloudflare Pages project. The old benchmark,
sections and downloads remain intact. Native evidence archives, a compact
index and per-recipe asset packs are proposed to keep the enlarged site usable.
The local native-evidence prototype now verifies 6,582 PNGs in 78 split archives,
each below 24 MiB, with attributed frame/member indexes. The complete 200-case
staging budget, runnable/asset downloads, privacy-safe public derivatives and
post-publication checks are not complete. No Gsites, replacement project
or alternate public host is authorized. See [PUBLICATION_PLAN.md](PUBLICATION_PLAN.md).

## Approval record

No coverage, first-20 exception or publication approval is recorded. A later
acceptance must name the affected treatment, exact frozen generation and
specific discrepancy. Anything unresolved stays out of the completed count.
