Problem: the single-level undo used shallow references so mutations during diff.apply() corrupted the saved state. JSON writes were also non-atomic, risking partial writes on crash. Solution: add M.snapshot() which deep-copies active tasks (including _extra). Change M.save() to write a .tmp file then rename atomically. |
||
|---|---|---|
| .. | ||
| sync | ||
| buffer.lua | ||
| config.lua | ||
| diff.lua | ||
| health.lua | ||
| init.lua | ||
| parse.lua | ||
| store.lua | ||
| views.lua | ||