B-Roll Mapping · Workspace colaborativo

Footage de fondo · Video Fábrica de Software

Cada beat de Valeria necesita visual de soporte. Acá mapeamos qué va detrás de cada segundo: diagrama del squad, mocks de Slack/Linear/Vercel, código del dual-gate, split-screen comparativo. Status por segmento: IDEASPECWIPREADY.

Beats Valeria
7 clips · listos
Runtime total Valeria
6:14.81
Segmentos B-roll
35 READY ✓ TODOS
Pipeline B-roll
Hyperframes + MJ V8 mixto
Cómo trabajamos esto: repasá los segmentos por beat. Marcá los que te cierran, redirigí los que no. Cada card tiene un slot de preview vacío — cuando generemos el footage con Hyperframes/mocks, va ahí. La idea es no escribir un solo HTML hasta que estés conforme con el plan.

BEAT 3 Setup del dolor 41.61s · 0:45 → 1:27 Treatment: B-roll full-cut con cortes a Valeria

[Valeria HeyGen, boardroom AI4M, narradora ejecutiva]
🎬 Valeria · beat3-valeria-v1.mp4 · 41.56s

0:00El software complejo requiere equipo. Cinco personas. Mínimo. Quince mil dólares al mes en nómina.

0:11Dos semanas por iteración, desde que el Product Owner pide algo, hasta que el usuario lo ve. Y mientras tanto, el dueño del negocio atrapado siendo project manager, en lugar de concretar oportunidades de negocio.

0:25Cada feature que tu competidor saca, vas tres semanas atrás. Cada cliente enterprise que pide un ajuste, lo pierdes, porque tu roadmap ya está comprometido.

0:36El costo no es solo la nómina. Es el costo de oportunidad de no poder responder. Hasta que cambias de modelo. Dejas de armar equipos. Empiezas a armar squads de agentes de IA.

B-Roll segments 5 segmentos · 5/5 READY ✓
0:00 → 0:10
Equipo de devs en open-plan boardroom con luces cálidas. Camera push-in subtle: arranca wide → cierra hacia el centro a 5s. Counter 5 PERSONAS · $15K/MES en Playfair italic se superpone después en post.
TypeFull-cut
Base imgMJ V8
MotionHappy Horse i2v
OverlayHyperframes counter
● READY
🎬 beat3-seg1.mp4 · 7.16s · 1920×1080 24fps · 4.7 MB · base v1-grid-3 + Happy Horse 1080p · audit: identidad ✓ push-in ✓ code estable ✓
0:11 → 0:24
Owner-as-PM: ejecutivo atrapado en chat bubbles flotantes, manos en cabeza. Camera push-in dramático que refuerza el agobio — arranca wide → cierra al close-up íntimo. Sin texto encima.
TypeFull-cut
Base imgMJ V8
MotionHappy Horse i2v
● READY
🎬 beat3-seg2.mp4 · 7.16s · 5.5 MB · base a-grid-3 · audit: identidad ✓ chat bubbles ✓ push-in dramático ✓
0:25 → 0:33
Top eyebrow rojo "MIENTRAS VOS RESPONDÉS TICKETS · TU COMPETIDOR ESTÁ SHIPPEANDO" · split frame con divisor VS ámbar · pane Tu roadmap rojo (4 features 🔒 EN QUEUE + pedido enterprise NO FIT + progress 10%) · pane Tu competidor verde (4 features ✓ PROD + enterprise WON + progress 85% animado) · overlay centrado dramático con counter 3 semanas ATRÁS · CADA FEATURE Playfair 64px + cliente "se va al competidor →" + "+ Y el competidor suma uno más" · pulse final.
TypeSplit-screen
SourceHyperframes ✓ rendered
● READY
🎬 beat3-seg3-roadmap-competidor-v2.mp4 · 8s · 1920×1080 30fps · 426 KB · split + overlay centrado
0:34 → 0:38
Top eyebrow ámbar "EL VERDADERO COSTO" + Playfair italic "El costo no es la nómina · es no poder responder" · bar chart contraste: nómina ámbar small 200px $15K/mes "lo que ves en el spreadsheet" + costo oportunidad rojo huge 600px $120K+/mes "lo que pagás de verdad" con multiplier ≈ 8× más + breakdown items "3 features perdidas · 2 enterprises se fueron · momentum frenado · deuda técnica" · annotation "Lo que no se ve en el P&L · es lo que más cuesta".
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat3-seg4-costo-oportunidad-v1.mp4 · 5s · 1920×1080 30fps · 383 KB · bar chart 8× revealing
0:38 → 0:42
Pivot dramático con cross-fade · 5 person avatars rojos (PM $3K · Architect $3.5K · Dev Sr $3K · Dev Jr $2K · QA $2.5K) + frase Playfair italic gris "Dejas de armar equipos" con strike-through rojo · cross-fade s1.7-2.5: humanos fade-out scale-down → 4 agent avatars ámbar back.out (PMO opus 4.7 · Architect opus 4.7 · Dev sonnet 4.6 · QA sonnet 4.6) · frase Playfair ámbar "Empiezas a armar squads de agentes de IA" · pulse final ámbar en los 4 agentes.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat3-seg5-frase-pivot-v1.mp4 · 4s · 1920×1080 30fps · 518 KB · humanos → agentes pivot

