Benchmarks

What Lull gets right, and what it misses.

Measured on a test whose answers were fixed before anything ran. The method comes first; every share has its interval, and the failures are listed with the rest.

Suite A is twelve short synthetic lectures, 3–4 slides each with two charts, whose narration leaves facts on the slides unsaid. An answer key lists every visual fact, the facts the narration does say, and decoys that appear nowhere in the video. The key was committed and tagged before the scorer existed and before any run; the scorer refuses to run unless the key still hashes to the tagged value.

Lull gets only the video. The scorer then measures: description over narration (must be 0), lines that leave their pause, visual facts described with and without the extended track, claims the key doesn’t support, decoys stated, lines that only repeat the narration, and model spend and processing time per minute. A model judge decides what a line conveys; a second judge from another model family checks it, and their agreement is reported. Shares are pooled over the videos with 95 % bootstrap intervals.

Suite B compares Lull with human audio description of the same videos: two people’s descriptions of Elephants Dream, and the U.S. Geological Survey’s own described versions of three of its videos. Each describer’s lines were split into facts before any run, and the judge decides which of them Lull’s lines convey, within a window around where the describer said it and anywhere in the video. On Elephants Dream each describer is also scored against the other, which gives a human ceiling.

Two controls test the frame check itself. The negative control checks published lines again against footage they don’t describe and counts how many still pass. The ablation runs Suite A again with the check turned off and compares the two, video by video.

Published 28 October 2026 at 20:57 UTC from commit ef2b6b387cd3. The method in full

Suite A: what was measured, and how

Pre-registration
Tag suite-a-prereg, commit 194d4d0803aa, 28 October 2026 at 01:12 UTC
Answer key sha256
354967ad20310ab6013c5fd884520f57120dbaa56d81b927f2d0c3ec35b7ce96
Scored at
Commit 72dfc2c4e0f4, 28 October 2026 at 12:17 UTC
Model calls and the key
Every model call the results use came after the pre-registration commit.
What was described
12 lectures, 8.8 minutes, 264.8 s of it without narration in 96 pauses (84 of at least 2 s); standard mode, education profile, voice Sofia, research off.
Judges
Nemotron 3 Ultra, and a second judge, Qwen/Qwen3-235B-A22B-Instruct-2507. Note: the primary judge is also the engine's planner (plan stage).
Engine models
Nemotron 3 Ultra, Nemotron 3.5 Super VL, Nemotron 3.5 Lightning
Spent on the evaluation
$1.0470, the runs and the judges together

Suite A: pre-registered measures

Each share is pooled over the videos, with a 95 % percentile bootstrap interval (10,000 resamples of videos).

Shares, with 95 % intervals
MeasureValue95 % intervalCountOn a scale from 0 to 100 %
Visual facts described, standard trackFacts on screen that the narration leaves unsaid. Higher is better.2.6 %0.5 % to 5.1 %6 of 235
Visual facts described, with the extended trackThe same, counting the lines the picture holds for. Higher is better.14.0 %7.9 % to 19.7 %33 of 235
Described while the slide is upWith the extended track, a line that starts while its slide shows. Higher is better.14.0 %7.9 % to 19.7 %33 of 235
Unsupported claimsClaims of published lines the answer key doesn't support. Lower is better.18.1 %4.0 % to 37.2 %19 of 105
Lines that only restate the narrationPublished lines that add nothing to what is said. Lower is better.0.0 %0.0 % to 0.0 %0 of 31
Over narration
0.000 s
Seconds of description audio inside narration, all videos together; must be 0. Extended freeze points inside speech: 0. Lines past their pause: 0.
Decoys stated
0 of 48
Facts planted as absent that a line states anyway; lower is better. Decoy-only numbers in a line: 0.
Spend per minute of video
$0.027
Model calls and web searches together; 95 % interval $0.024 to $0.030. Model calls alone: $0.027 per minute; web searches: $0.000. $0.2359 on model calls in all.
Processing per minute of video
79.2 s
700.1 s in all; 95 % interval 73.7 to 84.7 s. On AMD Ryzen 5 5600X 6-Core Processor, NVIDIA GeForce RTX 4060, 8188 MiB, 610.88 (Windows-11-10.0.26300-SP0); remote: Nebius Token Factory, speech local.

