Not indexed. Not the live site. Design only: nothing on this page produces a video, restarts the paused batch, or uses the old storyboard-batch format. Highlight any line with Hypothesis on the right edge to leave a note in place.
YT left five comments on round 1. Each one changed the flow like this:
Round 1 step numbers are kept, so earlier notes still point at the right rows. The new steps slot in as 6b, 12b and 13b.
Video 1, "What is Email", is the video YT loved. Every step and gate below is checked against this recipe, so the line makes more videos like it. Taken apart from its own files: the authored script scenes.json, the narration captions video1.srt, the word timings inside render.html, the renderer and the finished render.
Video 1 · 2:16 · 9 scenes · a 720p copy for review (3.2 MB). The full-size master stays outside git.
Seconds come from the renderer's own scene timings. Words are counted from the authored script. Caps is the stressed word, where there is one.
| # | Tag | Sec | Words | Caps | The one question | What is on screen |
|---|---|---|---|---|---|---|
| 00 | warm | 2.8 | 7 | none | Where do we start? | Title card: "Email fundamentals 001, What is Email? The 7 things everyone should know, start to finish." |
| 01 | thoughtful | 25.7 | 72 | MATTERS, OWN | Why email at all? | One big number and three chips: you own it, asynchronous, structured. Chip 1/7. |
| 02 | curious | 21.9 | 67 | SECOND | How does it actually work? | The journey: you, your server, their server, inbox. An envelope travels the line as the voice says it travels. |
| 03 | confident | 18.8 | 52 | none | What is an address made of? | The address split in code type, local part and domain labelled underneath. |
| 04 | confident | 15.4 | 48 | SEE | What is a client? | Three app cards: Outlook, Apple Mail, Thunderbird. |
| 05 | confident | 13.1 | 40 | none | What is webmail? | A browser inbox holding a receipt and a password reset, the two examples from scene 01. |
| 06 | confident | 17.0 | 51 | none | So which is which? | Client and webmail side by side, three ticks each. |
| 07 | serious | 13.3 | 28 | none | What happens when you press send? | The scene 02 journey, replayed as the recap. |
| 08 | excited | 8.2 | 30 | none | What is next? | "That's email." and a next-episode card. |
| Total | 136 | 395 | 4 | About 166 spoken words a minute. Scenes run 8 to 26 seconds after the 3-second open. | ||
SMTP :587. The address is spoken slowly, "kraken, at deepseamail dot com", and shown in code type.The screen says 4.6 billion, the voice says "over four billion". The Almanac says around 4.6 billion (001.001.001). One fact, one number: the fact sheet holds it, the voice spells it and the screen shows it.
The captions were transcribed back from the audio, so they read "deepcmail" for the invented address and "sinks" for syncs. Captions should come from the approved scene text, laid on the word timings.
The script uses a dash for a beat. The voice engine read it as a comma or a full stop, and the captions show exactly that ("And here's the thing. It's…"). The dash beat measured 0.32 seconds, the same as a comma. See the beat proposal below.
Round 2, what the files show. The voice was very likely the ElevenLabs voice Tim ("Solid & Enthusiastic"), not Brian.
~/Downloads/rme-tts.py, saved 11 July 00:20, two minutes before video1.mp3, defaults to Tim's voice id 6psAnGNeDguzLyTxKYvI, model eleven_v3, stability 0.45, similarity 0.8, style 0.4, speaker boost on, output mp3 44.1 kHz 128 kbps.video1-composite.html in the rme-vo folder says it three times: "synced to Tim's voiceover", "timed to Tim's actual read".nPczCjzI2devNBz1zQrb) is used only by the later product explainer, gen_continuous.py in get-listed.What stays open: the script lets an override replace the default, and no run log survived, so this is strong evidence, not a receipt. One listen next to a fresh Tim sample settles it. The presenter bubble, avatar.mp4, carries its own copy of the audio (same 2:16) from a different encoder, and the renderer uses that audio. Where the footage came from is still not written down, so that part stays a gap for YT.
The measurements settle it. The dash adds nothing the engine does not already do with ordinary punctuation, so the voice text never needs one.
| Mark in the voice text | Measured pause | Use it for | Example, rewritten |
|---|---|---|---|
| . | about 0.5 s | A real beat, the one the dash was trying to make | "And here's the thing. It's the only channel you truly OWN." |
| , | about 0.3 s | A light beat inside one thought | "First stop, your outgoing mail server." |
| … | about 0.3 s, softer | A trailing breath, a thought still landing | "And that… is email." |
| scene break | 0.6 to 0.9 s | The long beat, and the only place the tag changes | End the scene, start the next with its tag |
Pauses measured between words in the Video 1 timing data. The rule the evaluator checks: zero dashes in voice text, and a full stop wherever the writer wanted a beat.
Read top to bottom. Dark pills are human gates. Tinted boxes are automated checks. A dashed border means the step is new. Dotted lines up the left edge are the revise loops, the solid line up the right edge is the learn loop.
EXISTS in the repo or the rme-vo folder today IN #262 specified in the engine brief PART NEW exists in part, this design adds to it NEW proposed here
The pilot runs one topic end to end on purpose, to prove the line. From wave one, three or four topics move together and each stage runs for the whole wave, so YT reviews a wave's scripts in one sitting, a wave's voices in one sitting, and a wave's atoms in one sitting. The script stays the bottleneck, so the writing stage for the next wave starts while the current wave renders.
| Wave rhythm | Steps | Who |
|---|---|---|
| Write the wave | 1 to 6 | Agent |
| Vy reads the wave | 6b | Vy |
| Script sitting | Gate A | YT |
| YT records her takes | 8 | YT |
| AI takes and frames | 8 to 9 | Script, agent, Vy accepts |
| Listen sitting | Gate B | YT |
| Render and auto QA | 11 to 12 | Script, agent |
| Visual QA sitting | 12b | Vy |
| Atoms, thumbnails, copy | 13 to 14 | Agent, Vy spot-check |
| Pre-publish sitting | Gate C | YT |
| Post across two weeks | 16 | Vy |
Paths in code that do not exist yet are proposals, not files. On a phone each row becomes a card.
| # | Step and what happens | Who | In | Out | Gate or check | Where it lives | Status |
|---|---|---|---|---|---|---|---|
| 1 | Pick and screen the topicA short is always one Almanac question. A master is one question, or a tight cluster merged only when it passes the four merge tests in section 2c, each merged question becoming one chapter. The pick order is the playlist order, then search demand, then the product tie, then learn-loop winners. Screen it first: if its spine is spam traps, named blocklists or complaint-rate thresholds, it is dropped here, not mid-script.Recipe R3: a master passes only if it splits into four to eight plain questions, as Video 1 split into seven. Round 2: the merge rules are written down in 2c. | Video chat proposes a shortlist, YT picks | 01-library/email-almanac/, the tracker, the playlist order |
A tracker row and an episode folder | The screening rule (decided 2026-09-22) | video-pipeline-tracker.html, proposed social-media/video-episodes/<num>-<slug>/ |
EXISTS ordering is #262 B1 |
| 2 | Build the fact sheetPull every claim the video is allowed to make into one sheet, each with its Almanac number and the exact line it rests on. Nothing outside the sheet may be said anywhere in the video, the atoms or the copy.Recipe R6, M1: each row holds one number, how it is spoken and how it is shown, so voice and screen agree. | Agent | The question files and the related questions they link to | The facts block of episode.json |
AUTO CHECK The Almanac-only gate. Every row cites a number. A needed claim the Almanac lacks is a stop, logged in 00-inbox/gaps-and-rules.md for YT, never filled from the web or model knowledge. |
Episode folder | NEW today it is only the per-beat Source line, #262 lists the citation audit as a gap |
| 3 | Write the episode briefThe angle, the one decision the video drives, what it must explain, what it may assume, the vocabulary words, and one sharp take, the point of view a model will not supply on its own.Recipe R1 to R3: adds the counted promise, the chapter list with one question each, and the tag arc. | Agent, shaped by the voice rules | Fact sheet, GLOSSARY.md, playlist position | The brief block of episode.json |
Checked at step 6 | Episode folder | IN #262 B2, the sharp-take field is new |
| 4 | Write the hooks firstThree to five openers before any body copy. Each under about twelve spoken words and four to seven on-screen words, each a mistake, a result, a bold claim or a curiosity gap, and each traceable to the fact sheet.Recipe R1: the master keeps the warm open and the promise, each short gets a stake line as its opener. | Agent | Brief, fact sheet, the hook bank of past winners | The hooks list in episode.json, one marked chosen |
Scored at step 6, read at Gate A | Episode folder, proposed social-media/video-engine/hook-bank.md |
NEW |
| 5 | Script for the ear, and make it sound naturalYes, this step includes the script editing that makes the voice sound natural, for the AI voice and for YT reading it herself. The full narration, written for the ear in the Video 1 style: one delivery tag per scene in brackets, a full stop wherever a beat is wanted, an ellipsis for a trailing breath, short sentences in pairs, caps on one payoff word at most, numbers spelled out, contractions kept. Then an out-loud edit pass: any line that trips when read aloud is rewritten, not re-punctuated. It goes straight into the scene list, each scene carrying its voice text, its on-screen word, its fact ids and a visual note.Recipe R2 to R7, R10: a tag per scene, question-led scenes of about 20 to 70 words, a full stop for every beat, caps once at most, a recap and a soft close. | Agent | Chosen hook, brief, fact sheet, the Video 1 reference | episode.json scenes (the data contract below) | Step 6 | Episode folder | PART NEW #262 C1 and rme-vo scenes.json exist, the extended contract is new |
| 6 | Evaluator passA separate critic run, never the writer grading itself. It scores the hook against the three-second bar, runs rme-chorus on the voice, checks the hard rules (no em dashes, no semicolons, no inbox guarantee, Review My Emails spelled out, glossary words), traces every sentence to a fact id, and runs the nothing-unexplained and one-word-per-thing passes. A fail goes back to step 5, up to three rounds, then to YT flagged as stuck.Recipe scorecard: tags, zero dashes, caps count, no digits in voice text, scene length, callback and recap. Plus a two-scene voice sample for Gate A. | Agent (critic) and rme-chorus | episode.json | An evaluator report beside the script | AUTO CHECK Hook, voice, rules, facts | Episode folder, shown on the review page | PART NEW the six-criteria QA routine and rme-chorus exist, #262 has D1 to D4, the hard stop before YT is new |
| 6b | Vy reads it firstRight before Gate A, Vy reads the hook and the script with the evaluator report beside it, as a viewer who is new to the topic. Per scene she marks one of three: clear, a question for Claude (asked on the page, and the answer goes into the script when it helps), or "I don't understand this, too hard, needs more examples". Any "too hard" or "more examples" flag sends the script back to step 5 before YT sees it.Recipe R3 and R7: every scene answers one question a viewer would ask, with a named example. Vy is the viewer test. | Vy, with the episode chat answering | Script page and evaluator report | Vy's marks beside the script, and any rewrite | VY CHECK Every scene marked clear before Gate A | The same episode page, as Hypothesis notes | NEW round 2, YT's comment |
| 7 | Gate A: YT reads itYT reads the hook and the script with the evaluator report and Vy's marks beside it, on one playground page. Approve, revise or reject.Recipe: the scorecard and the two-scene sample sit beside the script. The bar is "does this read like Video 1". | YT | Script page and evaluator report | Approved, locked episode text | HUMAN GATE | A playground page per episode | EXISTS Gate 1 today, moved after the evaluator |
| 8 | Record the voicesTwo takes of the same approved text. First YT records it in her own voice, scene by scene. Then the AI male voice reads it through ElevenLabs, using the Video 1 settings found in M4 (Tim, eleven_v3, stability 0.45, similarity 0.8, style 0.4). Each take gets its word timings, and the captions come from the approved text laid on those timings. A small check confirms every scene is there, the timings line up and the captions match.Recipe R4, M2, M4: the recorded Video 1 voice setting, captions from approved text, and a check that every full stop got its pause. Round 2: two takes, for the voice test. | YT records her take, a script makes the AI take | Approved episode.json | Two voice tracks (hers and his), timing files, captions | Small auto check | Today ~/Downloads/rme-vo/, proposed social-media/video-engine/. Audio binaries go to the asset library, not git. |
PART NEW the AI take exists outside the repo, YT's own take is new |
| 9 | Storyboard from the library, Vy accepts firstEach scene gets its keyframes, drawn from the asset library first: the verdict set, the reels, the recoloured illustration set. A new element is built only when nothing fits, then harvested back into the library. Vy is the first storyboard acceptor: she accepts or sends back each frame, and she organises the animations, which asset, what moves, when and in what order. Only her accepted strip goes to Gate B. The frames fill into the same script page.Recipe R8 to R10: one visual object per scene, the chapter chip, and the recap reuses the earlier scene's own asset. | Agent drafts, Vy accepts and organises the animations | episode.json, the asset library, the timings | Filled visual fields and a frame strip |
VY CHECK Vy's accept, then Gate B | 01-library/assets/ and its library page, RME-33.60 |
IN #262 E1, G1, G2. The library itself is RME-33.60, queued |
| 10 | Gate B: YT listens and looksBefore anything is rendered, YT plays both voice takes over Vy's accepted frame strip. A few minutes of listening and one look at the frames: does it sound right, does it look like Review My Emails.Recipe: YT hears Video 1's scene 01, then the new scene 01. The comparison is the test. | YT, after Vy has accepted the storyboard | Stitched voice and frame strip | Go to render, or a revise note | HUMAN GATE | The same episode page | NEW placement. #262 has "sounds right" at the very end, this moves it to where a change is cheap |
| 11 | Render the masterOne fixed HTML template, fed by episode.json and the timings, rendered frame by frame into the long master with captions. The look is built once. Only the data changes per episode, so the master renders once per voice take at no extra cost.Recipe R9: the template starts from Video 1's look, chip, karaoke caption and presenter slot. | Script | episode.json, timings, voice, assets | Master MP4 at 16:9 and its captions | Step 12 | Proposed social-media/video-engine/template/ |
PART NEW the renderers exist, one parameterised template in the repo is new |
| 12 | Watch-through QAAutomated checks on the rendered file: the length matches the voice, no blank or frozen frames, captions inside the safe zone, on-brand contrast, and the end card shows the stable owned URL.Recipe M1, M2: on-screen numbers match the fact rows, captions match the approved text, the chip count matches the chapters. | Script and agent | Master MP4 | QA report | AUTO CHECK | Episode folder | NEW a gap in #262 |
| 12b | Vy visual QAAfter the automated QA passes, Vy watches the master once at full size with sound and once muted, scrubbing. Her checklist: broken (missing images, blank or frozen frames, text overlapping or cut off, glitches), logos (the real Review My Emails logo from the library, right version and colour, never stretched, every app or tool logo correct), the look (brand colours and fonts, captions in the safe zone and readable at phone size, the chapter chip right, on-screen numbers matching the voice), and timing (the picture moves when the voice says it, the caption lights the spoken word, scenes change on breaks, no dead air, the end card holds long enough to read). A fix goes back with timestamps, to step 11, or to step 9 when an asset is wrong. The same list runs in a short pass on the atoms and thumbnails just before Gate C.Recipe R8 and R9: the picture is the noun, and you always know where you are. M1: eye and ear agree. | Vy | Master MP4 and the QA report, later the atoms and thumbnails | Pass, or a timestamped fix list | VY CHECK Before atoms are cut, and again before Gate C | The episode page, as Hypothesis notes | NEW round 2, YT's comment |
| 13 | Cut into native atomsFrom the approved master: two or three shorts, each testing a different hook or framing, vertical and square refits of the same base motion, a LinkedIn carousel or document post built from the key frames, and an audio cut. No atom carries a fact the master does not say.Recipe R3: shorts cut on scene breaks, one or two scenes each, re-opened on a stake line. | Agent plans, script renders | Master, episode.json, the hooks | Atom files and the atoms list |
The shorts content rule (decided) | Episode folder, binaries to the asset library | PART NEW resize and cuts exist, hook-test shorts and the carousel are new |
| 13b | Make the thumbnailsLibrary first: the logo, the verdict emblems and the scene objects already in 01-library/assets/, on the one fixed template in section 2d. Two versions per video, one on the stake number and one on the stake word, both taken from the fact sheet. The thumbnail is a frame of the same HTML template, so no new tool. The title in step 14 is written to pair with it.Recipe R8: one object, the scene's own. The words come from the fact sheet, like everything else. |
Agent makes, Vy spot-checks, YT approves at Gate C | The fact sheet, the stake line, the scene assets | Two thumbnails per video at 1280 by 720, plus square crops for LinkedIn | Vy's pass, then Gate C | Episode folder, binaries to the asset library | NEW round 2, YT's comment |
| 14 | Per-platform copyA title, description and tags per platform, written to each platform's limits, with the lead magnet in the description and never in the video, and the same rule check run on the copy. | Agent | episode.json, the atoms list | Metadata rows per atom | The evaluator re-runs on the copy | The metadata record (pipeline Stage 7) | EXISTS Stage 7 and #262 H1 |
| 15 | Gate C: pre-publish approveOne page with the master, every atom, both thumbnails and every piece of copy, after Vy's visual pass. YT approves, revises or rejects each one. The gate itself never posts anything.Recipe R10: the close is soft, one call to action, and names the next episode. | YT | Master, atoms, copy | The approved atom list | HUMAN GATE | A playground page per episode | EXISTS Gates 3 and 4 today, merged into one sitting |
| 16 | Schedule and post nativelyVy posts each approved atom by hand, native to its platform: YouTube long and Shorts, the LinkedIn company page and personal pages, TikTok, Instagram, the audio. No raw cross-posting and no auto-publishing. | Vy | Approved atoms and copy | Live posts, each link logged | Only what Gate C approved (posting is an amber action) | 01-library/assets/ASSETS.csv |
EXISTS Vy's role in Stage 7 |
| 17 | MeasureAt day 7 and day 28, record per atom the views, how many stayed past the opening, comments, clicks and signups. On LinkedIn, weigh comments and time spent over views. Round 2: also record which voice each atom used (hers or his) and each thumbnail's click-through.Recipe R1: also records how many stayed past the title card. The voice test reads its metric from here. | Agent reads, Vy fills what needs a login | Platform analytics | The stats columns of ASSETS.csv | None, it is a record | 01-library/assets/ASSETS.csv |
PART NEW the columns exist, the routine is new |
| 18 | Learn and graduateA short learning note per episode. The hook that held best goes into the hook bank. A short that clearly beat its siblings graduates, into a deeper episode, a carousel series, or the front of the next playlist. What flopped is recorded next to what won, never deleted. Round 2: the voice test gets its verdict here, once enough pairs are in.Recipe: the recipe carries a version, and a pattern that keeps winning goes into it. | Agent drafts, YT confirms a graduation | ASSETS.csv, the hook results | Hook bank update, the learning column, the next wave's shortlist | YT's nod on a graduation, folded into the next shortlist | ASSETS.csv, the hook bank, the tracker | NEW |
Every step was walked against R1 to R10 and the four misses. Rows marked CHANGED are different from the first draft because of the recipe. The step table above carries the same changes in its "Recipe" lines.
| Step | Protects | What it now does | |
|---|---|---|---|
| 1 Pick | R3 | A topic passes the screen only if it splits into four to eight plain questions a viewer would ask, the way Video 1 split into seven. | CHANGED |
| 2 Facts | R6, M1 | Each fact row holds one canonical number, plus how it is spoken and how it is shown. Voice and screen both read from that row, so they cannot drift apart. | CHANGED |
| 3 Brief | R1, R2, R3 | Adds the counted promise for the title card, the chapter list (one question per chapter) and the planned tag arc. | CHANGED |
| 4 Hooks | R1 | Writes two kinds of opener. The master keeps the warm open and the promise. Each short gets a stake line, the scene's strongest sentence, as its first three seconds. | CHANGED |
| 5 Script | R2 to R7, R10 | Writes to the recipe: a tag per scene, question-led scenes of about 20 to 70 words, a full stop for every beat, caps at most once per scene, numbers spelled, named examples, a recap scene and a soft close. | CHANGED |
| 6 Evaluator | all, M3 | Runs a recipe scorecard a script can count: tags present and arced, zero dashes, caps count, digits in voice text, scene word range, a callback and a recap present. It also voices scenes 00 and 01 as a short sample, so Gate A can hear the tags work. | CHANGED |
| 6b Vy reads | R3, R7 | Round 2. Vy reads as a newcomer. A scene she cannot follow, or that needs another example, goes back to step 5 before YT spends a minute on it. | NEW |
| Gate A | R1 to R7 | YT reads the script with the scorecard beside it and plays the two-scene sample. The bar printed on the page: "does this read like Video 1". | CHANGED |
| 8 Voice | R4, M2, M4 | Uses the Video 1 voice setting, now found (M4). Round 2: YT's own take first, then the AI male take, from the same text. Captions come from the approved text on the word timings, never a transcript. A check flags any full stop that got under 0.4 seconds of pause. | CHANGED |
| 9 Frames | R8, R9, R10 | One visual object per scene, the chapter chip on every scene, and the recap scene reuses the earlier scene's own asset rather than new art. Round 2: Vy accepts each frame first and organises the animations. | CHANGED |
| Gate B | R2, R4, R8 | YT hears Video 1's scene 01 first, then the new scene 01, then the rest over the frame strip. The comparison is the test. | CHANGED |
| 11 Render | R9 | The template starts from Video 1's own look: chip, karaoke caption, presenter slot. Only the data changes. | CHANGED |
| 12 QA | M1, M2, R9 | Adds three checks: every on-screen number matches its fact row, caption text equals the approved text, the chip count equals the chapter count. | CHANGED |
| 12b Vy QA | R8, R9, M1 | Round 2. A person watches what the scripts cannot judge: a wrong logo, a clumsy motion, a picture that moves before the voice says it. | NEW |
| 13 Atoms | R3 | Shorts cut on scene breaks, since a Video 1 scene is one idea in 8 to 26 seconds. A short is one scene or two, re-opened on its stake line. | CHANGED |
| 13b Thumbs | R8 | Round 2. One stake word or number from the fact sheet and one object from the scene, on one template. | NEW |
| 14 Copy | R6, R7 | No change beyond the rule check. The title can reuse the counted promise. | SAME |
| Gate C | R10 | Also checks that the close is soft, one call to action, and names the next episode. | SAME |
| 16 Post | none | No change. | SAME |
| 17 Measure | R1 | Also records how many stayed past the title card, so the warm open is tested, not assumed. | CHANGED |
| 18 Learn | all | The recipe carries a version number. A pattern that keeps winning goes into the recipe itself, not only the hook bank. | CHANGED |
YT asked: how do we decide what gets said or merged, or is it one per page? The answer is one question per short, always, and a merged cluster only for a master and only when it passes four tests.
| Who | Holds |
|---|---|
| YT | Picks the topic (1). Gate A (7). Records her own voice take (8). Gate B (10). Gate C (15). Confirms a graduation and the voice-test verdict (18). |
| Vy | Reads the script first (6b). First storyboard acceptor and organiser of the animations (9). Visual QA on the master, then on the atoms and thumbnails (12b). Posts natively (16). Fills the stats that need a login (17). |
| Agent | The shortlist (1), fact sheet, brief, hooks, script and evaluator (2 to 6), the storyboard draft (9), atoms, thumbnails and copy (13, 13b, 14), reading the stats and drafting the learning note (17, 18). |
| Script | The AI voice take (8), the render (11), the automated QA (12). |
YT's plan: every script is recorded in her own voice first, then read by an AI male voice, and we track which performs better. The recommended male voice is Tim, the one Video 1 used (M4), so the male side is the voice YT already liked.
| Part | How it runs |
|---|---|
| Pairs | Shorts: the same scene, the same hook, the same platform, posted once in each voice about a week apart, and which voice goes first alternates. Masters: episodes alternate voices, since one master cannot go up twice. |
| The metric | Average percentage viewed, how much of the video people watched on average, read at day 7 and day 28. Second: the share who stayed past the first three seconds. On LinkedIn, comments per thousand views breaks a tie. |
| Where it is kept | Step 17 records which voice each atom used beside its numbers, in the learning column. |
| The verdict | Only after at least three pairs lean the same way, because our audience is a network, not a big inbound stream, so one pair proves nothing. Step 18 drafts it, YT decides. The losing voice's numbers stay on record. |
Library first. The one proven thumbnail we already have is the verdict reel's, social-media/assets/reel-v3-suppress-thumb.png: one big word, "Suppress.", one object, the list itself, on paper with the logo. The template below is that pattern, made repeatable.
Mocks only, drawn inline. The dashed box is where the real logo file, 01-library/assets/reels/rme-logo-h.svg, goes. The keep emblem is the library's verdict-keep.svg.
One pair per rule the flow depends on. If a later change breaks one of these, the flow is broken, not just the video.
The Video 1 scenes.json was a list of scenes, each with an id and its voice text. The proposal keeps that shape and wraps it, so the fact sheet, the brief, the hooks, the visuals, the atoms and the gate results all live in one file per episode. The template reads it, the evaluator reads it, the review page reads it. Placeholders only below, no real claims.
{
"episode": "NNN.NNN.NNN-short-slug",
"almanac": ["NNN.NNN.NNN"],
"status": "script",
"facts": [
{ "id": "f1", "almanac": "NNN.NNN.NNN",
"line": "the exact Almanac sentence this claim rests on" }
],
"brief": { "angle": "...", "decision": "...", "sharpTake": "...",
"explains": ["term"], "assumes": [] },
"hooks": [
{ "id": "h1", "spoken": "under twelve words",
"onScreen": "four to seven words", "facts": ["f1"], "chosen": true }
],
"scenes": [
{ "id": "00",
"vo": "[warm] Spoken text for the ear... numbers spelled out, CAPS for stress.",
"onScreen": "the one word",
"define": ["a term shown in the side box"],
"facts": ["f1"],
"visual": { "template": "scene-type", "assets": ["verdict-keep.svg"],
"note": "what moves" } }
],
"atoms": [
{ "id": "short-h2", "platform": "youtube-shorts", "hook": "h2", "status": "planned" }
],
"gates": { "A": null, "B": null, "C": null }
}
render.mjs to a renderer that drives headless Chrome directly, because Puppeteer broke on the newer Node. The pilot uses that working path.From 01-library/research/2026-09-23-how-others-run-video-social-pipelines.md. Each pattern, the steps that carry it, and the honest fit.
Our pillar is one Almanac topic scripted as a long master, not a filmed talk. Five to eight atoms per topic, not thirty. The volume numbers from the big operators do not transfer, because every atom passes one reviewer, YT. Steps 11 and 13.
Hooks are written before the body and scored by the critic, then read by YT. Steps 4, 6 and 7.
Our audience is our LinkedIn network, not a large inbound stream, so one test will rarely give a clean answer. Compare hooks on the same topic only, graduate only on a clear gap, and weigh comments as much as views. A test varies the hook or the framing, never the fact. Steps 13, 17 and 18.
Waves of three or four topics, one sitting per gate per wave. The pilot is deliberately one topic end to end.
The episode file above is the data, one HTML template is the look. Steps 5, 9 and 11.
Vy posts by hand, per platform, and LinkedIn carousels suit our audience best. The research's automated publishing plumbing does not fit today: the lean setup has no automation layer, and posting is YT-gated. Steps 13, 14 and 16.
The research keeps two human gates, the hook and voice check and the pre-publish approve. We add a listen-and-look gate before render, because re-recording is cheap and re-rendering is not, and because YT asked to own "sounds right" and "looks right" herself. Steps 6, 7, 10 and 15.
rme-chorus runs inside the critic, the brief carries one sharp take, and YT's ear holds Gate B. Steps 3, 6 and 10.
AI auto-clipping of a long video into dozens of clips: it floods the review gate, and our cuts must stay inside what the master says. Cloud rendering at volume: no need at our pace. A new public channel for Almanac content: the public-library publish is frozen, so the flow posts videos to the platforms we already use and publishes no Almanac pages.
social-media/video-scripts/, good sources in the old voice~/Downloads/rme-vo/: scenes.json, the per-scene voice takes, captions, timings, render.html and render.mjs01-library/assets/This design does not re-specify any of these. It orders them and wires them to gates.
Suggestions only. The webinar storyboard is not edited here, the Video chat decides what to take. It is a live talk, so the scenes hold until Nakimbe clicks next and the locked v3 words stay as they are. Everything below changes pictures, holds and speaker marks, never the script.
Listed here in full, and repeated below as picks you can click, so your answers come back as one copied digest.
~/Downloads/rme-vo/ into the repo, with the audio and video binaries in the asset library, not git.Starts only on YT's go on this design and the calls above. It does not restart the paused batch. Times are estimates, and most of the agent time is one-time setup that the second topic reuses.
| Steps | What | Agent | YT | Vy |
|---|---|---|---|---|
| 1 to 3 | Pick, fact sheet, brief | about 1 h | 5 min | none |
| 4 to 6 | Hooks, script, critic rounds (first build of the critic) | 3 to 4 h | none | none |
| 6b | Vy reads it first | answers | none | about 15 min |
| 7 | Gate A | none | 15 min | none |
| 8 | YT's take, the AI take, stitch, captions | about 45 min | about 30 min | none |
| 9 | Storyboard, Vy accepts and organises | 3 to 4 h | none | about 1 h |
| 10 | Gate B | none | 15 min | none |
| 11 to 12 | Template in the repo (one time), render both voices, QA | 4 to 6 h | none | none |
| 12b | Vy visual QA | fixes | none | about 30 min |
| 13 to 14 | Atoms, two thumbnails, copy | 3 to 4 h | none | 10 min |
| 15 | Gate C | none | 20 min | none |
| 16 | Post natively | none | none | about 1 h |
| 17 to 18 | Day 7 and day 28 learn notes | about 1 h | 5 min | 15 min |
| Total | 16 to 22 h | about 1.5 h | about 3 h |
The same sixteen decisions as the list above. The recommended option is marked on each card.
Anything about the set as a whole, like a theme, a pattern, or a blocker.
This updates as you go. Hit Copy and paste it into the review thread (Slack or the PR). Nothing is sent automatically. Your picks live only in this browser until you copy them.