Is there a name for this kind of architecture? Once I was daydreaming and thought something similar would work well for business CRUD applications. You get an audit log for free, and it would enable offline edits relatively easy.
It's also used by state management libraries like Redux[2]. The concept is generic and simple enough that it can be applied to any application where a timeline of state snapshots is useful, so maintaining a history for undo/redo purposes and audit logs is a great fit for it.
[0]: https://en.wikipedia.org/wiki/Lambda_architecture