refactor: strip MIDI domain bleed from MuseHub
Removes all MIDI/audio-specific code from what should be a domain-agnostic system. MIDI is the first Muse domain but is not yet implemented in MuseHub, so all music-specific assumptions were creating false surface area.
Templates: - blob.html: remove MIDI inline player branch - blame.html: remove 80-line piano roll section with hardcoded track names - release_detail.html: replace MIDI/stems/MP3/MusicXML packages with generic source/metadata - commits.html: remove tempo/key/emotion/stage/instrument CSS chips; neutral tag placeholder
Models (musehub.py): - RepoResponse: remove key_signature, tempo_bpm fields - Remove TimelineEmotionEvent, TimelineSectionEvent, TimelineTrackEvent - Simplify TimelineResponse to commits + total_commits only - Remove EmotionDiffResponse; remove emotion_diff from CompareResponse - ProposalDiffDimensionScore/ProposalDiffResponse: remove affected_sections, update dimension names
Services: - musehub_divergence.py: replace melodic/harmonic/rhythmic/structural/dynamic keyword buckets with interface/data/logic/tests/infrastructure Remove _SECTION_RE, extract_affected_sections - musehub_repository.py: remove _derive_emotion, strip emotion from get_timeline_events - musehub_discover.py: remove genre and instrumentation filter params
API routes: - discover.py: remove genre/instrumentation query params - repos.py: remove _derive_emotion_vector, _compute_emotion_diff, emotion_diff - _nav_ctx.py: remove repo_key/repo_bpm from docstring - Delete ui_mcp_elicitation.py (streaming platform OAuth — entirely MIDI domain)
MCP: - elicitation.py: gut music-specific schemas (compose_preferences, repo_creation, platform_connect_confirm); rewrite proposal_review_focus with code dimensions - tools/musehub.py: remove MIDI example from domain_meta description
Tests: - Delete test_mcp_elicitation.py (tested deleted MIDI platform elicitation routes)
0 comments
muse hub commit comment sha256:98945fd05d7a137f0a0da079ce97f719228702d9177e28edc4c44af62075d9ff --body "your comment"
No comments yet. Be the first to start the discussion.