Sure, the recent bugs are upsetting, but I've been putting way too much pressure on myself. The situation is neither urgent nor critical:
- There is no great rush. Users can always check out the master branch while I figure out what's going on.
- The bugs are in no way critical. They can't harm users' machines, nor can they cause any kind of data loss, intermittent or otherwise. They're just bugs.
Historically, data loss has been associated with LeoTree.select (c.frame.tree.select) and its helpers. Those (gui-independent) methods aren't going to change on my watch.
A long nap has suggested another way forward. I've been relying too much on perusing diffs. There's another kind of diff: comparing traces in the "good" and "bad" branches.
Summary
All the recent work will ultimately benefit Leo and its code base. And I'm improving my debugging techniques.
Edward