Files
ableton-mcp-ai/docs/SPRINT_v0.1.27_VALIDATION_REPORT.md

8.3 KiB

SPRINT v0.1.27 — VALIDATION REPORT

Continuity First, Piano Melodies, Smarter Drum Coherence

Owner: GLM via OpenCode
Reviewer: Codex
Fecha: 2026-04-02
Baseline: 0345711a8749
Nueva Sesión: c3aa8a7e8fa3
Estado: ⚠️ PARCIAL - Mejoras en continuidad pero métricas críticas pendientes


1. Runtime Truth

Comparativa de Sesiones

Métrica 0345711a8749 (Baseline) c3aa8a7e8fa3 (Nueva) Delta Target
session_id 0345711a8749 c3aa8a7e8fa3 - -
generation_mode library-first-hybrid library-first-hybrid = library-first-hybrid
hook.materialized True True = True
coherence_score None None = >= 6.0
family_adherence_rate 0.5 0.5 = >= 0.65
pack_coherence.overall 0.75 0.75 = >= 0.6
piano.has_audio_piano True True = True
piano.audio_piano_count 1 1 = >= 1
repetition_verdict mixed mixed = != repetitive
music_source_reuse_ratio 1.0 1.0 = < 0.8
identical_section_signatures 1 2 +1 0
audio_layers_count 14 12 -2 > 0
vocal_layers_auto 0 0 = 0

Hallazgos Clave

  1. No hay AUDIO PIANO MELODY - Solo existe AUDIO KEYS SUPPORT (chords)
  2. music_source_reuse_ratio sigue en 1.0 - Todo de midilatino
  3. coherence_score no calculada - Campo vacío en manifest
  4. SS_RNBL_Me_Gustas_One_Shot_Snare.wav sigue seleccionado - 144 positions
  5. Más secciones idénticas - 2 vs 1 en baseline

2. Manifest Evidence

Audio Layers Detallados - Nueva Sesión (c3aa8a7e8fa3)

SYNTH/BASS/TOP - Continuidad mejorada:

- AUDIO SYNTH LOOP [synth_loop]: 6 positions (vs 1 en baseline) ✅ MEJORÓ
- AUDIO SYNTH PEAK [synth_loop]: 2 positions (vs 2+2+2 en baseline) - Consolidado
- AUDIO BASS LOOP [bass_loop]: 2 positions (vs 3 en baseline) - Similar
- AUDIO TOP LOOP [top_loop]: 17 positions + 4 variant (vs 12+10) ✅ MEJORÓ

PIANO/KEYS:

- AUDIO KEYS SUPPORT [chords]: 12 positions
  source: midilatino_gracias_c#_min_102bpm_bell_chords.wav
- AUDIO PIANO MELODY: NO PRESENTE ❌

SNARE - Selectividad:

- AUDIO CLAP [snare]: 144 positions
  source: ss_rnbl_me_gustas_one_shot_snare.wav
  pack: unknown

SOURCE DISTRIBUTION:

- midilatino: 4 (100% del material musical)
- No hay diversidad de packs en music bus

Repetition Metrics Comparativa

Métrica Baseline Nueva Estado
verdict mixed mixed ⚠️
music_source_reuse_ratio 1.0 1.0
identical_section_signatures 1 2 PEOOR
harmonic_loop_reuse_ratio 0.0 0.0

3. Audible Outcome

Mejoras Confirmadas

  1. Continuidad de synth_loop mejorada

    • De 1 position a 6 positions
    • Menos "cortado", más sostenido
  2. TOP LOOP más consolidado

    • 17 + 4 positions (vs 12 + 10 en baseline)
    • Mejor continuidad rítmica
  3. Menos fragmentación en synth_peak

    • De 3 layers a 1 layer consolidado
    • Menos "picado"

Problemas Auditivos Persistentes

  1. NO HAY PIANO MELÓDICO

    • AUDIO PIANO MELODY no apareció
    • Solo existe AUDIO KEYS SUPPORT (acordes/armónico, no melódico) Causa: No hay samples de piano/keys melódicos en la librería
  2. SNARE AGRESIVO PREDETERMINADO

    • SS_RNBL_Me_Gustas_One_Shot_Snare.wav sigue siendo seleccionado
    • 144 positions, presente en todas las secciones
    • No hay evidencia de selectividad contextual funcionando
  3. SIN DIVERSIDAD DE FUENTES

    • music_source_reuse_ratio = 1.0
    • Todo el material musical de midilatino
    • Sin contraste de packs
  4. COHERENCIA NO CALCULADA

    • coherence_score = None
    • No se puede evaluar si mejoró el criterio general

4. Code Changes

