Turns out, structure of the code affects how SwiftUI previews are functioning. For example, changing the default value of a property will pause previews, but if the property is computed - changing the body won’t pause previews.
This is because live reloading is implemented using
@_dynamicReplacement attribute, which only supports replacing bodies of functions and properties. If you want to learn even more details, check out this article I wrote 2 months ago and forgot to include earlier 😀