Ok, there seems to be a lot of bugs interacting here.
1. Spotify on Linux can not play local files on modern Linux desktop environments. You need older versions of libavcodec/libavformat/libavutil installed that are no longer shipped.
2. Spotify on Linux (probably other platforms too) has a bad error message when it tries to play local files and fails.
3. Spotify on desktop (and some mobile clients) sometimes matches local files incorrectly.
4. Spotify on Linux (and maybe other platforms too) can apparantly get into an inconsistent state with the settings and have local files indexed as seen in the local files section, but without the directories scanned showing up in settings.
Not falling back is probably on purpose, but the decision probably did not anticipate the usecase when no file is playable, especially considering the error message is so generic.
I would remove not only .cache/Spotify, but .config/Spotify too.