Sometimes purity of architecture interferes with simplicity of design. This sounds like one of those cases.
Continue to use MVVM to structure your application's work and data flow. However temporal indicators (like network availability) and error conditions (like out of disk space) don't cleanly fit into these models and are best deal with independently.