Leveraging Immutability and Observability for Undo in Document-Based Apps | Hacker News Reader