Greetings!
I'm using ResourceLoader/Saver atypically, because it is for saving/loading persistent game data, i.e. game saves.
Related to this question is an older one: https://godotengine.org/qa/117198/resourceloader-load-no_cache-parameter-applied-resources
The way I'm using it, I never ever want to cache anything - thus I set the cache_mode to IGNORE (godot 4). This works fine for data in the "CharacterData" resource. However, the problem is when I want to reuse some code in a fashion that I've created "CharacterResource" sub resources for "CharacterData" class.
This is the way it is saved:

Now, the question is how does Godot's ResourceLoader handle cache for dynamically-created (at runtime) resources/sub-resources, that are not saved to disk separately but instead contained within a bigger resource.? The "has_cached()" method requires a path, which sub-resources do not have after all 🙂
On a side note I've noticed, and would like to confirm, that simply changing a scene flushes the resource cache. Is that the only way to flush it?
I didn't want to act on assumption that just because it seems to work fine now i.e. is seemingly not being cached and is loading/updating correctly it will remain to do so. I'm not very proficient with reading C++ source code, so I didn't take a look there either.