From 359d2af8a89192f96e6002b1c14f65253ef07bbe Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sun, 18 Jan 2026 08:00:49 +0000 Subject: [PATCH] fix: resolve mac build errors --- apps/macos/Sources/Clawdbot/ExecApprovals.swift | 2 +- apps/macos/Sources/Clawdbot/ExecApprovalsSocket.swift | 2 +- apps/macos/Sources/Clawdbot/NodeMode/MacNodeRuntime.swift | 5 ++++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/macos/Sources/Clawdbot/ExecApprovals.swift b/apps/macos/Sources/Clawdbot/ExecApprovals.swift index adec360a9..bf1407d96 100644 --- a/apps/macos/Sources/Clawdbot/ExecApprovals.swift +++ b/apps/macos/Sources/Clawdbot/ExecApprovals.swift @@ -204,7 +204,7 @@ enum ExecApprovalsStore { } static func resolve(agentId: String?) -> ExecApprovalsResolved { - var file = self.ensureFile() + let file = self.ensureFile() let defaults = file.defaults ?? ExecApprovalsDefaults() let resolvedDefaults = ExecApprovalsResolvedDefaults( security: defaults.security ?? self.defaultSecurity, diff --git a/apps/macos/Sources/Clawdbot/ExecApprovalsSocket.swift b/apps/macos/Sources/Clawdbot/ExecApprovalsSocket.swift index e9421cdd5..4f86c628c 100644 --- a/apps/macos/Sources/Clawdbot/ExecApprovalsSocket.swift +++ b/apps/macos/Sources/Clawdbot/ExecApprovalsSocket.swift @@ -205,7 +205,7 @@ private enum ExecApprovalsPromptPresenter { } } -private final class ExecApprovalsSocketServer { +private final class ExecApprovalsSocketServer: @unchecked Sendable { private let logger = Logger(subsystem: "com.clawdbot", category: "exec-approvals.socket") private let socketPath: String private let token: String diff --git a/apps/macos/Sources/Clawdbot/NodeMode/MacNodeRuntime.swift b/apps/macos/Sources/Clawdbot/NodeMode/MacNodeRuntime.swift index 502b29a46..d62d31782 100644 --- a/apps/macos/Sources/Clawdbot/NodeMode/MacNodeRuntime.swift +++ b/apps/macos/Sources/Clawdbot/NodeMode/MacNodeRuntime.swift @@ -616,7 +616,10 @@ actor MacNodeRuntime { cwd: params.cwd, env: env, timeout: timeoutSec) - let combined = [result.stdout, result.stderr, result.errorMessage].filter { !$0.isEmpty }.joined(separator: "\n") + let combined = [result.stdout, result.stderr, result.errorMessage] + .compactMap { $0 } + .filter { !$0.isEmpty } + .joined(separator: "\n") await self.emitExecEvent( "exec.finished", payload: ExecEventPayload(