Thoughts

5 thoughts about "ENN Pipeline" in the last 30 days

ENN Pipeline Session 38 Complete. Phase 10 finished. 10 shorts produced and approved across all 4 characters (Rex, Kaelon, Grix, Praxon). Key fixes this session: (1) Hedra chunk transition freeze fix in resolve-shots.ts, added MIN_AVATAR_SEC (2s) threshold so short avatar fragments get merged into adjacent b-roll instead of flashing on screen. (2) Thumbnail text overflow fix in generate-thumbnails.mjs, bumped character width multiplier from 0.62 to 0.75 for Arial Black uppercase, dropped max single-line threshold from 20 to 14 chars to force earlier line splits. Blog post schema mismatch identified between pipeline manifests and exo-news-network website: content vs body, seo_description vs excerpt, broadcaster_name vs character_name, missing companion_short_id/category/header_image_url fields. None of the 10 blog posts have been scored, rewritten, or inserted into the database. All rolled into Phase 12 tasks (12.3 schema fix, 12.4 quality pass). Holding on producing more shorts until publishing infrastructure is ready. Next: Phase 11 (long-form) or Phase 12 (publishing + launch prep). Recommendation was Phase 12 first to unblock posting.

Session 37 (2026-03-25): ENN Pipeline - Major sync fix and model upgrade. ROOT CAUSE OF ALL SYNC ISSUES: The voiceover.mp3 in R2 was the old 75-second untrimmed version while everything else (timestamps, Hedra clips, manifest) was based on the 61-second trimmed version. Railway was downloading the wrong audio file every render. All the framerate normalization, caption delays, and audio re-encoding were treating symptoms of a simple data mismatch. KEY CHANGES: - Switched from Hedra Character-3 to Hedra Avatar model (better lip-sync quality at similar cost, 7 credits/sec). Tested 5 models: Character-3 (worst), Avatar (best value), Omnia (truncates audio, dealbreaker), Kling Avatar v2 Std (good but 2x cost), Kling Avatar v2 Pro (best quality but 3x cost). Avatar outputs 480x832 at 25fps, acceptable for 2D art on mobile. - Smart sentence-boundary splitting for multi-chunk Hedra: analyzes timestamps.json to find pauses after sentence-ending punctuation, splits audio at natural pauses instead of equal time intervals. Prevents mid-word glitches at chunk transitions. - Pre-render integrity check in render-batch.mjs: compares local file sizes against R2 before rendering, aborts with clear error if any stale assets detected. Would have caught the voiceover mismatch immediately. - generate-timestamps.mjs now uses ffprobe for actual MP3 duration instead of Whisper's last word end time. - Added remote-asset-integrity.md to ~/.claude/rules/ as a cross-project principle. RULES FOR PROCESS-SCRIPTS (not yet implemented): 1. Avatar shots must be distributed so every Hedra chunk gets at least one (otherwise that framing never appears on screen) 2. Flux stills before Hailuo clips should use slow_zoom_out (not zoom_in) so the still ends at the same scale as the animation's first frame 3. Never request readable text/letters/words in Flux prompts (generates gibberish). Include "no readable text no letters no words" in prompts involving documents/signs. Updated mantis portraits with visible mouths for all 3 framings (Close/Medium/Wide). Dave created these manually. All 4 characters have new broadcaster portraits in characters/News Anchor/ folders.

People: Dave

ENN Pipeline Session 35: Completed Tasks 10.1, 10.2, and 10.2b. Task 10.1 added Flux asset library integration to generate-visuals-batch (reuse lookup, tag extraction, usage tracking). Task 10.2 baked thumbnail as 1s first frame hold in Remotion ShortComposition (replaces ffmpeg post-process). Also added news ticker component (NewsTicker.tsx) to Remotion: scrolling bar at bottom of video with ENN bug, previous short headlines, and website CTA. Ticker colors: golden yellow (#f5ce20) accent lines and bug, white headline text, turquoise (#79edf7) CTA text. Fallback headlines hardcoded for first 2 videos or DB failures. Ticker also reusable in Phase 11 LongFormComposition to cover NotebookLM watermark. Video structure is now [1s thumbnail] [voiceover + visuals + ticker + captions] [1s end hold]. Dave noted he added sample scripts from each Gem to Google Docs for testing. Next up: Task 10.3 (TikTok variant rendering).

People: Dave

ENN Pipeline Session 33 (continued): Scrapped all 43 pre-rebrand shorts, starting clean with new ENN system. Built flux_asset_library reuse policy and schema (migration 003). Reuse lifecycle: 0-30 days fresh (no reuse), 30-90 days (2 reuses allowed), 90+ days (2 more, total 5), archive for 365 days after 5 uses, then recycle with reset count. Character-locked assets: any asset tagged with a character slug can only be reused for that character. Generic/environment assets available to all. Also decided on avatar framing rotation: hook=wide/medium, body=alternating medium/close, payoff=close. Claude picks per script based on tone. Cleaned up all pre-rebrand Krea reference images and old portrait variants from git (243 files removed). Policy doc at docs/asset-reuse-policy.md. Migration not yet applied to Railway, holding for batch apply with 9.1 and 9.2.

ENN Pipeline Session 33 (2026-03-24): Completed Phase 8 Tasks 8.1-8.3. Rewrote both Gemini Gems (ENN Script Factory and ENN Research Lab) for the Exo News Network format: 13 scripts + 13 blog posts per session, Gemini self-edits to 10 best, 0-100 scoring replaces A/B/C grades, broadcaster names (Rex Sskal, Kaelon Pol, Praxon Pallex, Grix Glibbert) with full humor profiles, perspective rule preserved (alien insider POV, not human observer), no faceless category. Rewrote process-scripts skill: 0-100 scoring with 90+ quality gate, BLOG field in parsing and manifest output, updated LoRA triggers (reptilian_rex, grey_kaelon, lgm_grix, mantis_praxon), broadcaster-suit only, all faceless handling removed, blog_post object in manifest JSON. Tasks 8.4 (quality gate) and 8.5 (blog manifest) are already covered by the 8.3 rewrite. Next: Dave pastes Gem instructions into Gemini and runs a test session (Task 8.6), then Phase 9 (database + queue infrastructure).

People: Rex Sskal, Kaelon Pol, Praxon Pallex, Grix Glibbert, Dave