Skip to content

Windows + WSL2: 6+ hours, 15+ reproducible issues, unable to produce a final video #396

Description

@vic-jin1688

Summary

Attempting to run OpenMontage on Windows 11 with WSL2 (Ubuntu 22.04) using Claude Code v2.1.212 and Codex. After 6+ hours of debugging across multiple sessions, the pipeline still cannot complete. Encountered 15+ distinct, reproducible issues spanning dependency management, version drift, path handling, checkpoint integrity, and audio duration mismatch. The core architecture and agent-first design are impressive, but the Windows/WSL first-run experience is currently broken.

Operating system

Windows 11 + WSL2 (Ubuntu 22.04)

Pipeline

Default (from checkpoint resume after initial research → proposal → script)

Runtime / renderer

Claude Code v2.1.212, also tested with Codex

Steps to reproduce

  1. Windows 11 with WSL2 (Ubuntu 22.04)
  2. git clone https://github.com/calesthio/OpenMontage
  3. cd OpenMontage && make setup
  4. source .venv/bin/activate
  5. Launch Claude Code with --dangerously-skip-permissions
  6. Instruct agent: "Make a 60-second product review video about Kimi K3"
  7. Agent proceeds through research → proposal → script → begins assets phase

Expected behavior

The pipeline should automatically install or handle missing system dependencies (espeak-ng, python3-venv), produce a narrated video within 15-20 minutes, and correctly handle paths in WSL environments using /mnt/e/ prefix with forward slashes.

Actual behavior

The pipeline failed at multiple stages with the following reproducible issues:

  1. Missing system dependencies: espeak-ng and python3-venv not listed in README prerequisites for WSL/Windows
  2. Piper TTS version drift (CRITICAL): Newer piper-tts removes length_scale and sentence_silence parameters, causing TypeError. PiperConfig.name is also missing. requirements.txt does not pin piper-tts==1.2.0
  3. Checkpoint module incomplete: CheckpointStatus and list_checkpoints not exported from checkpoint.py
  4. WSL path corruption: Agent repeatedly generates Windows-style backslash paths (E:\Claude\outputs...) inside WSL, causing persistent FileNotFoundError
  5. Permission dialog loops: --dangerously-skip-permissions flag and Bash allow rules repeatedly fail to suppress confirmation dialogs across session restarts
  6. Audio duration mismatch: Generated narration is 116.6 seconds for a 60-second target script (1.94x ratio), with no automatic retry or trimming mechanism

Result: 6+ hours of debugging, 15+ distinct errors, zero completed videos.

Relevant logs or error output

# Piper TTS version drift
TypeError: PiperTTS.__init__() got an unexpected keyword argument 'length_scale'
AttributeError: 'PiperConfig' object has no attribute 'name'

# Checkpoint import failure
ImportError: cannot import name 'CheckpointStatus' from 'checkpoint'

# WSL path corruption
FileNotFoundError: [Errno 2] No such file or directory: '\\e\\Claude\\outputs\\OpenMontage\\projects\\gemini-omni-digital-twin\\artifacts\\script.json'

# Audio duration mismatch
Generated narration_60s_fixed.wav: actual duration 116.6s (target: 60s, ratio: 1.94x)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions