Build Information
Failed to build SynheartBehavior, reference v0.5.0 (fb451e), with Swift 6.3 for Wasm on 4 Oct 2026 15:58:12 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344844-2":/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.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/synheart-ai/synheart-behavior-swift.git
Reference: v0.5.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/synheart-ai/synheart-behavior-swift
* tag v0.5.0 -> FETCH_HEAD
HEAD is now at fb451e4 Merge pull request #13 from synheart-ai/feat/call-notification-motion-collectors
Cloned https://github.com/synheart-ai/synheart-behavior-swift.git
Revision (git rev-parse @):
fb451e44c0058bb84717f98c1c0cc90a40cad03e
SUCCESS checkout https://github.com/synheart-ai/synheart-behavior-swift.git at v0.5.0
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.3
Building package at path: $PWD
https://github.com/synheart-ai/synheart-behavior-swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344844-2":/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.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1
wasm-6.3-latest: Pulling from saguaro1/spi-images
Digest: sha256:253aad7f5b11d25cf9eaef34120b94cd8a325782929c57fb304a7711494a3f9a
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/17] Compiling SynheartBehavior InputSignalCollector.swift
[4/17] Compiling SynheartBehavior InterruptionTrackers.swift
[5/17] Compiling SynheartBehavior ScrollSignalCollector.swift
[6/17] Compiling SynheartBehavior SessionManager.swift
[7/17] Compiling SynheartBehavior MotionSignalCollector.swift
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:31: error: cannot find 'DispatchQueue' in scope
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot find 'DispatchQueue' in scope
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:96: error: cannot infer contextual base in reference to member 'concurrent'
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot infer contextual base in reference to member 'concurrent'
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:67:35: error: cannot infer contextual base in reference to member 'barrier'
65 | func startSession(startMs: Double) {
66 | sessionStartMs = startMs
67 | sampleQueue.async(flags: .barrier) {
| `- error: cannot infer contextual base in reference to member 'barrier'
68 | self.samples.removeAll()
69 | self.lastBatchEndMs = startMs
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:86:35: error: cannot infer contextual base in reference to member 'barrier'
84 | stopBatchTimer()
85 | batchHandler = nil
86 | sampleQueue.async(flags: .barrier) { self.samples.removeAll() }
| `- error: cannot infer contextual base in reference to member 'barrier'
87 | }
88 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:91:35: error: cannot infer contextual base in reference to member 'barrier'
89 | /// Feed one sample already in m/s². Used by the platform source and by tests.
90 | func ingest(tsMs: Double, x: Double, y: Double, z: Double) {
91 | sampleQueue.async(flags: .barrier) {
| `- error: cannot infer contextual base in reference to member 'barrier'
92 | self.samples.append((tsMs, x, y, z))
93 | }
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:145:9: error: cannot find 'DispatchQueue' in scope
143 | private func startBatchTimer() {
144 | let interval = Self.batchIntervalMs / 1_000
145 | DispatchQueue.main.async { [weak self] in
| `- error: cannot find 'DispatchQueue' in scope
146 | guard let self else { return }
147 | self.batchTimer?.invalidate()
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:155:9: error: cannot find 'DispatchQueue' in scope
153 |
154 | private func stopBatchTimer() {
155 | DispatchQueue.main.async { [weak self] in
| `- error: cannot find 'DispatchQueue' in scope
156 | self?.batchTimer?.invalidate()
157 | self?.batchTimer = nil
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:165:59: error: cannot infer contextual base in reference to member 'barrier'
163 | func flushBatch(nowMs: Double = Date().timeIntervalSince1970 * 1_000) {
164 | guard let handler = batchHandler, config.emitRawMotionSamples else { return }
165 | let batch: [RawSample] = sampleQueue.sync(flags: .barrier) {
| `- error: cannot infer contextual base in reference to member 'barrier'
166 | let since = lastBatchEndMs
167 | let recent = samples.filter { $0.ts > since && $0.ts <= nowMs }
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:174:9: error: cannot find 'DispatchQueue' in scope
172 | }
173 | if batch.isEmpty { return }
174 | DispatchQueue.main.async { handler(batch) }
| `- error: cannot find 'DispatchQueue' in scope
175 | }
176 |
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:29:42: error: cannot find type 'DispatchWorkItem' in scope
27 | private weak var sessionManager: SessionManager?
28 | private var tracker = NotificationOutcomeTracker()
29 | private var pendingIgnored: [String: DispatchWorkItem] = [:]
| `- error: cannot find type 'DispatchWorkItem' in scope
30 | private var enabled: Bool
31 | private let installDelegate: Bool
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:89:20: error: cannot find 'DispatchWorkItem' in scope
87 | guard tracker.received(id: id, atMs: nowMs) else { return }
88 | emit(action: "received")
89 | let task = DispatchWorkItem { [weak self] in
| `- error: cannot find 'DispatchWorkItem' in scope
90 | guard let self else { return }
91 | self.pendingIgnored[id] = nil
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:96:9: error: cannot find 'DispatchQueue' in scope
94 | pendingIgnored[id]?.cancel()
95 | pendingIgnored[id] = task
96 | DispatchQueue.main.asyncAfter(deadline: .now() + ignoredThresholdMs / 1_000, execute: task)
| `- error: cannot find 'DispatchQueue' in scope
97 | }
98 |
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:96:50: error: cannot call value of non-function type 'Date'
94 | pendingIgnored[id]?.cancel()
95 | pendingIgnored[id] = task
96 | DispatchQueue.main.asyncAfter(deadline: .now() + ignoredThresholdMs / 1_000, execute: task)
| `- error: cannot call value of non-function type 'Date'
97 | }
98 |
[8/17] Compiling SynheartBehavior NotificationCollector.swift
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:31: error: cannot find 'DispatchQueue' in scope
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot find 'DispatchQueue' in scope
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:96: error: cannot infer contextual base in reference to member 'concurrent'
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot infer contextual base in reference to member 'concurrent'
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:67:35: error: cannot infer contextual base in reference to member 'barrier'
65 | func startSession(startMs: Double) {
66 | sessionStartMs = startMs
67 | sampleQueue.async(flags: .barrier) {
| `- error: cannot infer contextual base in reference to member 'barrier'
68 | self.samples.removeAll()
69 | self.lastBatchEndMs = startMs
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:86:35: error: cannot infer contextual base in reference to member 'barrier'
84 | stopBatchTimer()
85 | batchHandler = nil
86 | sampleQueue.async(flags: .barrier) { self.samples.removeAll() }
| `- error: cannot infer contextual base in reference to member 'barrier'
87 | }
88 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:91:35: error: cannot infer contextual base in reference to member 'barrier'
89 | /// Feed one sample already in m/s². Used by the platform source and by tests.
90 | func ingest(tsMs: Double, x: Double, y: Double, z: Double) {
91 | sampleQueue.async(flags: .barrier) {
| `- error: cannot infer contextual base in reference to member 'barrier'
92 | self.samples.append((tsMs, x, y, z))
93 | }
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:145:9: error: cannot find 'DispatchQueue' in scope
143 | private func startBatchTimer() {
144 | let interval = Self.batchIntervalMs / 1_000
145 | DispatchQueue.main.async { [weak self] in
| `- error: cannot find 'DispatchQueue' in scope
146 | guard let self else { return }
147 | self.batchTimer?.invalidate()
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:155:9: error: cannot find 'DispatchQueue' in scope
153 |
154 | private func stopBatchTimer() {
155 | DispatchQueue.main.async { [weak self] in
| `- error: cannot find 'DispatchQueue' in scope
156 | self?.batchTimer?.invalidate()
157 | self?.batchTimer = nil
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:165:59: error: cannot infer contextual base in reference to member 'barrier'
163 | func flushBatch(nowMs: Double = Date().timeIntervalSince1970 * 1_000) {
164 | guard let handler = batchHandler, config.emitRawMotionSamples else { return }
165 | let batch: [RawSample] = sampleQueue.sync(flags: .barrier) {
| `- error: cannot infer contextual base in reference to member 'barrier'
166 | let since = lastBatchEndMs
167 | let recent = samples.filter { $0.ts > since && $0.ts <= nowMs }
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:174:9: error: cannot find 'DispatchQueue' in scope
172 | }
173 | if batch.isEmpty { return }
174 | DispatchQueue.main.async { handler(batch) }
| `- error: cannot find 'DispatchQueue' in scope
175 | }
176 |
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:29:42: error: cannot find type 'DispatchWorkItem' in scope
27 | private weak var sessionManager: SessionManager?
28 | private var tracker = NotificationOutcomeTracker()
29 | private var pendingIgnored: [String: DispatchWorkItem] = [:]
| `- error: cannot find type 'DispatchWorkItem' in scope
30 | private var enabled: Bool
31 | private let installDelegate: Bool
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:89:20: error: cannot find 'DispatchWorkItem' in scope
87 | guard tracker.received(id: id, atMs: nowMs) else { return }
88 | emit(action: "received")
89 | let task = DispatchWorkItem { [weak self] in
| `- error: cannot find 'DispatchWorkItem' in scope
90 | guard let self else { return }
91 | self.pendingIgnored[id] = nil
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:96:9: error: cannot find 'DispatchQueue' in scope
94 | pendingIgnored[id]?.cancel()
95 | pendingIgnored[id] = task
96 | DispatchQueue.main.asyncAfter(deadline: .now() + ignoredThresholdMs / 1_000, execute: task)
| `- error: cannot find 'DispatchQueue' in scope
97 | }
98 |
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:96:50: error: cannot call value of non-function type 'Date'
94 | pendingIgnored[id]?.cancel()
95 | pendingIgnored[id] = task
96 | DispatchQueue.main.asyncAfter(deadline: .now() + ignoredThresholdMs / 1_000, execute: task)
| `- error: cannot call value of non-function type 'Date'
97 | }
98 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[9/18] Compiling SynheartBehavior AttentionSignalCollector.swift
[10/18] Compiling SynheartBehavior BehaviorConfig.swift
[11/18] Emitting module SynheartBehavior
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:31: error: cannot find 'DispatchQueue' in scope
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot find 'DispatchQueue' in scope
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:96: error: cannot infer contextual base in reference to member 'concurrent'
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot infer contextual base in reference to member 'concurrent'
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:29:42: error: cannot find type 'DispatchWorkItem' in scope
27 | private weak var sessionManager: SessionManager?
28 | private var tracker = NotificationOutcomeTracker()
29 | private var pendingIgnored: [String: DispatchWorkItem] = [:]
| `- error: cannot find type 'DispatchWorkItem' in scope
30 | private var enabled: Bool
31 | private let installDelegate: Bool
[12/18] Compiling SynheartBehavior BehaviorStats.swift
[13/18] Compiling SynheartBehavior CallCollector.swift
[14/18] Compiling SynheartBehavior EventBatcher.swift
[15/18] Compiling SynheartBehavior GestureSignalCollector.swift
[16/18] Compiling SynheartBehavior BehaviorEvent.swift
[17/18] Compiling SynheartBehavior BehaviorSession.swift
[18/18] Compiling SynheartBehavior SynheartBehavior.swift
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:31: error: cannot find 'DispatchQueue' in scope
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot find 'DispatchQueue' in scope
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/MotionSignalCollector.swift:29:96: error: cannot infer contextual base in reference to member 'concurrent'
27 | private var isCollecting = false
28 |
29 | private let sampleQueue = DispatchQueue(label: "ai.synheart.behavior.motion", attributes: .concurrent)
| `- error: cannot infer contextual base in reference to member 'concurrent'
30 | private var samples: [(ts: Double, x: Double, y: Double, z: Double)] = []
31 |
/host/spi-builder-workspace/Sources/SynheartBehavior/NotificationCollector.swift:29:42: error: cannot find type 'DispatchWorkItem' in scope
27 | private weak var sessionManager: SessionManager?
28 | private var tracker = NotificationOutcomeTracker()
29 | private var pendingIgnored: [String: DispatchWorkItem] = [:]
| `- error: cannot find type 'DispatchWorkItem' in scope
30 | private var enabled: Bool
31 | private let installDelegate: Bool
BUILD FAILURE 6.3 wasm