C v3 — “TDD for Data Pipelines” — Locked Storyboard
Founder confirmed iteration 2026-05-07 03:39 UTC. v3 = v2 with three concrete fixes (clip + emoji + wrap). Used as the source-of-truth spec for
/video-criticinvocation.
Container
- Total duration: 30.000s (must match render within ±0.5s)
- Resolution: 1080×1080 square
- Frame rate: 30fps
- Audio: background music throughout + 1 SFX (marker stroke at 0:20)
Beat table (locked)
| Time | Beat | Expected on screen | Position constraints |
|---|---|---|---|
| 0:00-0:03 | Title slam-in | ”Software engineers solved this problem 25 years ago.” Big blocky display type. “25” in coral accent. | Top-aligned heading, single-line where width permits, multi-line stacked allowed for hero title |
| 0:03-0:06 | Subtitle types in | ”Data teams weren’t able to copy them. Until now.” | Below title, mono font, “Until now.” in coral |
| 0:06-0:08 | Horizontal stack reveal | Top label “1999 / SOFTWARE ENGINEERS” big bold prominent. Bottom label “2026 / DATA TEAMS” big bold prominent. Horizontal divider line between. | TOP half = 1999 era, BOTTOM half = 2026 era. NOT vertical split. Both labels visible from 0:06+. |
| 0:08-0:14 | TOP HALF animates | Code block expands fluidly with test('output is valid', () => { expect(result).toMatch(spec); });. Then PASS check (waapi badge, navy circle with checkmark). Then SHIP stamp (coral). | All three elements MUST sit fully inside 1080×1080 frame. PASS badge specifically must have ≥60px margin from right canvas edge. NO clipping past edges. |
| 0:14-0:20 | BOTTOM HALF animates | Dashboard mockup with sparkline (small box). “looks good?” text. ASCII shrug ¯\_(ツ)_/¯ (NOT emoji — verbatim ASCII characters). Ship-with-question-mark “ship?” stamp. | Shrug ¯\_(ツ)_/¯ MUST sit on the SAME LINE as “looks good?”. Single-line read. ASCII shrug rendered in monospace (JetBrains Mono or similar). |
| 0:20-0:24 | Strikethrough | Soft pen/marker stroke draws across “looks good?” text. Coral marker stroke. Marker SFX hits at 0:20. | Strikethrough CONTAINED to “looks good?” text width only. Does NOT extend past the ”?” or to canvas edges. Does NOT cross through the ASCII shrug. |
| 0:24-0:28 | OUTRO reveal | TOP-of-frame: “MAC: PASS / FAIL” big blocky display. SINGLE LINE — NO WRAP. Coral underline beneath. MIDDLE: subline “TDD for Data Pipelines.” in mid-weight mono. BOTTOM: “modelacceptancecriteria.io” in bumped weight. | ”MAC: PASS / FAIL” MUST fit on ONE line — “FAIL” cannot wrap to second line. Top-of-frame placement (not bottom-weighted). Vertical balance distributed top→middle→bottom. |
| 0:28-0:30 | Stamp + fade | Clean tail | Last frame shows clean composition fade |
Acceptance criteria (for video-critic auto-flag list)
- Edge clipping: No content clipped past any canvas edge at any timestamp. Specifically: PASS check badge at t=12s must have ≥60px right-edge margin.
- Text wrap: “MAC: PASS / FAIL” outro MUST be single-line at t=24-28s. NO line-wrap.
- Element-on-wrong-line: ASCII shrug
¯\_(ツ)_/¯MUST be on same line as “looks good?” at t=14-20s. NO emoji 🤷. - Missing element: All beats above show their listed expected elements at their stated timestamps.
- Position match: “MAC: PASS / FAIL” sits at TOP of frame (top-third), not bottom or middle.
- Mid-reveal at end of beat: Each beat completes its reveal by
t_end. No element still mid-fade-in at beat boundary. - Background motif: Memphis-grid pastel-dot background visible at low opacity throughout.
- Copy locked: All copy strings above are verbatim — no paraphrase or drift.
Audio expectations
- Music: background bed throughout 0:00-30.000s
- SFX: marker-stroke at 0:20 (~1s duration), syncs with strikethrough animation start
- No voiceover for this composition (silent except music + SFX)
Diff from v2 (the three fixes)
- PASS check badge clip fix. v2 had badge clipping past right canvas edge. v3 pulls top-row group inward (96px right padding + reduced sizes for code block / badge / SHIP stamp).
- Emoji → ASCII shrug. v2 used 🤷. v3 uses
¯\_(ツ)_/¯(verbatim ASCII characters, monospace font). - Outro single-line fix. v2 had “FAIL” wrapping to second line. v3 reduces “MAC: PASS / FAIL” to font-size that fits one line at 1080-wide canvas (~88px Big Shoulders Display 900 with -0.025em letter-spacing and white-space:nowrap).
Cross-references
- v2 storyboard at
~/rdco-vault/01-projects/mac/videos/scripts.mdsection “C. TDD for AI” (renamed to “TDD for Data Pipelines” in v2) - v3 build path:
~/Projects/mac-landing/videos/tdd-for-data-pipelines/ - v3 render output:
~/Projects/mac-landing/public/videos/0afab2986b63/mac-tdd-for-data-pipelines.mp4 /video-criticskill:~/.claude/skills/video-critic/SKILL.mdfeedback_fresh_eyes_subagent_for_own_artifacts.md— the standing memory this critic gate operationalizes