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 macOS (SPM) on 11 Dec 2025 03:14:43 UTC.

Build Command

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

Build Log

   |                       |- warning: static property 'guildScheduledEvents' is not concurrency-safe because non-'Sendable' type 'GatewayIntents' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'guildScheduledEvents' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
24 |     public static let autoModerationConfiguration = GatewayIntents(rawValue: 1 << 20)
25 |     public static let autoModerationExecution = GatewayIntents(rawValue: 1 << 21)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/Intents.swift:24:23: warning: static property 'autoModerationConfiguration' is not concurrency-safe because non-'Sendable' type 'GatewayIntents' may have shared mutable state; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | public struct GatewayIntents: OptionSet, Codable, Hashable {
   |               `- note: consider making struct 'GatewayIntents' conform to the 'Sendable' protocol
 4 |     public let rawValue: UInt64
 5 |     public init(rawValue: UInt64) { self.rawValue = rawValue }
   :
22 |     public static let messageContent = GatewayIntents(rawValue: 1 << 15)
23 |     public static let guildScheduledEvents = GatewayIntents(rawValue: 1 << 16)
24 |     public static let autoModerationConfiguration = GatewayIntents(rawValue: 1 << 20)
   |                       |- warning: static property 'autoModerationConfiguration' is not concurrency-safe because non-'Sendable' type 'GatewayIntents' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'autoModerationConfiguration' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 |     public static let autoModerationExecution = GatewayIntents(rawValue: 1 << 21)
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/Intents.swift:25:23: warning: static property 'autoModerationExecution' is not concurrency-safe because non-'Sendable' type 'GatewayIntents' may have shared mutable state; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | public struct GatewayIntents: OptionSet, Codable, Hashable {
   |               `- note: consider making struct 'GatewayIntents' conform to the 'Sendable' protocol
 4 |     public let rawValue: UInt64
 5 |     public init(rawValue: UInt64) { self.rawValue = rawValue }
   :
23 |     public static let guildScheduledEvents = GatewayIntents(rawValue: 1 << 16)
24 |     public static let autoModerationConfiguration = GatewayIntents(rawValue: 1 << 20)
25 |     public static let autoModerationExecution = GatewayIntents(rawValue: 1 << 21)
   |                       |- warning: static property 'autoModerationExecution' is not concurrency-safe because non-'Sendable' type 'GatewayIntents' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'autoModerationExecution' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 | }
