Imagine a form that saves a Thing:
this.store.createRecord('thing', myFormData);
During the period of time between the user pressing ‘Save’, and the server responding with a Failure, the UI looks as though it has actually succeeded, because a new Thing is in the store.
(It is then up to the developer to unload the record).
The desired behaviour is for the client side app not to know it has a new Thing until it actually does (i.e. once a save succeeds).
What are the available patterns for avoiding this?
Obviously you could manually POST and then push the new payload to the store. But most of the time a form is also used for editing a Thing. In which case it makes sense to use the same logic and just rely on .save()