Repository navigation
0.3.1
Install or update via BRAT: powoct/claudian-session-sync. See the README for setup.
Upgrading from 0.3.0 needs nothing from you. If you turned on "Share this device's conversations with your other devices" in 0.3.0, this is not optional — read the first section.
Sharing a conversation stopped working after the first sync, and said nothing
In 0.3.0 the setting moved each conversation's record into the layer your other devices read, and that was supposed to be the end of it. It was not.
Claudian decides where to save a given conversation once per session, when Obsidian starts. Our move happens after that decision, so from that moment its decision is stale: the next time you send a message, rename the conversation, or it simply records usage, Claudian writes a second copy back into this device's own folder — and it reads that one in preference to the shared one. Your other devices keep reading the copy from the moment of the move, frozen, while this machine goes on without it. On the machine that reported this, six conversations were in that state and the worst had left the other machines three days behind.
It gets worse if you then delete such a conversation: the deletion was recorded in this device's folder only, so the shared copy survived with nothing marking it deleted — and the conversation came back on the next restart.
Both are fixed. Sharing is now a reconciliation that runs on every sync rather than a one-time move: if the shared copy is still exactly what this machine last published, this machine's newer version is folded forward onto it. If a different machine has since written it, nothing is overwritten — both are kept and you decide, through the new command below. And a deletion now carries across, so a conversation you deleted stays deleted.
Records that are already stuck in this state are not repaired automatically. They cannot be: this machine cannot tell "the other machine is simply behind" from "the other machine edited it too". Use the command below.
New: Repair shared conversation records
Lists conversations whose two copies have diverged, showing both sizes and both dates so you can see which is which, and offers to publish this device's version — one conversation at a time, because each of these is a separate fork and a decision about one says nothing about the next. The version it replaces is copied into your backups first, and if that copy cannot be taken the write does not happen.
Opening this screen only looks; it changes nothing.
Notes
- A conversation you rewound is still safe. No change here — that was 0.3.0 — but the reconciliation above never overwrites a version it did not itself publish, which is the same rule from the same direction.
- An emptied "storage folder" box now really clears it. Before, clearing the field left the old path in place with no way back except editing files by hand.
- When publishing does not happen, the message now says which reason. "A sync is running, try in a moment" and "it changed again while this was working" are different situations and only one of them is worth retrying.
.claudian/sessionsis another program's directory, and this release is mostly about respecting that. Two acceptance rounds on real hardware each passed their gates and then turned up a place where the plugin wrote when it should only have read; both are fixed, and the second is now impossible to reintroduce by accident.
For the record: what was tested, and what shipped
The two acceptance rounds ran against builds 7c0bbad2 and 6afa3ccb. Each round found something after passing, so the build here (5d2da4a9) is not byte-identical to either. The differences are the fixes those rounds produced — every one of them removes a write, narrows a scope, or sharpens a message. Nothing in this release writes anywhere the accepted builds did not.
Full technical record, including what was measured, what was assumed, and every deviation the acceptance operators logged rather than smoothed over, is in docs/zh-CN/ (Chinese).