BEAT 4 Tour del Squad + guardrails 52.23s · 1:30 → 2:22 Treatment: Diagrama animado fullscreen · Valeria PiP esquina

[Valeria HeyGen + diagrama Squad animado en split-screen]
🎬 Valeria · beat4-valeria-v1.mp4 · 52.23s

0:00Esto es Agent Squad. En el centro, el PMO, un agente Opus que coordina. Recibe el ticket, identifica dependencias, asigna trabajo.

0:14Tres satélites alrededor: el Architect, también Opus, diseña la arquitectura del cambio. El Dev, un Sonnet optimizado para implementación, escribe el código. El QA, otro Sonnet especializado en testing, valida con TestSprite end-to-end.

0:30Y debajo de todo, una capa de guardrails: ningún agente cierra un ticket sin evidencia QA verde y aprobación explícita del cliente.

0:40Cada agente tiene contexto persistente del proyecto, memoria de las decisiones anteriores, y permisos controlados sobre el repositorio. Esto no es un asistente. Es un equipo.

B-Roll · 1 composición continua de 52s 5/5 READY
0:00 → 0:52
Beat 4 cubierto en una sola composición continua: PMO scale-in con glow → verbos orbit (RECIBE·IDENTIFICA·ASIGNA) → 3 satélites fade-in con líneas (Architect Opus, Dev Sonnet, QA Sonnet) → Guardrails strip slide-up → Layer stack (CONTEXTO·MEMORIA·PERMISOS) → diagram fade-out + frase final reveal "Esto no es un asistente. Es un equipo." Pacing matchea voice-over de Valeria.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat4-diagrama-squad-v2.mp4 · 52s · 1920×1080 30fps · 4.2 MB · v2 con fonts CONTEXTO/MEMORIA/PERMISOS ampliados (24px)

BEAT 5.1 Setup del incidente · Min 0 + Min 4 46.38s Treatment: Screen mocks (Slack · Linear · GitHub)

[Valeria HeyGen, narradora del timeline]
🎬 Valeria · beat5-chunk1-valeria-v1.mp4 · 46.38s

0:00Minuto cero. El cliente manda un mensaje al canal de Slack del proyecto. Reporta un bug en el formulario de registro. Algunos campos no se están guardando correctamente.

0:14Cuatro bugs distintos en cascada, todos en el mismo flujo. Lo necesita resuelto rápido porque está bloqueando demos con usuarios reales.

0:25Mientras que el líder técnico humano del proyecto se encuentra en una reunión. El squad de agentes recibe el mensaje.

0:33Minuto cuatro. El agente PMO ya leyó el thread, identificó que son cuatro bugs separados pero relacionados, abrió tickets en Linear con la descomposición correcta, y commiteó el primer fix al repositorio. Cuatro minutos. Sin pedirle nada al líder técnico.

