openclaw/apps/macos/Sources/Clawdis
Tu Nombre Real b978cc4e91 feat(macos): add Swift 6 strict concurrency compatibility
Prepares the macOS app for Swift 6 strict concurrency mode by:

1. Adding Sendable conformance to WizardNextResult, WizardStartResult,
   and WizardStatusResult in GatewayModels.swift

2. Adding AnyCodable bridging helpers in OnboardingWizard.swift to
   handle type conflicts between ClawdisProtocol and local module

3. Making CLLocationManagerDelegate methods nonisolated in:
   - MacNodeLocationService.swift
   - PermissionManager.swift (LocationPermissionRequester)

   Using Task { @MainActor in } pattern to safely access MainActor
   state from nonisolated protocol requirements.

These changes are forward-compatible and don't affect behavior on
current Swift versions.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 06:09:52 +01:00
..
Bridge refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
Logging refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
NodeMode feat(macos): add Swift 6 strict concurrency compatibility 2026-01-04 06:09:52 +01:00
Resources feat: add node location support 2026-01-04 00:54:44 +01:00
AboutSettings.swift feat(mac): surface update-ready state 2025-12-23 01:42:33 +01:00
AgeFormatting.swift refactor: split utilities 2025-12-24 22:16:06 +01:00
AgentEventStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
AgentEventsWindow.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
AgentWorkspace.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
AnthropicAuthControls.swift test: expand settings coverage 2025-12-24 17:43:30 +01:00
AnthropicOAuth.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
AnthropicOAuthCodeState.swift style(macos): swiftformat sources 2025-12-19 17:52:26 +01:00
AnyCodable.swift fix(presence): report bridged iOS nodes 2025-12-13 02:35:35 +00:00
AnyCodable+Helpers.swift feat(macos): add connections settings 2025-12-20 23:43:27 +01:00
AppState.swift feat(macos): sync gateway config 2026-01-03 22:17:04 +01:00
AsyncTimeout.swift refactor: node tools and canvas host url 2025-12-27 01:36:29 +01:00
BridgeDiscoveryPreferences.swift refactor: unify gateway discovery on bridge 2025-12-19 23:12:52 +01:00
BridgeEndpointID.swift refactor: unify gateway discovery on bridge 2025-12-19 23:12:52 +01:00
CameraCaptureService.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
CanvasA2UIActionMessageHandler.swift refactor: split canvas window 2025-12-24 21:04:52 +01:00
CanvasChromeContainerView.swift refactor: split canvas window 2025-12-24 21:04:52 +01:00
CanvasFileWatcher.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
CanvasManager.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
CanvasScheme.swift fix(mac): render Canvas HTML correctly 2025-12-12 20:01:12 +00:00
CanvasSchemeHandler.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
CanvasWindow.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
CanvasWindowController.swift refactor: split canvas window 2025-12-24 21:04:52 +01:00
CanvasWindowController+Helpers.swift refactor: split canvas window 2025-12-24 21:04:52 +01:00
CanvasWindowController+Navigation.swift refactor: split canvas window 2025-12-24 21:04:52 +01:00
CanvasWindowController+Testing.swift refactor: split canvas window 2025-12-24 21:04:52 +01:00
CanvasWindowController+Window.swift refactor: split canvas window 2025-12-24 21:04:52 +01:00
ClawdisConfigFile.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
ClawdisPaths.swift docs: annotate nix path resolution 2026-01-01 09:30:12 +01:00
CLIInstaller.swift refactor: split utilities 2025-12-24 22:16:06 +01:00
CommandResolver.swift style: fix swiftlint warnings 2026-01-02 00:17:49 +01:00
ConfigFileWatcher.swift feat(macos): sync gateway config 2026-01-03 22:17:04 +01:00
ConfigSettings.swift macOS: swiftformat connections settings 2026-01-02 12:30:59 -06:00
ConfigStore.swift feat(macOS): add gateway password auth support and fix Swift 6.2 concurrency 2026-01-01 21:34:46 -06:00
ConnectionModeCoordinator.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
ConnectionsSettings.swift Discord: add reaction notification allowlist 2026-01-03 18:48:36 +00:00
ConnectionsStore.swift Discord: default reaction notifications to own 2026-01-03 18:48:36 +00:00
Constants.swift feat: add node location support 2026-01-04 00:54:44 +01:00
ContextMenuCardView.swift refactor: normalize group session keys 2026-01-02 10:14:58 +01:00
ContextUsageBar.swift fix(macos): soften light mode usage bar track 2025-12-27 14:05:36 +01:00
ControlChannel.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
CritterIconRenderer.swift refactor: split critter status label 2025-12-24 19:56:24 +01:00
CritterStatusLabel.swift refactor: split critter status label 2025-12-24 19:56:24 +01:00
CritterStatusLabel+Behavior.swift refactor: split critter status label 2025-12-24 19:56:24 +01:00
CronJobEditor.swift feat(discord): Discord transport 2025-12-26 13:20:30 +01:00
CronJobEditor+Helpers.swift refactor: split cron settings 2025-12-24 19:36:10 +01:00
CronJobEditor+Testing.swift refactor: split cron settings 2025-12-24 19:36:10 +01:00
CronJobsStore.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
CronModels.swift feat(cron): require job name 2025-12-20 19:56:49 +00:00
CronSettings.swift refactor: split cron settings 2025-12-24 19:36:10 +01:00
CronSettings+Actions.swift refactor: split cron settings 2025-12-24 19:36:10 +01:00
CronSettings+Helpers.swift refactor: split cron settings 2025-12-24 19:36:10 +01:00
CronSettings+Layout.swift style: format cron settings 2025-12-24 19:40:11 +01:00
CronSettings+Rows.swift refactor: split cron settings 2025-12-24 19:36:10 +01:00
CronSettings+Testing.swift fix: silence view warnings 2025-12-25 03:23:31 +01:00
DebugActions.swift fix: route macOS remote config via gateway 2026-01-01 18:58:41 +01:00
DebugSettings.swift feat: support configurable gateway port 2026-01-03 12:00:17 +01:00
DeepLinks.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
DeviceModelCatalog.swift fix(macos): prioritize main bundle for device resources to prevent crash 2026-01-01 17:39:33 +01:00
DiagnosticsFileLog.swift feat(bridge): add Bonjour node bridge 2025-12-12 21:19:39 +00:00
DockIconManager.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
FileHandle+SafeRead.swift fix(macos): use safe FileHandle reads 2025-12-16 10:41:47 +01:00
GatewayAutostartPolicy.swift chore(ci): fix swiftformat lint 2025-12-20 20:32:04 +01:00
GatewayChannel.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
GatewayConnection.swift fix: lock main session deletion 2026-01-03 23:57:17 +00:00
GatewayDiscoveryMenu.swift refactor: centralize gateway parsing 2025-12-20 19:53:08 +01:00
GatewayDiscoveryModel.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
GatewayEndpointStore.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
GatewayEnvironment.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
GatewayErrors.swift ci: fix swiftformat and bun CI 2025-12-18 08:55:47 +01:00
GatewayLaunchAgentManager.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
GatewayPayloadDecoding.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
GatewayProcessManager.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
GatewayProtocolSendable.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
GatewayPush.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
GeneralSettings.swift feat: add node location support 2026-01-04 00:54:44 +01:00
HealthStore.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
HeartbeatStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
HoverHUD.swift test: expand overlay coverage 2025-12-24 17:43:30 +01:00
IconState.swift feat(macos): hover HUD for activity 2025-12-19 00:04:45 +01:00
InstanceIdentity.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
InstancesSettings.swift test: expand settings coverage 2025-12-24 17:43:30 +01:00
InstancesStore.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
LaunchAgentManager.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
LaunchdManager.swift refactor: split utilities 2025-12-24 22:16:06 +01:00
LogLocator.swift feat(macos): run bundled gateway via launchd 2025-12-19 19:21:27 +01:00
MenuBar.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
MenuContentView.swift fix(mac): harden remote tunnel recovery 2026-01-03 00:02:27 +01:00
MenuContextCardInjector.swift test: add mac coverage helpers 2025-12-24 19:29:44 +01:00
MenuHighlightedHostView.swift fix(macos): lock menu width on hover 2025-12-27 01:50:25 +01:00
MenuHostedItem.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
MenuSessionsHeaderView.swift fix(mac): sessions error UI + sleeping icon 2025-12-22 21:02:45 +01:00
MenuSessionsInjector.swift fix: lock main session deletion 2026-01-03 23:57:17 +00:00
MicLevelMonitor.swift refactor(mac): split voice wake settings 2025-12-07 17:55:07 +01:00
ModelCatalogLoader.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
NodePairingApprovalPrompter.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
NodesMenu.swift fix(mac): harden remote tunnel recovery 2026-01-03 00:02:27 +01:00
NodesStore.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
NotificationManager.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
NotifyOverlay.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
NSAttributedString+VoiceWake.swift macOS: extract attributed string helper 2025-12-09 00:59:56 +01:00
Onboarding.swift feat: unify onboarding + config schema 2026-01-03 16:48:08 +01:00
OnboardingView+Actions.swift feat: unify onboarding + config schema 2026-01-03 16:48:08 +01:00
OnboardingView+Chat.swift refactor: split onboarding view 2025-12-24 19:29:27 +01:00
OnboardingView+Layout.swift feat: unify onboarding + config schema 2026-01-03 16:48:08 +01:00
OnboardingView+Monitoring.swift feat(macos): verify Claude OAuth in onboarding 2026-01-01 23:16:15 +01:00
OnboardingView+Pages.swift feat: unify onboarding + config schema 2026-01-03 16:48:08 +01:00
OnboardingView+Testing.swift feat: unify onboarding + config schema 2026-01-03 16:48:08 +01:00
OnboardingView+Wizard.swift fix: avoid Swift compiler crash in onboarding wizard 2026-01-03 17:59:37 +00:00
OnboardingView+Workspace.swift fix(macos): keep config writes on main actor 2026-01-02 17:15:26 +01:00
OnboardingWidgets.swift refactor: split onboarding view 2025-12-24 19:29:27 +01:00
OnboardingWizard.swift feat(macos): add Swift 6 strict concurrency compatibility 2026-01-04 06:09:52 +01:00
PeekabooBridgeHostCoordinator.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
PermissionManager.swift feat(macos): add Swift 6 strict concurrency compatibility 2026-01-04 06:09:52 +01:00
PermissionsSettings.swift feat: add node location support 2026-01-04 00:54:44 +01:00
PointingHandCursor.swift style(macos): tidy settings and CLI 2025-12-13 19:23:41 +00:00
PortGuardian.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
PresenceReporter.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
ProcessInfo+Clawdis.swift feat: Nix mode config, UX, onboarding, SwiftPM plist, docs 2025-12-29 17:49:13 +01:00
RemotePortTunnel.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
RemoteTunnelManager.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
RuntimeLocator.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
ScreenRecordService.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
ScreenshotSize.swift style(macos): tidy settings and CLI 2025-12-13 19:23:41 +00:00
SessionActions.swift refactor: remove session syncing metadata 2025-12-23 00:50:51 +01:00
SessionData.swift refactor: normalize group session keys 2026-01-02 10:14:58 +01:00
SessionMenuLabelView.swift fix(macos): improve session preview loading 2026-01-02 19:55:19 +01:00
SessionMenuPreviewView.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
SessionsSettings.swift refactor: normalize group session keys 2026-01-02 10:14:58 +01:00
SettingsComponents.swift macOS: split AppMain into focused modules 2025-12-07 00:10:35 +01:00
SettingsRootView.swift fix: resolve macOS config store concurrency 2026-01-01 21:31:37 +01:00
ShellExecutor.swift chore(macos): tidy discovery and runtime 2025-12-20 23:43:27 +01:00
SkillsModels.swift feat: add skills search and website 2025-12-20 17:32:40 +01:00
SkillsSettings.swift test: expand settings coverage 2025-12-24 17:43:30 +01:00
SoundEffects.swift chore(mac): apply swiftformat and lint fixes 2025-12-09 04:42:44 +01:00
StatusPill.swift refactor: split cron settings 2025-12-24 19:36:10 +01:00
String+NonEmpty.swift ci: fix swiftformat and bun CI 2025-12-18 08:55:47 +01:00
TailscaleIntegrationSection.swift fix(macos): keep config writes on main actor 2026-01-02 17:15:26 +01:00
TailscaleService.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
TalkAudioPlayer.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
TalkModeController.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
TalkModeRuntime.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
TalkModeTypes.swift feat: add talk mode across nodes 2025-12-29 23:21:05 +01:00
TalkOverlay.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
TalkOverlayView.swift fix: restore talk orb hit testing 2025-12-30 20:25:52 +01:00
TerminationSignalWatcher.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
ViewMetrics.swift test: add mac coverage helpers 2025-12-24 19:29:44 +01:00
VisualEffectView.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
VoicePushToTalk.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
VoiceSessionCoordinator.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
VoiceWakeChime.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
VoiceWakeForwarder.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
VoiceWakeGlobalSettingsSync.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
VoiceWakeHelpers.swift test(mac): cover voice wake helpers 2025-12-07 17:56:40 +01:00
VoiceWakeOverlay.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
VoiceWakeOverlayController+Session.swift refactor: split voice wake overlay 2025-12-24 20:09:56 +01:00
VoiceWakeOverlayController+Testing.swift refactor: split voice wake overlay 2025-12-24 20:09:56 +01:00
VoiceWakeOverlayController+Window.swift fix: allow overlay present access 2025-12-24 20:24:37 +01:00
VoiceWakeOverlayTextViews.swift refactor: split voice wake overlay 2025-12-24 20:09:56 +01:00
VoiceWakeOverlayView.swift refactor: split voice wake overlay 2025-12-24 20:09:56 +01:00
VoiceWakeRuntime.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
VoiceWakeSettings.swift fix: silence view warnings 2025-12-25 03:23:31 +01:00
VoiceWakeTestCard.swift refactor(mac): split voice wake settings 2025-12-07 17:55:07 +01:00
VoiceWakeTester.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
WebChatManager.swift fix(talk): harden TTS + add system fallback 2025-12-30 07:40:02 +01:00
WebChatSwiftUI.swift refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
WindowPlacement.swift feat(macos): hover HUD for activity 2025-12-19 00:04:45 +01:00
WorkActivityStore.swift feat: centralize tool display metadata 2026-01-03 13:18:27 +01:00