Build Information
Failed to build SyncField, reference main (40deed), with Swift 6.2 for Android on 10 Aug 2026 20:33:52 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344847-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 729ceb5fcd9493dc13ee340bc4f0908bd201f85d
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/OpenGraphLabs/syncfield-swift.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/OpenGraphLabs/syncfield-swift
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 40deed1 feat: add atomic long-horizon segment rotation
Cloned https://github.com/OpenGraphLabs/syncfield-swift.git
Revision (git rev-parse @):
40deed1806f5e2b4cf4a4013c0ec6eed679197f3
SUCCESS checkout https://github.com/OpenGraphLabs/syncfield-swift.git at main
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/OpenGraphLabs/syncfield-swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344847-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from saguaro1/spi-images
Digest: sha256:573917aa137cc6f081a4f3d2a0330bac24553e9cd713cd758adf65046f5c6b90
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.2-latest
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/AGENTS.md
Building for debugging...
[0/6] Copying PrivacyInfo.xcprivacy
[0/6] Write sources
[5/6] Write swift-version--11D90AFD9DD3AB2.txt
[7/55] Compiling SyncField CameraTimestamps.swift
[8/55] Compiling SyncField FrameProcessorGate.swift
[9/55] Compiling SyncField MultiCamCameraStream.swift
[10/55] Compiling SyncField TactileAcquireFailure.swift
[11/55] Compiling SyncField TactileBLEClient.swift
[12/55] Compiling SyncField TactilePacketParser.swift
[13/55] Compiling SyncField TactileRoleRegistry.swift
[14/55] Compiling SyncField SyncFieldStream.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/EventWriter.swift:118:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
116 | guard !pendingLines.isEmpty else { return }
117 | if fileHandle == nil {
118 | FileManager.default.createFile(atPath: fileURL.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
119 | fileHandle = try? FileHandle(forWritingTo: fileURL)
120 | }
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
7 |
8 | public init(url: URL) throws {
9 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
10 | self.handle = try FileHandle(forWritingTo: url)
11 | }
[15/55] Compiling SyncField SyncPoint.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/EventWriter.swift:118:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
116 | guard !pendingLines.isEmpty else { return }
117 | if fileHandle == nil {
118 | FileManager.default.createFile(atPath: fileURL.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
119 | fileHandle = try? FileHandle(forWritingTo: fileURL)
120 | }
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
7 |
8 | public init(url: URL) throws {
9 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
10 | self.handle = try FileHandle(forWritingTo: url)
11 | }
[16/55] Compiling SyncField EventWriter.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/EventWriter.swift:118:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
116 | guard !pendingLines.isEmpty else { return }
117 | if fileHandle == nil {
118 | FileManager.default.createFile(atPath: fileURL.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
119 | fileHandle = try? FileHandle(forWritingTo: fileURL)
120 | }
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
7 |
8 | public init(url: URL) throws {
9 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
10 | self.handle = try FileHandle(forWritingTo: url)
11 | }
[17/55] Compiling SyncField ManifestWriter.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/EventWriter.swift:118:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
116 | guard !pendingLines.isEmpty else { return }
117 | if fileHandle == nil {
118 | FileManager.default.createFile(atPath: fileURL.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
119 | fileHandle = try? FileHandle(forWritingTo: fileURL)
120 | }
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
7 |
8 | public init(url: URL) throws {
9 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
10 | self.handle = try FileHandle(forWritingTo: url)
11 | }
[18/55] Compiling SyncField RotatingSensorWriter.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/EventWriter.swift:118:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
116 | guard !pendingLines.isEmpty else { return }
117 | if fileHandle == nil {
118 | FileManager.default.createFile(atPath: fileURL.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
119 | fileHandle = try? FileHandle(forWritingTo: fileURL)
120 | }
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
7 |
8 | public init(url: URL) throws {
9 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
10 | self.handle = try FileHandle(forWritingTo: url)
11 | }
[19/55] Compiling SyncField SensorWriter.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/EventWriter.swift:118:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
116 | guard !pendingLines.isEmpty else { return }
117 | if fileHandle == nil {
118 | FileManager.default.createFile(atPath: fileURL.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
119 | fileHandle = try? FileHandle(forWritingTo: fileURL)
120 | }
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
7 |
8 | public init(url: URL) throws {
9 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
10 | self.handle = try FileHandle(forWritingTo: url)
11 | }
[20/61] Compiling SyncField AVAudioEngineChirpPlayer.swift
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:23:14: error: cannot find 'mach_timebase_info_data_t' in scope
21 | @inline(__always)
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:24:5: error: cannot find 'mach_timebase_info' in scope
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
26 | }
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:25:12: error: cannot find 'mach_absolute_time' in scope
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
| `- error: cannot find 'mach_absolute_time' in scope
26 | }
27 |
[21/61] Compiling SyncField AudioReattachableStream.swift
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:23:14: error: cannot find 'mach_timebase_info_data_t' in scope
21 | @inline(__always)
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:24:5: error: cannot find 'mach_timebase_info' in scope
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
26 | }
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:25:12: error: cannot find 'mach_absolute_time' in scope
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
| `- error: cannot find 'mach_absolute_time' in scope
26 | }
27 |
[22/61] Compiling SyncField AudioSessionInterruptionHandler.swift
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:23:14: error: cannot find 'mach_timebase_info_data_t' in scope
21 | @inline(__always)
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:24:5: error: cannot find 'mach_timebase_info' in scope
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
26 | }
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:25:12: error: cannot find 'mach_absolute_time' in scope
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
| `- error: cannot find 'mach_absolute_time' in scope
26 | }
27 |
[23/61] Compiling SyncField AudioSessionPolicy.swift
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:23:14: error: cannot find 'mach_timebase_info_data_t' in scope
21 | @inline(__always)
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:24:5: error: cannot find 'mach_timebase_info' in scope
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
26 | }
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:25:12: error: cannot find 'mach_absolute_time' in scope
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
| `- error: cannot find 'mach_absolute_time' in scope
26 | }
27 |
[24/61] Compiling SyncField ChirpPlayer.swift
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:23:14: error: cannot find 'mach_timebase_info_data_t' in scope
21 | @inline(__always)
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:24:5: error: cannot find 'mach_timebase_info' in scope
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
26 | }
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:25:12: error: cannot find 'mach_absolute_time' in scope
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
| `- error: cannot find 'mach_absolute_time' in scope
26 | }
27 |
[25/61] Compiling SyncField ChirpSynthesis.swift
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:23:14: error: cannot find 'mach_timebase_info_data_t' in scope
21 | @inline(__always)
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:24:5: error: cannot find 'mach_timebase_info' in scope
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
26 | }
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:25:12: error: cannot find 'mach_absolute_time' in scope
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
| `- error: cannot find 'mach_absolute_time' in scope
26 | }
27 |
[26/61] Compiling SyncField ChirpTypes.swift
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:23:14: error: cannot find 'mach_timebase_info_data_t' in scope
21 | @inline(__always)
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:24:5: error: cannot find 'mach_timebase_info' in scope
22 | func currentMonotonicNs() -> UInt64 {
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
26 | }
/host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift:25:12: error: cannot find 'mach_absolute_time' in scope
23 | var tb = mach_timebase_info_data_t()
24 | mach_timebase_info(&tb)
25 | return mach_absolute_time() &* UInt64(tb.numer) / UInt64(tb.denom)
| `- error: cannot find 'mach_absolute_time' in scope
26 | }
27 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[27/61] Emitting module SyncField
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
7 |
8 | public init(url: URL) throws {
9 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
10 | self.handle = try FileHandle(forWritingTo: url)
11 | }
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | self.isoFormatter = ISO8601DateFormatter()
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | }
[28/61] Compiling SyncField CountdownSpec.swift
[29/61] Compiling SyncField CountdownTickPlayer.swift
[30/61] Compiling SyncField CalibrationScaling.swift
[31/61] Compiling SyncField CameraCalibrationProber.swift
[32/61] Compiling SyncField PhotoCalibrationProbeExecutor.swift
[33/61] Compiling SyncField ProbedCameraCalibration.swift
[34/61] Compiling SyncField StereoExtrinsicsMath.swift
[35/61] Compiling SyncField StereoProbedCalibration.swift
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:26:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
24 |
25 | public func publish(_ event: HealthEvent) async {
26 | lock.lock()
| `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
27 | let targets = Array(continuations.values)
28 | lock.unlock()
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:28:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
26 | lock.lock()
27 | let targets = Array(continuations.values)
28 | lock.unlock()
| `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
29 | for cont in targets { cont.yield(event) }
30 | }
[36/61] Compiling SyncField Errors.swift
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:26:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
24 |
25 | public func publish(_ event: HealthEvent) async {
26 | lock.lock()
| `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
27 | let targets = Array(continuations.values)
28 | lock.unlock()
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:28:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
26 | lock.lock()
27 | let targets = Array(continuations.values)
28 | lock.unlock()
| `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
29 | for cont in targets { cont.yield(event) }
30 | }
[37/61] Compiling SyncField HealthBus.swift
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:26:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
24 |
25 | public func publish(_ event: HealthEvent) async {
26 | lock.lock()
| `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
27 | let targets = Array(continuations.values)
28 | lock.unlock()
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:28:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
26 | lock.lock()
27 | let targets = Array(continuations.values)
28 | lock.unlock()
| `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
29 | for cont in targets { cont.yield(event) }
30 | }
[38/61] Compiling SyncField HealthEvent.swift
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:26:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
24 |
25 | public func publish(_ event: HealthEvent) async {
26 | lock.lock()
| `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
27 | let targets = Array(continuations.values)
28 | lock.unlock()
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:28:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
26 | lock.lock()
27 | let targets = Array(continuations.values)
28 | lock.unlock()
| `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
29 | for cont in targets { cont.yield(event) }
30 | }
[39/61] Compiling SyncField HandQualityConfig.swift
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:26:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
24 |
25 | public func publish(_ event: HealthEvent) async {
26 | lock.lock()
| `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
27 | let targets = Array(continuations.values)
28 | lock.unlock()
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:28:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
26 | lock.lock()
27 | let targets = Array(continuations.values)
28 | lock.unlock()
| `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
29 | for cont in targets { cont.yield(event) }
30 | }
[40/61] Compiling SyncField HandQualityMonitor.swift
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:26:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
24 |
25 | public func publish(_ event: HealthEvent) async {
26 | lock.lock()
| `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
27 | let targets = Array(continuations.values)
28 | lock.unlock()
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:28:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
26 | lock.lock()
27 | let targets = Array(continuations.values)
28 | lock.unlock()
| `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
29 | for cont in targets { cont.yield(event) }
30 | }
[41/61] Compiling SyncField HandQualitySummary.swift
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:26:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
24 |
25 | public func publish(_ event: HealthEvent) async {
26 | lock.lock()
| `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
27 | let targets = Array(continuations.values)
28 | lock.unlock()
/host/spi-builder-workspace/Sources/SyncField/HealthBus.swift:28:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
26 | lock.lock()
27 | let targets = Array(continuations.values)
28 | lock.unlock()
| `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
29 | for cont in targets { cont.yield(event) }
30 | }
[42/61] Compiling SyncField TactileStream.swift
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:123:39: error: value of type 'TactilePeripheralRef' has no member 'identifier'
121 | let m = try await client.connectAndPrepare(ref, expectedSide: side)
122 | let claimed = await TactileRoleRegistry.shared
123 | .tryClaim(ref.identifier.uuidString, side: side)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:125:45: error: value of type 'TactilePeripheralRef' has no member 'identifier'
123 | .tryClaim(ref.identifier.uuidString, side: side)
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
126 | client.disconnect()
127 | continue
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:151:42: error: type 'TactileBLEClient' has no member 'Error'
149 | await healthBus?.publish(.streamConnected(streamId: streamId))
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
| `- error: type 'TactileBLEClient' has no member 'Error'
152 | excluded.insert(ref.identifier) // definitively the other side
153 | client.disconnect()
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:152:41: error: value of type 'TactilePeripheralRef' has no member 'identifier'
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
152 | excluded.insert(ref.identifier) // definitively the other side
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
153 | client.disconnect()
154 | } catch {
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:250:14: error: value of type 'iPhoneCameraStream' has no member 'healthBus'
248 |
249 | public func connect(context: StreamConnectContext) async throws {
250 | self.healthBus = context.healthBus
| `- error: value of type 'iPhoneCameraStream' has no member 'healthBus'
251 | #if canImport(AVFoundation)
252 | try configureSession()
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:15: error: cannot find 'healthBus' in scope
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot find 'healthBus' in scope
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:35: error: cannot infer contextual base in reference to member 'streamConnected'
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot infer contextual base in reference to member 'streamConnected'
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:756:40: error: cannot find 'frameCount' in scope
754 | StreamIngestReport(streamId: streamId,
755 | filePath: "\(streamId).mp4",
756 | frameCount: frameCount)
| `- error: cannot find 'frameCount' in scope
757 | }
758 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:15: error: cannot find 'healthBus' in scope
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot find 'healthBus' in scope
773 | }
774 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:35: error: cannot infer contextual base in reference to member 'streamDisconnected'
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot infer contextual base in reference to member 'streamDisconnected'
773 | }
774 |
[43/61] Compiling SyncField TactileTypes.swift
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:123:39: error: value of type 'TactilePeripheralRef' has no member 'identifier'
121 | let m = try await client.connectAndPrepare(ref, expectedSide: side)
122 | let claimed = await TactileRoleRegistry.shared
123 | .tryClaim(ref.identifier.uuidString, side: side)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:125:45: error: value of type 'TactilePeripheralRef' has no member 'identifier'
123 | .tryClaim(ref.identifier.uuidString, side: side)
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
126 | client.disconnect()
127 | continue
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:151:42: error: type 'TactileBLEClient' has no member 'Error'
149 | await healthBus?.publish(.streamConnected(streamId: streamId))
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
| `- error: type 'TactileBLEClient' has no member 'Error'
152 | excluded.insert(ref.identifier) // definitively the other side
153 | client.disconnect()
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:152:41: error: value of type 'TactilePeripheralRef' has no member 'identifier'
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
152 | excluded.insert(ref.identifier) // definitively the other side
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
153 | client.disconnect()
154 | } catch {
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:250:14: error: value of type 'iPhoneCameraStream' has no member 'healthBus'
248 |
249 | public func connect(context: StreamConnectContext) async throws {
250 | self.healthBus = context.healthBus
| `- error: value of type 'iPhoneCameraStream' has no member 'healthBus'
251 | #if canImport(AVFoundation)
252 | try configureSession()
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:15: error: cannot find 'healthBus' in scope
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot find 'healthBus' in scope
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:35: error: cannot infer contextual base in reference to member 'streamConnected'
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot infer contextual base in reference to member 'streamConnected'
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:756:40: error: cannot find 'frameCount' in scope
754 | StreamIngestReport(streamId: streamId,
755 | filePath: "\(streamId).mp4",
756 | frameCount: frameCount)
| `- error: cannot find 'frameCount' in scope
757 | }
758 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:15: error: cannot find 'healthBus' in scope
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot find 'healthBus' in scope
773 | }
774 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:35: error: cannot infer contextual base in reference to member 'streamDisconnected'
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot infer contextual base in reference to member 'streamDisconnected'
773 | }
774 |
[44/61] Compiling SyncField WristImuStream.swift
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:123:39: error: value of type 'TactilePeripheralRef' has no member 'identifier'
121 | let m = try await client.connectAndPrepare(ref, expectedSide: side)
122 | let claimed = await TactileRoleRegistry.shared
123 | .tryClaim(ref.identifier.uuidString, side: side)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:125:45: error: value of type 'TactilePeripheralRef' has no member 'identifier'
123 | .tryClaim(ref.identifier.uuidString, side: side)
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
126 | client.disconnect()
127 | continue
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:151:42: error: type 'TactileBLEClient' has no member 'Error'
149 | await healthBus?.publish(.streamConnected(streamId: streamId))
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
| `- error: type 'TactileBLEClient' has no member 'Error'
152 | excluded.insert(ref.identifier) // definitively the other side
153 | client.disconnect()
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:152:41: error: value of type 'TactilePeripheralRef' has no member 'identifier'
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
152 | excluded.insert(ref.identifier) // definitively the other side
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
153 | client.disconnect()
154 | } catch {
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:250:14: error: value of type 'iPhoneCameraStream' has no member 'healthBus'
248 |
249 | public func connect(context: StreamConnectContext) async throws {
250 | self.healthBus = context.healthBus
| `- error: value of type 'iPhoneCameraStream' has no member 'healthBus'
251 | #if canImport(AVFoundation)
252 | try configureSession()
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:15: error: cannot find 'healthBus' in scope
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot find 'healthBus' in scope
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:35: error: cannot infer contextual base in reference to member 'streamConnected'
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot infer contextual base in reference to member 'streamConnected'
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:756:40: error: cannot find 'frameCount' in scope
754 | StreamIngestReport(streamId: streamId,
755 | filePath: "\(streamId).mp4",
756 | frameCount: frameCount)
| `- error: cannot find 'frameCount' in scope
757 | }
758 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:15: error: cannot find 'healthBus' in scope
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot find 'healthBus' in scope
773 | }
774 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:35: error: cannot infer contextual base in reference to member 'streamDisconnected'
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot infer contextual base in reference to member 'streamDisconnected'
773 | }
774 |
[45/61] Compiling SyncField iPhoneCameraStream.swift
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:123:39: error: value of type 'TactilePeripheralRef' has no member 'identifier'
121 | let m = try await client.connectAndPrepare(ref, expectedSide: side)
122 | let claimed = await TactileRoleRegistry.shared
123 | .tryClaim(ref.identifier.uuidString, side: side)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:125:45: error: value of type 'TactilePeripheralRef' has no member 'identifier'
123 | .tryClaim(ref.identifier.uuidString, side: side)
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
126 | client.disconnect()
127 | continue
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:151:42: error: type 'TactileBLEClient' has no member 'Error'
149 | await healthBus?.publish(.streamConnected(streamId: streamId))
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
| `- error: type 'TactileBLEClient' has no member 'Error'
152 | excluded.insert(ref.identifier) // definitively the other side
153 | client.disconnect()
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:152:41: error: value of type 'TactilePeripheralRef' has no member 'identifier'
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
152 | excluded.insert(ref.identifier) // definitively the other side
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
153 | client.disconnect()
154 | } catch {
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:250:14: error: value of type 'iPhoneCameraStream' has no member 'healthBus'
248 |
249 | public func connect(context: StreamConnectContext) async throws {
250 | self.healthBus = context.healthBus
| `- error: value of type 'iPhoneCameraStream' has no member 'healthBus'
251 | #if canImport(AVFoundation)
252 | try configureSession()
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:15: error: cannot find 'healthBus' in scope
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot find 'healthBus' in scope
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:35: error: cannot infer contextual base in reference to member 'streamConnected'
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot infer contextual base in reference to member 'streamConnected'
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:756:40: error: cannot find 'frameCount' in scope
754 | StreamIngestReport(streamId: streamId,
755 | filePath: "\(streamId).mp4",
756 | frameCount: frameCount)
| `- error: cannot find 'frameCount' in scope
757 | }
758 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:15: error: cannot find 'healthBus' in scope
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot find 'healthBus' in scope
773 | }
774 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:35: error: cannot infer contextual base in reference to member 'streamDisconnected'
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot infer contextual base in reference to member 'streamDisconnected'
773 | }
774 |
[46/61] Compiling SyncField iPhoneMotionStream.swift
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:123:39: error: value of type 'TactilePeripheralRef' has no member 'identifier'
121 | let m = try await client.connectAndPrepare(ref, expectedSide: side)
122 | let claimed = await TactileRoleRegistry.shared
123 | .tryClaim(ref.identifier.uuidString, side: side)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:125:45: error: value of type 'TactilePeripheralRef' has no member 'identifier'
123 | .tryClaim(ref.identifier.uuidString, side: side)
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
126 | client.disconnect()
127 | continue
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:151:42: error: type 'TactileBLEClient' has no member 'Error'
149 | await healthBus?.publish(.streamConnected(streamId: streamId))
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
| `- error: type 'TactileBLEClient' has no member 'Error'
152 | excluded.insert(ref.identifier) // definitively the other side
153 | client.disconnect()
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:152:41: error: value of type 'TactilePeripheralRef' has no member 'identifier'
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
152 | excluded.insert(ref.identifier) // definitively the other side
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
153 | client.disconnect()
154 | } catch {
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:250:14: error: value of type 'iPhoneCameraStream' has no member 'healthBus'
248 |
249 | public func connect(context: StreamConnectContext) async throws {
250 | self.healthBus = context.healthBus
| `- error: value of type 'iPhoneCameraStream' has no member 'healthBus'
251 | #if canImport(AVFoundation)
252 | try configureSession()
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:15: error: cannot find 'healthBus' in scope
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot find 'healthBus' in scope
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:35: error: cannot infer contextual base in reference to member 'streamConnected'
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot infer contextual base in reference to member 'streamConnected'
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:756:40: error: cannot find 'frameCount' in scope
754 | StreamIngestReport(streamId: streamId,
755 | filePath: "\(streamId).mp4",
756 | frameCount: frameCount)
| `- error: cannot find 'frameCount' in scope
757 | }
758 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:15: error: cannot find 'healthBus' in scope
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot find 'healthBus' in scope
773 | }
774 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:35: error: cannot infer contextual base in reference to member 'streamDisconnected'
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot infer contextual base in reference to member 'streamDisconnected'
773 | }
774 |
[47/61] Compiling SyncField iPhoneRawIMUStreams.swift
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:123:39: error: value of type 'TactilePeripheralRef' has no member 'identifier'
121 | let m = try await client.connectAndPrepare(ref, expectedSide: side)
122 | let claimed = await TactileRoleRegistry.shared
123 | .tryClaim(ref.identifier.uuidString, side: side)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:125:45: error: value of type 'TactilePeripheralRef' has no member 'identifier'
123 | .tryClaim(ref.identifier.uuidString, side: side)
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
126 | client.disconnect()
127 | continue
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:151:42: error: type 'TactileBLEClient' has no member 'Error'
149 | await healthBus?.publish(.streamConnected(streamId: streamId))
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
| `- error: type 'TactileBLEClient' has no member 'Error'
152 | excluded.insert(ref.identifier) // definitively the other side
153 | client.disconnect()
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:152:41: error: value of type 'TactilePeripheralRef' has no member 'identifier'
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
152 | excluded.insert(ref.identifier) // definitively the other side
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
153 | client.disconnect()
154 | } catch {
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:250:14: error: value of type 'iPhoneCameraStream' has no member 'healthBus'
248 |
249 | public func connect(context: StreamConnectContext) async throws {
250 | self.healthBus = context.healthBus
| `- error: value of type 'iPhoneCameraStream' has no member 'healthBus'
251 | #if canImport(AVFoundation)
252 | try configureSession()
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:15: error: cannot find 'healthBus' in scope
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot find 'healthBus' in scope
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:35: error: cannot infer contextual base in reference to member 'streamConnected'
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot infer contextual base in reference to member 'streamConnected'
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:756:40: error: cannot find 'frameCount' in scope
754 | StreamIngestReport(streamId: streamId,
755 | filePath: "\(streamId).mp4",
756 | frameCount: frameCount)
| `- error: cannot find 'frameCount' in scope
757 | }
758 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:15: error: cannot find 'healthBus' in scope
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot find 'healthBus' in scope
773 | }
774 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:35: error: cannot infer contextual base in reference to member 'streamDisconnected'
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot infer contextual base in reference to member 'streamDisconnected'
773 | }
774 |
[48/61] Compiling SyncField SyncField.swift
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:123:39: error: value of type 'TactilePeripheralRef' has no member 'identifier'
121 | let m = try await client.connectAndPrepare(ref, expectedSide: side)
122 | let claimed = await TactileRoleRegistry.shared
123 | .tryClaim(ref.identifier.uuidString, side: side)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:125:45: error: value of type 'TactilePeripheralRef' has no member 'identifier'
123 | .tryClaim(ref.identifier.uuidString, side: side)
124 | guard claimed else {
125 | excluded.insert(ref.identifier)
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
126 | client.disconnect()
127 | continue
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:151:42: error: type 'TactileBLEClient' has no member 'Error'
149 | await healthBus?.publish(.streamConnected(streamId: streamId))
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
| `- error: type 'TactileBLEClient' has no member 'Error'
152 | excluded.insert(ref.identifier) // definitively the other side
153 | client.disconnect()
/host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift:152:41: error: value of type 'TactilePeripheralRef' has no member 'identifier'
150 | return // success; auto-reconnect handles future drops
151 | } catch TactileBLEClient.Error.wrongSide {
152 | excluded.insert(ref.identifier) // definitively the other side
| `- error: value of type 'TactilePeripheralRef' has no member 'identifier'
153 | client.disconnect()
154 | } catch {
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:250:14: error: value of type 'iPhoneCameraStream' has no member 'healthBus'
248 |
249 | public func connect(context: StreamConnectContext) async throws {
250 | self.healthBus = context.healthBus
| `- error: value of type 'iPhoneCameraStream' has no member 'healthBus'
251 | #if canImport(AVFoundation)
252 | try configureSession()
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:15: error: cannot find 'healthBus' in scope
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot find 'healthBus' in scope
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:255:35: error: cannot infer contextual base in reference to member 'streamConnected'
253 | captureSession.startRunning()
254 | #endif
255 | await healthBus?.publish(.streamConnected(streamId: streamId))
| `- error: cannot infer contextual base in reference to member 'streamConnected'
256 | }
257 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:756:40: error: cannot find 'frameCount' in scope
754 | StreamIngestReport(streamId: streamId,
755 | filePath: "\(streamId).mp4",
756 | frameCount: frameCount)
| `- error: cannot find 'frameCount' in scope
757 | }
758 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:15: error: cannot find 'healthBus' in scope
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot find 'healthBus' in scope
773 | }
774 |
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift:772:35: error: cannot infer contextual base in reference to member 'streamDisconnected'
770 | selectedVideoDevice = nil
771 | #endif
772 | await healthBus?.publish(.streamDisconnected(streamId: streamId, reason: "normal"))
| `- error: cannot infer contextual base in reference to member 'streamDisconnected'
773 | }
774 |
[49/61] Compiling SyncField HandQualityTypes.swift
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:13:18: error: cannot find 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
14 | mach_timebase_info(&tb)
15 | self.timebase = tb
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:14:9: error: cannot find 'mach_timebase_info' in scope
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
14 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
15 | self.timebase = tb
16 | }
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:20:32: error: cannot find 'mach_absolute_time' in scope
18 | /// Current monotonic clock in nanoseconds. Never goes backwards.
19 | public func nowMonotonicNs() -> UInt64 {
20 | machTicksToMonotonicNs(mach_absolute_time())
| `- error: cannot find 'mach_absolute_time' in scope
21 | }
22 |
[50/61] Compiling SyncField VisionHandConversion.swift
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:13:18: error: cannot find 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
14 | mach_timebase_info(&tb)
15 | self.timebase = tb
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:14:9: error: cannot find 'mach_timebase_info' in scope
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
14 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
15 | self.timebase = tb
16 | }
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:20:32: error: cannot find 'mach_absolute_time' in scope
18 | /// Current monotonic clock in nanoseconds. Never goes backwards.
19 | public func nowMonotonicNs() -> UInt64 {
20 | machTicksToMonotonicNs(mach_absolute_time())
| `- error: cannot find 'mach_absolute_time' in scope
21 | }
22 |
[51/61] Compiling SyncField SessionClock.swift
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:13:18: error: cannot find 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
14 | mach_timebase_info(&tb)
15 | self.timebase = tb
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:14:9: error: cannot find 'mach_timebase_info' in scope
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
14 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
15 | self.timebase = tb
16 | }
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:20:32: error: cannot find 'mach_absolute_time' in scope
18 | /// Current monotonic clock in nanoseconds. Never goes backwards.
19 | public func nowMonotonicNs() -> UInt64 {
20 | machTicksToMonotonicNs(mach_absolute_time())
| `- error: cannot find 'mach_absolute_time' in scope
21 | }
22 |
[52/61] Compiling SyncField SessionOrchestrator.swift
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:13:18: error: cannot find 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
14 | mach_timebase_info(&tb)
15 | self.timebase = tb
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:14:9: error: cannot find 'mach_timebase_info' in scope
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
14 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
15 | self.timebase = tb
16 | }
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:20:32: error: cannot find 'mach_absolute_time' in scope
18 | /// Current monotonic clock in nanoseconds. Never goes backwards.
19 | public func nowMonotonicNs() -> UInt64 {
20 | machTicksToMonotonicNs(mach_absolute_time())
| `- error: cannot find 'mach_absolute_time' in scope
21 | }
22 |
[53/61] Compiling SyncField SessionState.swift
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:13:18: error: cannot find 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
14 | mach_timebase_info(&tb)
15 | self.timebase = tb
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:14:9: error: cannot find 'mach_timebase_info' in scope
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
14 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
15 | self.timebase = tb
16 | }
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:20:32: error: cannot find 'mach_absolute_time' in scope
18 | /// Current monotonic clock in nanoseconds. Never goes backwards.
19 | public func nowMonotonicNs() -> UInt64 {
20 | machTicksToMonotonicNs(mach_absolute_time())
| `- error: cannot find 'mach_absolute_time' in scope
21 | }
22 |
[54/61] Compiling SyncField StreamCapabilities.swift
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:13:18: error: cannot find 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
14 | mach_timebase_info(&tb)
15 | self.timebase = tb
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:14:9: error: cannot find 'mach_timebase_info' in scope
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
14 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
15 | self.timebase = tb
16 | }
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:20:32: error: cannot find 'mach_absolute_time' in scope
18 | /// Current monotonic clock in nanoseconds. Never goes backwards.
19 | public func nowMonotonicNs() -> UInt64 {
20 | machTicksToMonotonicNs(mach_absolute_time())
| `- error: cannot find 'mach_absolute_time' in scope
21 | }
22 |
[55/61] Compiling SyncField CameraDeviceConfig.swift
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:10:27: error: cannot find type 'mach_timebase_info_data_t' in scope
8 | /// plus a wall-clock anchor captured once at session start.
9 | public final class SessionClock: @unchecked Sendable {
10 | private let timebase: mach_timebase_info_data_t
| `- error: cannot find type 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:13:18: error: cannot find 'mach_timebase_info_data_t' in scope
11 |
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
| `- error: cannot find 'mach_timebase_info_data_t' in scope
14 | mach_timebase_info(&tb)
15 | self.timebase = tb
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:14:9: error: cannot find 'mach_timebase_info' in scope
12 | public init() {
13 | var tb = mach_timebase_info_data_t()
14 | mach_timebase_info(&tb)
| `- error: cannot find 'mach_timebase_info' in scope
15 | self.timebase = tb
16 | }
/host/spi-builder-workspace/Sources/SyncField/SessionClock.swift:20:32: error: cannot find 'mach_absolute_time' in scope
18 | /// Current monotonic clock in nanoseconds. Never goes backwards.
19 | public func nowMonotonicNs() -> UInt64 {
20 | machTicksToMonotonicNs(mach_absolute_time())
| `- error: cannot find 'mach_absolute_time' in scope
21 | }
22 |
[56/61] Compiling SyncField SensorWriterPump.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | self.isoFormatter = ISO8601DateFormatter()
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | }
[57/61] Compiling SyncField SessionLogWriter.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | self.isoFormatter = ISO8601DateFormatter()
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | }
[58/61] Compiling SyncField StreamWriter.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | self.isoFormatter = ISO8601DateFormatter()
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | }
[59/61] Compiling SyncField StreamWriterPump.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | self.isoFormatter = ISO8601DateFormatter()
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | }
[60/61] Compiling SyncField WriterFactory.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | self.isoFormatter = ISO8601DateFormatter()
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | }
[61/61] Compiling SyncField resource_bundle_accessor.swift
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | self.isoFormatter = ISO8601DateFormatter()
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
9 |
10 | public init(url: URL) throws {
11 | FileManager.default.createFile(atPath: url.path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#no-usage]
12 | self.handle = try FileHandle(forWritingTo: url)
13 | }
BUILD FAILURE 6.2 android