feat: inline vault snapshot over pairing channel (v4.5.0) After ADOPT_APPLIED, transfer the full vault snapshot (entries + tombstones + optional signed device manifest) over the same authenticated Noise NK pairing channel instead of closing it and waiting on a second sync round. - vault-adopt.ts: ADOPT_SNAPSHOT / ADOPT_SNAPSHOT_APPLIED / ADOPT_DEVICE_MANIFEST / ADOPT_DEVICE_MANIFEST_APPLIED frames + guards; snapshot_capable negotiation in ADOPT_REQUEST; sendVaultSnapshot/receiveVaultSnapshot chunking helpers with MAX_SNAPSHOT_CHUNK_BYTES (512 KiB) and MAX_SNAPSHOT_CHUNKS (200) guardrails. - relay-adoption-source-bg.ts: receiver applies the inline snapshot and marks lastSyncedAt so the popup transitions immediately; source sends it when the receiver advertises snapshot_capable. Any failure (older peer, timeout, corrupt chunk) falls back to the untouched sync pipeline. - Gated on snapshot_capable so older peers degrade cleanly; peach-android and the sync pipeline are unchanged. - Tests: vault-adopt-snapshot.test.ts (chunking, reassembly, validation, fallback negotiation) plus a faithful closeOnEmpty mock so the receiver fallback path is exercised. tsc clean; 3645 tests pass; Chrome/Firefox/Mobile builds pass.

dev · 4 weeks ago · 2026-07-29 · 5.6 MB

$ koh steal kepr.uk/peach-browser@80ab8c3ad841
·
← 7416b66af497 dbac78ce978b →
⇓ download .face