Skip to content

v0.2.0 — agentic re-architecture + continuous-bed mix

Choose a tag to compare

@worldwonderer worldwonderer released this 15 Jun 17:20
· 42 commits to main since this release
187dd2b

A quality-focused release: cut mode is in sync by construction, the narration mix is a continuous bed, the narration itself is less "cold", and full-episode understanding survives the MiMo cluster's rate limit.

Changed

  • Cut mode is cut-first / narrate-second. The cut is rendered from clip_plan.json first, then narration is written against the real output timeline — no source→output remap, so narration and picture stay in sync by construction. Full mode unchanged.
  • Continuous original-audio bed. The original is ducked into one held low bed under the narration; inter-beat gaps shorter than duck_bridge_seconds (default 12s) no longer pop the source dialogue back up. Tune with DUCK_BRIDGE_SECONDS.
  • Narration density is a guide, not a quota — no padding with filler/pixel-description to hit a number.
  • --consolidate story index on by default (backward-compatible manifest shim).
  • Research directive only fires when the substrate is thin/empty.

Added

  • Cut-desync floor: normalized-plan lint + blocking preflight before TTS, with --allow-sparse-cut.
  • Phase ledger (recap_phase.json) for deterministic cut-mode resume.
  • duck_bridge_seconds config knob.

Fixed

  • Long-video understanding rides out MiMo cluster rate limits (retries 10× / 60s cap / 10s floor; optional ASR_THROTTLE_SECONDS).
  • Resume cannot reuse stale artifacts (proves current bytes/settings before reuse).

Full notes: CHANGELOG.md. Verified: 261 tests across 6 groups, ruff clean, no-ffmpeg CI green on macOS/Linux/Windows.