Files
renato97 7bcd8052a9 docs: LLM-ready documentation suite — LLM_CONTEXT.md, module deep-dives, JSON schemas, CLI reference
Complete documentation system for LLM consumption: primary LLM_CONTEXT.md
(27KB system overview), 4 module deep-dives (composer, reaper-builder,
reaper-scripting, calibrator), 2 JSON Schema draft-07 contracts, CLI
reference, and README correction (FL Studio -> REAPER identity).
2026-05-04 10:30:24 -03:00

3.2 KiB

Tasks: LLM-Ready Documentation

Phase 1: Primary Entry Point

  • 1.1 docs/LLM_CONTEXT.md — Write full entry-point (~35KB). Sections: system identity (REAPER .rpp), ASCII architecture diagram, all 11 dataclasses from src/core/schema.py, pipeline (compose → build → calibrate → validate → ReaScript), module map (src/ dirs → roles), plugin system (PLUGIN_REGISTRY, ALIAS_MAP, presets), ReaScript protocol, CLI reference (compose.py, generate.py, run_in_reaper.py), naming conventions, extension guide. Valid markdown, under 40KB.

Phase 2: Module Deep-Dives

  • 2.1 docs/modules/composer.md — Document src/composer/: pattern generators (patterns.py, rhythm.py), chord engine (chords.py), melody engine (melody_engine.py), converters, templates, variation. Public API signatures, data flow, dependencies. Link to LLM_CONTEXT.md.

  • 2.2 docs/modules/reaper-builder.md — Document RPPBuilder class, PLUGIN_REGISTRY (~150 entries: key→display_name,filename,uid_guid), ALIAS_MAP, PLUGIN_PRESETS, preset transformer, render.py headless render. write() signature. Dependency on src/core/schema.py. Link to LLM_CONTEXT.md.

  • 2.3 docs/modules/reaper-scripting.md — Document ReaScriptCommand, ReaScriptResult (from src/reaper_scripting/commands.py), ReaScriptGenerator, command/result JSON contract, ProtocolVersionError. Link to LLM_CONTEXT.md.

  • 2.4 docs/modules/calibrator.md — Document Calibrator.apply() post-processing pipeline, mix calibration presets (src/calibrator/presets.py). Link to LLM_CONTEXT.md.

Phase 3: Schemas and CLI Reference

  • 3.1 docs/schemas/song-definition.json — JSON Schema draft-07 for SongDefinition + all nested dataclasses (SongMeta, TrackDef, ClipDef, MidiNote, SectionDef, PluginDef, PatternDef, ArrangementItemDef, CCEvent, ArrangementTrack). Match field names and types exactly from src/core/schema.py.

  • 3.2 docs/schemas/reascript-protocol.json — JSON Schema draft-07 for ReaScriptCommand and ReaScriptResult. Match field names and types from src/reaper_scripting/commands.py.

  • 3.3 docs/CLI.md — Complete CLI reference: compose.py (--bpm, --key, --output, --seed, --emotion, --inversion, --no-calibrate), generate.py (--bpm, --key, --output, --seed, --emotion, --inversion, --validate), run_in_reaper.py (<rpp_path>, --output, --timeout, --plugins-config, --action). Link to LLM_CONTEXT.md.

Phase 4: README Correction and Verification

  • 4.1 README.md — Replace FL Studio/.flp with REAPER/.rpp. Remove all MCP server references. List real CLI scripts. Link to docs/LLM_CONTEXT.md.

  • 4.2 Verify all internal links — Extract every [text](path) and [text](#heading) from all doc files; confirm each target file/heading exists.

  • 4.3 Validate JSON schemas — Validate song-definition.json and reascript-protocol.json against JSON Schema draft-07 meta-schema. Validate sample SongDefinition.to_json() output against song-definition.json.

  • 4.4 Verify field names match code — grep each dataclass field name found in docs against src/core/schema.py. grep -i "fl studio|\.flp|mcp" README.md must return empty.