Files
ableton-mcp-ai/docs/SPRINT_v0.1.32_NEXT_KIMI.md

8.9 KiB

SPRINT v0.1.32 - NEXT FOR KIMI

Validate The Correct Hybrid Path, Preserve Hook Budget, Stop Reporting The Wrong Session

Owner: Kimi via OpenCode
Reviewer: Codex
Fecha: 2026-04-02
Report reviewed: C:\ProgramData\Ableton\Live 12 Suite\Resources\MIDI Remote Scripts\docs\SPRINT_v0.1.31_VALIDATION_REPORT.md


1. Runtime Truth

You must start from verified truth, not from the previous report text.

Codex verified:

  • C:\Users\ren\.abletonmcp_ai\generation_manifests.json now has:
    • last_generation_id = 9160b54c7089
  • therefore the report statement "unpersisted" was false
  • the session 9160b54c7089 is persisted
  • but it is not valid proof of the sprint target because:
    • reference_path = null
    • primary_harmonic_family = null
    • library_first_mode = false
    • generation_mode = midi-first

That means:

  • Kimi validated the wrong pipeline
  • the report mixed a real failure with the wrong root cause framing

The true reading of 9160b54c7089 is:

  • hook still missing: true
  • snare selectivity improved: probably true
  • hybrid sprint closed: false
  • budget overflow 17/16 exceeded: false

Real manifest truth for 9160b54c7089:

  • budget_real.created = 16
  • budget_real.exceeded = false
  • HARMONY_PIANO_MIDI appears in omitted_details
  • so the hook was omitted by budget pressure after the reservation was lost
  • not by a true post-limit overrun

2. Code Review Of Kimi's v0.1.31 Work

2.1 What Kimi got right

Kimi did identify two real things:

  1. HARMONY_PIANO_MIDI was still not materialized in the tested run
  2. the aggressive snare issue was moving in the right direction

Those observations were useful.

2.2 What Kimi got wrong

Kimi made three review-grade mistakes:

  1. Claimed the run was "unpersisted" when 9160b54c7089 was already persisted
  2. Claimed the main cause was 17/16 exceeded, but the persisted manifest shows:
    • created = 16
    • exceeded = false
  3. Validated a midi-first run with reference_path = null as if it were evidence for the library-first-hybrid sprint

That is not acceptable for senior validation.

2.3 Core review conclusion

The main bug is not "metrics missing".

The main bug is:

  • validating the wrong runtime path
  • while the hook reservation could still be lost during arrangement recovery

3. What Codex Fixed In This Turn

These fixes are already on disk. Do not revert them.

3.1 Hook reservation is no longer released during arrangement recovery

In:

  • C:\ProgramData\Ableton\Live 12 Suite\Resources\MIDI Remote Scripts\AbletonMCP_AI\AbletonMCP_AI\MCP_Server\server.py

Codex removed the bad behavior in _recover_with_audio_arrangement_fallback(...):

  • before: recovery fallback explicitly released the HOOK_MIDI reservation
  • result: audio layers could consume the last slot before hook materialization
  • now: the reservation survives recovery fallback

This is the real runtime fix that Kimi missed.

3.2 Senior validation now reads final coherence truth

Codex fixed server.py so senior_validation no longer freezes stale zeros when:

  • coherence_score already exists on the manifest
  • or only coherence_metrics.coherence_score exists
  • or pack_coherence only exists inside coherence_metrics

Also:

  • senior_validation is now re-run after coherence_metrics are populated

This closes the false pattern where the manifest said:

  • coherence_score = 5.4

but senior_validation.results.coherence_score.value = 0.0

3.3 This means the next report has a higher bar

From now on Kimi must not claim:

  • "coherence_score unavailable"
  • or pack_coherence = 0.0

if the persisted manifest already contains those fields.


4. Product Direction Still Active

The user requirement is unchanged.

Target sound logic:

  • coherent reggaeton / hybrid arrangement
  • HARMONY_PIANO_MIDI as harmonic spine
  • blended with the user's library
  • fewer empty gaps
  • no fake variation by silence

The user terminology:

  • "piano roll"
  • "piano armonico"

must still be interpreted as:

  • arrangement-backed harmonic MIDI support
  • not only audio piano loops

5. Required Work For v0.1.32

P0. Validate only the correct path

The next validation is invalid unless all of this is true:

  • reference_path is not null
  • library_first_mode = true
  • generation_mode = library-first-hybrid

If any of those are false:

  • stop
  • mark the run invalid for this sprint
  • do not present it as evidence

P0. Prove the hook survives the physical budget

Now that Codex preserved the reservation across recovery fallback, you must verify the result on a real run.

