The provider correctly finds the right objects, but: Exception encountered in operation Resource(SOwithInterface.asset): Object reference not set to an instance of an object
If anyone is interested in how to achieve this, I have found one possible solution - it’s possible to use Interface as a filter when loading the locations.
var locations = await Addressables.LoadResourceLocationsAsync("label", typeof(ISomeInterface)).Task;
Then use these locations to load the ScriptableObjects:
await Addressables.LoadAssetsAsync<ScriptableObject>(locations, obj =>
{
var iObj = (ISomeInterface) obj;
// ... use interface implementations ...
}).Task;