The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build SwiftDisc, reference v0.12.0 (b7ff58), with Swift 6.1 for Wasm on 11 Dec 2025 03:13:55 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1

Build Log

304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 |     private func startHeartbeat(intervalMs: Int) {
73 |         hbTask?.cancel()
74 |         hbTask = Task.detached { [weak self] in
   |                                `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 |             guard let self else { return }
   |                       `- note: closure captures 'self' which is accessible to code in the current task
76 |             let intervalNs = UInt64(intervalMs) * 1_000_000
77 |             while !Task.isCancelled {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[60/63] Compiling SwiftDisc VoiceGateway.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 |     private func startHeartbeat(intervalMs: Int) {
73 |         hbTask?.cancel()
74 |         hbTask = Task.detached { [weak self] in
   |                                `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 |             guard let self else { return }
   |                       `- note: closure captures 'self' which is accessible to code in the current task
76 |             let intervalNs = UInt64(intervalMs) * 1_000_000
77 |             while !Task.isCancelled {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[61/63] Compiling SwiftDisc VoiceModels.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 |     private func startHeartbeat(intervalMs: Int) {
73 |         hbTask?.cancel()
74 |         hbTask = Task.detached { [weak self] in
   |                                `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 |             guard let self else { return }
   |                       `- note: closure captures 'self' which is accessible to code in the current task
76 |             let intervalNs = UInt64(intervalMs) * 1_000_000
77 |             while !Task.isCancelled {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[62/63] Compiling SwiftDisc VoiceReceiver.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 |     private func startHeartbeat(intervalMs: Int) {
73 |         hbTask?.cancel()
74 |         hbTask = Task.detached { [weak self] in
   |                                `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 |             guard let self else { return }
   |                       `- note: closure captures 'self' which is accessible to code in the current task
76 |             let intervalNs = UInt64(intervalMs) * 1_000_000
77 |             while !Task.isCancelled {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[63/63] Compiling SwiftDisc VoiceSender.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/VoiceGateway.swift:74:32: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
72 |     private func startHeartbeat(intervalMs: Int) {
73 |         hbTask?.cancel()
74 |         hbTask = Task.detached { [weak self] in
   |                                `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
75 |             guard let self else { return }
   |                       `- note: closure captures 'self' which is accessible to code in the current task
76 |             let intervalNs = UInt64(intervalMs) * 1_000_000
77 |             while !Task.isCancelled {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:4dfe22dedd7a52399668938cbd466a34545eff77bced906005dc4032a6549d90
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/55] Emitting module SwiftDisc
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
[3/62] Compiling SwiftDisc Template.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 |         // Per-route bucket control
26 |         if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
   |                                                                                                             `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 |             if remaining <= 0 {
28 |                 let now = Date()
[4/62] Compiling SwiftDisc Thread.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 |         // Per-route bucket control
26 |         if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
   |                                                                                                             `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 |             if remaining <= 0 {
28 |                 let now = Date()
[5/62] Compiling SwiftDisc User.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 |         // Per-route bucket control
26 |         if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
   |                                                                                                             `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 |             if remaining <= 0 {
28 |                 let now = Date()
[6/62] Compiling SwiftDisc Webhook.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 |         // Per-route bucket control
26 |         if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
   |                                                                                                             `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 |             if remaining <= 0 {
28 |                 let now = Date()
[7/62] Compiling SwiftDisc HTTPClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 |         // Per-route bucket control
26 |         if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
   |                                                                                                             `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 |             if remaining <= 0 {
28 |                 let now = Date()
[8/62] Compiling SwiftDisc RateLimiter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 |         // Per-route bucket control
26 |         if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
   |                                                                                                             `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 |             if remaining <= 0 {
28 |                 let now = Date()
[9/62] Compiling SwiftDisc AudioSource.swift
/host/spi-builder-workspace/Sources/SwiftDisc/REST/RateLimiter.swift:26:109: warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
24 |
25 |         // Per-route bucket control
26 |         if let state = buckets[routeKey], let resetAt = state.resetAt, let remaining = state.remaining, let limit = state.limit {
   |                                                                                                             `- warning: immutable value 'limit' was never used; consider replacing with '_' or removing it
27 |             if remaining <= 0 {
28 |                 let now = Date()
[10/62] Compiling SwiftDisc Cache.swift
[11/62] Compiling SwiftDisc DiscordConfiguration.swift
[12/62] Compiling SwiftDisc DiscordError.swift
[13/62] Compiling SwiftDisc DiscordUtils.swift
[14/62] Compiling SwiftDisc EventDispatcher.swift
[15/62] Compiling SwiftDisc JSONValue.swift
[16/62] Compiling SwiftDisc AdvancedMessagePayloads.swift
[17/62] Compiling SwiftDisc ApplicationRoleConnection.swift
[18/62] Compiling SwiftDisc DiscordClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[19/62] Compiling SwiftDisc GatewayClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[20/62] Compiling SwiftDisc GatewayModels.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[21/62] Compiling SwiftDisc Intents.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[22/62] Compiling SwiftDisc WebSocket.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[23/62] Compiling SwiftDisc ActivityBuilder.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[24/62] Compiling SwiftDisc AutocompleteRouter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[25/62] Compiling SwiftDisc CommandRouter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayModels.swift:207:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
205 | // MARK: - Request/Receive Guild Members
206 | public struct RequestGuildMembers: Codable, Hashable {
207 |     public let op: Int = 8
    |                |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'op' case to silence this warning
    |                `- note: make the property mutable instead
208 |     public let d: Payload
209 |     public struct Payload: Codable, Hashable {
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:19:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
19 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
20 |
21 |     init(url: URL) {
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:22:46: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
20 |
21 |     init(url: URL) {
22 |         let config = URLSessionConfiguration.default
   |                                              `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'
23 |         #if !os(Windows)
24 |         config.waitsForConnectivity = true
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:26:38: error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
24 |         config.waitsForConnectivity = true
25 |         #endif
26 |         config.requestCachePolicy = .reloadIgnoringLocalCacheData
   |                                      `- error: cannot infer contextual base in reference to member 'reloadIgnoringLocalCacheData'
27 |         config.timeoutIntervalForRequest = 30
28 |         config.timeoutIntervalForResource = 60
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:30:24: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         config.timeoutIntervalForResource = 60
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
   |                        `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |         self.task = session.webSocketTask(with: url)
32 |         self.task.resume()
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:31:29: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
29 |         config.httpMaximumConnectionsPerHost = 8
30 |         self.session = URLSession(configuration: config)
31 |         self.task = session.webSocketTask(with: url)
   |                             `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
32 |         self.task.resume()
33 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:38:34: error: cannot infer contextual base in reference to member 'string'
36 |         switch message {
37 |         case .string(let text):
38 |             try await task.send(.string(text))
   |                                  `- error: cannot infer contextual base in reference to member 'string'
39 |         case .data(let data):
40 |             try await task.send(.data(data))
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:40:34: error: cannot infer contextual base in reference to member 'data'
38 |             try await task.send(.string(text))
39 |         case .data(let data):
40 |             try await task.send(.data(data))
   |                                  `- error: cannot infer contextual base in reference to member 'data'
41 |         }
42 |     }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:28: error: cannot infer contextual base in reference to member 'normalClosure'
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                            `- error: cannot infer contextual base in reference to member 'normalClosure'
58 |     }
59 | }
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:57:51: error: 'nil' requires a contextual type
55 |
56 |     func close() async {
57 |         task.cancel(with: .normalClosure, reason: nil)
   |                                                   `- error: 'nil' requires a contextual type
58 |     }
59 | }
[26/62] Compiling SwiftDisc GuildBan.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 44 |
 45 |     public struct ActionRow: Codable, Hashable {
 46 |         public let type: Int = 1
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 47 |         public let components: [MessageComponent]
 48 |         public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 50 |
 51 |     public struct Button: Codable, Hashable {
 52 |         public let type: Int = 2
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 53 |         public let style: Int
 54 |         public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 73 |             public let `default`: Bool?
 74 |         }
 75 |         public let type: Int = 3
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 76 |         public let custom_id: String
 77 |         public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 92 |     public struct TextInput: Codable, Hashable {
 93 |         public enum Style: Int, Codable { case short = 1, paragraph = 2 }
 94 |         public let type: Int = 4
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 95 |         public let custom_id: String
 96 |         public let style: Style
[27/62] Compiling SwiftDisc GuildMember.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 44 |
 45 |     public struct ActionRow: Codable, Hashable {
 46 |         public let type: Int = 1
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 47 |         public let components: [MessageComponent]
 48 |         public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 50 |
 51 |     public struct Button: Codable, Hashable {
 52 |         public let type: Int = 2
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 53 |         public let style: Int
 54 |         public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 73 |             public let `default`: Bool?
 74 |         }
 75 |         public let type: Int = 3
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 76 |         public let custom_id: String
 77 |         public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 92 |     public struct TextInput: Codable, Hashable {
 93 |         public enum Style: Int, Codable { case short = 1, paragraph = 2 }
 94 |         public let type: Int = 4
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 95 |         public let custom_id: String
 96 |         public let style: Style
[28/62] Compiling SwiftDisc GuildWidgetSettings.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 44 |
 45 |     public struct ActionRow: Codable, Hashable {
 46 |         public let type: Int = 1
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 47 |         public let components: [MessageComponent]
 48 |         public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 50 |
 51 |     public struct Button: Codable, Hashable {
 52 |         public let type: Int = 2
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 53 |         public let style: Int
 54 |         public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 73 |             public let `default`: Bool?
 74 |         }
 75 |         public let type: Int = 3
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 76 |         public let custom_id: String
 77 |         public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 92 |     public struct TextInput: Codable, Hashable {
 93 |         public enum Style: Int, Codable { case short = 1, paragraph = 2 }
 94 |         public let type: Int = 4
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 95 |         public let custom_id: String
 96 |         public let style: Style
[29/62] Compiling SwiftDisc Interaction.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 44 |
 45 |     public struct ActionRow: Codable, Hashable {
 46 |         public let type: Int = 1
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 47 |         public let components: [MessageComponent]
 48 |         public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 50 |
 51 |     public struct Button: Codable, Hashable {
 52 |         public let type: Int = 2
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 53 |         public let style: Int
 54 |         public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 73 |             public let `default`: Bool?
 74 |         }
 75 |         public let type: Int = 3
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 76 |         public let custom_id: String
 77 |         public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 92 |     public struct TextInput: Codable, Hashable {
 93 |         public enum Style: Int, Codable { case short = 1, paragraph = 2 }
 94 |         public let type: Int = 4
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 95 |         public let custom_id: String
 96 |         public let style: Style
[30/62] Compiling SwiftDisc Invite.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 44 |
 45 |     public struct ActionRow: Codable, Hashable {
 46 |         public let type: Int = 1
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 47 |         public let components: [MessageComponent]
 48 |         public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 50 |
 51 |     public struct Button: Codable, Hashable {
 52 |         public let type: Int = 2
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 53 |         public let style: Int
 54 |         public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 73 |             public let `default`: Bool?
 74 |         }
 75 |         public let type: Int = 3
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 76 |         public let custom_id: String
 77 |         public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 92 |     public struct TextInput: Codable, Hashable {
 93 |         public enum Style: Int, Codable { case short = 1, paragraph = 2 }
 94 |         public let type: Int = 4
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 95 |         public let custom_id: String
 96 |         public let style: Style
[31/62] Compiling SwiftDisc Message.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 44 |
 45 |     public struct ActionRow: Codable, Hashable {
 46 |         public let type: Int = 1
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 47 |         public let components: [MessageComponent]
 48 |         public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 50 |
 51 |     public struct Button: Codable, Hashable {
 52 |         public let type: Int = 2
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 53 |         public let style: Int
 54 |         public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 73 |             public let `default`: Bool?
 74 |         }
 75 |         public let type: Int = 3
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 76 |         public let custom_id: String
 77 |         public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 92 |     public struct TextInput: Codable, Hashable {
 93 |         public enum Style: Int, Codable { case short = 1, paragraph = 2 }
 94 |         public let type: Int = 4
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 95 |         public let custom_id: String
 96 |         public let style: Style
[32/62] Compiling SwiftDisc MessageComponents.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:46:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 44 |
 45 |     public struct ActionRow: Codable, Hashable {
 46 |         public let type: Int = 1
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 47 |         public let components: [MessageComponent]
 48 |         public init(components: [MessageComponent]) { self.components = components }
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:52:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 50 |
 51 |     public struct Button: Codable, Hashable {
 52 |         public let type: Int = 2
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 53 |         public let style: Int
 54 |         public let label: String?
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:75:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 73 |             public let `default`: Bool?
 74 |         }
 75 |         public let type: Int = 3
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 76 |         public let custom_id: String
 77 |         public let options: [Option]
/host/spi-builder-workspace/Sources/SwiftDisc/Models/MessageComponents.swift:94:20: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
 92 |     public struct TextInput: Codable, Hashable {
 93 |         public enum Style: Int, Codable { case short = 1, paragraph = 2 }
 94 |         public let type: Int = 4
    |                    |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
    |                    |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
    |                    `- note: make the property mutable instead
 95 |         public let custom_id: String
 96 |         public let style: Style
[33/62] Compiling SwiftDisc ComponentsBuilder.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[34/62] Compiling SwiftDisc Extensions.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[35/62] Compiling SwiftDisc Permissions.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[36/62] Compiling SwiftDisc ShardManager.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[37/62] Compiling SwiftDisc ShardingGatewayManager.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[38/62] Compiling SwiftDisc SlashCommandBuilder.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[39/62] Compiling SwiftDisc SlashCommandRouter.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[40/62] Compiling SwiftDisc Utilities.swift
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:52:133: error: cannot find type 'PermissionBitset' in scope
 50 |
 51 |     // New method using cache for effective permissions
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
    |                                                                                                                                     `- error: cannot find type 'PermissionBitset' in scope
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:64:13: error: cannot find 'PermissionBitset' in scope
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
    |             `- error: cannot find 'PermissionBitset' in scope
 65 |         } ?? []
 66 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:63:32: error: value of type 'Guild' has no member 'roles'
 61 |
 62 |         // Convert string permissions to PermissionBitset (assuming guild roles have permissions)
 63 |         let guildRoles = guild.roles?.compactMap { role in
    |                                `- error: value of type 'Guild' has no member 'roles'
 64 |             PermissionBitset(rawValue: UInt64(role.permissions ?? "0") ?? 0)
 65 |         } ?? []
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:68:21: error: cannot find 'PermissionBitset' in scope
 66 |
 67 |         // Compute effective permissions similar to existing logic but with PermissionBitset
 68 |         var allow = PermissionBitset(rawValue: 0)
    |                     `- error: cannot find 'PermissionBitset' in scope
 69 |
 70 |         // 1) Base = @everyone role perms (find @everyone role)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:76:127: error: cannot find 'PermissionBitset' in scope
 74 |
 75 |         // 2) Aggregate member roles (OR operation)
 76 |         let rolePerms = memberRoleIds.compactMap { roleId in guildRoles.first { $0.id == roleId }?.permissionsBitset }.reduce(PermissionBitset(), { $0.union($1) })
    |                                                                                                                               `- error: cannot find 'PermissionBitset' in scope
 77 |         allow.formUnion(rolePerms)
 78 |
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:83:24: error: cannot find 'PermissionBitset' in scope
 81 |         // Apply @everyone overwrite
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
 85 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:84:23: error: cannot find 'PermissionBitset' in scope
 82 |         if let everyoneOW = overwrites.first(where: { $0.type == 0 && $0.id.rawValue == everyoneRoleId.rawValue }) {
 83 |             let deny = PermissionBitset(rawValue: UInt64(everyoneOW.deny ?? "0") ?? 0)
 84 |             let add = PermissionBitset(rawValue: UInt64(everyoneOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 85 |             allow.subtract(deny)
 86 |             allow.formUnion(add)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:38: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                      `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:90:69: error: cannot find 'PermissionBitset' in scope
 88 |         // Apply role overwrites
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
    |                                                                     `- error: cannot find 'PermissionBitset' in scope
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
 92 |         allow.subtract(roleDeny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:37: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                     `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:91:68: error: cannot find 'PermissionBitset' in scope
 89 |         let roleOW = overwrites.filter { ow in ow.type == 0 && memberRoleIds.contains(where: { $0.rawValue == ow.id.rawValue }) }
 90 |         let roleDeny = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.deny ?? "0") ?? 0)) })
 91 |         let roleAdd = roleOW.reduce(PermissionBitset(), { $0.union(PermissionBitset(rawValue: UInt64($1.allow ?? "0") ?? 0)) })
    |                                                                    `- error: cannot find 'PermissionBitset' in scope
 92 |         allow.subtract(roleDeny)
 93 |         allow.formUnion(roleAdd)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:96:24: error: cannot find 'PermissionBitset' in scope
 94 |         // Apply member overwrite
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
    |                        `- error: cannot find 'PermissionBitset' in scope
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
 98 |             allow.subtract(deny)
/host/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:97:23: error: cannot find 'PermissionBitset' in scope
 95 |         if let memberOW = overwrites.first(where: { $0.type == 1 && $0.id.rawValue == userId.rawValue }) {
 96 |             let deny = PermissionBitset(rawValue: UInt64(memberOW.deny ?? "0") ?? 0)
 97 |             let add = PermissionBitset(rawValue: UInt64(memberOW.allow ?? "0") ?? 0)
    |                       `- error: cannot find 'PermissionBitset' in scope
 98 |             allow.subtract(deny)
 99 |             allow.formUnion(add)
[41/62] Compiling SwiftDisc PartialGuild.swift
[42/62] Compiling SwiftDisc Role.swift
[43/62] Compiling SwiftDisc ScheduledEvent.swift
[44/62] Compiling SwiftDisc ScheduledEventUser.swift
[45/62] Compiling SwiftDisc Snowflake.swift
[46/62] Compiling SwiftDisc StageInstance.swift
[47/62] Compiling SwiftDisc Sticker.swift
[48/62] Compiling SwiftDisc Attachment.swift
[49/62] Compiling SwiftDisc AuditLog.swift
[50/62] Compiling SwiftDisc AutoModeration.swift
[51/62] Compiling SwiftDisc Channel.swift
[52/62] Compiling SwiftDisc Embed.swift
[53/62] Compiling SwiftDisc Emoji.swift
[54/62] Compiling SwiftDisc Files.swift
[55/62] Compiling SwiftDisc Guild.swift
[56/62] Compiling SwiftDisc PipeOpusSource.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[57/62] Compiling SwiftDisc Secretbox.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[58/62] Compiling SwiftDisc VoiceClient.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[59/62] Compiling SwiftDisc VoiceGateway.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[60/62] Compiling SwiftDisc VoiceModels.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[61/62] Compiling SwiftDisc VoiceReceiver.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
[62/62] Compiling SwiftDisc VoiceSender.swift
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:236:9: warning: variable 'r0' was never mutated; consider changing to 'let' constant
234 |     let s = Array(key[16..<32])
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
    |         `- warning: variable 'r0' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:237:9: warning: variable 'r1' was never mutated; consider changing to 'let' constant
235 |
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
    |         `- warning: variable 'r1' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:238:9: warning: variable 'r2' was never mutated; consider changing to 'let' constant
236 |     var r0 = UInt32(loadLE(r[0..<4])) & 0x3ffffff
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
    |         `- warning: variable 'r2' was never mutated; consider changing to 'let' constant
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:239:9: warning: variable 'r3' was never mutated; consider changing to 'let' constant
237 |     var r1 = (UInt32(loadLE(r[3..<7])) >> 2) & 0x3ffff03
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
    |         `- warning: variable 'r3' was never mutated; consider changing to 'let' constant
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
241 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:240:9: warning: variable 'r4' was never mutated; consider changing to 'let' constant
238 |     var r2 = (UInt32(loadLE(r[6..<10])) >> 4) & 0x3ffc0ff
239 |     var r3 = (UInt32(loadLE(r[9..<13])) >> 6) & 0x3f03fff
240 |     var r4 = (UInt32(loadLE(r[12..<16])) >> 8) & 0x00fffff
    |         `- warning: variable 'r4' was never mutated; consider changing to 'let' constant
241 |
242 |     var h0: UInt32 = 0, h1: UInt32 = 0, h2: UInt32 = 0, h3: UInt32 = 0, h4: UInt32 = 0
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:303:9: warning: variable 'f0' was never mutated; consider changing to 'let' constant
301 |
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
    |         `- warning: variable 'f0' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:304:9: warning: variable 'f1' was never mutated; consider changing to 'let' constant
302 |     // Serialize h
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
    |         `- warning: variable 'f1' was never mutated; consider changing to 'let' constant
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:305:9: warning: variable 'f2' was never mutated; consider changing to 'let' constant
303 |     var f0 = (h0 | (h1 << 26)) & 0xffffffff
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
    |         `- warning: variable 'f2' was never mutated; consider changing to 'let' constant
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
307 |
/host/spi-builder-workspace/Sources/SwiftDisc/Voice/Secretbox.swift:306:9: warning: variable 'f3' was never mutated; consider changing to 'let' constant
304 |     var f1 = ((h1 >> 6) | (h2 << 20)) & 0xffffffff
305 |     var f2 = ((h2 >> 12) | (h3 << 14)) & 0xffffffff
306 |     var f3 = ((h3 >> 18) | (h4 << 8)) & 0xffffffff
    |         `- warning: variable 'f3' was never mutated; consider changing to 'let' constant
307 |
308 |     // Add s
/host/spi-builder-workspace/Sources/SwiftDisc/Gateway/WebSocket.swift:18:23: error: cannot find type 'URLSessionWebSocketTask' in scope
16 |
17 | final class URLSessionWebSocketAdapter: WebSocketClient {
18 |     private let task: URLSessionWebSocketTask
   |                       `- error: cannot find type 'URLSessionWebSocketTask' in scope
19 |     private let session: URLSession
20 |
BUILD FAILURE 6.1 wasm