v0.6.0 — Human-Readable Compare Results
Compare Versions UI Redesign
Replaces the raw nested diff tree with three human-readable view modes:
- Summary — Aggregated changes per category with natural language
- Detailed — One row per changed property (object, change type, old value, new value, explanation)
- Raw — Original CLI-style plain-text output for advanced users
What's new
- Category filters (tracks, clips, devices, locators, tempo, time signature)
- Badges for Added / Removed / Modified / Moved / Renamed
- Full object names with tooltips (no more truncated "Track...")
- Natural descriptions: "2 clips added", "Tempo increased by 8 BPM", "Renamed from X to Y"
- Swap Sources to reverse the comparison direction
- Input area collapses after comparison to maximize result space
- Auto-expand groups when ≤10 changes
- Copy Summary and Export Report actions
- Light, dark, and system theme support for all new UI
Preserved
- Diff engine and CLI output unchanged
- All existing comparison combinations and read-only safety
New files
compare_analysis.py— structured analysis & explanation enginecompare_badge.py— change-type badge widgetcompare_result_widget.py— Summary / Detailed / Raw view modes
Tests
- 101 new tests; 489 total, 0 regressions