Fixes de Codex Integrados (Revisados)

Fix Ubicación Estado Resultado
Eliminación de vaciado artificial en Drop B reference_listener.py Aplicado Drop B tiene material real
Preservación de variantes seccionales reference_listener.py Aplicado SYNTH LOOP: 6 positions
AUDIO PIANO MELODY reference_listener.py:7777 ⚠️ Código existe No se activó - falta material en librería
music_source_reuse_ratio por sample server.py ⚠️ Código existe Sigue midiendo 1.0
section_character_bonus call-order reference_listener.py:6379 Corregido Sin evidencia de mejora en ranking
Selectividad contextual snare/clap sample_selector.py ⚠️ Aplicado SS_RNBL snare sigue ganando

Análisis de Código Existente

El código para AUDIO PIANO MELODY existe y está funcionando:

# reference_listener.py:7190-7263
- Busca candidatos con _score_piano_melody_candidate()
- Filtra por: piano, keys, rhodes, keyboard, epiano, steinway, grand
- Crea layer AUDIO PIANO MELODY en línea 7777

Problema: La librería no tiene material melódico de piano/keys. Solo tiene:

  • midilatino_gracias_c#_min_102bpm_bell_chords.wav (chords/armónico)

El scorer prioriza material melódico, pero si no existe, no puede crear el layer.


5. Open Bugs

Críticos (Bloquean cierre)

Bug Severidad Evidencia
No hay piano melódico real CRÍTICO AUDIO PIANO MELODY ausente, solo chords disponible
Coherence score no calculada CRÍTICO Campo None en manifest
Snare agresivo predeterminado CRÍTICO SS_RNBL snare: 144 positions en todas las secciones
Sin diversidad de fuentes CRÍTICO music_source_reuse_ratio = 1.0
Más secciones idénticas CRÍTICO 2 vs 1 en baseline

Medios

Bug Severidad Evidencia
Family adherence sin mejora ⚠️ MEDIO 0.5 estable, sin cambio
Bass loop menos positions ⚠️ MEDIO 2 vs 3 en baseline

6. Verdict

Completado

  • Validación de nueva sesión generada (c3aa8a7e8fa3)
  • Comparativa vs baseline (0345711a8749)
  • Continuidad mejorada en synth_loop (6 positions)
  • TOP LOOP más consolidado (21 positions total)
  • Menos fragmentación de synth_peak
  • Código de Codex revisado y confirmado aplicado

Pendiente

  • PIANO MELÓDICO REAL - No existe material en librería
  • COHERENCE SCORE >= 6.0 - No calculada
  • FAMILY ADHERENCE >= 0.65 - 0.5 sin mejora
  • MUSIC SOURCE REUSE < 0.8 - 1.0 sin mejora
  • SNARE CONTEXTUAL - SS_RNBL sigue ganando sin selectividad visible
  • REPETITION VERDICT != repetitive - Sigue en "mixed"
  • SECCIONES IDÉNTICAS = 0 - Aumentó a 2

Bloqueo Principal

La librería de samples no contiene material melódico de piano/keys.

El código está preparado para usarlo (AUDIO PIANO MELODY existe en server.py:1131 y se crea en reference_listener.py:7777), pero no hay samples que satisfagan el criterio de melodía real.

Material necesario:

  • piano_melody_*.wav
  • keys_lead_*.wav
  • rhodes_melodic_*.wav
  • keyboard_theme_*.wav

Material disponible:

  • midilatino_gracias_*_bell_chords.wav (armónico/chordal, no melódico)

Recomendación

Para cerrar v0.1.27 se necesita:

  1. Agregar material melódico de piano/keys a la librería - Sin esto, AUDIO PIANO MELODY nunca aparecerá

  2. Debug de coherence_score - Investigar por qué no se calcula/persiste

  3. Debug de music_source_reuse_ratio - Con el fix de Codex debería medir por sample, pero sigue dando 1.0

  4. Verificar selectividad de snare - El section_character_bonus existe pero no está cambiando el ranking observablemente

Estado del Sprint

⚠️ NO CERRADO

Los objetivos musicales no se lograron por:

  • Limitación de librería (sin piano melódico)
  • Métricas críticas sin mejorar (coherence, family adherence, source reuse)
  • Selectividad de drums no demostrada

7. Referencias

  • Sprint v0.1.27 Next: docs/SPRINT_v0.1.27_NEXT_GLM.md
  • Session baseline: 0345711a8749
  • Session nueva: c3aa8a7e8fa3
  • Manifests: C:/Users/ren/.abletonmcp_ai/generation_manifests.json
  • Librería: 510 samples, sin piano melódico identificado