From 67693a1be9b4a1d6f72642f7e299100fa1cc49e1 Mon Sep 17 00:00:00 2001 From: Andrew Blakeslee Moore Date: Mon, 6 Jul 2026 14:45:29 -0700 Subject: [PATCH] Read App Intents Documentation Nucleic-Session: 56C5F781-4444-466B-91CE-A7734A8E117F Co-authored-by: Nucleic --- NucleicRemote/NucleicRemote/AppIntents/IntentError.swift | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/NucleicRemote/NucleicRemote/AppIntents/IntentError.swift b/NucleicRemote/NucleicRemote/AppIntents/IntentError.swift index fb71770..9a73fd3 100644 --- a/NucleicRemote/NucleicRemote/AppIntents/IntentError.swift +++ b/NucleicRemote/NucleicRemote/AppIntents/IntentError.swift @@ -10,6 +10,9 @@ enum IntentError: Error, CustomLocalizedStringResourceConvertible { case notPaired /// The action needs `control` scope, which this device hasn't been granted. case controlScopeRequired + /// A high-risk approval (destructive/network/host-exec) can't be allowed inline — it must be + /// confirmed on the app's guarded card (docs/APP_INTENTS_OPPORTUNITIES §3.3). + case needsAppConfirmation var localizedStringResource: LocalizedStringResource { switch self { @@ -19,6 +22,8 @@ enum IntentError: Error, CustomLocalizedStringResourceConvertible { "Pair this iPhone with your Mac in Nucleic first." case .controlScopeRequired: "This device can view and approve, but isn't allowed to control sessions." + case .needsAppConfirmation: + "This one's high-risk — open Nucleic to confirm it on the approval card." } } }