* fix(cli): history lists its entries even when this run cannot write the history
history --json, show and the other read-only subcommands open the history as
its owner, which writes a lock and files pending changes. On a full disk or an
unwritable cache folder that write failed the whole read. A read now falls back
to the history as last recorded and says why on stderr; undo, restore and other
writes still fail.
* fix(cli): history falls back only when it could not write, not when it could not read
* fix(cli): history reads past a log it may read but not append to