Rebuild the film, and take the test count out of the narration - #59
Merged
Conversation
The two films on disk were built on 2026-08-13, ten releases back. Rebuilt against today's tool: 3:47 in Spanish, 3:29 in English, 11 of 12 scenes voiced as before. One thing changed, and it is the one designed to. scene_kit.test_count() reads the suite size off the README rather than having it typed into a slide -- its own docstring calls a number nothing forces to stay true "the exact failure this material is about" -- so the roslyn scene moved from 295 to 556 on its own, in both languages. That is the whole diff to the scenes. The evidence stills did not change at all, and finding that out is the point. ensure_stills captured them once and kept them, so they had outlived by sixteen days and ten releases the tool output they are supposed to BE. Deleting them and recapturing produced byte-identical files: the fixture still extracts the same, so the film was never showing anything untrue. That was luck rather than design, because nothing in the pipeline would have said otherwise. --restills makes it checkable. It drops the report and the stills and captures them again from a real run, so "are these still the tool's output?" is a command rather than an assumption, and a byte-identical recapture is itself the useful answer. Not fixed here, because it cannot be fixed here: the narration in 08-roslyn says "doscientos setenta tests" / "two hundred seventy tests" while the rebuilt frame beside it now reads 556. The screen self-corrects and the voice cannot. There is no ElevenLabs key in this checkout, and the choice of what the line should say is not a mechanical one -- putting 556 in the voice buys a stronger sentence that goes stale again next release, and dropping the number buys a line that never does. render/ stays untracked, as before: 36 MB of derived output. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01W45tzJFX3NoSrk7svtQeKT
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The two films on disk were built on 2026-08-13 — ten releases back. Rebuilt against today's tool, and the one line that could not rebuild itself was re-recorded.
xaflogic-explainer-es.mp4xaflogic-explainer-en.mp4The screen fixed itself; the voice could not
scene_kit.test_count()reads the suite size off the README instead of having it typed into a slide. Its own docstring is the argument:So
08-roslynmoved 295 → 556 by itself, in both languages. That was the entire diff to the scenes — everything else re-rendered byte-identical, which is what the deterministic capture is there to buy.But a recorded take has nothing keeping it honest, and the narration said "doscientos setenta" / "two hundred and seventy". The rebuilt film was about to contradict itself out loud.
The number is gone from the line rather than corrected to 556. Correcting it buys a stronger sentence that is wrong again next release and needs a re-record every time the suite grows; dropping it costs one re-record, ever. The count stays on screen, read from the one place with a test enforcing it.
Re-recorded with the voices the guion already names — Marcela for Spanish, Rachel for English, who is not in the account and was already pinned by id in
PREMADE_VOICE_IDSfor exactly this reason. The key was passed through the environment for the run; nothing was written into this repository, and the diff carries no credential.The shorter line makes the scene shorter: 17.8s → 17.0s (es) and 16.4s (en).
--retimeread that off the new takes, every other scene came back at the length it already had, and the six chapter stamps after08-roslyninPUBLICACION.mdmoved with it.The evidence stills had gone stale, and checking that is the point
ensure_stillscaptures the report sections the evidence scenes pan over, and only ever captures when the file is missing. They sat sixteen days and ten releases behind the tool output they are supposed to be, and nothing in the pipeline would have said so.Deleting them and recapturing produced byte-identical files — the fixture still extracts the same, so the film was never showing anything untrue. That was luck rather than design.
--restillsmakes it a command instead of an assumption:A byte-identical recapture is itself the useful answer.
One thing left for you, deliberately
The blog article says "270 tests" in four files —
xaflogic-hidden-behaviour-story.{es,en}.{md,html}.I did not touch it, because it is a different kind of claim. A film is regenerated from live sources, so a stale number in it is a defect. An article is a dated publication, and what it said when it was published is not false. Updating it to 556, rephrasing it the way the narration just went, or leaving it as a snapshot are all defensible — which is why it is a decision rather than a fix.
Also checked and still true: "catorce clases" (14 entity classes in
PharmacyDemo.Module), and no other hard figures are spoken in either language.render/stays untracked — 36 MB of derived output. The finished films are on the machine that built them.🤖 Generated with Claude Code
https://claude.ai/code/session_01W45tzJFX3NoSrk7svtQeKT