27 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:50:24: warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
  48 |         self.token = token
  49 |         self.http = HTTPClient(token: token, configuration: configuration)
  50 |         self.gateway = GatewayClient(token: token, configuration: configuration)
     |                        |- warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
     |                        `- note: sending task-isolated 'configuration' to actor-isolated callee risks causing data races between actor-isolated and task-isolated uses
  51 |         self.configuration = configuration
  52 |         if configuration.enableVoiceExperimental {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:57:36: warning: sending 'guildId' risks causing data races; this is an error in the Swift 6 language mode
  55 |                 configuration: configuration,
  56 |                 sendVoiceStateUpdate: { [weak gateway] (guildId, channelId, selfMute, selfDeaf) async in
  57 |                     await gateway?.updateVoiceState(guildId: guildId, channelId: channelId, selfMute: selfMute, selfDeaf: selfDeaf)
     |                                    |- warning: sending 'guildId' risks causing data races; this is an error in the Swift 6 language mode
     |                                    `- note: sending task-isolated 'guildId' to actor-isolated instance method 'updateVoiceState(guildId:channelId:selfMute:selfDeaf:)' risks causing data races between actor-isolated and task-isolated uses
  58 |                 }
  59 |             )
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:57:36: warning: sending 'channelId' risks causing data races; this is an error in the Swift 6 language mode
  55 |                 configuration: configuration,
  56 |                 sendVoiceStateUpdate: { [weak gateway] (guildId, channelId, selfMute, selfDeaf) async in
  57 |                     await gateway?.updateVoiceState(guildId: guildId, channelId: channelId, selfMute: selfMute, selfDeaf: selfDeaf)
     |                                    |- warning: sending 'channelId' risks causing data races; this is an error in the Swift 6 language mode
     |                                    `- note: sending task-isolated 'channelId' to actor-isolated instance method 'updateVoiceState(guildId:channelId:selfMute:selfDeaf:)' risks causing data races between actor-isolated and task-isolated uses
  58 |                 }
  59 |             )
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:67:22: 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
  65 |             vc.setOnFrame { [weak self] frame in
  66 |                 guard let self, let cb = self.onVoiceFrame else { return }
  67 |                 Task {
     |                      `- 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
  68 |                     await cb(frame)
     |                           |  `- note: closure captures non-Sendable 'frame'
     |                           `- note: closure captures non-Sendable 'cb'
  69 |                 }
  70 |             }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:400:27: warning: sending 'intents' risks causing data races; this is an error in the Swift 6 language mode
 398 |
 399 |     public func loginAndConnect(intents: GatewayIntents) async throws {
 400 |         try await gateway.connect(intents: intents, shard: nil, eventSink: { [weak self] event in
     |                           |- warning: sending 'intents' risks causing data races; this is an error in the Swift 6 language mode
     |                           `- note: sending task-isolated 'intents' to actor-isolated instance method 'connect(intents:shard:eventSink:)' risks causing data races between actor-isolated and task-isolated uses
 401 |             guard let self = self else { return }
 402 |             Task { await self.dispatcher.process(event: event, client: self) }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:400:27: warning: sending value of non-Sendable type '(DiscordEvent) -> Void' risks causing data races; this is an error in the Swift 6 language mode
 398 |
 399 |     public func loginAndConnect(intents: GatewayIntents) async throws {
 400 |         try await gateway.connect(intents: intents, shard: nil, eventSink: { [weak self] event in
     |                           |- warning: sending value of non-Sendable type '(DiscordEvent) -> Void' risks causing data races; this is an error in the Swift 6 language mode
     |                           `- note: sending task-isolated value of non-Sendable type '(DiscordEvent) -> Void' to actor-isolated instance method 'connect(intents:shard:eventSink:)' risks causing races in between task-isolated and actor-isolated uses
 401 |             guard let self = self else { return }
 402 |             Task { await self.dispatcher.process(event: event, client: self) }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:402:18: 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
 400 |         try await gateway.connect(intents: intents, shard: nil, eventSink: { [weak self] event in
 401 |             guard let self = self else { return }
 402 |             Task { await self.dispatcher.process(event: event, client: self) }
     |                  |       |                              `- note: closure captures non-Sendable 'event'
     |                  |       `- note: closure captures non-Sendable 'self'
     |                  `- 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
 403 |         })
 404 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:402:42: warning: sending 'event' risks causing data races; this is an error in the Swift 6 language mode
 400 |         try await gateway.connect(intents: intents, shard: nil, eventSink: { [weak self] event in
 401 |             guard let self = self else { return }
 402 |             Task { await self.dispatcher.process(event: event, client: self) }
     |                                          |- warning: sending 'event' risks causing data races; this is an error in the Swift 6 language mode
     |                                          `- note: sending task-isolated 'event' to actor-isolated instance method 'process(event:client:)' risks causing data races between actor-isolated and task-isolated uses
 403 |         })
 404 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:402:42: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 400 |         try await gateway.connect(intents: intents, shard: nil, eventSink: { [weak self] event in
 401 |             guard let self = self else { return }
 402 |             Task { await self.dispatcher.process(event: event, client: self) }
     |                                          |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
     |                                          `- note: sending task-isolated 'self' to actor-isolated instance method 'process(event:client:)' risks causing data races between actor-isolated and task-isolated uses
 403 |         })
 404 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:408:27: warning: sending 'intents' risks causing data races; this is an error in the Swift 6 language mode
 406 |     // Sharded connect helper
 407 |     public func loginAndConnectSharded(index: Int, total: Int, intents: GatewayIntents) async throws {
 408 |         try await gateway.connect(intents: intents, shard: (index, total), eventSink: { [weak self] event in
     |                           |- warning: sending 'intents' risks causing data races; this is an error in the Swift 6 language mode
     |                           `- note: sending task-isolated 'intents' to actor-isolated instance method 'connect(intents:shard:eventSink:)' risks causing data races between actor-isolated and task-isolated uses
 409 |             guard let self = self else { return }
 410 |             Task { await self.dispatcher.process(event: event, client: self) }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:408:27: warning: sending value of non-Sendable type '(DiscordEvent) -> Void' risks causing data races; this is an error in the Swift 6 language mode
 406 |     // Sharded connect helper
 407 |     public func loginAndConnectSharded(index: Int, total: Int, intents: GatewayIntents) async throws {
 408 |         try await gateway.connect(intents: intents, shard: (index, total), eventSink: { [weak self] event in
     |                           |- warning: sending value of non-Sendable type '(DiscordEvent) -> Void' risks causing data races; this is an error in the Swift 6 language mode
     |                           `- note: sending task-isolated value of non-Sendable type '(DiscordEvent) -> Void' to actor-isolated instance method 'connect(intents:shard:eventSink:)' risks causing races in between task-isolated and actor-isolated uses
 409 |             guard let self = self else { return }
 410 |             Task { await self.dispatcher.process(event: event, client: self) }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:410:18: 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
 408 |         try await gateway.connect(intents: intents, shard: (index, total), eventSink: { [weak self] event in
 409 |             guard let self = self else { return }
 410 |             Task { await self.dispatcher.process(event: event, client: self) }
     |                  |       |                              `- note: closure captures non-Sendable 'event'
     |                  |       `- note: closure captures non-Sendable 'self'
     |                  `- 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
 411 |         })
 412 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:410:42: warning: sending 'event' risks causing data races; this is an error in the Swift 6 language mode
 408 |         try await gateway.connect(intents: intents, shard: (index, total), eventSink: { [weak self] event in
 409 |             guard let self = self else { return }
 410 |             Task { await self.dispatcher.process(event: event, client: self) }
     |                                          |- warning: sending 'event' risks causing data races; this is an error in the Swift 6 language mode
     |                                          `- note: sending task-isolated 'event' to actor-isolated instance method 'process(event:client:)' risks causing data races between actor-isolated and task-isolated uses
 411 |         })
 412 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:410:42: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 408 |         try await gateway.connect(intents: intents, shard: (index, total), eventSink: { [weak self] event in
 409 |             guard let self = self else { return }
 410 |             Task { await self.dispatcher.process(event: event, client: self) }
     |                                          |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
     |                                          `- note: sending task-isolated 'self' to actor-isolated instance method 'process(event:client:)' risks causing data races between actor-isolated and task-isolated uses
 411 |         })
 412 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:437:23: warning: sending 'activities' risks causing data races; this is an error in the Swift 6 language mode
 435 |     // Phase 3: Presence helpers
 436 |     public func setPresence(status: String, activities: [PresenceUpdatePayload.Activity] = [], afk: Bool = false, since: Int? = nil) async {
 437 |         await gateway.setPresence(status: status, activities: activities, afk: afk, since: since)
     |                       |- warning: sending 'activities' risks causing data races; this is an error in the Swift 6 language mode
     |                       `- note: sending task-isolated 'activities' to actor-isolated instance method 'setPresence(status:activities:afk:since:)' risks causing data races between actor-isolated and task-isolated uses
 438 |     }
 439 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/DiscordClient.swift:491:28: warning: sending 'event' risks causing data races; this is an error in the Swift 6 language mode
 489 |     // MARK: - Internal event emission (called by EventDispatcher)
 490 |     func _internalEmitEvent(_ event: DiscordEvent) {
 491 |         eventContinuation?.yield(event)
     |                            |- warning: sending 'event' risks causing data races; this is an error in the Swift 6 language mode
     |                            `- note: task-isolated 'event' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
 492 |     }
 493 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:37:27: warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
 35 |         let enc = JSONEncoder()
 36 |         let data = try enc.encode(payload)
 37 |         try await socket?.send(.string(String(decoding: data, as: UTF8.self)))
    |                           |- warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
    |                           `- note: sending 'self'-isolated value of non-Sendable type 'any WebSocketClient' to nonisolated instance method 'send' risks causing races in between 'self'-isolated and nonisolated uses
 38 |     }
 39 |     private var status: Status = .disconnected
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:60:32: warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
 58 |         let payload = GatewayPayload(op: .voiceStateUpdate, d: VoiceStateUpdateData(guild_id: guildId, channel_id: channelId, self_mute: selfMute, self_deaf: selfDeaf), s: nil, t: nil)
 59 |         if let data = try? JSONEncoder().encode(payload) {
 60 |             try? await socket?.send(.string(String(decoding: data, as: UTF8.self)))
    |                                |- warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
    |                                `- note: sending 'self'-isolated value of non-Sendable type 'any WebSocketClient' to nonisolated instance method 'send' risks causing races in between 'self'-isolated and nonisolated uses
 61 |         }
 62 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:85:62: warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
 83 |
 84 |         // Receive initial HELLO frame from the gateway
 85 |         guard case let .string(helloText) = try await socket.receive() else {
    |                                                              |- warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
    |                                                              `- note: sending 'self'-isolated 'socket' to nonisolated instance method 'receive()' risks causing data races between nonisolated and 'self'-isolated uses
 86 |             throw DiscordError.gateway("Expected HELLO string frame")
 87 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:104:30: warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
102 |             let payload = GatewayPayload(op: .resume, d: resume, s: nil, t: nil)
103 |             let data = try enc.encode(payload)
104 |             try await socket.send(.string(String(decoding: data, as: UTF8.self)))
    |                              |- warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
    |                              `- note: sending 'self'-isolated 'socket' to nonisolated instance method 'send' risks causing data races between nonisolated and 'self'-isolated uses
105 |         } else {
106 |             self.status = .identifying
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:111:30: warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
109 |             let payload = GatewayPayload(op: .identify, d: identify, s: nil, t: nil)
110 |             let data = try enc.encode(payload)
111 |             try await socket.send(.string(String(decoding: data, as: UTF8.self)))
    |                              |- warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
    |                              `- note: sending 'self'-isolated 'socket' to nonisolated instance method 'send' risks causing data races between nonisolated and 'self'-isolated uses
112 |         }
113 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:115:23: warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
113 |
114 |         // Start read loop for gateway messages
115 |         Task.detached { [weak self] in
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between 'self'-isolated code and concurrent execution of the closure; this is an error in the Swift 6 language mode
116 |             await self?.readLoop(eventSink: eventSink)
    |                                             `- note: closure captures 'eventSink' which is accessible to 'self'-isolated code
117 |         }
118 |         // Wait for READY or RESUMED before returning
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:382:23: warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
380 |         // Basic reconnect: close existing socket and perform a fresh connect
381 |         if !allowReconnect { return }
382 |         await socket?.close()
    |                       |- warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
    |                       `- note: sending 'self'-isolated value of non-Sendable type 'any WebSocketClient' to nonisolated instance method 'close()' risks causing races in between 'self'-isolated and nonisolated uses
383 |         socket = nil
384 |         heartbeatTask?.cancel()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:131:44: warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
129 |         while true {
130 |             do {
131 |                 let msg = try await socket.receive()
    |                                            |- warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending 'self'-isolated 'socket' to nonisolated instance method 'receive()' risks causing data races between nonisolated and 'self'-isolated uses
132 |                 let data: Data
133 |                 switch msg {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:116:25: warning: sending 'eventSink' risks causing data races; this is an error in the Swift 6 language mode
114 |         // Start read loop for gateway messages
115 |         Task.detached { [weak self] in
116 |             await self?.readLoop(eventSink: eventSink)
    |                         |- warning: sending 'eventSink' risks causing data races; this is an error in the Swift 6 language mode
    |                         `- note: sending task-isolated 'eventSink' to actor-isolated instance method 'readLoop(eventSink:)' risks causing data races between actor-isolated and task-isolated uses
117 |         }
118 |         // Wait for READY or RESUMED before returning
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:367:35: warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
365 |                 let payload = GatewayPayload(op: .heartbeat, d: hb, s: nil, t: nil)
366 |                 let data = try JSONEncoder().encode(payload)
367 |                 try await socket?.send(.string(String(decoding: data, as: UTF8.self)))
    |                                   |- warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
    |                                   `- note: sending 'self'-isolated value of non-Sendable type 'any WebSocketClient' to nonisolated instance method 'send' risks causing races in between 'self'-isolated and nonisolated uses
368 |                 awaitingHeartbeatAck = true
369 |                 lastHeartbeatSentAt = Date()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:406:23: warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
404 |
405 |     func close() async {
406 |         await socket?.close()
    |                       |- warning: sending value of non-Sendable type 'any WebSocketClient' risks causing data races; this is an error in the Swift 6 language mode
    |                       `- note: sending 'self'-isolated value of non-Sendable type 'any WebSocketClient' to nonisolated instance method 'close()' risks causing races in between 'self'-isolated and nonisolated uses
407 |         socket = nil
408 |         heartbeatTask?.cancel()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Gateway/GatewayClient.swift:419:31: warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
417 |         let payload = GatewayPayload(op: .presenceUpdate, d: p, s: nil, t: nil)
418 |         if let data = try? JSONEncoder().encode(payload) {
419 |             try? await socket.send(.string(String(decoding: data, as: UTF8.self)))
    |                               |- warning: sending 'socket' risks causing data races; this is an error in the Swift 6 language mode
    |                               `- note: sending 'self'-isolated 'socket' to nonisolated instance method 'send' risks causing data races between nonisolated and 'self'-isolated uses
420 |         }
421 |     }
[58/63] Compiling SwiftDisc AutocompleteRouter.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:54:39: warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
    |                                       `- warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Guild.swift:3:15: note: consider making struct 'Guild' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Guild: Codable, Hashable {
  |               `- note: consider making struct 'Guild' conform to the 'Sendable' protocol
4 |     public let id: GuildID
5 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:55:41: warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
    |                                         `- warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 56 |
 57 |         // Fetch member roles from cache or assume they are provided; for simplicity, assume roles are cached or passed
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Channel.swift:3:15: note: consider making struct 'Channel' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Channel: Codable, Hashable {
   |               `- note: consider making struct 'Channel' conform to the 'Sendable' protocol
 4 |     public let id: ChannelID
 5 |     public let type: Int
[59/63] Compiling SwiftDisc CommandRouter.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:54:39: warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
    |                                       `- warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Guild.swift:3:15: note: consider making struct 'Guild' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Guild: Codable, Hashable {
  |               `- note: consider making struct 'Guild' conform to the 'Sendable' protocol
4 |     public let id: GuildID
5 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:55:41: warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
    |                                         `- warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 56 |
 57 |         // Fetch member roles from cache or assume they are provided; for simplicity, assume roles are cached or passed
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Channel.swift:3:15: note: consider making struct 'Channel' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Channel: Codable, Hashable {
   |               `- note: consider making struct 'Channel' conform to the 'Sendable' protocol
 4 |     public let id: ChannelID
 5 |     public let type: Int
[60/63] Compiling SwiftDisc ComponentsBuilder.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:54:39: warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
    |                                       `- warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Guild.swift:3:15: note: consider making struct 'Guild' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Guild: Codable, Hashable {
  |               `- note: consider making struct 'Guild' conform to the 'Sendable' protocol
4 |     public let id: GuildID
5 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:55:41: warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
    |                                         `- warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 56 |
 57 |         // Fetch member roles from cache or assume they are provided; for simplicity, assume roles are cached or passed
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Channel.swift:3:15: note: consider making struct 'Channel' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Channel: Codable, Hashable {
   |               `- note: consider making struct 'Channel' conform to the 'Sendable' protocol
 4 |     public let id: ChannelID
 5 |     public let type: Int
[61/63] Compiling SwiftDisc Extensions.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:54:39: warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
    |                                       `- warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Guild.swift:3:15: note: consider making struct 'Guild' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Guild: Codable, Hashable {
  |               `- note: consider making struct 'Guild' conform to the 'Sendable' protocol
4 |     public let id: GuildID
5 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:55:41: warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
    |                                         `- warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 56 |
 57 |         // Fetch member roles from cache or assume they are provided; for simplicity, assume roles are cached or passed
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Channel.swift:3:15: note: consider making struct 'Channel' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Channel: Codable, Hashable {
   |               `- note: consider making struct 'Channel' conform to the 'Sendable' protocol
 4 |     public let id: ChannelID
 5 |     public let type: Int
[62/63] Compiling SwiftDisc Permissions.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:54:39: warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
    |                                       `- warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Guild.swift:3:15: note: consider making struct 'Guild' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Guild: Codable, Hashable {
  |               `- note: consider making struct 'Guild' conform to the 'Sendable' protocol
4 |     public let id: GuildID
5 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:55:41: warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
    |                                         `- warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 56 |
 57 |         // Fetch member roles from cache or assume they are provided; for simplicity, assume roles are cached or passed
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Channel.swift:3:15: note: consider making struct 'Channel' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Channel: Codable, Hashable {
   |               `- note: consider making struct 'Channel' conform to the 'Sendable' protocol
 4 |     public let id: ChannelID
 5 |     public let type: Int
[63/63] Compiling SwiftDisc ShardManager.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:54:39: warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 52 |     public static func effectivePermissionsWithCache(cache: Cache, userId: UserID, guildId: GuildID, channelId: ChannelID) async -> PermissionBitset? {
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
    |                                       `- warning: non-sendable result type 'Guild?' cannot be sent from actor-isolated context in call to instance method 'getGuild(id:)'; this is an error in the Swift 6 language mode
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Guild.swift:3:15: note: consider making struct 'Guild' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Guild: Codable, Hashable {
  |               `- note: consider making struct 'Guild' conform to the 'Sendable' protocol
4 |     public let id: GuildID
5 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/HighLevel/Permissions.swift:55:41: warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 53 |         // Fetch guild and channel from cache
 54 |         guard let guild = await cache.getGuild(id: guildId),
 55 |               let channel = await cache.getChannel(id: channelId) else { return nil }
    |                                         `- warning: non-sendable result type 'Channel?' cannot be sent from actor-isolated context in call to instance method 'getChannel(id:)'; this is an error in the Swift 6 language mode
 56 |
 57 |         // Fetch member roles from cache or assume they are provided; for simplicity, assume roles are cached or passed
/Users/admin/builder/spi-builder-workspace/Sources/SwiftDisc/Models/Channel.swift:3:15: note: consider making struct 'Channel' conform to the 'Sendable' protocol
 1 | import Foundation
 2 |
 3 | public struct Channel: Codable, Hashable {
   |               `- note: consider making struct 'Channel' conform to the 'Sendable' protocol
 4 |     public let id: ChannelID
 5 |     public let type: Int
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/56] Compiling SwiftDisc DiscordError.swift
[3/56] Compiling SwiftDisc DiscordUtils.swift
[4/56] Compiling SwiftDisc EventDispatcher.swift
[5/56] Compiling SwiftDisc JSONValue.swift
[6/56] Compiling SwiftDisc AdvancedMessagePayloads.swift
[7/56] Compiling SwiftDisc ApplicationRoleConnection.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/62] Emitting module SwiftDisc
/Users/admin/builder/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),
[9/62] Compiling SwiftDisc Files.swift
[10/62] Compiling SwiftDisc Guild.swift
[11/62] Compiling SwiftDisc GuildBan.swift
[12/62] Compiling SwiftDisc GuildMember.swift
[13/62] Compiling SwiftDisc GuildWidgetSettings.swift
[14/62] Compiling SwiftDisc Interaction.swift
[15/62] Compiling SwiftDisc ScheduledEventUser.swift
[16/62] Compiling SwiftDisc Snowflake.swift
[17/62] Compiling SwiftDisc StageInstance.swift
[18/62] Compiling SwiftDisc Sticker.swift
[19/62] Compiling SwiftDisc Template.swift
[20/62] Compiling SwiftDisc Thread.swift
[21/62] Compiling SwiftDisc Invite.swift
/Users/admin/builder/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 }
/Users/admin/builder/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?
/Users/admin/builder/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]
/Users/admin/builder/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
[22/62] Compiling SwiftDisc Message.swift
/Users/admin/builder/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 }
/Users/admin/builder/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?
/Users/admin/builder/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]
/Users/admin/builder/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
[23/62] Compiling SwiftDisc MessageComponents.swift
/Users/admin/builder/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 }
/Users/admin/builder/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?
/Users/admin/builder/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]
/Users/admin/builder/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
[24/62] Compiling SwiftDisc PartialGuild.swift
/Users/admin/builder/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 }
/Users/admin/builder/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?
/Users/admin/builder/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]
/Users/admin/builder/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
[25/62] Compiling SwiftDisc Role.swift
/Users/admin/builder/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 }
/Users/admin/builder/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?
/Users/admin/builder/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]
/Users/admin/builder/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
[26/62] Compiling SwiftDisc ScheduledEvent.swift
/Users/admin/builder/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 }
/Users/admin/builder/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?
/Users/admin/builder/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]
/Users/admin/builder/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 Attachment.swift
[28/62] Compiling SwiftDisc AuditLog.swift
[29/62] Compiling SwiftDisc AutoModeration.swift
[30/62] Compiling SwiftDisc Channel.swift
[31/62] Compiling SwiftDisc Embed.swift
[32/62] Compiling SwiftDisc Emoji.swift
[33/62] Compiling SwiftDisc ShardingGatewayManager.swift
[34/62] Compiling SwiftDisc SlashCommandBuilder.swift
[35/62] Compiling SwiftDisc SlashCommandRouter.swift
[36/62] Compiling SwiftDisc Utilities.swift
[37/62] Compiling SwiftDisc Cache.swift
[38/62] Compiling SwiftDisc DiscordConfiguration.swift
[39/62] Compiling SwiftDisc User.swift
/Users/admin/builder/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()
[40/62] Compiling SwiftDisc Webhook.swift
/Users/admin/builder/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()
[41/62] Compiling SwiftDisc HTTPClient.swift
/Users/admin/builder/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()
[42/62] Compiling SwiftDisc RateLimiter.swift
/Users/admin/builder/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()
[43/62] Compiling SwiftDisc AudioSource.swift
/Users/admin/builder/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()
[44/62] Compiling SwiftDisc PipeOpusSource.swift
/Users/admin/builder/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()
[45/62] Compiling SwiftDisc AutocompleteRouter.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
[46/62] Compiling SwiftDisc CommandRouter.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
[47/62] Compiling SwiftDisc ComponentsBuilder.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
[48/62] Compiling SwiftDisc Extensions.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
[49/62] Compiling SwiftDisc Permissions.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
[50/62] Compiling SwiftDisc ShardManager.swift
/Users/admin/builder/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),
/Users/admin/builder/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 |
/Users/admin/builder/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 |         } ?? []
/Users/admin/builder/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)
/Users/admin/builder/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 |
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
/Users/admin/builder/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)
[51/62] Compiling SwiftDisc Secretbox.swift
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
[52/62] Compiling SwiftDisc VoiceClient.swift
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
[53/62] Compiling SwiftDisc VoiceGateway.swift
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
[54/62] Compiling SwiftDisc VoiceModels.swift
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
[55/62] Compiling SwiftDisc VoiceReceiver.swift
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
[56/62] Compiling SwiftDisc VoiceSender.swift
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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
/Users/admin/builder/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 |
/Users/admin/builder/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
[57/62] Compiling SwiftDisc DiscordClient.swift
/Users/admin/builder/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 {
[58/62] Compiling SwiftDisc GatewayClient.swift
/Users/admin/builder/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 {
[59/62] Compiling SwiftDisc GatewayModels.swift
/Users/admin/builder/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 {
[60/62] Compiling SwiftDisc Intents.swift
/Users/admin/builder/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 {
[61/62] Compiling SwiftDisc WebSocket.swift
/Users/admin/builder/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 {
[62/62] Compiling SwiftDisc ActivityBuilder.swift
/Users/admin/builder/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 {
BUILD FAILURE 6.1 macosSpm