Can't help but feel that all the approaches avoiding the error by using delayed state are missing the forest for the trees. The error tells you that the client and the server disagreed on what the output is. If the client has different data, for example due to local storage, that's the expected behavior! Don't mangle your code with weird workarounds for something that isn't broken. Similar to all other rules, it's important to know when the rule should be broken.