Skip to content

v0.6.0 — Human-Readable Compare Results

Choose a tag to compare

@geoffmcc geoffmcc released this 09 Jul 18:15

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 engine
  • compare_badge.py — change-type badge widget
  • compare_result_widget.py — Summary / Detailed / Raw view modes

Tests

  • 101 new tests; 489 total, 0 regressions