d40ac47d65
Scanner: new instance with existing sf_scan_state.json did not populate in-memory _catalog. Now re-inspects unchanged files to fill catalog on first scan. Frontend: left column reads instrumentSelectorData. soundfonts instead of sfPresets (null when no presets). Click SF in left column triggers on-demand fetch.