Merge branch 'claude/vault-key-sync-sharing-d098aa'
ci / build and test (push) Successful in 2m0s
ci / android head (push) Successful in 3m21s
ci / desktop nightly (push) Successful in 41s
ci / api image (push) Successful in 33s

This commit is contained in:
2026-08-06 07:39:32 +02:00
10 changed files with 1223 additions and 32 deletions
+25
View File
@@ -446,6 +446,31 @@ target lands. Anything still in the source vault is a partial move, which is sur
not happen with the network up: the groups are written top-down and the hosts last, so an interruption leaves
hosts behind and never a shelf with nothing on it.
### 3.3b Moving a key, and moving a host with its key · **needs a second vault**
In your personal vault: add an SSH key, then two hosts that both authenticate with it. On the Keychain
screen select the key and press **MOVE**, and read the panel before choosing the shared vault.
**Pass:** the panel says what uses the key — "Used by 2 hosts…" — before anything happens. Afterwards the key
carries the destination's badge under an id it did not have a moment ago, *and both hosts still say `key`
under their names* and still connect. The sentence names the vault and the two hosts that followed it.
Then the other direction: with a key back in your personal vault and a host bound to it, choose **Move to
another vault…** on the host and pick the shared vault. The tick box under the picker offers to bring the
key, unticked, with the count of what else uses it underneath. Leave it and press MOVE; then move the host
back, tick it, and press MOVE again.
**Pass:** unticked, the host lands in the shared vault and the status line says the key it authenticates with
is in another vault and will not resolve for anybody else there. Ticked, the key lands in the shared vault
too and the host still says `key`. Choosing a *different* vault in the picker re-asks the question, and the
box disappears when the destination is the vault the key is already in.
**Failure means:** a host that says `password` after either move is the re-aim not having happened — the item
takes a new id in the destination, so every host bound to it and every group lending it has to be rewritten
as it lands, and a host bound to something its vault no longer holds refuses to connect rather than falling
back to a typed password. A tick box that is ticked when the panel opens is worse than a bug: it moves a
private key into a shared vault on the strength of a decision nobody made.
### 3.4 A group deleted on another machine · **needs two machines**
Make a group on machine A, file a host into it, sync. On machine B, sync, then delete the group and sync