Expand description
Typed errors for the sync crate.
The public API keeps returning io::Result (embedded hosts and the
server thread sync failures through I/O plumbing), but every refusal this
crate raises now carries a SyncError as the io::Error’s source, so a
host can BRANCH on the refusal instead of substring-matching the rendered
message — the same boundary contract powdb-storage ships. Display is
byte-identical to the historical strings and the io::ErrorKind of every
site is unchanged, so nothing on the wire or in logs moves.
The semantic variants cover the resume/repair protocol, the refusals an embedded replica host must act on (resume from the recovered boundary, repair, or rebootstrap). The two catch-alls carry the long tail; promote a message to its own variant when a caller needs to branch on it.
Enums§
- Sync
Error - A refusal raised by the sync crate. See the module docs for the contract.