The Swift Package Index logo.Swift Package Index

Build Information

Failed to build swift-gemini-api, reference main (bdc5cf), with Swift 6.4 for tvOS using Xcode 27.0 on 24 Sep 2026 00:28:00 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme swift-gemini-api -destination generic/platform=tvOS

Build Log

 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:35:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onToolCall' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 36 |
 37 |     public var mute:Bool = false
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:37:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'mute' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
 37 |     public var mute:Bool = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:38:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'playAudio' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 36 |
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:39:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'input_audio_transcription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:40:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'output_audio_transcription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:41:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'response_modalities' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:42:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'candidateCount' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:43:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'maxOutputTokens' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:44:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'temperature' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 45 |     public var topP = 1
 46 | 	public var topK = 0
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:45:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'topP' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:46:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'topK' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
 46 | 	public var topK = 0
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 47 | 	public var enable_affective_dialog = false
 48 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:47:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'enable_affective_dialog' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 45 |     public var topP = 1
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 48 |
 49 |     let systemPrompt: String
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:52:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'host' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 50 |
 51 |     let model: String
 52 |     var host: String
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 53 |     var version: String
 54 |     var language: Language
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:53:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'version' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 51 |     let model: String
 52 |     var host: String
 53 |     var version: String
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 54 |     var language: Language
 55 |     var voice: Voice
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:54:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'language' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 52 |     var host: String
 53 |     var version: String
 54 |     var language: Language
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:55:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'voice' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 53 |     var version: String
 54 |     var language: Language
 55 |     var voice: Voice
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 56 |     var enableGoogleSearch: Bool
 57 |     let verbose: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:56:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'enableGoogleSearch' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 54 |     var language: Language
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 57 |     let verbose: Bool
 58 |     let automaticActivityDetection: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:61:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'disconnected' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 59 |     let proactive_audio: Bool
 60 |
 61 |     private var disconnected = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 62 |
 63 |     public init(
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:377:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'functionDeclarations' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
375 |     }
376 |
377 |     var functionDeclarations: [Any] = []
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
378 |
379 |     public func addFunctionDeclarations(_ f:[String: Any] = [
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:550:1: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on class 'GeminiLiveClient' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
548 | 		}
549 |     }
550 | }
    +--- macro expansion @Observable -----------------------------------
    | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
    |   |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    | 2 |
    | 3 | internal nonisolated func access<$s16swift_gemini_api16GeminiLiveClient10ObservablefMm_6MemberfMu_>(
    +-------------------------------------------------------------------
551 |
552 | public actor Setup {
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:25:47: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 23 |
 24 |     public let setup = Setup()
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onSetupComplete: ((Bool) -> Void)?
    +-------------------------------------------------------------------
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:27:49: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _socket: URLSessionWebSocketTask?
    +-------------------------------------------------------------------
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:28:36: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _apiKey: String = ""
    +-------------------------------------------------------------------
 29 |     private var urlSession: URLSession?
 30 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:29:40: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _urlSession: URLSession?
    +-------------------------------------------------------------------
 30 |
 31 |     private let audioPlayer = StreamingAudioPlayer()
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:33:58: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 31 |     private let audioPlayer = StreamingAudioPlayer()
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onOutputTranscription: ((String) -> Void)?
    +-------------------------------------------------------------------
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:34:57: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onInputTranscription: ((String) -> Void)?
    +-------------------------------------------------------------------
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:35:90: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onToolCall: ((_ name: String, _ id: String, _ args: [String: Any]) -> Void)?
    +-------------------------------------------------------------------
 36 |
 37 |     public var mute:Bool = false
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:37:33: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
 37 |     public var mute:Bool = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _mute: Bool = false
    +-------------------------------------------------------------------
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:38:38: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 36 |
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _playAudio: Bool = true
    +-------------------------------------------------------------------
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:39:45: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _input_audio_transcription  = true
    +-------------------------------------------------------------------
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:40:46: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _output_audio_transcription  = true
    +-------------------------------------------------------------------
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:41:44: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _response_modalities  = ["AUDIO"]
    +-------------------------------------------------------------------
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:42:31: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _candidateCount  = 1
    +-------------------------------------------------------------------
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:43:35: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _maxOutputTokens  = 1024 // 256 // 256 // 256
    +-------------------------------------------------------------------
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:44:30: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _temperature  = 0.7
    +-------------------------------------------------------------------
 45 |     public var topP = 1
 46 | 	public var topK = 0
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:45:24: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _topP  = 1
    +-------------------------------------------------------------------
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:46:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
 46 | 	public var topK = 0
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _topK  = 0
    +-------------------------------------------------------------------
 47 | 	public var enable_affective_dialog = false
 48 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:47:44: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 45 |     public var topP = 1
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _enable_affective_dialog  = false
    +-------------------------------------------------------------------
 48 |
 49 |     let systemPrompt: String
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:52:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 50 |
 51 |     let model: String
 52 |     var host: String
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _host: String
    +-------------------------------------------------------------------
 53 |     var version: String
 54 |     var language: Language
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:53:24: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 51 |     let model: String
 52 |     var host: String
 53 |     var version: String
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _version: String
    +-------------------------------------------------------------------
 54 |     var language: Language
 55 |     var voice: Voice
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:54:27: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 52 |     var host: String
 53 |     var version: String
 54 |     var language: Language
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _language: Language
    +-------------------------------------------------------------------
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:55:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 53 |     var version: String
 54 |     var language: Language
 55 |     var voice: Voice
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _voice: Voice
    +-------------------------------------------------------------------
 56 |     var enableGoogleSearch: Bool
 57 |     let verbose: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:56:33: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 54 |     var language: Language
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _enableGoogleSearch: Bool
    +-------------------------------------------------------------------
 57 |     let verbose: Bool
 58 |     let automaticActivityDetection: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:61:37: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 59 |     let proactive_audio: Bool
 60 |
 61 |     private var disconnected = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _disconnected  = false
    +-------------------------------------------------------------------
 62 |
 63 |     public init(
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:377:41: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
375 |     }
376 |
377 |     var functionDeclarations: [Any] = []
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _functionDeclarations: [Any] = []
    +-------------------------------------------------------------------
378 |
379 |     public func addFunctionDeclarations(_ f:[String: Any] = [
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:550:1: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on class 'GeminiLiveClient' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
548 | 		}
549 |     }
550 | }
    +--- macro expansion @Observable -----------------------------------
    | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
    |   |                                                                      `- error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
    | 2 |
    | 3 | internal nonisolated func access<$s16swift_gemini_api16GeminiLiveClient10ObservablefMm_6MemberfMu_>(
    +-------------------------------------------------------------------
551 |
552 | public actor Setup {
/Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:17:2: error: 'Observable()' is only available in tvOS 17.0 or newer
 15 | import Foundation
 16 |
 17 | @Observable
    |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiAPI.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile GeminiAPI.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile GeminiLiveClient.swift
SwiftCompile normal arm64 Compiling\ Voice.swift,\ VoiceUtils.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Voice.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/VoiceUtils.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Voice.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Voice.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/VoiceUtils.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VoiceUtils.swift
SwiftCompile normal arm64 Compiling\ AudioBufferData.swift,\ AudioFormat.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioBufferData.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioFormat.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioBufferData.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AudioBufferData.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioFormat.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AudioFormat.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
2026-09-23 20:27:50.032 xcodebuild[661:3914] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftCompile normal arm64 (in target 'swift-gemini-api' from project 'swift-gemini-api')
	SwiftEmitModule normal arm64 Emitting\ module\ for\ swift_gemini_api (in target 'swift-gemini-api' from project 'swift-gemini-api')
	Building workspace swift-gemini-api with scheme swift-gemini-api
(3 failures)
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -resolvePackageDependencies
Resolve Package Graph
Resolved source packages:
  swift-gemini-api: /Users/admin/builder/spi-builder-workspace
resolved source packages: swift-gemini-api
2026-09-23 20:27:56.867 xcodebuild[802:4614] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "swift-gemini-api",
  "name" : "swift-gemini-api",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "15.0"
    }
  ],
  "products" : [
    {
      "name" : "swift-gemini-api",
      "targets" : [
        "swift-gemini-api"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "swift_gemini_api",
      "module_type" : "SwiftTarget",
      "name" : "swift-gemini-api",
      "path" : "Sources/swift-gemini-api",
      "product_memberships" : [
        "swift-gemini-api"
      ],
      "sources" : [
        "AudioBufferData.swift",
        "AudioFormat.swift",
        "AudioRecorder.swift",
        "AudioRecorderProtocol.swift",
        "GeminiAPI.swift",
        "GeminiLiveClient.swift",
        "Language.swift",
        "Retry.swift",
        "StreamingAudioPlayer.swift",
        "StreamingWAVWriter.swift",
        "Voice.swift",
        "VoiceUtils.swift",
        "modalities/audio.swift",
        "modalities/embedding.swift",
        "modalities/error.swift",
        "modalities/files.swift",
        "modalities/image.swift",
        "modalities/speech.swift",
        "modalities/text.swift",
        "modalities/video.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.2"
}
{
  "workspace" : {
    "name" : "swift-gemini-api",
    "schemes" : [
      "swift-gemini-api"
    ]
  }
}
2026-09-23 20:27:58.164 xcodebuild[810:4682] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme swift-gemini-api -destination generic/platform=tvOS
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath /Users/admin/builder/spi-builder-workspace/.derivedData build -scheme swift-gemini-api -destination generic/platform=tvOS
Resolve Package Graph
Resolved source packages:
  swift-gemini-api: /Users/admin/builder/spi-builder-workspace
ComputePackagePrebuildTargetDependencyGraph
Prepare packages
CreateBuildRequest
SendProjectDescription
CreateBuildOperation
ComputeTargetDependencyGraph
note: Building targets in dependency order
note: Target dependency graph (2 targets)
    Target 'swift-gemini-api-product' in project 'swift-gemini-api'
        ➜ Explicit dependency on target 'swift-gemini-api' in project 'swift-gemini-api'
    Target 'swift-gemini-api' in project 'swift-gemini-api' (no dependencies)
GatherProvisioningInputs
CreateBuildDescription
ClangStatCache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -o /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache
SwiftDriver swift-gemini-api normal arm64 com.apple.xcode.tools.swift.compiler (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name swift_gemini_api -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -target arm64-apple-tvos15.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 6 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api-OutputFileMap.json -save-temps -no-color-diagnostics -explicit-module-build -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -clang-scanner-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -sdk-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift_gemini_api.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift_gemini_api-dependency-scan.dia -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -package-name spi_builder_workspace -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftCompile normal arm64 Compiling\ AudioBufferData.swift,\ AudioFormat.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioBufferData.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioFormat.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioBufferData.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AudioBufferData.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioFormat.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AudioFormat.swift
SwiftCompile normal arm64 Compiling\ Language.swift,\ Retry.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Language.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Retry.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Language.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Language.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Retry.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Retry.swift
SwiftCompile normal arm64 Compiling\ GeminiAPI.swift,\ GeminiLiveClient.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiAPI.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
/Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:17:2: error: 'Observable()' is only available in tvOS 17.0 or newer
 15 | import Foundation
 16 |
 17 | @Observable
    |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
 19 |     private let audioDataChunks = AudioDataBuffer()
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:25:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onSetupComplete' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 23 |
 24 |     public let setup = Setup()
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:27:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'socket' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:28:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'apiKey' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 29 |     private var urlSession: URLSession?
 30 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:29:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'urlSession' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 30 |
 31 |     private let audioPlayer = StreamingAudioPlayer()
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:33:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onOutputTranscription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 31 |     private let audioPlayer = StreamingAudioPlayer()
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:34:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onInputTranscription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:35:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onToolCall' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 36 |
 37 |     public var mute:Bool = false
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:37:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'mute' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
 37 |     public var mute:Bool = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:38:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'playAudio' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 36 |
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:39:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'input_audio_transcription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:40:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'output_audio_transcription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:41:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'response_modalities' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:42:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'candidateCount' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:43:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'maxOutputTokens' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:44:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'temperature' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 45 |     public var topP = 1
 46 | 	public var topK = 0
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:45:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'topP' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:46:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'topK' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
 46 | 	public var topK = 0
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 47 | 	public var enable_affective_dialog = false
 48 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:47:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'enable_affective_dialog' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 45 |     public var topP = 1
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 48 |
 49 |     let systemPrompt: String
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:52:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'host' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 50 |
 51 |     let model: String
 52 |     var host: String
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 53 |     var version: String
 54 |     var language: Language
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:53:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'version' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 51 |     let model: String
 52 |     var host: String
 53 |     var version: String
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 54 |     var language: Language
 55 |     var voice: Voice
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:54:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'language' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 52 |     var host: String
 53 |     var version: String
 54 |     var language: Language
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:55:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'voice' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 53 |     var version: String
 54 |     var language: Language
 55 |     var voice: Voice
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 56 |     var enableGoogleSearch: Bool
 57 |     let verbose: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:56:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'enableGoogleSearch' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 54 |     var language: Language
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 57 |     let verbose: Bool
 58 |     let automaticActivityDetection: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:61:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'disconnected' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 59 |     let proactive_audio: Bool
 60 |
 61 |     private var disconnected = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 62 |
 63 |     public init(
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:377:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'functionDeclarations' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
375 |     }
376 |
377 |     var functionDeclarations: [Any] = []
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
378 |
379 |     public func addFunctionDeclarations(_ f:[String: Any] = [
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:550:1: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on class 'GeminiLiveClient' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
548 | 		}
549 |     }
550 | }
    +--- macro expansion @Observable -----------------------------------
    | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
    |   |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    | 2 |
    | 3 | internal nonisolated func access<$s16swift_gemini_api16GeminiLiveClient10ObservablefMm_6MemberfMu_>(
    +-------------------------------------------------------------------
551 |
552 | public actor Setup {
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:25:47: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 23 |
 24 |     public let setup = Setup()
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onSetupComplete: ((Bool) -> Void)?
    +-------------------------------------------------------------------
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:27:49: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _socket: URLSessionWebSocketTask?
    +-------------------------------------------------------------------
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:28:36: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _apiKey: String = ""
    +-------------------------------------------------------------------
 29 |     private var urlSession: URLSession?
 30 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:29:40: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _urlSession: URLSession?
    +-------------------------------------------------------------------
 30 |
 31 |     private let audioPlayer = StreamingAudioPlayer()
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:33:58: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 31 |     private let audioPlayer = StreamingAudioPlayer()
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onOutputTranscription: ((String) -> Void)?
    +-------------------------------------------------------------------
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:34:57: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onInputTranscription: ((String) -> Void)?
    +-------------------------------------------------------------------
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:35:90: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onToolCall: ((_ name: String, _ id: String, _ args: [String: Any]) -> Void)?
    +-------------------------------------------------------------------
 36 |
 37 |     public var mute:Bool = false
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:37:33: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
 37 |     public var mute:Bool = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _mute: Bool = false
    +-------------------------------------------------------------------
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:38:38: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 36 |
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _playAudio: Bool = true
    +-------------------------------------------------------------------
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:39:45: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _input_audio_transcription  = true
    +-------------------------------------------------------------------
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:40:46: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _output_audio_transcription  = true
    +-------------------------------------------------------------------
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:41:44: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _response_modalities  = ["AUDIO"]
    +-------------------------------------------------------------------
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:42:31: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _candidateCount  = 1
    +-------------------------------------------------------------------
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:43:35: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _maxOutputTokens  = 1024 // 256 // 256 // 256
    +-------------------------------------------------------------------
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:44:30: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _temperature  = 0.7
    +-------------------------------------------------------------------
 45 |     public var topP = 1
 46 | 	public var topK = 0
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:45:24: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _topP  = 1
    +-------------------------------------------------------------------
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:46:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
 46 | 	public var topK = 0
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _topK  = 0
    +-------------------------------------------------------------------
 47 | 	public var enable_affective_dialog = false
 48 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:47:44: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 45 |     public var topP = 1
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _enable_affective_dialog  = false
    +-------------------------------------------------------------------
 48 |
 49 |     let systemPrompt: String
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:52:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 50 |
 51 |     let model: String
 52 |     var host: String
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _host: String
    +-------------------------------------------------------------------
 53 |     var version: String
 54 |     var language: Language
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:53:24: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 51 |     let model: String
 52 |     var host: String
 53 |     var version: String
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _version: String
    +-------------------------------------------------------------------
 54 |     var language: Language
 55 |     var voice: Voice
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:54:27: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 52 |     var host: String
 53 |     var version: String
 54 |     var language: Language
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _language: Language
    +-------------------------------------------------------------------
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:55:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 53 |     var version: String
 54 |     var language: Language
 55 |     var voice: Voice
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _voice: Voice
    +-------------------------------------------------------------------
 56 |     var enableGoogleSearch: Bool
 57 |     let verbose: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:56:33: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 54 |     var language: Language
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _enableGoogleSearch: Bool
    +-------------------------------------------------------------------
 57 |     let verbose: Bool
 58 |     let automaticActivityDetection: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:61:37: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 59 |     let proactive_audio: Bool
 60 |
 61 |     private var disconnected = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _disconnected  = false
    +-------------------------------------------------------------------
 62 |
 63 |     public init(
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:377:41: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
375 |     }
376 |
377 |     var functionDeclarations: [Any] = []
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _functionDeclarations: [Any] = []
    +-------------------------------------------------------------------
378 |
379 |     public func addFunctionDeclarations(_ f:[String: Any] = [
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:550:1: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on class 'GeminiLiveClient' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
548 | 		}
549 |     }
550 | }
    +--- macro expansion @Observable -----------------------------------
    | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
    |   |                                                                      `- error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
    | 2 |
    | 3 | internal nonisolated func access<$s16swift_gemini_api16GeminiLiveClient10ObservablefMm_6MemberfMu_>(
    +-------------------------------------------------------------------
551 |
552 | public actor Setup {
/Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:17:2: error: 'Observable()' is only available in tvOS 17.0 or newer
 15 | import Foundation
 16 |
 17 | @Observable
    |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiAPI.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile GeminiAPI.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile GeminiLiveClient.swift
SwiftCompile normal arm64 Compiling\ StreamingAudioPlayer.swift,\ StreamingWAVWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/StreamingAudioPlayer.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/StreamingWAVWriter.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/StreamingAudioPlayer.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile StreamingAudioPlayer.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/StreamingWAVWriter.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile StreamingWAVWriter.swift
SwiftCompile normal arm64 Compiling\ image.swift,\ speech.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/image.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/speech.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/image.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile image.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/speech.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile speech.swift
SwiftCompile normal arm64 Compiling\ audio.swift,\ embedding.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/audio.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/embedding.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/audio.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile audio.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/embedding.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile embedding.swift
SwiftCompile normal arm64 Compiling\ error.swift,\ files.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/error.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/files.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/error.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile error.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/files.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile files.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ swift_gemini_api (in target 'swift-gemini-api' from project 'swift-gemini-api')
/Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioRecorder.swift:147:40: error: cannot find type 'AudioDeviceID' in scope
145 |     }
146 |
147 |     func getDeviceSampleRate(deviceID: AudioDeviceID) -> Double? {
    |                                        `- error: cannot find type 'AudioDeviceID' in scope
148 |         var address = AudioObjectPropertyAddress(
149 |             mSelector: kAudioDevicePropertyNominalSampleRate,
/Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:17:2: error: 'Observable()' is only available in tvOS 17.0 or newer
 15 | import Foundation
 16 |
 17 | @Observable
    |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
 19 |     private let audioDataChunks = AudioDataBuffer()
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:25:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onSetupComplete' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 23 |
 24 |     public let setup = Setup()
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:27:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'socket' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:28:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'apiKey' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 29 |     private var urlSession: URLSession?
 30 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:29:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'urlSession' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 30 |
 31 |     private let audioPlayer = StreamingAudioPlayer()
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:33:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onOutputTranscription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 31 |     private let audioPlayer = StreamingAudioPlayer()
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:34:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onInputTranscription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:35:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'onToolCall' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 36 |
 37 |     public var mute:Bool = false
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:37:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'mute' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
 37 |     public var mute:Bool = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:38:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'playAudio' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 36 |
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:39:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'input_audio_transcription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:40:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'output_audio_transcription' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:41:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'response_modalities' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:42:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'candidateCount' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:43:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'maxOutputTokens' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:44:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'temperature' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 45 |     public var topP = 1
 46 | 	public var topK = 0
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:45:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'topP' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:46:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'topK' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
 46 | 	public var topK = 0
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 47 | 	public var enable_affective_dialog = false
 48 |
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:47:2: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'enable_affective_dialog' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 45 |     public var topP = 1
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 48 |
 49 |     let systemPrompt: String
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:52:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'host' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 50 |
 51 |     let model: String
 52 |     var host: String
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 53 |     var version: String
 54 |     var language: Language
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:53:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'version' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 51 |     let model: String
 52 |     var host: String
 53 |     var version: String
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 54 |     var language: Language
 55 |     var voice: Voice
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:54:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'language' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 52 |     var host: String
 53 |     var version: String
 54 |     var language: Language
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:55:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'voice' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 53 |     var version: String
 54 |     var language: Language
 55 |     var voice: Voice
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 56 |     var enableGoogleSearch: Bool
 57 |     let verbose: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:56:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'enableGoogleSearch' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 54 |     var language: Language
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 57 |     let verbose: Bool
 58 |     let automaticActivityDetection: Bool
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:61:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'disconnected' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 59 |     let proactive_audio: Bool
 60 |
 61 |     private var disconnected = false
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
 62 |
 63 |     public init(
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:377:5: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on property 'functionDeclarations' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
375 |     }
376 |
377 |     var functionDeclarations: [Any] = []
    +--- macro expansion @Observable -----------------------------------
    |1 | @ObservationTracked
    |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
    +-------------------------------------------------------------------
378 |
379 |     public func addFunctionDeclarations(_ f:[String: Any] = [
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:550:1: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on class 'GeminiLiveClient' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
548 | 		}
549 |     }
550 | }
    +--- macro expansion @Observable -----------------------------------
    | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
    |   |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    | 2 |
    | 3 | internal nonisolated func access<$s16swift_gemini_api16GeminiLiveClient10ObservablefMm_6MemberfMu_>(
    +-------------------------------------------------------------------
551 |
552 | public actor Setup {
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:25:47: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 23 |
 24 |     public let setup = Setup()
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onSetupComplete: ((Bool) -> Void)?
    +-------------------------------------------------------------------
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:27:49: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _socket: URLSessionWebSocketTask?
    +-------------------------------------------------------------------
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:28:36: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _apiKey: String = ""
    +-------------------------------------------------------------------
 29 |     private var urlSession: URLSession?
 30 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:29:40: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 27 |     private var socket: URLSessionWebSocketTask?
 28 |     private var apiKey: String = ""
 29 |     private var urlSession: URLSession?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _urlSession: URLSession?
    +-------------------------------------------------------------------
 30 |
 31 |     private let audioPlayer = StreamingAudioPlayer()
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:33:58: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 31 |     private let audioPlayer = StreamingAudioPlayer()
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onOutputTranscription: ((String) -> Void)?
    +-------------------------------------------------------------------
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:34:57: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 32 |
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onInputTranscription: ((String) -> Void)?
    +-------------------------------------------------------------------
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:35:90: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 33 |     public var onOutputTranscription: ((String) -> Void)?
 34 |     public var onInputTranscription: ((String) -> Void)?
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _onToolCall: ((_ name: String, _ id: String, _ args: [String: Any]) -> Void)?
    +-------------------------------------------------------------------
 36 |
 37 |     public var mute:Bool = false
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:37:33: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 35 |     public var onToolCall: ((_ name:String, _ id:String, _ args: [String: Any]) -> Void)?
 36 |
 37 |     public var mute:Bool = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _mute: Bool = false
    +-------------------------------------------------------------------
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:38:38: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 36 |
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _playAudio: Bool = true
    +-------------------------------------------------------------------
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:39:45: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 37 |     public var mute:Bool = false
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _input_audio_transcription  = true
    +-------------------------------------------------------------------
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:40:46: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 38 |     public var playAudio: Bool = true
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _output_audio_transcription  = true
    +-------------------------------------------------------------------
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:41:44: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 39 | 	public var input_audio_transcription = true
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _response_modalities  = ["AUDIO"]
    +-------------------------------------------------------------------
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:42:31: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 40 | 	public var output_audio_transcription = true
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _candidateCount  = 1
    +-------------------------------------------------------------------
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:43:35: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 41 | 	public var response_modalities = ["AUDIO"]
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _maxOutputTokens  = 1024 // 256 // 256 // 256
    +-------------------------------------------------------------------
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:44:30: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 42 | 	public var candidateCount = 1
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _temperature  = 0.7
    +-------------------------------------------------------------------
 45 |     public var topP = 1
 46 | 	public var topK = 0
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:45:24: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 43 | 	public var maxOutputTokens = 1024 // 256
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _topP  = 1
    +-------------------------------------------------------------------
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:46:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 44 | 	public var temperature = 0.7
 45 |     public var topP = 1
 46 | 	public var topK = 0
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _topK  = 0
    +-------------------------------------------------------------------
 47 | 	public var enable_affective_dialog = false
 48 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:47:44: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 45 |     public var topP = 1
 46 | 	public var topK = 0
 47 | 	public var enable_affective_dialog = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _enable_affective_dialog  = false
    +-------------------------------------------------------------------
 48 |
 49 |     let systemPrompt: String
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:52:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 50 |
 51 |     let model: String
 52 |     var host: String
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _host: String
    +-------------------------------------------------------------------
 53 |     var version: String
 54 |     var language: Language
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:53:24: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 51 |     let model: String
 52 |     var host: String
 53 |     var version: String
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _version: String
    +-------------------------------------------------------------------
 54 |     var language: Language
 55 |     var voice: Voice
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:54:27: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 52 |     var host: String
 53 |     var version: String
 54 |     var language: Language
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _language: Language
    +-------------------------------------------------------------------
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:55:21: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 53 |     var version: String
 54 |     var language: Language
 55 |     var voice: Voice
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _voice: Voice
    +-------------------------------------------------------------------
 56 |     var enableGoogleSearch: Bool
 57 |     let verbose: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:56:33: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 54 |     var language: Language
 55 |     var voice: Voice
 56 |     var enableGoogleSearch: Bool
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _enableGoogleSearch: Bool
    +-------------------------------------------------------------------
 57 |     let verbose: Bool
 58 |     let automaticActivityDetection: Bool
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:61:37: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
 59 |     let proactive_audio: Bool
 60 |
 61 |     private var disconnected = false
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _disconnected  = false
    +-------------------------------------------------------------------
 62 |
 63 |     public init(
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:377:41: note: expanded code originates here
 16 |
 17 | @Observable
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
375 |     }
376 |
377 |     var functionDeclarations: [Any] = []
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
    |2 | private  var _functionDeclarations: [Any] = []
    +-------------------------------------------------------------------
378 |
379 |     public func addFunctionDeclarations(_ f:[String: Any] = [
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:550:1: note: expanded code originates here
 15 | import Foundation
 16 |
 17 | @Observable
    | `- note: in expansion of macro 'Observable' on class 'GeminiLiveClient' here
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
    :
548 | 		}
549 |     }
550 | }
    +--- macro expansion @Observable -----------------------------------
    | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
    |   |                                                                      `- error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
    | 2 |
    | 3 | internal nonisolated func access<$s16swift_gemini_api16GeminiLiveClient10ObservablefMm_6MemberfMu_>(
    +-------------------------------------------------------------------
551 |
552 | public actor Setup {
/Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:17:2: error: 'Observable()' is only available in tvOS 17.0 or newer
 15 | import Foundation
 16 |
 17 | @Observable
    |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
 18 | public final class GeminiLiveClient: NSObject, URLSessionWebSocketDelegate {
    |                    `- note: add '@available' attribute to enclosing class
 19 |     private let audioDataChunks = AudioDataBuffer()
 20 |     private let sampleRate: Int = 24000 // Based on mimeType
