Memory 019e7f0e
Memory ID (Session ID): 019e7f0e-cece-7000-82ff-c0bbad2306fc
Last Updated: 2026-05-31 19:34:36
Fact Summary
MixBox Monorepo Structure
- Type: astral-uv Python workspace monorepo
- Runtime: Python 3.11+
- Package manager: uv (workspace configurations)
- Linter/Formatter: Ruff (100-char line limit)
- Test framework: Pytest with markers (unit, smoke, integration, rotation)
Package Architecture (under packages/)
- audio-core (
audio_core): Shared foundation - audio loading, format conversion (NumPy/Pydub), feature extraction constants. All other packages (except emotion) depend on it. - dj-engine (
[[projects/mixbox|MixBox]]): Primary orchestrator - mixing engine, beatgrid analyzer, UIs, review planning/websocket service. - analyzer (
hitscan): Deep audio feature analysis (MIR). - video-gen (
hitvid): Audio-reactive video generation. - emotion (
valaro): Valence-arousal emotion detection (standalone tensorflow).
Development Commands
- All commands use
uv runprefix - Ruff for formatting/linting
- Pytest execution with markers for test categorization
- Quality gate triggers for rotation tests
Code Patterns
- Audio loading/conversion formats as common patterns
- Pydantic validations throughout
- Async handling patterns
- WebSocket timeline messaging for interactive OpenDAW UI
- NiceGUI for interfaces
AGENTS.md Generation Approach
- Used parallel task agents to explore: core src, tests, configs/build, scripts/docs
- Synthesized findings into structured markdown with 8 sections
- Document titled ‘Repository Guidelines’ per directive
- Written to project root /home/dev/AGENTS.md
Reference Session
- Associated Chat Session: 019e7f0e-cece-7000-82ff-c0bbad2306fc