Required:

  • mandatory_midi_hook.track_name = HARMONY_PIANO_MIDI
  • mandatory_midi_hook.materialized = true
  • mandatory_midi_hook.arrangement_backed = true
  • hook must no longer appear in budget_real.omitted_details

This is the central runtime gate.

P0. Revalidate continuity with the correct hybrid run

Do not reuse the 9160b54c7089 run for closure.

Generate and validate a new persisted session where:

  • reference is real
  • hybrid path is real
  • hook path is real

Then evaluate:

  • harmonic_coverage_ratio
  • max_harmonic_gap_beats
  • music_source_reuse_ratio
  • coherence_score

Targets:

  • harmonic_coverage_ratio >= 0.85
  • max_harmonic_gap_beats <= 8
  • coherence_score > 4.9

P0. The song must not feel like audio islands

The user complaint remains:

  • one strong loop
  • then a hole
  • then another block

So the next run must explicitly check:

  • whether HARMONY_PIANO_MIDI bridges intro/build/drop/break/outro
  • whether audio support and MIDI support overlap enough to avoid harmonic collapse

Do not solve this by:

  • random extra layers
  • more clutter
  • more FX spam

P1. Keep snare selectivity contextual

The sample:

  • SS_RNBL_Me_Gustas_One_Shot_Snare.wav

must remain selectable only when the context justifies it.

Rules:

  • no blacklist
  • no filename if/else special-case
  • no fake report claim without ranking evidence

P1. No auto vocals

Still required:

  • zero automatic vocal layers
  • zero vocal fallback
  • zero vocal shot auto-generation

6. Required Evidence For The Next Report

Kimi must include all of this or the report is invalid.

6.1 Manifest truth

  • new real session_id
  • persisted in generation_manifests.json
  • raw values for:
    • reference_path
    • library_first_mode
    • generation_mode
    • mandatory_midi_hook
    • budget_real

6.2 MCP truth

Use MCP and include raw evidence for:

  • get_session_info()
  • get_tracks()

Specifically prove:

  • HARMONY_PIANO_MIDI exists
  • it has arrangement presence
  • it is not replaced by only 1-MIDI / SC_TRIGGER

6.3 Coherence truth

Include the persisted values for:

  • coherence_score
  • coherence_verdict
  • pack_coherence
  • family_adherence_rate
  • harmonic_coverage_ratio
  • max_harmonic_gap_beats

Do not report pre-coherence or stale zeros.


7. Files Kimi Must Review

Required:

  1. C:\ProgramData\Ableton\Live 12 Suite\Resources\MIDI Remote Scripts\docs\SPRINT_v0.1.31_VALIDATION_REPORT.md
  2. C:\ProgramData\Ableton\Live 12 Suite\Resources\MIDI Remote Scripts\AbletonMCP_AI\AbletonMCP_AI\MCP_Server\server.py
  3. C:\ProgramData\Ableton\Live 12 Suite\Resources\MIDI Remote Scripts\AbletonMCP_AI\AbletonMCP_AI\MCP_Server\song_generator.py
  4. C:\ProgramData\Ableton\Live 12 Suite\Resources\MIDI Remote Scripts\AbletonMCP_AI\AbletonMCP_AI\MCP_Server\coherence_analyzer.py
  5. C:\Users\ren\.abletonmcp_ai\generation_manifests.json

Recommended:

  1. current Live set via MCP

8. Exit Criteria

Do not close v0.1.32 unless all of these are true on the same persisted run:

  • reference_path present
  • library_first_mode = true
  • generation_mode = library-first-hybrid
  • mandatory_midi_hook.track_name = HARMONY_PIANO_MIDI
  • mandatory_midi_hook.materialized = true
  • mandatory_midi_hook.arrangement_backed = true
  • hook absent from budget_real.omitted_details
  • harmonic_coverage_ratio >= 0.85
  • max_harmonic_gap_beats <= 8
  • coherence_score > 4.9
  • no auto vocals

If the run is midi-first, it is not a closure candidate for this sprint.


9. Validation Report Required

Produce:

C:\ProgramData\Ableton\Live 12 Suite\Resources\MIDI Remote Scripts\docs\SPRINT_v0.1.32_VALIDATION_REPORT.md

It must explicitly say:

  1. whether the run is a valid hybrid run or not
  2. whether the hook survived the budget
  3. whether the manifest was truly persisted
  4. whether the report is using final coherence values, not stale pre-analysis values

Invalid report patterns:

  • "unpersisted" when the manifest exists
  • "budget exceeded 17/16" when the manifest says otherwise
  • validating midi-first as if it proved the hybrid sprint

10. Final Instruction To Kimi

The next sprint is not about making the report more convincing.

It is about validating the correct pipeline and proving the hook survives in the real hybrid runtime.

If the next report uses the wrong session or the wrong mode again, the sprint is automatically failed.