The Swift Package Index logo.Swift Package Index

Build Information

Failed to build SyncField, reference v0.13.0 (40deed), with Swift 6.4 for Wasm on 26 Sep 2026 14:17:24 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-54344843-1":/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:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/OpenGraphLabs/syncfield-swift.git
Reference: v0.13.0
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
 * tag               v0.13.0    -> FETCH_HEAD
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 v0.13.0
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/OpenGraphLabs/syncfield-swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344843-1":/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:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1
wasm-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:4328fdb43c680d205c1d6761b1e3267aa38277eefdda9ddfb17b6a0f1a77857a
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-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...
[Pre-planning 1 / 240]
[Starting]
error: SwiftCompile normal wasm32 failed with a nonzero exit code. Command line:     cd /host

/host/spi-builder-workspace/Sources/SyncField/Audio/AudioSessionInterruptionHandler.swift:20:25: error: cannot find 'DispatchQueue' in scope
18 | /// can do `await` work without blocking the notification dispatch.
19 | public final class AudioSessionInterruptionHandler: @unchecked Sendable {
20 |     private let queue = DispatchQueue(label: "syncfield.audio.interruption",
   |                         `- error: cannot find 'DispatchQueue' in scope
21 |                                        qos: .userInitiated)
22 |     private var token: NSObjectProtocol?
/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/Streams/FrameProcessorGate.swift:17:24: error: cannot find type 'DispatchQueue' in scope
15 | /// required on their side.
16 | final class FrameProcessorGate: @unchecked Sendable {
17 |     private let queue: DispatchQueue
   |                        `- error: cannot find type 'DispatchQueue' in scope
18 |     private let lock = NSLock()
19 |     private var busy = false
/host/spi-builder-workspace/Sources/SyncField/Streams/FrameProcessorGate.swift:21:30: error: cannot find type 'DispatchQoS' in scope
19 |     private var busy = false
20 |
21 |     init(label: String, qos: DispatchQoS = .userInitiated) {
   |                              `- error: cannot find type 'DispatchQoS' in scope
22 |         self.queue = DispatchQueue(label: label, qos: qos)
23 |     }
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneMotionStream.swift:13:25: error: cannot find 'DispatchQueue' in scope
 11 |
 12 |     private let rateHz: Double
 13 |     private let queue = DispatchQueue(label: "syncfield.motion", qos: .userInitiated)
    |                         `- error: cannot find 'DispatchQueue' in scope
 14 |
 15 |     private let rotatingWriter = RotatingSensorWriter(label: "syncfield.device-motion.writer")
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneRawIMUStreams.swift:6:56: error: cannot find type 'OperationQueue' in scope
  4 | #endif
  5 |
  6 | private func makeRawIMUOperationQueue(name: String) -> OperationQueue {
    |                                                        `- error: cannot find type 'OperationQueue' in scope
  7 |     let queue = OperationQueue()
  8 |     queue.maxConcurrentOperationCount = 1
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneRawIMUStreams.swift:21:26: error: cannot find type 'OperationQueue' in scope
 19 |     private let rateHz: Double
 20 |     private let rotatingWriter = RotatingSensorWriter(label: "syncfield.raw-accel.writer")
 21 |     private var opQueue: OperationQueue?
    |                          `- error: cannot find type 'OperationQueue' in scope
 22 |     private var frameCount = 0
 23 |     private var healthBus: HealthBus?
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneRawIMUStreams.swift:121:26: error: cannot find type 'OperationQueue' in scope
119 |     private let rateHz: Double
120 |     private let rotatingWriter = RotatingSensorWriter(label: "syncfield.raw-gyro.writer")
121 |     private var opQueue: OperationQueue?
    |                          `- error: cannot find type 'OperationQueue' in scope
122 |     private var frameCount = 0
123 |     private var healthBus: HealthBus?
/host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneRawIMUStreams.swift:221:26: error: cannot find type 'OperationQueue' in scope
219 |     private let rateHz: Double
220 |     private let rotatingWriter = RotatingSensorWriter(label: "syncfield.raw-mag.writer")
221 |     private var opQueue: OperationQueue?
    |                          `- error: cannot find type 'OperationQueue' in scope
222 |     private var frameCount = 0
223 |     private var healthBus: HealthBus?
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift:9:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
 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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
10 |         self.handle = try FileHandle(forWritingTo: url)
11 |     }
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriterPump.swift:11:24: error: cannot find type 'DispatchQueue' in scope
 9 | /// a deterministic drain point.
10 | final class SensorWriterPump {
11 |     private let queue: DispatchQueue
   |                        `- error: cannot find type 'DispatchQueue' in scope
12 |     private let group = DispatchGroup()
13 |
/host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriterPump.swift:12:25: error: cannot find 'DispatchGroup' in scope
10 | final class SensorWriterPump {
11 |     private let queue: DispatchQueue
12 |     private let group = DispatchGroup()
   |                         `- error: cannot find 'DispatchGroup' in scope
13 |
14 |     init(label: String) {
/host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift:11:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
 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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
 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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
12 |         self.handle = try FileHandle(forWritingTo: url)
13 |     }
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriterPump.swift:7:24: error: cannot find type 'DispatchQueue' in scope
 5 | /// writer swap is durable before the old StreamWriter is closed.
 6 | final class StreamWriterPump {
 7 |     private let queue: DispatchQueue
   |                        `- error: cannot find type 'DispatchQueue' in scope
 8 |     private let group = DispatchGroup()
 9 |
/host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriterPump.swift:8:25: error: cannot find 'DispatchGroup' in scope
 6 | final class StreamWriterPump {
 7 |     private let queue: DispatchQueue
 8 |     private let group = DispatchGroup()
   |                         `- error: cannot find 'DispatchGroup' in scope
 9 |
10 |     init(label: String) {
[#NoUsage]: <https://docs.swift.org/compiler/documentation/diagnostics/no-usage>
Failed frontend command:
/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/DerivedSources/resource_bundle_accessor.swift /host/spi-builder-workspace/Sources/SyncField/Audio/AVAudioEngineChirpPlayer.swift /host/spi-builder-workspace/Sources/SyncField/Audio/AudioReattachableStream.swift /host/spi-builder-workspace/Sources/SyncField/Audio/AudioSessionInterruptionHandler.swift /host/spi-builder-workspace/Sources/SyncField/Audio/AudioSessionPolicy.swift /host/spi-builder-workspace/Sources/SyncField/Audio/ChirpPlayer.swift /host/spi-builder-workspace/Sources/SyncField/Audio/ChirpSynthesis.swift /host/spi-builder-workspace/Sources/SyncField/Audio/ChirpTypes.swift /host/spi-builder-workspace/Sources/SyncField/Audio/CountdownSpec.swift /host/spi-builder-workspace/Sources/SyncField/Audio/CountdownTickPlayer.swift /host/spi-builder-workspace/Sources/SyncField/Calibration/CalibrationScaling.swift /host/spi-builder-workspace/Sources/SyncField/Calibration/CameraCalibrationProber.swift /host/spi-builder-workspace/Sources/SyncField/Calibration/PhotoCalibrationProbeExecutor.swift /host/spi-builder-workspace/Sources/SyncField/Calibration/ProbedCameraCalibration.swift /host/spi-builder-workspace/Sources/SyncField/Calibration/StereoExtrinsicsMath.swift /host/spi-builder-workspace/Sources/SyncField/Calibration/StereoProbedCalibration.swift /host/spi-builder-workspace/Sources/SyncField/Errors.swift /host/spi-builder-workspace/Sources/SyncField/HealthBus.swift /host/spi-builder-workspace/Sources/SyncField/HealthEvent.swift /host/spi-builder-workspace/Sources/SyncField/Quality/HandQualityConfig.swift /host/spi-builder-workspace/Sources/SyncField/Quality/HandQualityMonitor.swift /host/spi-builder-workspace/Sources/SyncField/Quality/HandQualitySummary.swift /host/spi-builder-workspace/Sources/SyncField/Quality/HandQualityTypes.swift /host/spi-builder-workspace/Sources/SyncField/Quality/VisionHandConversion.swift /host/spi-builder-workspace/Sources/SyncField/SessionClock.swift /host/spi-builder-workspace/Sources/SyncField/SessionOrchestrator.swift /host/spi-builder-workspace/Sources/SyncField/SessionState.swift /host/spi-builder-workspace/Sources/SyncField/StreamCapabilities.swift /host/spi-builder-workspace/Sources/SyncField/Streams/CameraDeviceConfig.swift /host/spi-builder-workspace/Sources/SyncField/Streams/CameraTimestamps.swift /host/spi-builder-workspace/Sources/SyncField/Streams/FrameProcessorGate.swift /host/spi-builder-workspace/Sources/SyncField/Streams/MultiCamCameraStream.swift /host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileAcquireFailure.swift /host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileBLEClient.swift /host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactilePacketParser.swift /host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileRoleRegistry.swift /host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileStream.swift /host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/TactileTypes.swift /host/spi-builder-workspace/Sources/SyncField/Streams/Tactile/WristImuStream.swift /host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneCameraStream.swift /host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneMotionStream.swift /host/spi-builder-workspace/Sources/SyncField/Streams/iPhoneRawIMUStreams.swift /host/spi-builder-workspace/Sources/SyncField/SyncField.swift /host/spi-builder-workspace/Sources/SyncField/SyncFieldStream.swift /host/spi-builder-workspace/Sources/SyncField/SyncPoint.swift /host/spi-builder-workspace/Sources/SyncField/Writers/EventWriter.swift /host/spi-builder-workspace/Sources/SyncField/Writers/ManifestWriter.swift /host/spi-builder-workspace/Sources/SyncField/Writers/RotatingSensorWriter.swift /host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriter.swift /host/spi-builder-workspace/Sources/SyncField/Writers/SensorWriterPump.swift /host/spi-builder-workspace/Sources/SyncField/Writers/SessionLogWriter.swift /host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriter.swift /host/spi-builder-workspace/Sources/SyncField/Writers/StreamWriterPump.swift /host/spi-builder-workspace/Sources/SyncField/Writers/WriterFactory.swift -target wasm32-unknown-wasip1 -disable-objc-interop -sdk /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -sysroot /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -I /host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32 -module-cache-path /host/spi-builder-workspace/.build/out/ModuleCache.noindex -color-diagnostics -Xcc -fcolor-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_AVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -external-plugin-path /usr/lib/swift/host/plugins/testing\#/usr/bin/swift-plugin-server -validate-clang-modules-once -clang-build-session-file /host/spi-builder-workspace/.build/out/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /host -resource-dir /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static -use-static-resource-dir -enable-anonymous-context-mangled-names -file-compilation-dir /host -Xcc -resource-dir -Xcc /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/clang -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32/include -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/DerivedSources-normal/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/DerivedSources/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name SyncField -package-name spi_builder_workspace -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/Objects-normal/wasm32/SyncField_const_extract_protocols.json -in-process-plugin-server-path /usr/lib/swift/host/libSwiftInProcPluginServer.so -plugin-path /usr/lib/swift/host/plugins -plugin-path /usr/local/lib/swift/host/plugins -emit-module-doc-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/Objects-normal/wasm32/Modules/SyncField.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/Objects-normal/wasm32/Modules/SyncField.swiftsourceinfo -emit-objc-header-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/Objects-normal/wasm32/SyncField-Swift.h -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/Objects-normal/wasm32/SyncField-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/Objects-normal/wasm32/SyncField-primary-emit-module.d -parse-as-library -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/SyncField.build/Debug-webassembly-wasm32/SyncField-t.build/Objects-normal/wasm32/Modules/SyncField.swiftmodule
[51 / 75] SyncField
error: Build failed
BUILD FAILURE 6.4 wasm