d8646baeee62

fix: Minimize adoption completion payloads (v5.1.6)

time
2026-09-05 20:47 UTC · 1 month ago
machine
koh2
parent
c43ce993a056
5 files manifest.firefox.json+1 −1manifest.json+1 −1package.json+1 −1src/background/relay-adoption-bg.test.ts+6 −6src/background/relay-adoption-bg.ts+2 −2
manifest.firefox.json+1 −1
@@ -1,7 +1,7 @@11 {22   "manifest_version": 3,33   "name": "Peach Password Manager",4-  "version": "5.1.5",4+  "version": "5.1.6",55   "description": "Zero-knowledge password manager",66   "browser_specific_settings": {77     "gecko": {

view file

manifest.json+1 −1
@@ -2,7 +2,7 @@22   "manifest_version": 3,33   "minimum_chrome_version": "116",44   "name": "Peach Password Manager",5-  "version": "5.1.5",5+  "version": "5.1.6",66   "description": "Zero-knowledge password manager",77   "action": {88     "default_popup": "src/popup/index.html",

view file

package.json+1 −1
@@ -1,6 +1,6 @@11 {22   "name": "peach",3-  "version": "5.1.5",3+  "version": "5.1.6",44   "description": "Zero-knowledge password manager",55   "license": "GPL-3.0-only",66   "type": "module",

view file

src/background/relay-adoption-bg.test.ts+6 −6
@@ -304,10 +304,10 @@304304       expect.stringMatching(/^[0-9a-f]{64}$/),305305       expect.any(Uint8Array),306306     );307-    expect(mocks.pushes).toContainEqual(expect.objectContaining({307+    expect(mocks.pushes).toContainEqual({308308       type: "ADOPTION_SOURCE_RESULT",309-      payload: expect.objectContaining({ status: "complete" }),310-    }));309+      payload: { status: "complete" },310+    });311311     expect(mocks.triggerSync).toHaveBeenCalledWith({312312       reason: "manual",313313       force: true,@@ -818,10 +818,10 @@818818     expect(mocks.rollbackVault).not.toHaveBeenCalled();819819 820820     // The terminal state is "complete" — the popup can transition to success.821-    expect(mocks.pushes).toContainEqual(expect.objectContaining({821+    expect(mocks.pushes).toContainEqual({822822       type: "ADOPTION_SOURCE_RESULT",823-      payload: expect.objectContaining({ status: "complete" }),824-    }));823+      payload: { status: "complete" },824+    });825825   });826826 827827   it("rolls back and refuses completion when a carried Pro license is not activated", async () => {

view file

src/background/relay-adoption-bg.ts+2 −2
@@ -336,7 +336,7 @@336336         );337337       }338338     }339-    push("ADOPTION_SOURCE_RESULT", { status: "complete", device });339+    push("ADOPTION_SOURCE_RESULT", { status: "complete" });340340     // The Android receiver starts its relay listener as soon as its source341341     // record is durable. Immediate best-effort trigger; alarm-based retries342342     // cover MV3 service-worker death (setTimeout does not survive it).@@ -530,7 +530,7 @@530530     await storageSet(INITIAL_SYNC_PENDING_DEVICE_KEY, device.deviceId).catch(531531       () => undefined,532532     );533-    push("ADOPTION_SOURCE_RESULT", { status: "complete", device });533+    push("ADOPTION_SOURCE_RESULT", { status: "complete" });534534     createdVault = false;535535 536536     if (snapshotApplied) {

view file