B-Roll · 3 partes (pre + Stage 3 MJ V8 + post) 3/3 READY ✓
0:00 → 0:25
Stage 1 + 2 combinados: Slack mock #proyecto-launch (Cliente postea bug urgente, MIN 0 marker) → cross-fade → DevTools Console con 4 stack traces stagger (TypeError schema · AutosaveError naming · ValidationError handler · CascadeError dependency) + counter "4 ERRORS · BLOCKING PRODUCTION".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat5.1-pre-v2.mp4 · 25s · 1920×1080 30fps · 1.8 MB · Slack→Console cross-fade
0:25 → 0:32
Líder Técnico de espaldas, headphones, video call grid en monitor central + dashboard al costado, golden hour ámbar. Push-in moderado, avatares del meeting grid muestran movimiento sutil entre frames.
TypeFull-cut
Base imgMJ V8
MotionHappy Horse i2v
● READY
🎬 beat5.1-seg3.mp4 · 7.16s · 4 MB · base b-grid-1 · audit: anonimato ✓ headphones ✓ avatares meeting grid sutil ✓
0:33 → 0:46
Stage 4 + 5 combinados: Slack PMO mensaje "Identifiqué 4 bugs separados" con bullets (schema email · autosave empresa · validación teléfono · cascade submit) + Linear board con 4 tickets PROY-201..204 stagger → cross-fade → counter "⏱ 04:00" scale-in + GitHub commit "fix(registro): alinea schema Postgres del campo email y revalida autosave · push a main · 10:04 AM · PROY-201".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat5.1-post-v2.mp4 · 13s · 1920×1080 30fps · 811 KB · split-screen Slack+Linear → counter+commit

BEAT 5.2 4 minutos por dentro + Min 16 + Min 20 58.92s Treatment: Pipeline horizontal animado · Mocks Vercel/Linear

[Valeria HeyGen, ritmo procedural]
🎬 Valeria · beat5-chunk2-valeria-v1.mp4 · 58.92s

0:00Lo que pasó adentro en esos cuatro minutos es lo que importa.

0:05El agente PMO leyó el contexto del proyecto, identificó que el bug primario era del tipo de dato de un campo en la base de datos. Abrió el ticket.

0:18El agente Arquitecto generó un plan de fix con migración SQL incluida. El agente Dev escribió el código siguiendo los patrones del repositorio. El QA corrió tests unitarios automáticos. Todo en cuatro minutos.

0:35Minuto dieciséis. Llega el segundo commit. El PMO ya identificó que el segundo bug era distinto al primero; un campo se estaba autoguardando con un nombre que no coincidía con el schema de la tabla. Otro fix limpio, otra migración, otro deploy.

0:50Minuto veinte. Vercel reporta los dos deploys en estado READY. El sistema en producción ya está corregido. El cliente tiene su flujo funcionando.

