Tisty 1.9.1
The store is untouched: this reads and writes exactly what 1.9.0 does, so a
machine can take it whenever it likes and the others can wait.
Four things, all of them about a machine meeting a folder for the first time,
and about what counts as your writing.
Where things go is asked before who you are
Signing writes an event, and a store with an event in it is a history of its
own. Asking for a name first meant that a machine installed five minutes ago
met the shared folder as a stranger: four doors, a backup and a new identity
where there was nothing to reconcile — and a name that was either thrown away
with the reset, or carried into a merge where, being the most recent, it took
over the alias you had been signing with for months.
The folder is settled first now. A store that has written nothing takes up the
folder it is pointed at, without a reset and without a word. The name is asked
for afterwards, and only when the folder does not already carry one.
A folder that already holds a Tisty says so
Instead of four doors weighed equally — two of which make no sense with an
empty store, and one of which would have turned the folder into an empty
history — it asks the likely thing: this folder already holds a Tisty, it
looks like another machine of yours, shall we bring it here. It reads the log
and names the alias you are about to take, so you can see whose history it is
before taking it. Every door is still one click away behind "More choices",
and coming back through them to pick a different folder now looks at what that
one holds, rather than going straight to a round and asking for a name.
A folder chosen from a cloud provider says to let it finish downloading first:
one still arriving looks empty, and there is nothing there to detect.
A round that carries nothing says so
The first round answered "busy" when another was already under way, carried
nothing, and the welcome walked in as though it had brought everything — which
is why a first sync could quietly bring nothing and the second one work. It
waits its turn now, and a round that could not finish says so instead of
saying the folder was empty. A notice you were away for stays until you come
back to it, rather than for ever.
Reading a document is not writing it
Opening a document could put your name on it as "edited by" without you typing
a character — on the guide, which is signed by Tisty, and on anything anybody
else wrote. The editor re-serialises what it loads: line endings change, and a
coloured mark inside a table comes back written another way. That was taken
for an edit, saved, and signed.
The editor already knew what it had made of the body; it only said so the
first time it was built. It says so for every document now, and a body that
comes back exactly as it was shaped is not saved at all. Behind that, a write
that would leave the file as it already is no longer puts a hand on it, and
line endings and a missing last newline are not a change anybody made. Type
one character and it saves as it always did.
Also: a machine that wrote nothing no longer leaves an empty seat in the
shared folder for the others to carry back and forth, and offering to sign
what came before says what it does — those documents stand in your name —
rather than talking about a signature they never had.
Full Changelog: v1.9.0...v1.9.1