Suite A: supplementary measures

Added after the pre-registration. They are reported beside the pre-registered measures, never instead of them.

Supplementary shares, with 95 % intervals
MeasureValue95 % intervalCountOn a scale from 0 to 100 %
Visual facts, a tied highest value countedStandard track; a chart value tied at the top is credited with any of its categories.2.6 %0.5 % to 5.1 %6 of 235
The same, with the extended trackHigher is better.14.0 %7.9 % to 19.7 %33 of 235
Unsupported statements in the voiced textJudged against what is on screen while the line plays, so timing counts. Lower is better.11.0 %0.0 % to 27.1 %10 of 91
Unverifiable statements in the voiced textNeither supported nor contradicted by what is on screen.15.4 %6.7 % to 24.0 %14 of 91
Lines with an unsupported statementLower is better.12.9 %0.0 % to 27.5 %4 of 31
Claims the line's text doesn't sayClaims in the run's split that the voiced words don't carry.0.0 %0.0 % to 0.0 %0 of 105
Unsupported, among claims the text saysLower is better.18.1 %4.0 % to 37.2 %19 of 105

Decoys stated in their absent part only: 0.

Suite A: every video

VideoLengthWithout narrationPauses (2 s or more)Facts, standardFacts, with extendedUnsupported claimsOver narrationModel spendProcessing
a01 biology48.6 s25.6 s9 (7)1 of 246 of 240 of 30.000 s$0.016263.6 s
a02 economics40.4 s19.9 s7 (6)0 of 171 of 170 of 60.000 s$0.013246.5 s
a03 physics47.9 s24.4 s9 (8)0 of 173 of 173 of 130.000 s$0.016356.2 s
a04 history43.7 s19.6 s7 (6)1 of 211 of 210 of 30.000 s$0.016549.2 s
a05 statistics42.9 s21.4 s9 (6)0 of 195 of 190 of 150.000 s$0.017957.7 s
a06 chemistry37.0 s20.5 s7 (7)0 of 203 of 200 of 180.000 s$0.016757.6 s
a07 geography54.9 s27.0 s9 (8)3 of 233 of 237 of 100.000 s$0.032274.3 s
a08 computer science41.3 s19.9 s7 (7)0 of 190 of 190 of 00.000 s$0.019344.4 s
a09 art history54.4 s28.0 s9 (9)1 of 225 of 220 of 170.000 s$0.032685.3 s
a10 medicine35.7 s18.0 s7 (6)0 of 180 of 184 of 60.000 s$0.015848.6 s
a11 climate43.4 s22.2 s9 (8)0 of 216 of 215 of 110.000 s$0.021765.3 s
a12 engineering40.4 s18.3 s7 (6)0 of 140 of 140 of 30.000 s$0.017551.4 s

Suite A: how far to trust the judges

A second judge from another model family, Qwen/Qwen3-235B-A22B-Instruct-2507, made the same calls. Its recall 18.7 %, unsupported claims 9.5 %, unsupported voiced statements 4.5 %.

Agreement between the two judges
OnItemsAgreementCohen’s kappa
Visual facts23592.8 %0.74
Claims10576.2 %0.02
Voiced lines3187.1 %0.43
Probe: planted facts credited
65 of 65 facts and 12 of 12 decoys credited to the synthetic line that states them
Probe: near misses
42 of 42 near misses (a wrong value, a swapped word, a gist) not credited
Probe: voiced text
sensitivity 6 of 6, specificity 9 of 9

Suite B: against human audio description