B-Roll segments 6 segmentos · 6/6 READY ✓
0:00 → 0:11
Split-screen: VS Code editor con CLAUDE.md abierto (schema SQL tabla `registrations` con highlight ámbar deslizándose a línea `email TEXT NOT NULL` → línea warning del mismatch VARCHAR(255)) + Linear panel "PROY · Triage · PMO Agent · MIN 4" con PROY-201, contexto citado, finding "✓ Bug primario identificado" y action card pulsante "Abriendo ticket".
TypeSplit-screen
SourceHyperframes ✓ rendered
● READY
🎬 beat5.2-seg1-pmo-context-v1.mp4 · 11s · 1920×1080 30fps · 794 KB · editor + Linear triage
0:11 → 0:24
Full-screen Claude Code CLI · Architect Agent (claude-sonnet-4-6, MIN 4:30, 8.4k tokens). Streaming output: handoff PMO + análisis schema + mismatch confirmado · plan box ámbar 3 steps (migración SQL idempotente · drizzle pull · zod validator) · code block migrations/2026_04_30_align_email_type.sql con ALTER COLUMN email TYPE TEXT + CHECK chk_email_format · handoff card "✓ Plan listo · 3 pasos · 90s → Dev Agent".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat5.2-seg2-architect-v1.mp4 · 13s · 1920×1080 30fps · 723 KB · CLI Architect plan + SQL
0:24 → 0:33
Top split (760px): Dev Agent typing diff zod en register.svelte:42 (línea VARCHAR(255) tachada → línea TEXT con email().trim() en verde) + QA TestSprite 5/5 PASSED stagger (rejects empty · accepts TEXT · trims · persists · CHECK enforced) · 99ms. Bottom strip (320px): Pipeline PMO ✓ → Architect ✓ → Dev → QA con transición Dev-done → QA-active al final.
TypeSplit-screen
SourceHyperframes ✓ rendered
● READY
🎬 beat5.2-seg3-dev-qa-v1.mp4 · 9s · 1920×1080 30fps · 529 KB · Dev diff + QA tests + pipeline
0:33 → 0:36
Full-screen punctuation: counter ⏱ 04:00 (280px) con label ámbar "PRIMERA VUELTA DEL SQUAD" + stats row "1 commit · main · 5/5 tests passed · 0 decisiones cliente". Radial glow ámbar + grain + pulse final.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat5.2-seg4-counter-bridge-v1.mp4 · 3s · 1920×1080 30fps · 508 KB · counter + 3 stats
0:36 → 0:50
3 stages cross-faded · Stage A counter ticks ⏱ 04:00→08:24→12:08→14:42→⏱ 16:00 + tagline "El squad detectó el bug #2 sin nuevos inputs" · Stage B Linear PROY-202 "Autosave naming · campo empresa no coincide con schema" + diff side-by-side empresa (rojo) → company (verde) · Stage C code block db/schema.ts con $alias("empresa") + GitHub commit "fix(registro): mapea alias empresa→company en schema drizzle · 0 cambios destructivos".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat5.2-seg5-min16-v2.mp4 · 14s · 1920×1080 30fps · 1.3 MB · counter advance + Linear + diff + commit
0:50 → 0:58
Vercel-style dashboard agent-squad-org/proyecto-launch · counter ⏱ 20:00 ámbar · tab Deployments active · 2 deploy cards ● READY con dot pulsante verde Vercel (PROY-202 alias empresa→company "hace 30s" · PROY-201 schema email "hace 12m"), pills PRODUCTION · closing Playfair "El cliente tiene su flujo funcionando en producción" + stats "2 deploys · 2 tickets · 0 decisiones · 20 min total".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat5.2-seg6-min20-vercel-v1.mp4 · 8s · 1920×1080 30fps · 430 KB · Vercel deploys READY + closing

BEAT 5.3 +30 min · Líder Técnico vuelve · cierre 74.16s Treatment: POV pantalla · Slack/Linear/GitHub/Vercel scroll

[Valeria HeyGen, narradora cierre del incidente]
🎬 Valeria · beat5-chunk3-valeria-v1.mp4 · 74.16s

0:00Cuando el Líder Técnico vuelve al Slack treinta minutos después del mensaje original, encuentra un thread con cuatro mensajes del agente PMO: identificación de los bugs, plan, ejecución, y confirmación de deploys.

0:18Los dos tickets en Linear están cerrados con evidencia. Los dos commits están en main con mensajes técnicos descriptivos. Los dos deploys están READY en Vercel.

0:31El Líder Técnico no tomó una sola decisión técnica; no revisó un solo pull request. Ni mucho menos tuvo que escribir una sola línea de código.

0:46Solo apareció treinta minutos después al canal del cliente con un único mensaje del equipo squad: "el cliente tiene su flujo funcionando".

0:57Esto es Agent Squad funcionando como una fábrica de software. Veinte minutos desde el reporte hasta el último deploy. Dos bugs resueltos. Cero intervención humana en tiempo real. Y los guardrails corriendo en el fondo asegurándose de que cada paso pase por evidencia QA antes de tocar producción.

