From fb7aeffcf06f481f67e1aa9595d8728d89a9be1b Mon Sep 17 00:00:00 2001 From: Andrew Blakeslee Moore Date: Sat, 4 Jul 2026 00:59:15 -0700 Subject: [PATCH] Fix iOS build: handle ClientMsg.listPeers in the demo simulator MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The mesh/session-transfer work added `ClientMsg.listPeers`, but the phone's demo-mode `demoHandle` switch (which lists its cases explicitly, no default) was never updated — leaving the NucleicRemote target non-exhaustive and failing to build (pre-existing on dev, surfaced by the iPad-port merge). Demo mode has no real mesh peers, so treat `.listPeers` as passive alongside the other read-only requests. Co-Authored-By: Claude Opus 4.8 --- NucleicRemote/NucleicRemote/Models/RemoteStore.swift | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/NucleicRemote/NucleicRemote/Models/RemoteStore.swift b/NucleicRemote/NucleicRemote/Models/RemoteStore.swift index 142895a..d908d71 100644 --- a/NucleicRemote/NucleicRemote/Models/RemoteStore.swift +++ b/NucleicRemote/NucleicRemote/Models/RemoteStore.swift @@ -816,8 +816,8 @@ final class RemoteStore: ObservableObject { case .setSessionShipBranch(let id, let branch): demoUpdateSession(id) { $0.demoCopy(shipBranch: .some(branch)) } case .hello, .listSessions, .listDashboard, .subscribe, .unsubscribe, - .ping, .cancelQueuedMessage, .fetchDiff: - break // passive / already handled by the seeded fixtures + .ping, .cancelQueuedMessage, .fetchDiff, .listPeers: + break // passive / already handled by the seeded fixtures (demo has no mesh peers) } }