diff --git a/NucleicRemote/NucleicRemote/Models/RemoteStore.swift b/NucleicRemote/NucleicRemote/Models/RemoteStore.swift index e62632e..6594893 100644 --- a/NucleicRemote/NucleicRemote/Models/RemoteStore.swift +++ b/NucleicRemote/NucleicRemote/Models/RemoteStore.swift @@ -1674,11 +1674,13 @@ final class RemoteStore: ObservableObject { // `requestPairingCode()`/`cancelPairingCode()`, not through this owner-routing switch. // The runner verbs (intelligence results, credential mesh — ANTIMATTER_RUNNER §5–6) will // ride their own executor/vault loops when the phone side lands; nothing routes them here. + // `createProject` (CLOUD_RUNTIME §4.3) will go straight to a user-chosen host when the + // phone grows that UI — a brand-new project has no owner to route by. case .hello, .ping, .listPeers, .addressUpdate, .meshRoster, .registerLiveActivity, .endLiveActivity, .registerPushToStartToken, .setForeground, .transferOffer, .transferChunk, .transferCommit, .transferCancel, .fetchTranscript, .requestPairingCode, .cancelPairingCode, .respondMacPair, - .intelligenceResult, .credentialManifest, .credentialProvision: + .intelligenceResult, .credentialManifest, .credentialProvision, .createProject: break } } @@ -1867,7 +1869,9 @@ final class RemoteStore: ObservableObject { // the demo path short-circuits in `requestPairingCode()` with a stand-in code. .requestPairingCode, .cancelPairingCode, .respondMacPair, // Antimatter runner verbs (ANTIMATTER_RUNNER §5–6) — demo has no runner host. - .intelligenceResult, .credentialManifest, .credentialProvision: + .intelligenceResult, .credentialManifest, .credentialProvision, + // Remote project creation (CLOUD_RUNTIME §4.3) — demo has no host to clone on. + .createProject: break // passive / already handled by the seeded fixtures (demo has no mesh peers) } }