B-Roll segments 6 segmentos · 6/6 READY ✓
0:00 → 0:17
POV Líder Técnico vuelve a Slack #proyecto-launch en MIN 30. Header con counter ámbar + cursor POV. Thread con 4 mensajes PMO Agent stagger (active-glow rotativo): MIN 3 Identificación (PROY-201/202 detectados) · MIN 4 Plan+commit#1 (Architect/Dev/QA 5/5) · MIN 16 Ejecución bug#2 (alias empresa→company) · MIN 20 Confirmación (2 deploys READY). POV strip cierra: "4 mensajes · 0 respuestas necesarias".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat5.3-seg1-slack-thread-v1.mp4 · 17s · 1920×1080 30fps · 984 KB · POV Slack 4 mensajes PMO
0:18 → 0:30
Top header "ESTADO MIN 30 · 2 tickets · 2 commits · 2 deploys sincronizados" + 3 columnas back.out stagger: Linear (PROY-201/202 · DONE · QA evidence) · GitHub main (a3b8c7f · 7c4a9e2 · MERGED) · Vercel production (2 deploys · READY · build times). Sync flash verde recorre las 6 cards · sync strip "1 verdad sincronizada · 0 intervención humana" con íconos rotando.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat5.3-seg2-3up-grid-v1.mp4 · 12s · 1920×1080 30fps · 680 KB · Linear/GitHub/Vercel synchronized
0:31 → 0:45
Full-screen punctuation · eyebrow "LO QUE EL LÍDER TÉCNICO NO TUVO QUE HACER" + title Playfair italic "Mientras el squad trabajaba, el líder seguía en sus reuniones" · 3 zero-cards stagger (240px ámbar, strike-through rojo): 0 decisiones técnicas · 0 pull requests revisados · 0 líneas de código escritas · closing strip "Solo apareció 30 minutos después · al canal del cliente" + final pulse de los 3 ceros al unísono.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat5.3-seg3-cero-decisiones-v1.mp4 · 14s · 1920×1080 30fps · 783 KB · 3 zeros + strike-through
0:46 → 0:56
Slack #cliente-launch · header counter ⏱ 10:30 AM · MIN 30 · empty channel divider "silencio durante 30 minutos" · hero message Agent Squad (avatar ámbar AS, tag "app · automated") posteado directo al canal del cliente: "El cliente tiene su flujo funcionando." en Playfair italic 56px · reactions row ✅ 🙏 🚀 💯 stagger · annotation "Posteado por el squad directo al canal del cliente · el líder técnico solo aparece a leerlo".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat5.3-seg4-mensaje-cliente-v2.mp4 · 10s · 1920×1080 30fps · 460 KB · Agent Squad message + reactions
0:57 → 1:08
Hero stats champagne · eyebrow "RESUMEN DEL INCIDENTE · CIERRE DEL CICLO" + Playfair italic 64px "Esto es Agent Squad funcionando como una fábrica de software" · 3 stat cards Playfair italic ámbar back.out: 20 min end-to-end · 2 bugs resueltos · 0 intervención humana en tiempo real · closing "Cliente con su flujo funcionando · sin que nadie del equipo humano tocara una línea" · final pulse al unísono.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat5.3-seg5-stats-hero-v2.mp4 · 11s · 1920×1080 30fps · 1.3 MB · 3 stats champagne hero
1:08 → 1:14
Eyebrow verde "GUARDRAILS · CADA PASO PROTEGIDO" + title Playfair italic "Cada commit pasa por evidencia QA (pill mono verde) antes de tocar producción" · pipeline horizontal: PMO → 🛡 → Architect → 🛡 → Dev → 🛡 → QA → 🛡 (barrera principal más grande) → PROD main verde · shields back.out stagger + connection lines flash verde · evidence pills "QA tests verde · schema valid · 0 cambios destructivos · auditoría trace completo" · closing Playfair "Sistema protegido · cada paso · cada vez" + pulse final PROD.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat5.3-seg6-guardrails-v2.mp4 · 6s · 1920×1080 30fps · 612 KB · pipeline + shields + evidence

BEAT 6 Iteración del sistema · dual-close gate 41.56s · 5:44 → 6:25 Treatment: Code editor + diff visual

[Valeria HeyGen + cut a código del gate dual-close]
🎬 Valeria · beat6-valeria-v1.mp4 · 41.56s

0:00Pero acá está la parte que no suelen contar en estos videos. El squad también comete errores.

0:09Hace poco, uno de los agentes tomó una acción que no debería haber tomado: cerró un ticket sin la autorización explícita del cliente.

0:18¿La solución? No fue desconfiar del sistema. Fue agregar un guardrail. Un cierre dual-gate: ahora ningún agente puede cerrar un ticket sin dos cosas: evidencia QA verde Y aprobación explícita del cliente en el comentario del ticket.

