The Swift Package Index logo.Swift Package Index

Build Information

Failed to build SignalFusionKit, reference master (b145fe), with Swift 6.1 for macOS (SPM) on 14 Aug 2026 00:26:12 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: undefined version: run 'make version' to update
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/izetg/SignalFusionKit.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/izetg/SignalFusionKit
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at b145fef Initial commit: SignalFusionKit
Cloned https://github.com/izetg/SignalFusionKit.git
Revision (git rev-parse @):
b145fef66c2d1678aae03e965c22a81a04102097
SUCCESS checkout https://github.com/izetg/SignalFusionKit.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/izetg/SignalFusionKit.git
https://github.com/izetg/SignalFusionKit.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SignalFusionKit",
  "name" : "SignalFusionKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "watchos",
      "version" : "9.0"
    },
    {
      "name" : "ios",
      "version" : "16.0"
    }
  ],
  "products" : [
    {
      "name" : "SignalFusionKit",
      "targets" : [
        "SignalFusionKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SignalFusionKitTests",
      "module_type" : "SwiftTarget",
      "name" : "SignalFusionKitTests",
      "path" : "Tests/SignalFusionKitTests",
      "sources" : [
        "CooldownGateTests.swift",
        "MotionAnomalyDetectorTests.swift",
        "RiskEngineTests.swift"
      ],
      "target_dependencies" : [
        "SignalFusionKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SignalFusionKit",
      "module_type" : "SwiftTarget",
      "name" : "SignalFusionKit",
      "path" : "Sources/SignalFusionKit",
      "product_memberships" : [
        "SignalFusionKit"
      ],
      "sources" : [
        "CooldownGate.swift",
        "MotionAnomalyDetector.swift",
        "RiskEngine.swift",
        "RiskEngineConfig.swift",
        "RiskLevel.swift",
        "SignalSnapshot.swift",
        "WatchKitAdapter.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/10] Compiling SignalFusionKit CooldownGate.swift
[4/10] Compiling SignalFusionKit SignalSnapshot.swift
[5/10] Compiling SignalFusionKit RiskEngineConfig.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[6/10] Emitting module SignalFusionKit
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:18:25: error: 'HKHealthStore' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
   |                         `- error: 'HKHealthStore' is only available in macOS 13.0 or newer
19 |     private let motionManager = CMMotionManager()
20 |     private let detector: MotionAnomalyDetector
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:19:33: error: 'CMMotionManager' is unavailable in macOS
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   |                                 `- error: 'CMMotionManager' is unavailable in macOS
20 |     private let detector: MotionAnomalyDetector
21 |     private let riskConfig: RiskEngineConfig
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMMotionManager.h:90:12: note: 'CMMotionManager' has been explicitly marked unavailable here
 88 |  */
 89 | COREMOTION_EXPORT API_AVAILABLE(ios(4.0)) API_UNAVAILABLE(macos)
 90 | @interface CMMotionManager : NSObject
    |            `- note: 'CMMotionManager' has been explicitly marked unavailable here
 91 | {
 92 | @private
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:23:6: error: 'Published' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
21 |     private let riskConfig: RiskEngineConfig
22 |
23 |     @Published public private(set) var latest: RiskAssessment?
   |      `- error: 'Published' is only available in macOS 10.15 or newer
24 |
25 |     private var oxygenSaturation: Double?
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:17:47: error: 'ObservableObject' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    |                          `- error: 'ObservableObject' is only available in macOS 10.15 or newer
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
[7/10] Compiling SignalFusionKit RiskEngine.swift
[8/10] Compiling SignalFusionKit RiskLevel.swift
[9/10] Compiling SignalFusionKit MotionAnomalyDetector.swift
[10/10] Compiling SignalFusionKit WatchKitAdapter.swift
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:18:25: error: 'HKHealthStore' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
   |                         `- error: 'HKHealthStore' is only available in macOS 13.0 or newer
19 |     private let motionManager = CMMotionManager()
20 |     private let detector: MotionAnomalyDetector
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:19:33: error: 'CMMotionManager' is unavailable in macOS
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   |                                 `- error: 'CMMotionManager' is unavailable in macOS
20 |     private let detector: MotionAnomalyDetector
21 |     private let riskConfig: RiskEngineConfig
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMMotionManager.h:90:12: note: 'CMMotionManager' has been explicitly marked unavailable here
 88 |  */
 89 | COREMOTION_EXPORT API_AVAILABLE(ios(4.0)) API_UNAVAILABLE(macos)
 90 | @interface CMMotionManager : NSObject
    |            `- note: 'CMMotionManager' has been explicitly marked unavailable here
 91 | {
 92 | @private
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:23:6: error: 'Published' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
21 |     private let riskConfig: RiskEngineConfig
22 |
23 |     @Published public private(set) var latest: RiskAssessment?
   |      `- error: 'Published' is only available in macOS 10.15 or newer
24 |
25 |     private var oxygenSaturation: Double?
<unknown>:0: error: cannot convert value of type 'KeyPath<WatchKitAdapter, RiskAssessment?>' to expected argument type 'ReferenceWritableKeyPath<WatchKitAdapter, RiskAssessment?>'
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:17:47: error: 'ObservableObject' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    |                          `- error: 'ObservableObject' is only available in macOS 10.15 or newer
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:42:15: error: 'HKHealthStore' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
   |               |- error: 'HKHealthStore' is only available in macOS 13.0 or newer
   |               `- note: add 'if #available' version check
43 |
44 |         let types: Set<HKObjectType> = [
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:44:24: error: 'HKObjectType' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
   |                        |- error: 'HKObjectType' is only available in macOS 13.0 or newer
   |                        `- note: add 'if #available' version check
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:45:13: error: 'HKQuantityType' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
   |             |- error: 'HKQuantityType' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:45:13: error: 'init(_:)' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
   |             |- error: 'init(_:)' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:45:29: error: 'oxygenSaturation' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
   |                             |- error: 'oxygenSaturation' is only available in macOS 13.0 or newer
   |                             `- note: add 'if #available' version check
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:46:13: error: 'HKQuantityType' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
   |             |- error: 'HKQuantityType' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:46:13: error: 'init(_:)' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
   |             |- error: 'init(_:)' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:46:29: error: 'heartRateVariabilitySDNN' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
   |                             |- error: 'heartRateVariabilitySDNN' is only available in macOS 13.0 or newer
   |                             `- note: add 'if #available' version check
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:48:26: error: 'requestAuthorization(toShare:read:)' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
   :
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
   |                          |- error: 'requestAuthorization(toShare:read:)' is only available in macOS 13.0 or newer
   |                          `- note: add 'if #available' version check
49 |
50 |         startAccelerometer()
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:76:9: error: setter for 'latest' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
66 |     }
67 |
68 |     private func publish(motionAnomaly: Bool) {
   |                  `- note: add @available attribute to enclosing instance method
69 |         let snapshot = SignalSnapshot(
70 |             oxygenSaturation: oxygenSaturation,
   :
74 |             timestamp: Date()
75 |         )
76 |         latest = RiskEngine.evaluate(snapshot, config: riskConfig)
   |         |- error: setter for 'latest' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
77 |     }
78 | }
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/9] Compiling SignalFusionKit RiskLevel.swift
[3/9] Compiling SignalFusionKit WatchKitAdapter.swift
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:18:25: error: 'HKHealthStore' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
   |                         `- error: 'HKHealthStore' is only available in macOS 13.0 or newer
19 |     private let motionManager = CMMotionManager()
20 |     private let detector: MotionAnomalyDetector
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:19:33: error: 'CMMotionManager' is unavailable in macOS
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   |                                 `- error: 'CMMotionManager' is unavailable in macOS
20 |     private let detector: MotionAnomalyDetector
21 |     private let riskConfig: RiskEngineConfig
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMMotionManager.h:90:12: note: 'CMMotionManager' has been explicitly marked unavailable here
 88 |  */
 89 | COREMOTION_EXPORT API_AVAILABLE(ios(4.0)) API_UNAVAILABLE(macos)
 90 | @interface CMMotionManager : NSObject
    |            `- note: 'CMMotionManager' has been explicitly marked unavailable here
 91 | {
 92 | @private
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:23:6: error: 'Published' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
21 |     private let riskConfig: RiskEngineConfig
22 |
23 |     @Published public private(set) var latest: RiskAssessment?
   |      `- error: 'Published' is only available in macOS 10.15 or newer
24 |
25 |     private var oxygenSaturation: Double?
<unknown>:0: error: cannot convert value of type 'KeyPath<WatchKitAdapter, RiskAssessment?>' to expected argument type 'ReferenceWritableKeyPath<WatchKitAdapter, RiskAssessment?>'
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:17:47: error: 'ObservableObject' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    |                          `- error: 'ObservableObject' is only available in macOS 10.15 or newer
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:42:15: error: 'HKHealthStore' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
   |               |- error: 'HKHealthStore' is only available in macOS 13.0 or newer
   |               `- note: add 'if #available' version check
43 |
44 |         let types: Set<HKObjectType> = [
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:44:24: error: 'HKObjectType' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
   |                        |- error: 'HKObjectType' is only available in macOS 13.0 or newer
   |                        `- note: add 'if #available' version check
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:45:13: error: 'HKQuantityType' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
   |             |- error: 'HKQuantityType' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:45:13: error: 'init(_:)' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
   |             |- error: 'init(_:)' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:45:29: error: 'oxygenSaturation' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
   |                             |- error: 'oxygenSaturation' is only available in macOS 13.0 or newer
   |                             `- note: add 'if #available' version check
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:46:13: error: 'HKQuantityType' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
   |             |- error: 'HKQuantityType' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:46:13: error: 'init(_:)' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
   |             |- error: 'init(_:)' is only available in macOS 13.0 or newer
   |             `- note: add 'if #available' version check
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:46:29: error: 'heartRateVariabilitySDNN' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
44 |         let types: Set<HKObjectType> = [
45 |             HKQuantityType(.oxygenSaturation),
46 |             HKQuantityType(.heartRateVariabilitySDNN),
   |                             |- error: 'heartRateVariabilitySDNN' is only available in macOS 13.0 or newer
   |                             `- note: add 'if #available' version check
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:48:26: error: 'requestAuthorization(toShare:read:)' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
39 |     /// signals ``RiskEngine`` uses. Call once, e.g. from your Watch app's
40 |     /// launch path.
41 |     public func start() async {
   |                 `- note: add @available attribute to enclosing instance method
42 |         guard HKHealthStore.isHealthDataAvailable() else { return }
43 |
   :
46 |             HKQuantityType(.heartRateVariabilitySDNN),
47 |         ]
48 |         try? await store.requestAuthorization(toShare: [], read: types)
   |                          |- error: 'requestAuthorization(toShare:read:)' is only available in macOS 13.0 or newer
   |                          `- note: add 'if #available' version check
49 |
50 |         startAccelerometer()
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:76:9: error: setter for 'latest' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
66 |     }
67 |
68 |     private func publish(motionAnomaly: Bool) {
   |                  `- note: add @available attribute to enclosing instance method
69 |         let snapshot = SignalSnapshot(
70 |             oxygenSaturation: oxygenSaturation,
   :
74 |             timestamp: Date()
75 |         )
76 |         latest = RiskEngine.evaluate(snapshot, config: riskConfig)
   |         |- error: setter for 'latest' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
77 |     }
78 | }
[4/9] Compiling SignalFusionKit SignalSnapshot.swift
[5/9] Compiling SignalFusionKit RiskEngineConfig.swift
[6/9] Compiling SignalFusionKit RiskEngine.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[7/9] Compiling SignalFusionKit CooldownGate.swift
[8/9] Compiling SignalFusionKit MotionAnomalyDetector.swift
[9/9] Emitting module SignalFusionKit
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:18:25: error: 'HKHealthStore' is only available in macOS 13.0 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
   |                         `- error: 'HKHealthStore' is only available in macOS 13.0 or newer
19 |     private let motionManager = CMMotionManager()
20 |     private let detector: MotionAnomalyDetector
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:19:33: error: 'CMMotionManager' is unavailable in macOS
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   |                                 `- error: 'CMMotionManager' is unavailable in macOS
20 |     private let detector: MotionAnomalyDetector
21 |     private let riskConfig: RiskEngineConfig
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMMotionManager.h:90:12: note: 'CMMotionManager' has been explicitly marked unavailable here
 88 |  */
 89 | COREMOTION_EXPORT API_AVAILABLE(ios(4.0)) API_UNAVAILABLE(macos)
 90 | @interface CMMotionManager : NSObject
    |            `- note: 'CMMotionManager' has been explicitly marked unavailable here
 91 | {
 92 | @private
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:23:6: error: 'Published' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
   :
21 |     private let riskConfig: RiskEngineConfig
22 |
23 |     @Published public private(set) var latest: RiskAssessment?
   |      `- error: 'Published' is only available in macOS 10.15 or newer
24 |
25 |     private var oxygenSaturation: Double?
/Users/admin/builder/spi-builder-workspace/Sources/SignalFusionKit/WatchKitAdapter.swift:17:47: error: 'ObservableObject' is only available in macOS 10.15 or newer
15 | ///   example to adapt, not a drop-in production component.
16 | @MainActor
17 | public final class WatchKitAdapter: NSObject, ObservableObject {
   |                    |                          `- error: 'ObservableObject' is only available in macOS 10.15 or newer
   |                    `- note: add @available attribute to enclosing class
18 |     private let store = HKHealthStore()
19 |     private let motionManager = CMMotionManager()
BUILD FAILURE 6.1 macosSpm