Pre-registration
Tag suite-b-prereg-2, commit f308f9034fd8, 28 October 2026 (first pinned as suite-b-prereg)
Reference set sha256
7d8b9fdfec4936aca0350efb712ed39e006aee77e4df9a2f239eb53e0a372209
Scored at
Commit 466867dce8e4, 28 October 2026
Runs scored
elephants_dream 0–658 s, engine 0.2.0; woodshole 0–173 s, engine 0.2.0; aquatic_connectivity 0–265 s, engine 0.2.0; csc_intro 0–45 s, engine 0.2.0
Judges
Nemotron 3 Ultra, and a second judge, Qwen/Qwen3-235B-A22B-Instruct-2507. A fact counts when a line conveys it within ±15 s of where the describer said it (±30 s for a block over 30 s).
Spent on scoring
$0.8649; every scoring call came after the pre-registration

How much of what the describers said, Lull conveyed

Each share has its 95 % interval over the reference lines. On Elephants Dream two people described the same film, so each is also scored against the other: that is the human ceiling shown next to Lull’s number. USGS videos have one describer each, so there is no ceiling there, and the window and anywhere shares carry equal weight (a USGS anchor is the AD version’s freeze point).

Elephants Dream, described by JJ Hunt: 124 facts in 63 lines
Facts conveyedLull, standard trackLull, with extendedAnother human describer
Within the window pre-registered0.0 % [0.0 %, 0.0 %] (0/124)0.8 % [0.0 %, 2.8 %] (1/124)42.7 % [32.8 %, 53.3 %] (53/124) supplementary
Anywhere in the video supplementary1.6 % [0.0 %, 4.3 %] (2/124)2.4 % [0.0 %, 5.7 %] (3/124)46.0 % [36.1 %, 56.5 %] (57/124) supplementary
Elephants Dream, described by Silvia Pfeiffer: 152 facts in 59 lines
Facts conveyedLull, standard trackLull, with extendedAnother human describer
Within the window pre-registered1.3 % [0.0 %, 3.4 %] (2/152)1.3 % [0.0 %, 3.4 %] (2/152)38.8 % [27.6 %, 50.6 %] (59/152) supplementary
Anywhere in the video supplementary2.6 % [0.6 %, 5.5 %] (4/152)3.3 % [0.7 %, 6.4 %] (5/152)40.1 % [28.8 %, 52.0 %] (61/152) supplementary
USGS videos, the agency’s own audio description: 198 facts in 116 lines
Facts conveyedLull, standard trackLull, with extendedAnother human describer
Within the window pre-registered, equal weight0.0 % [0.0 %, 0.0 %] (0/198)4.5 % [1.5 %, 8.5 %] (9/198)None: one describer for this video
Anywhere in the video pre-registered, equal weight0.0 % [0.0 %, 0.0 %] (0/198)7.1 % [2.9 %, 12.2 %] (14/198)None: one describer for this video

9 facts still hold a term the speech recogniser may have misheard. Without them: within the window, with extended, 4.2 % [1.1 %, 8.2 %] (8/189). With them counted, the all-facts recall above is a lower bound.

The second judge

Supplementary: reported beside the primary judge, never instead of it.

Qwen/Qwen3-235B-A22B-Instruct-2507: Lull’s recall, within the window, with extended, and agreement with the primary judge
ReferenceRecall, second judgeAgreement, windowAgreement, anywhere
Elephants Dream, described by JJ Hunt6.5 % [2.4 %, 11.3 %] (8/124)94.4 % agree, kappa 0.21 (n = 124)88.7 % agree, kappa 0.09 (n = 124)
Elephants Dream, described by Silvia Pfeiffer2.6 % [0.6 %, 5.3 %] (4/152)96.1 % agree, kappa -0.02 (n = 152)95.4 % agree, kappa 0.34 (n = 152)
USGS videos, the agency’s own audio description17.7 % [11.7 %, 24.7 %] (35/198)85.9 % agree, kappa 0.31 (n = 198)80.3 % agree, kappa 0.26 (n = 198)