0:32Eso también es parte del trabajo. Armar guardrails cuando el sistema te muestra dónde puede fallar. El squad mejora cada semana porque cada error se convierte en código nuevo del sistema.

B-Roll segments 4 segmentos · 4/4 READY ✓ (seg1 con 2 variantes A/B)
0:00 → 0:09 VARIANTE A · typography
Typography hero contraste · background obsidian frío + scanline + grain · eyebrow rojo "● LA PARTE QUE NO SUELEN CONTAR ●" con dots pulsantes · hero Playfair italic 110px "El squad también comete errores." · sub-line 56px "Y la solución no fue desconfiar del sistema" (ámbar accent) · annotation "↓ LO QUE PASA DESPUÉS · ITERACIÓN DEL SISTEMA ↓".
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat6-seg1-honestidad-v2.mp4 · 9s · 1920×1080 30fps · 727 KB · typography pivot honestidad
0:00 → 0:09 VARIANTE B · macro pausa
Macro pausa cálida: mano sosteniendo taza humeante, teclado backlit blue, red dot bokeh, sin cara. Steam curling sutil + keyboard pulsing, sin camera move. Quietud contemplativa — refuerza el beat reflexivo.
TypeFull-cut
Base imgMJ V8
MotionKling v2.1 std
● READY
🎬 beat6-seg1.mp4 · 5.04s · 1280×716 · 1.8 MB · base c2-grid-1 + Kling v2.1 standard ($0.225) · audit: steam ✓ keyboard pulse ✓ stillness ✓
0:09 → 0:18
Top banner rojo "REPLAY DEL INCIDENTE · 2026-04-15 11:42 AM" · split: Linear LPDI-187 "Reemplazo loader fonts" con status badge cambiando en vivo (In Progress → Done → ↻ Rolled back con flash) + comments arriba (PMO "QA verde, cerrando" → cliente quote rojo italic "No autoricé este cierre") · Audit log con dots conectados (QA tests · Dev push · PMO Done amarillo sin client_approval · cliente trigger rollback rojo) · Verdict overlay centrado "Causa raíz: acción permitida sin gate".
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat6-seg2-incident-replay-v4.mp4 · 9s · 1920×1080 30fps · 598 KB · post-mortem visual + verdict centrado
0:18 → 0:32
Editor full-screen linear_tools.py · commit 4f7e18a · main · post-incident fix · section bar "Función afectada: close_ticket() · ANTES → DESPUÉS" · pane ANTES rojo 3 líneas minus: función simple sin checks close_ticket(ticket_id) → linear.update(state="Done") · pane DESPUÉS verde 6 líneas plus stagger: dual-gate validator con _qa_evidence_green y _client_approval_in_thread + 2 annotation badges ámbar "Gate #1 QA evidence · Gate #2 client approval" + GateBlocked exceptions · pulse final.
TypeFull-cut
SourceHyperframes ✓ rendered
● READY
🎬 beat6-seg3-dual-gate-code-v1.mp4 · 14s · 1920×1080 30fps · 564 KB · before/after dual-gate fix
0:32 → 0:42
Top eyebrow "EL SQUAD MEJORA CADA SEMANA" + title Playfair italic "Cada error se convierte en código nuevo del sistema" · timeline horizontal con 4 weeks W1-W4 conectados por línea ámbar, stagger back.out: W1 dual-close gate (linear_tools.py) · W2 zero-skip QA (qa_gates.py) · W3 breaking-change detector (arch_review.py) · W4 deploy timeout block (deploy_verifier.py) · cada card tiene incident → arrow → fix verde con commit hash · closing "El sistema aprende cada semana — y queda en código" + pulse final en los 4 markers.
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 beat6-seg4-timeline-mejoras-v1.mp4 · 10s · 1920×1080 30fps · 721 KB · 4 weeks timeline + closing

BEAT 7 Contraste antes/después · frase central 59.95s · 6:25 → 7:25 Treatment: Split-screen 50/50 → fullscreen typography

