sorting = ss.run_sorter(sorter_name='kilosort4', recording=recording, folder='ks_sorting')
...
sorting.save_to_folder('np_sorting') # to save any curation changes made to sorting object
sorting_ks = sl.load('ks_sorting') # KiloSortSortingExtractor (has recording)
sorting_si = sl.load('np_sorting') # NumpyFolderSorting (does not have recording)
I thought the recording info was not saved when saving a BaseSorting object (zarr, numpy folder or npz folder) but si_folder.json has attribute annotations.__sorting__info__.recording with the same info as spikeinterface_recording.json inside the KS folder; so, in theory, recording could be recovered. Could loading attempt to register the recording in the same way, I imagine, is done when loading Kilosort sorting?