Thanks for the reply Rich.
The main problem here it's the total game size (~100Mb). The game has a lot of animations, that are not "necesary" to show to play the game, but at some point, the animation will appear when has been loaded.
For example: We have 4 diferent scenes (A, B, C, D). Each scene has its own assets, which are loaded in its phase of preload. But each scene also has some assets that are not "necessary" (like heavy animations) that can be loaded throughout the entire life cycle of the game (in other process, not in a specific scene), while there are transitions between different scenes. The main goal is to play the game with the minimum necessary. The gameplay involves several transitions of playable scenes and while all this happens, we have to be able to download more assets asynchronously, to use them when they have downloaded (without being a priority for the execution of the game itself). Each scene that needs one of the "unnecessary" assets, checks if the asset is loaded into Phaser's cache and if it is available, it will use.
Attached is a picture with what is intended.
Am I focusing bad the problem? Could it be otherwise?