Get the latest tech news
Remix's concurrent submissions are fundamentally flawed
In this article we discuss the complexity of introducing concurrent operations on the client wuthout causal ordering on the server.
Of course, you could start tracking the updates and deletes in your Remix app as well, to keep your UI consistent, but then why bother with “submission and revalidation” in the first place, if you cannot trust the properties returned by the server? Which can go from minor UI nuisances to leading them to wrong decisions, such as clicking on “Buy Now” thinking a particular order had 2 line items, but the server actually stored 3 thanks to a “cancelled” submission. Overall, I hope this article shows that, if you are going to use the server state to drive the UI, concurrent submissions can be the source of pitfalls, race conditions, and inconsistencies, which can be addressed by introducing causal ordering.
Or read this on Hacker News