From 491f0282a505d5aac2ebf024e95e8b07d49876c0 Mon Sep 17 00:00:00 2001 From: Mariano Belinky Date: Wed, 18 Feb 2026 13:14:59 +0000 Subject: [PATCH] iOS: harden operator reconnect/pairing identity --- apps/ios/Sources/Model/NodeAppModel.swift | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/ios/Sources/Model/NodeAppModel.swift b/apps/ios/Sources/Model/NodeAppModel.swift index 8297a22b7f9..7b843d154a0 100644 --- a/apps/ios/Sources/Model/NodeAppModel.swift +++ b/apps/ios/Sources/Model/NodeAppModel.swift @@ -584,8 +584,11 @@ final class NodeAppModel { onFailure: { [weak self] _ in guard let self else { return } await self.operatorGateway.disconnect() + await self.nodeGateway.disconnect() await MainActor.run { self.operatorConnected = false + self.gatewayConnected = false + self.gatewayStatusText = "Reconnecting…" self.talkMode.updateGatewayConnected(false) } }) @@ -1928,7 +1931,9 @@ private extension NodeAppModel { clientId: clientId, clientMode: "ui", clientDisplayName: displayName, - includeDeviceIdentity: true) + // Operator traffic should authenticate via shared gateway auth only. + // Including device identity here can trigger duplicate pairing flows. + includeDeviceIdentity: false) } func legacyClientIdFallback(currentClientId: String, error: Error) -> String? {