[Valeria HeyGen + split-screen animation comparativa]
🎬 Valeria · beat7-valeria-v1.mp4 · 59.95s

0:00Antes: tres a cinco desarrolladores en nómina. Quince mil dólares al mes mínimo. Dos semanas promedio por feature desde el pedido hasta producción. Dos iteraciones máximo por sprint antes de saturar al equipo. Backlog que no para de crecer.

0:23Después: un squad de agentes corriendo veinticuatro siete. Costo en tokens de API menos de quince dólares por feature compleja. Tiempo promedio medido en horas, no en semanas. Iteraciones ilimitadas porque es código, no es gente cansada. El equipo humano que queda, los que valen su peso en oro, ahora hacen arquitectura y producto. No hacen tickets.

0:46La pregunta no es cuanto de dinero te ahorra este marco de trabajo. La pregunta es qué haces con la velocidad.

0:53Y acá está la frase que quiero que te lleves de este video: La velocidad de tu producto ya no la define el tamaño de tu equipo. La define la calidad de tus agentes.

B-Roll · 2 composiciones (split-screen 53s + frase central 7s) 4/4 READY
0:00 → 0:53
Beat 7 cubierto en una composición continua: Stage 1 ANTES focus (panel rojizo + 5 person icons + 4 stats) → Stage 2 DESPUÉS focus (panel verdoso + 4 squad nodes + 4 stats con paleta cálida) → Stage 3 fade-out + speedometer reveal con question "¿Qué haces con la velocidad?" + needle climbing 9→3 o'clock + progress arc fill. Pacing matchea voice-over de Valeria.
TypeSplit-screen
SourceHyperframes ✓ rendered
● READY
🎬 beat7-contraste-v1.mp4 · 53s · 1920×1080 30fps · 5.2 MB · split-screen contraste + speedometer build-up
0:53 → 1:00
FRASE CENTRAL fullscreen. Typography reveal Playfair-style italic gigante sobre obsidian + sutil grain + glow champagne. Build-up setup (líneas 1+2) → payoff (líneas 3+4) con scale subtle. Contraste WCAG AAA. 7s · 1920×1080 · 30fps · 1.2 MB
TypeFullscreen GFX
SourceHyperframes ✓ rendered
● READY
🎬 frase-central-v1.mp4 · primero render Hyperframes · accesibilidad ✓ · contraste champagne/obsidian AAA

Design system · convenciones de producción

Treatment

Full-cutReemplaza Valeria 100%
Overlay PiPPicture-in-Picture esquina
Split-screen50/50 horizontal
Fullscreen GFXFrase central / counter / título

Source plan

Hyperframes HTMLHTML→MP4 determinístico
Mock UISlack/Linear/Vercel screenshots
Code editorSyntax-highlight typing
AI genSeedance/Veo (poco probable)
StockÚltimo recurso

Status

● IDEAConcepto sin spec
● SPECHTML/copy escrito
● WIPRenderizando
● READYMP4 listo

Color palette

Obsidian#0D0D12
Champagne#C9A84C
Green#6fcf97
Blue#56b3e0
Amber#f0b94f
Red#e8625c
Convenciones globales — Tipografía Playfair italic champagne para frases centrales y stats hero. JetBrains Mono para timestamps, code snippets y métricas. Inter para todo el body. Mocks UI tienen que ser visualmente creíbles (Slack/Linear/Vercel reales) pero anonimizados (cliente = avatar genérico, nombres genéricos). Ningún logo de marcas reales fuera de las herramientas que usamos.
Pipeline propuesto — Cada segmento se especifica como un HTML standalone, se rendea con Hyperframes Mode E, output es MP4 a 1920×1080 25fps. Los segmentos cortos (3–8s) son loops o reveals. Los largos (10–25s) tienen escenas con cuts. Conviene escribir un base.css compartido para mantener color/typography y solo variar el contenido por segmento.
Decisiones pendientes — (1) ¿Valeria queda full-frame con cortes a B-roll, o queda como PiP permanente? (2) ¿Mocks de Slack/Linear/Vercel los hacemos genéricos o ultra-realistas con UI auténtica? (3) ¿La frase central de beat 7 va con Valeria de fondo blur o fullscreen typography sola?