macro expansion @ObservationTracked:2:14: warning: stored property '_onSetupComplete' of 'Sendable'-conforming class 'GeminiLiveClient' is mutable
`- /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift:25:47: note: expanded code originates here
 23 |
 24 |     public let setup = Setup()
 25 | 	public var onSetupComplete: ((Bool) -> Void)?
    +--- macro expansion @ObservationTracked ---------------------------
    |1 | @ObservationIgnored
    |2 | private  var _onSetupComplete: ((Bool) -> Void)?
    |  |              `- warning: stored property '_onSetupComplete' of 'Sendable'-conforming class 'GeminiLiveClient' is mutable
    +-------------------------------------------------------------------
 26 |
 27 |     private var socket: URLSessionWebSocketTask?
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioBufferData.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioFormat.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioRecorder.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioRecorderProtocol.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiAPI.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/GeminiLiveClient.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Language.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Retry.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/StreamingAudioPlayer.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/StreamingWAVWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Voice.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/VoiceUtils.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/audio.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/embedding.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/error.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/files.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/image.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/speech.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/text.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/video.swift -target arm64-apple-tvos15.0 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libPreviewsMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#PreviewsMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift_gemini_api-dependencies-1.json -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -swift-version 6 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name swift_gemini_api -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api_const_extract_protocols.json -disable-clang-spi -clang-target arm64-apple-tvos27.0 -target-sdk-version 27.0 -target-sdk-name appletvos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift_gemini_api.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift_gemini_api.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift-gemini-api-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift_gemini_api.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/swift-gemini-api.build/Debug-appletvos/swift-gemini-api-t.build/Objects-normal/arm64/swift_gemini_api.abi.json
SwiftCompile normal arm64 (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ text.swift,\ video.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/text.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/video.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/text.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile text.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/modalities/video.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile video.swift
SwiftCompile normal arm64 Compiling\ Voice.swift,\ VoiceUtils.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Voice.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/VoiceUtils.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/Voice.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Voice.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/VoiceUtils.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VoiceUtils.swift
SwiftCompile normal arm64 Compiling\ AudioRecorder.swift,\ AudioRecorderProtocol.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioRecorder.swift /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioRecorderProtocol.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioRecorder.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AudioRecorder.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/swift-gemini-api/AudioRecorderProtocol.swift (in target 'swift-gemini-api' from project 'swift-gemini-api')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AudioRecorderProtocol.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
2026-09-23 20:27:59.175 xcodebuild[811:4711] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftEmitModule normal arm64 Emitting\ module\ for\ swift_gemini_api (in target 'swift-gemini-api' from project 'swift-gemini-api')
	SwiftCompile normal arm64 (in target 'swift-gemini-api' from project 'swift-gemini-api')
	Building workspace swift-gemini-api with scheme swift-gemini-api
(3 failures)
BUILD FAILURE 6.4 tvOS