Judge probe, nvidia/Nemotron-3-Ultra-550b-a55b: positives credited 14/14, near misses rejected 19/19, cross-credits 0. Judge probe, Qwen/Qwen3-235B-A22B-Instruct-2507: positives credited 14/14, near misses rejected 19/19, cross-credits 0.

Talking over speech

Against the reference transcript of the original (same recogniser, independent of the Lull run)
Video and trackDescriptionOver speechShareNote
elephants_dream Lull, standard track141.5 s0.0 s0.0 %
elephants_dream Silvia Pfeiffer’s captions file405.7 s11.9 s2.9 %display time, not voiced
elephants_dream JJ Hunt’s captions file328.8 s3.7 s1.1 %display time (his voice: the next row)
elephants_dream JJ Hunt’s voiced track265.0 s2.7 s1.0 %voiced
woodshole Lull, standard track0.0 s0.0 sn/a
aquatic_connectivity Lull, standard track10.2 s0.0 s0.0 %
csc_intro Lull, standard track4.8 s0.0 s0.0 %
elephants_dream Lull, extended freeze points inside speech6the picture pauses between words, mid-sentence
woodshole Lull, extended freeze points inside speech22the picture pauses between words, mid-sentence
aquatic_connectivity Lull, extended freeze points inside speech14the picture pauses between words, mid-sentence
csc_intro Lull, extended freeze points inside speech1the picture pauses between words, mid-sentence
Against the Lull run’s own speech detection (the same spans for every track)
Video and trackDescriptionOver speechShareNote
elephants_dream Lull, standard track141.5 s0.0 s0.0 %0 by construction against its own speech detection
elephants_dream Silvia Pfeiffer’s captions file405.7 s15.6 s3.9 %display time, not voiced
elephants_dream JJ Hunt’s captions file328.8 s5.2 s1.6 %display time (his voice: the next row)
elephants_dream JJ Hunt’s voiced track265.0 s3.4 s1.3 %voiced
woodshole Lull, standard track0.0 s0.0 sn/a0 by construction against its own speech detection
aquatic_connectivity Lull, standard track10.2 s0.0 s0.0 %0 by construction against its own speech detection
csc_intro Lull, standard track4.8 s0.0 s0.0 %0 by construction against its own speech detection
woodshole USGS AD on its own timeline257.0 s0.0 s0.0 %Not comparable: it lives in pauses the AD version inserts; original narration missing from the AD version 13.4 s
aquatic_connectivity USGS AD on its own timeline112.6 s0.0 s0.0 %Not comparable: it lives in pauses the AD version inserts; original narration missing from the AD version 0.0 s
csc_intro USGS AD on its own timeline19.2 s0.0 s0.0 %Not comparable: it lives in pauses the AD version inserts; original narration missing from the AD version 0.0 s

Words per minute of video

How much each side says
Video and sideWordsPer minute
elephants_dream Lull, standard track41637.9
elephants_dream Lull, with extended80773.6
elephants_dream Silvia Pfeiffer97989.3
elephants_dream JJ Hunt76169.4
woodshole Lull, standard track00.0
woodshole Lull, with extended317109.7
woodshole USGS AD, per minute of the original1023354.2
woodshole USGS AD, per minute of the AD version1023149.9
aquatic_connectivity Lull, standard track265.9
aquatic_connectivity Lull, with extended28263.8
aquatic_connectivity USGS AD, per minute of the original33575.8
aquatic_connectivity USGS AD, per minute of the AD version33555.5
csc_intro Lull, standard track810.7
csc_intro Lull, with extended2938.8
csc_intro USGS AD, per minute of the original79105.6
csc_intro USGS AD, per minute of the AD version7974.2

Controls: does the frame check catch a false line?

Negative control

