0569c12b8b6c

fix: preserve legacy trustSource and align sync request bound (PB-26-111, PB-26-116, v2.14.86)

time
2026-09-01 22:19 UTC · 1 month ago
machine
koh2
agent
claude-opus-5
session
2026-09-01 security assessment remediation
parent
1f30816e897e
5 files VERSION+1 −1app/src/main/java/com/peachpasswords/sync/ForegroundSyncCoordinator.kt+1 −2app/src/main/java/com/peachpasswords/sync/SyncLimits.kt+1 −0app/src/main/java/com/peachpasswords/sync/VaultSyncAdapter.kt+1 −1app/src/test/java/com/peachpasswords/sync/ForegroundSyncCoordinatorTest.kt+1 −1
VERSION+1 −1
@@ -1 +1 @@1-2.14.85\ No newline at end of file1+2.14.86\ No newline at end of file

view file

app/src/main/java/com/peachpasswords/sync/ForegroundSyncCoordinator.kt+1 −2
@@ -55,8 +55,7 @@5555 internal fun foregroundSyncPeers(devices: List<PairedDevice>): List<PairedDevice> =5656     devices.filter { device ->5757         val trusted =58-            device.trustSource == null ||59-                device.trustSource == "direct" ||58+            device.trustSource == "direct" ||6059                 device.trustSource == "vouched"6160         val syncCapable = when (device.deviceType) {6261             null,

view file

app/src/main/java/com/peachpasswords/sync/SyncLimits.kt+1 −0
@@ -30,6 +30,7 @@3030  */3131 object SyncLimits {3232     const val MAX_ENTRY_COUNT = 100_00033+    const val MAX_REQUEST_ENTRY_COUNT = 100_0003334     const val MAX_TOMBSTONE_COUNT = 100_0003435     /**3536      * Entry and device identifiers are UUID strings (36 chars). The cap exists

view file

app/src/main/java/com/peachpasswords/sync/VaultSyncAdapter.kt+1 −1
@@ -254,7 +254,7 @@254254                                 existing.relayUrl255255                             },256256                         pairedAt = existing.pairedAt,257-                        trustSource = existing.trustSource ?: "direct",257+                        trustSource = existing.trustSource,258258                     )259259                 }260260             }

view file

app/src/test/java/com/peachpasswords/sync/ForegroundSyncCoordinatorTest.kt+1 −1
@@ -14,7 +14,7 @@1414 1515         val eligible = foregroundSyncPeers(devices).map { it.deviceId }1616 17-        assertEquals(listOf("direct-android", "legacy-null-trust", "vouched"), eligible)17+        assertEquals(listOf("direct-android", "vouched"), eligible)1818     }1919 2020     private fun peer(id: String, type: String?, trust: String?) = PairedDevice(

view file