Guide for working on the VirtualDreams HTTP API (routes.py and main.py). Use when adding endpoints, changing request/response shapes, modifying error handling, or working on the FastAPI app setup and lifespan.
Guide for working on the VirtualDreams job system: models.py and manager.py. Use when modifying job lifecycle, TTL behaviour, status transitions, in-memory storage, or the pipeline orchestration logic inside JobManager._run_pipeline.
Guide for working on the VirtualDreams audio pipeline modules: download.py, chorus.py, and effects.py. Use whenever adding, changing, or debugging any pipeline step — including swapping the chorus detector, tuning vaporwave parameters, or changing how yt-dlp is invoked.
Guide for working on the chorus-detector Rust binary. Use when modifying the chorus detection algorithm, WAV I/O, CLI interface, or build process. Also covers the contract this binary must uphold for the Python pipeline to work correctly.