Each line that passed its frame check is checked again against footage it doesn’t describe. A false accept is a line the check passes on the wrong footage. Pre-registration tag controls-prereg-2, commit f30231c37c0d; run 28 October 2026 at commit 63307fd8eb0b; the verifier Nemotron 3.5 Super VL, temperature 0; spend $0.0825.

False accept, an upper bound
13.2 % [2.6 %, 23.7 %] (5/38)
Over the same-video rules (another slide; other events, 30 s away), 38 lines. An upper bound on the verifier’s failures: a claim may be true of the other footage too.
Per claim
21.5 % [8.8 %, 36.4 %] (23/107)
Claims passed on the wrong footage.
Discriminative false accept
0.0 % [0.0 %, 0.0 %] (0/11)
Suite A lines (11) whose answer key says the other footage can’t show what they state.
True accept, optimistic
100.0 % [100.0 %, 100.0 %] (38/38)
On the true clip. Optimistic: these lines had already passed verification there.

The per-rule rows and the discriminative false accept were added after the pre-registration.

By mismatch rule
The wrong footageLinesFalse acceptPer claimTrue accept
Another slide of the same lecture110.0 % [0.0 %, 0.0 %] (0/11)3.0 % [0.0 %, 10.7 %] (1/33)100.0 % [100.0 %, 100.0 %] (11/11)
Other events in the same video, at least 30 s away2718.5 % [3.7 %, 33.3 %] (5/27)29.7 % [12.5 %, 48.8 %] (22/74)100.0 % [100.0 %, 100.0 %] (27/27)
Another video20.0 % [0.0 %, 0.0 %] (0/2)0.0 % [0.0 %, 0.0 %] (0/5)100.0 % [100.0 %, 100.0 %] (2/2)

Every false accept is listed under Known failures.

Ablation: Suite A without the frame check

The twelve Suite A lectures run again with the frame check off, compared with the scored run, video by video (pre-registration controls-prereg-2, Suite A pin suite-a-prereg); run 28 October 2026, spend $0.7873.

On these synthetic lectures, checking each line against its frames did not measurably reduce unsupported statements, and it cost recall: with the extended track, 14.0 % of visual facts were described with the check and 28.9 % without it (+14.9 points, 95 % interval +6.2 to +23.1).

With and without the frame check, and the paired difference over videos
MeasureWith the checkWithoutWithout minus with, 95 % interval
Unsupported claims18.1 %19.5 %+1.4 % [−16.2 %, +16.1 %] (12 videos)
Lines with an unsupported claim25.8 %19.5 %−6.3 % [−27.7 %, +14.0 %] (12 videos)
Unsupported statements in the voiced text headline11.0 %5.9 %−5.1 % [−18.4 %, +4.5 %] (12 videos)
Voiced lines with an unsupported statement12.9 %17.1 %+4.2 % [−13.6 %, +22.5 %] (12 videos)
Visual facts described, standard track2.6 %0.9 %−1.7 % [−4.5 %, +0.5 %] (12 videos)
Visual facts described, with the extended track14.0 %28.9 %+14.9 % [+6.2 %, +23.1 %] (12 videos)
Decoys stated0.0 %0.0 %+0.0 % [+0.0 %, +0.0 %] (12 videos)

Share of lines carrying the verifier’s claim split: with 1, without 0. Without it, the claims measure is judged per whole line; the voiced-text measure splits both arms the same way.

Known failures

  • Suite A: held cues, "the failed claims share every word with claims that passed"

    10 cues held for this reason in 12 runs. A held cue is not voiced.

  • Suite A: held cues, "nothing left once the unverified claims were removed"

    1 cue held for this reason in 12 runs. A held cue is not voiced.

  • Suite B: held cues, "nothing left once the unverified claims were removed"

    13 cues held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "the failed claims share every word with claims that passed"

    9 cues held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "does not fit"

    4 cues held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "compression left N sentence for N visuals, twice"

    2 cues held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "not verified as voiced"

    2 cues held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "each claim is supported but a sentence is not"

    1 cue held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "not verified after N repairs"

    1 cue held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "not verified after N rounds"

    1 cue held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "the cut would leave "a" without "into""

    1 cue held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "the cut would leave "a" without "up""

    1 cue held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "the cut would leave "stand" without "Emo""

    1 cue held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: held cues, "the verifier rejected a removed claim again"

    1 cue held for this reason in 4 runs. A held cue is not voiced.

  • Suite B: 15 suspicious ASR terms left as heard

    aquatic_connectivity 2, woodshole 13: "Signed", "clover", "Athymmetry", "crashed down", "Title Creek", "Aeros", "pescals", "Start", "anti flux", "unpounded", "Well Fleet", "clover", "entries", "Word Science", "role.org". No on-screen text or narration gave the right words, so they stay as the recogniser heard them and USGS recall over all facts is a lower bound; 9 scored facts holding them are set aside in the recall reported without them.

  • Negative control: false accept, bbb120 c002 (other events, 30 s away)

    "A grassy field with scattered trees stretches under a pink and blue sky." was fully supported on bbb120 45.00-57.00 s (its true clip 2.70-14.70 s); raw only (no key for this video).

  • Negative control: false accept, bbb120 c020 (other events, 30 s away)

    "In a moment, the rabbit leaps up on its hind legs, reaching for a butterfly near a tree." was fully supported on bbb120 80.50-85.22 s (its true clip 115.28-120.00 s); raw only (no key for this video).

  • Negative control: false accept, ed90 c010 (other events, 30 s away)

    "Both stand facing each other, gesturing." was fully supported on ed90 27.00-35.00 s (its true clip 65.00-73.00 s); raw only (no key for this video).

  • Negative control: false accept, ed90 c013 (other events, 30 s away)

    "The two figures fall through the dark space, tumbling among the wires and platforms." was fully supported on ed90 42.00-51.00 s (its true clip 81.00-90.00 s); raw only (no key for this video).

  • Negative control: false accept, tos180 c012 (other events, 30 s away)

    "The robot's lit eyes show in close-up." was fully supported on tos180 129.00-133.10 s (its true clip 94.90-99.00 s); raw only (no key for this video).

  • Deviation, Suite A: Scorer rules the key does not spell out

    Scorer rules the key does not spell out, applied to primary metrics: a verdict the judge leaves out counts against the system (fact not conveyed, claim unsupported, cue redundant, decoy stated) and is listed under "judge problems"; extended cues count only when the run reports extended_produced.

  • Deviation, Suite A: a08's tie

    a08's tie (its line chart shows the highest value, 100000, at three categories; the key names the first). Primary recall and exact match follow the key as written (the judge sees the fact as the key states it; the exact match needs the key's label). Supplementary, reported next to the primary: tie-aware recall (a fact is also credited when a cue states the highest value with any tied category, checked deterministically) and tie-aware exact match. Added after the pre-registration.

  • Deviation, Suite A: Supplementary metrics

    Supplementary metrics (next section), all labelled "supplementary" in every report: hallucination of the voiced text (its own call; a cue without an answer counts as one unsupported statement), claims the cue text does not say, decoys stated in their absent part only, the second judge with agreement and kappa, the probe's near misses, cross-credits and the voiced-text probe.

  • Deviation, Suite A: Reporting

    Reporting: silence and pause counts per video, hardware, the run inventory, the zero-spend rebuild bundle, the pinned tag.

  • Deviation, Suite B: First pin

    First pin: tag suite-b-prereg -> commit 5d628cb2099d23adbbb9faabba9801b9af9d942e, 2026-10-28 03:07:27 UTC, reference set 4c6aca38...b66.

  • Deviation, Suite B: A smoke preceded the second pin

    A smoke preceded the second pin: the scorer (first committed at 03:14:18 UTC) was run on the existing ed90 run, Elephants Dream 60-150 s, between 03:14 and 03:18 UTC (Lull 0/46 facts with Ultra, 8/46 with Qwen; below). Its facts (ED, 60-150 s) did not change.

  • Deviation, Suite B: Second pin

    Second pin: tag suite-b-prereg-2 -> commit f308f90, 03:54:30 UTC. Changed: the 17 ASR corrections above; the facts of the 15 corrected lines (only those) were split again with the same, unchanged extraction prompt (149 -> 151 woodshole facts); every other fact is byte-identical in content (blocks added as fields); blocks and the long-block rule: the facts of a block longer than 30 s get a +/-30 s window instead of +/-15 s; USGS: the anywhere variant is reported with the same weight as the windowed one (the anchors are freeze points); recall is also reported without the facts that still hold an unresolved term, and with any left the all-facts USGS recall is a lower bound; the judge probe (probes.json, 33 hand-written cues for 14 facts of two videos, none in the smoke clip): 14 positives (paraphrases with descriptions instead of names, a fact plus an extra detail) that must be credited and 19 near misses (wrong count, colour or value, swapped character, gist only, invented detail) that must not. With the first prompt Ultra got 14/14 and 19/19, Qwen 13/14 and 17/19 (it credited "Three people stand on a small bridge" for two people, and a swapped character). One rule was added to the judge prompt: counts, numbers, colours, names, written words and who does what to whom must agree with the fact (its examples are not from the probe). With it both judges got 14/14 and 19/19 (probe_results.json; the first run in probe_results_prompt1.json). Nothing else in the prompt changed; results need runs of all four videos; the overlap presentation rule (below); NOTICE files.

  • Deviation, Suite B: Engine commits of the scored runs

    Engine commits of the scored runs: Suite A, the negative control and the ablation ran on the engine of main 61e9d81 (merged into the evaluation branch as 7168ea5). The first recorded run of the full Elephants Dream (run id final-ed) failed in publish on a deterministic engine bug: a keyframe time after the file's last video frame. It is listed under the known failures and stays listed. The bug was fixed on main 0b83117 (keyframe and freeze times clamped to the video stream's last frame; nothing else changed), merged, and the full film was run once more under a fresh run id (final-ed2) with the same command and options (paused once for planned machine maintenance, then resumed from its stage cache). Suite B is scored on that run and on the three USGS runs made on 61e9d81 (Suite B does not require one engine across its runs).

  • Deviation, Suite B: Batch splitting on cut-off answers

    Batch splitting on cut-off answers: added after the second Suite B attempt, in the scorer only (no change to prompts, rules or facts). When a judge's answer (either judge, any batch) is cut off by its token limit, even after the engine's retry with twice the limit, the batch is judged again in halves with the same prompt, schema, model and temperature, down to single facts; only a single fact whose answer is still cut off falls under the pre-registered rule (no verdict: not conveyed, listed). Every split is listed with the judge problems; saved answers and cut-offs are reused, not paid for twice.

  • Deviation, Suite B: Account credit outage

    Account credit outage: at 12:34 UTC the provider refused every call (HTTP 402, account credits exhausted) while the recorded runs were being made; the account credits were topped up and the runs resumed from their stage caches at 13:36 UTC. Suite A's scored run had finished before; the controls ran after.

  • Deviation, Suite B: Three Suite B invocations

    Three Suite B invocations: the first stopped on the per-run cap of $0.30 that the scorer takes from Suite A's client setup (it needs more for a full film's judging), the second on a judge answer cut off by its token limit, the third (with the batch splitting above and a higher per-run cap) completed. The first two wrote nothing; their saved judge answers were reused.

  • Deviation, Controls: per-rule reporting, with a same-video headline called an upper bound

    per-rule reporting, with a same-video headline called an upper bound;

  • Deviation, Controls: the discriminative false accept

    the discriminative false accept;

  • Deviation, Controls: the true-accept disclosure

    the true-accept disclosure;

  • Deviation, Controls: the 0.5 s event-overlap rule and per-row event overlap

    the 0.5 s event-overlap rule and per-row event overlap;

  • Deviation, Controls: the title rule for slide fallbacks

    the title rule for slide fallbacks;

  • Deviation, Controls: the ablation's all-videos-paired check

    the ablation's all-videos-paired check.

  • Run-to-run variance

    Lull's descriptions come from remote models that do not reproduce an answer for a fixed seed (Nemotron 3.5 Lightning ignored the seed in our checks), so the same video gives different cues from one run to the next. Each suite scores one pre-registered run (Suite A: the first complete --all invocation on the final engine) and does not average over runs; the intervals are bootstrapped over videos or reference lines, not over repeated runs.

  • Lull conveys little of what the human describers chose to say

    In the scored Suite B, the primary judge credited Lull's cues (standard and extended, inside the window) with 1 of JJ Hunt's 124 Elephants Dream facts (0.8 %), 2 of Silvia Pfeiffer's 152 (1.3 %) and 9 of the USGS describers' 198 (4.5 %); one human describer judged against the other gets 38.8 % and 42.7 %. Over the full film Lull voiced 37.9 words per minute on the standard track (73.6 with the extended track); Pfeiffer's track has 89.3 and Hunt's 69.4.

  • Extended freezes fall inside continuous narration

    Suite A pre-registers 0 extended freeze points inside speech for its lectures. On Suite B's real videos the extended track paused the picture inside speech at 6 of 31 extended cues (Elephants Dream), 22 of 22 (woodshole), 14 of 14 (aquatic_connectivity) and 1 of 1 (csc_intro), against the reference transcript. In continuous narration the extended track pauses the picture between words, mid-sentence: the narration is paused, not talked over, but the sentence is interrupted.

  • Suite B woodshole: the standard track voiced nothing

    On woodshole the standard track voiced 0 words: none of its cues was verified (5 held, 0 verified); everything Lull said there was on the extended track (22 cues).

  • The two Suite B judges disagree

    The second judge (Qwen3 235B) credits Lull far more often than the primary one (Nemotron 3 Ultra) on USGS: 17.7 % against 4.5 % of the facts (window, with extended), raw agreement 85.9 %, kappa 0.31. On Pfeiffer's facts the raw agreement is 96.1 % but kappa is -0.02 (both judges credit almost nothing, so the agreement is no better than chance). The primary judge's numbers are the pre-registered ones.

  • Lecture pauses swallowed before the speech-span fix

    Before the engine's corrections the listen stage widened narration spans by 0.2-0.6 s and merged sentences across planned pauses of about 1.9 s, so a Suite A lecture had only 4-5 speech-free windows and the standard track voiced little more than slide titles; extended cues froze the picture before their slide appeared. Found in the Suite A smoke (a01, a02, pre-fix engine) and fixed in the engine; the scored run is on the fixed engine and the smoke numbers are not results.

  • TTS nondeterminism

    Magpie TTS returns slightly different audio for the same sentence from one call to the next (seed and temperature parameters did not change that in our checks): a01 re-rendered from an empty cache came out 48.56 s instead of 48.40 s. Suite A's lectures are rendered once and cached (the render tarball reproduces them bit for bit), and Lull's own cue durations vary slightly between runs.

  • Elephants Dream (full film) failed in publish

    The scored recorded run of the full film (final-ed) finished its descriptions (43 verified, 21 held, 43 extended) and then failed while saving keyframes: a cue's keyframe time, 656.3 s, lies after the last video frame of this file (the video stream ends at 653.8 s, the audio at 658.1 s), because the engine bounds keyframe times by the container's duration rather than the video stream's. ffmpeg returned no frame and the run stopped without publishing. Counted as a pipeline failure. The bug was then fixed in the engine (main 0b83117, keyframes kept inside the video stream) and the full film was run once more (final-ed2); the site's full-film showcase comes from that run, and so does Suite B (see the Suite B deviations).