The Swift Package Index logo.Swift Package Index

Build Information

Failed to build yap, reference main (90d765), with Swift 6.1 for macOS (SPM) on 15 Feb 2026 19:10:20 UTC.

Build Command

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

Build Log

<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[195/207] Compiling yap Yap.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[196/207] Compiling yap TranscriptionEngine.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:23:15: error: cannot find 'SpeechTranscriber' in scope
21 |         }
22 |
23 |         guard SpeechTranscriber.isAvailable else {
   |               `- error: cannot find 'SpeechTranscriber' in scope
24 |             throw TranscriptionError.speechTranscriberNotAvailable
25 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:27:38: error: cannot find 'SpeechTranscriber' in scope
25 |         }
26 |
27 |         let supportedLocales = await SpeechTranscriber.supportedLocales
   |                                      `- error: cannot find 'SpeechTranscriber' in scope
28 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) else {
29 |             throw TranscriptionError.unsupportedLocale(options.locale.identifier)
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:28:65: error: cannot infer contextual base in reference to member 'bcp47'
26 |
27 |         let supportedLocales = await SpeechTranscriber.supportedLocales
28 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) else {
   |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
29 |             throw TranscriptionError.unsupportedLocale(options.locale.identifier)
30 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:32:29: error: cannot find 'AssetInventory' in scope
30 |         }
31 |
32 |         for locale in await AssetInventory.reservedLocales {
   |                             `- error: cannot find 'AssetInventory' in scope
33 |             await AssetInventory.release(reservedLocale: locale)
34 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:35:19: error: cannot find 'AssetInventory' in scope
33 |             await AssetInventory.release(reservedLocale: locale)
34 |         }
35 |         try await AssetInventory.reserve(locale: options.locale)
   |                   `- error: cannot find 'AssetInventory' in scope
36 |
37 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:37:27: error: cannot find 'SpeechTranscriber' in scope
35 |         try await AssetInventory.reserve(locale: options.locale)
36 |
37 |         let transcriber = SpeechTranscriber(
   |                           `- error: cannot find 'SpeechTranscriber' in scope
38 |             locale: options.locale,
39 |             transcriptionOptions: options.censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:39:54: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
37 |         let transcriber = SpeechTranscriber(
38 |             locale: options.locale,
39 |             transcriptionOptions: options.censor ? [.etiquetteReplacements] : [],
   |                                                      `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
40 |             reportingOptions: [],
41 |             attributeOptions: options.outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:41:76: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
39 |             transcriptionOptions: options.censor ? [.etiquetteReplacements] : [],
40 |             reportingOptions: [],
41 |             attributeOptions: options.outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
   |                                                                            `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
42 |         )
43 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:43:27: error: cannot find type 'SpeechModule' in scope
41 |             attributeOptions: options.outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
42 |         )
43 |         let modules: [any SpeechModule] = [transcriber]
   |                           `- error: cannot find type 'SpeechModule' in scope
44 |
45 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:45:38: error: cannot find 'SpeechTranscriber' in scope
43 |         let modules: [any SpeechModule] = [transcriber]
44 |
45 |         let installedLocales = await SpeechTranscriber.installedLocales
   |                                      `- error: cannot find 'SpeechTranscriber' in scope
46 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) {
47 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:46:63: error: cannot infer contextual base in reference to member 'bcp47'
44 |
45 |         let installedLocales = await SpeechTranscriber.installedLocales
46 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) {
   |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
47 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
48 |                 try await request.downloadAndInstall()
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:47:40: error: cannot find 'AssetInventory' in scope
45 |         let installedLocales = await SpeechTranscriber.installedLocales
46 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) {
47 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
   |                                        `- error: cannot find 'AssetInventory' in scope
48 |                 try await request.downloadAndInstall()
49 |             }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:52:24: error: cannot find 'SpeechAnalyzer' in scope
50 |         }
51 |
52 |         let analyzer = SpeechAnalyzer(modules: modules)
   |                        `- error: cannot find 'SpeechAnalyzer' in scope
53 |         let audioFile = try AVAudioFile(forReading: file)
54 |         try await analyzer.start(inputAudioFile: audioFile, finishAfterFile: true)
[197/207] Compiling yap OutputFormat.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/OutputFormat.swift:134:48: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
132 |             .sentences(maxLength: maxLength)
133 |             .compactMap { sentence in
134 |                 guard let timeRange = sentence.audioTimeRange else { return nil }
    |                                                `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
135 |                 let words = allWords?.filter {
136 |                     $0.timeRange.start.seconds >= timeRange.start.seconds
[198/207] Compiling yap Transcribe.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:56:15: error: cannot find 'SpeechTranscriber' in scope
 54 |         }
 55 |
 56 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 57 |             noora.error(.alert("SpeechTranscriber is not available on this device"))
 58 |             throw Error.speechTranscriberNotAvailable
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         }
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:62:65: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
 64 |             throw Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:63:126: error: cannot infer key path type from context; consider explicitly specifying a root type
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
    |                                                                                                                              `- error: cannot infer key path type from context; consider explicitly specifying a root type
 64 |             throw Error.unsupportedLocale
 65 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:67:29: error: cannot find 'AssetInventory' in scope
 65 |         }
 66 |
 67 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:70:19: error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
 70 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 71 |
 72 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:72:27: error: cannot find 'SpeechTranscriber' in scope
 70 |         try await AssetInventory.reserve(locale: locale)
 71 |
 72 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:74:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 72 |         let transcriber = SpeechTranscriber(
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:76:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:78:27: error: cannot find type 'SpeechModule' in scope
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:79:38: error: cannot find 'SpeechTranscriber' in scope
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:80:63: error: cannot infer contextual base in reference to member 'bcp47'
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
 82 |                 try await noora.progressBarStep(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:81:40: error: cannot find 'AssetInventory' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 82 |                 try await noora.progressBarStep(
 83 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:103:24: error: cannot find 'SpeechAnalyzer' in scope
101 |         }
102 |
103 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
104 |
105 |         let audioFile = try AVAudioFile(forReading: inputFile)
[199/207] Compiling yap MCP.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
[200/207] Compiling yap ListenAndDictate.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:50:15: error: cannot find 'SpeechTranscriber' in scope
 48 |
 49 |     @MainActor mutating func run() async throws {
 50 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 51 |             throw Transcribe.Error.speechTranscriberNotAvailable
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:54:38: error: cannot find 'SpeechTranscriber' in scope
 52 |         }
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 56 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:55:65: error: cannot infer contextual base in reference to member 'bcp47'
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 56 |             throw Transcribe.Error.unsupportedLocale
 57 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:59:29: error: cannot find 'AssetInventory' in scope
 57 |         }
 58 |
 59 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:62:19: error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
 62 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:64:39: error: cannot find type 'SpeechTranscriber' in scope
 62 |         try await AssetInventory.reserve(locale: locale)
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
    |                                       `- error: cannot find type 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:65:35: error: cannot find type 'SpeechTranscriber' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                   `- error: cannot find type 'SpeechTranscriber' in scope
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:67:30: error: cannot find 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 68 |             locale: locale,
 69 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:73:30: error: cannot find 'SpeechTranscriber' in scope
 71 |             attributeOptions: attributeOptions
 72 |         )
 73 |         let sysTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 74 |             locale: locale,
 75 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:79:27: error: cannot find type 'SpeechModule' in scope
 77 |             attributeOptions: attributeOptions
 78 |         )
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:81:38: error: cannot find 'SpeechTranscriber' in scope
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 83 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:82:63: error: cannot infer contextual base in reference to member 'bcp47'
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 83 |             let piped = isatty(STDOUT_FILENO) == 0
 84 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:90:40: error: cannot find 'AssetInventory' in scope
 88 |                 Noora()
 89 |             }
 90 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 91 |                 try await noora.progressBarStep(
 92 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:113:27: error: cannot find 'SpeechAnalyzer' in scope
111 |
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:83: error: cannot find 'AnalyzerInput' in scope
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:56: error: generic parameter 'Element' could not be inferred
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:116:37: error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
117 |             compatibleWith: [micTranscriber]
118 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:204:70: error: cannot find type 'AnalyzerInput' in scope
202 |     // MARK: Lifecycle
203 |
204 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) throws {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
205 |         self.targetFormat = targetFormat
206 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:130:27: error: cannot find 'SpeechAnalyzer' in scope
128 |
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:83: error: cannot find 'AnalyzerInput' in scope
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:56: error: generic parameter 'Element' could not be inferred
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:133:37: error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
134 |             compatibleWith: [sysTranscriber]
135 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:237:70: error: cannot find type 'AnalyzerInput' in scope
235 |     // MARK: Lifecycle
236 |
237 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
238 |         self.targetFormat = targetFormat
239 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:282:56: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
280 |                     let allWords = includeWords ? chunk.wordTimestamps() : nil
281 |                     for sentence in chunk.sentences(maxLength: sentenceMaxLength) {
282 |                         guard let timeRange = sentence.audioTimeRange else { continue }
    |                                                        `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
283 |                         let text = String(sentence.characters).trimmingCharacters(in: .whitespacesAndNewlines)
284 |                         guard !text.isEmpty else { continue }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:141:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
139 |         let content: SCShareableContent
140 |         do {
141 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
142 |         } catch {
143 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[201/207] Emitting module yap
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:204:70: error: cannot find type 'AnalyzerInput' in scope
202 |     // MARK: Lifecycle
203 |
204 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) throws {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
205 |         self.targetFormat = targetFormat
206 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:230:40: error: cannot find type 'AnalyzerInput' in scope
228 |     let audioEngine: AVAudioEngine
229 |     let converter: AVAudioConverter
230 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
231 |     let targetFormat: AVAudioFormat
232 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:39:15: error: cannot find 'SpeechTranscriber' in scope
 37 |
 38 |     @MainActor mutating func run() async throws {
 39 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 40 |             throw Transcribe.Error.speechTranscriberNotAvailable
 41 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:43:38: error: cannot find 'SpeechTranscriber' in scope
 41 |         }
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 45 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:44:65: error: cannot infer contextual base in reference to member 'bcp47'
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 45 |             throw Transcribe.Error.unsupportedLocale
 46 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:48:29: error: cannot find 'AssetInventory' in scope
 46 |         }
 47 |
 48 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:51:19: error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
 51 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 52 |
 53 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:53:27: error: cannot find 'SpeechTranscriber' in scope
 51 |         try await AssetInventory.reserve(locale: locale)
 52 |
 53 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:55:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 53 |         let transcriber = SpeechTranscriber(
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:57:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:59:27: error: cannot find type 'SpeechModule' in scope
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         let modules: [any SpeechModule] = [transcriber]
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 63 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:62:63: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             let piped = isatty(STDOUT_FILENO) == 0
 64 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:70:40: error: cannot find 'AssetInventory' in scope
 68 |                 Noora()
 69 |             }
 70 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 71 |                 try await noora.progressBarStep(
 72 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:92:24: error: cannot find 'SpeechAnalyzer' in scope
 90 |         }
 91 |
 92 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 93 |
 94 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:77: error: cannot find 'AnalyzerInput' in scope
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:50: error: generic parameter 'Element' could not be inferred
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:98:40: error: cannot find 'SpeechAnalyzer' in scope
 96 |
 97 |         // Get target audio format from the analyzer
 98 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
 99 |             compatibleWith: modules
100 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:237:70: error: cannot find type 'AnalyzerInput' in scope
235 |     // MARK: Lifecycle
236 |
237 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
238 |         self.targetFormat = targetFormat
239 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:245:40: error: cannot find type 'AnalyzerInput' in scope
243 |
244 |     let targetFormat: AVAudioFormat
245 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
246 |     var converter: AVAudioConverter?
247 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:41:15: error: cannot find 'SpeechTranscriber' in scope
 39 |
 40 |     @MainActor mutating func run() async throws {
 41 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 42 |             throw Transcribe.Error.speechTranscriberNotAvailable
 43 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:45:38: error: cannot find 'SpeechTranscriber' in scope
 43 |         }
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 47 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:46:65: error: cannot infer contextual base in reference to member 'bcp47'
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 47 |             throw Transcribe.Error.unsupportedLocale
 48 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:50:29: error: cannot find 'AssetInventory' in scope
 48 |         }
 49 |
 50 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:53:19: error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
 53 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 54 |
 55 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:55:27: error: cannot find 'SpeechTranscriber' in scope
 53 |         try await AssetInventory.reserve(locale: locale)
 54 |
 55 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:57:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 55 |         let transcriber = SpeechTranscriber(
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:59:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:61:27: error: cannot find type 'SpeechModule' in scope
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:63:38: error: cannot find 'SpeechTranscriber' in scope
 61 |         let modules: [any SpeechModule] = [transcriber]
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 65 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:64:63: error: cannot infer contextual base in reference to member 'bcp47'
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 65 |             let piped = isatty(STDOUT_FILENO) == 0
 66 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:72:40: error: cannot find 'AssetInventory' in scope
 70 |                 Noora()
 71 |             }
 72 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 73 |                 try await noora.progressBarStep(
 74 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:94:24: error: cannot find 'SpeechAnalyzer' in scope
 92 |         }
 93 |
 94 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 95 |
 96 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:77: error: cannot find 'AnalyzerInput' in scope
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:50: error: generic parameter 'Element' could not be inferred
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:100:40: error: cannot find 'SpeechAnalyzer' in scope
 98 |
 99 |         // Get target audio format from the analyzer
100 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
101 |             compatibleWith: modules
102 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:110:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
108 |         let content: SCShareableContent
109 |         do {
110 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
111 |         } catch {
112 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:50:15: error: cannot find 'SpeechTranscriber' in scope
 48 |
 49 |     @MainActor mutating func run() async throws {
 50 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 51 |             throw Transcribe.Error.speechTranscriberNotAvailable
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:54:38: error: cannot find 'SpeechTranscriber' in scope
 52 |         }
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 56 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:55:65: error: cannot infer contextual base in reference to member 'bcp47'
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 56 |             throw Transcribe.Error.unsupportedLocale
 57 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:59:29: error: cannot find 'AssetInventory' in scope
 57 |         }
 58 |
 59 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:62:19: error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
 62 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:64:39: error: cannot find type 'SpeechTranscriber' in scope
 62 |         try await AssetInventory.reserve(locale: locale)
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
    |                                       `- error: cannot find type 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:65:35: error: cannot find type 'SpeechTranscriber' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                   `- error: cannot find type 'SpeechTranscriber' in scope
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:67:30: error: cannot find 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 68 |             locale: locale,
 69 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:73:30: error: cannot find 'SpeechTranscriber' in scope
 71 |             attributeOptions: attributeOptions
 72 |         )
 73 |         let sysTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 74 |             locale: locale,
 75 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:79:27: error: cannot find type 'SpeechModule' in scope
 77 |             attributeOptions: attributeOptions
 78 |         )
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:81:38: error: cannot find 'SpeechTranscriber' in scope
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 83 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:82:63: error: cannot infer contextual base in reference to member 'bcp47'
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 83 |             let piped = isatty(STDOUT_FILENO) == 0
 84 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:90:40: error: cannot find 'AssetInventory' in scope
 88 |                 Noora()
 89 |             }
 90 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 91 |                 try await noora.progressBarStep(
 92 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:113:27: error: cannot find 'SpeechAnalyzer' in scope
111 |
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:83: error: cannot find 'AnalyzerInput' in scope
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:56: error: generic parameter 'Element' could not be inferred
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:116:37: error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
117 |             compatibleWith: [micTranscriber]
118 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:130:27: error: cannot find 'SpeechAnalyzer' in scope
128 |
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:83: error: cannot find 'AnalyzerInput' in scope
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:56: error: generic parameter 'Element' could not be inferred
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:133:37: error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
134 |             compatibleWith: [sysTranscriber]
135 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:282:56: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
280 |                     let allWords = includeWords ? chunk.wordTimestamps() : nil
281 |                     for sentence in chunk.sentences(maxLength: sentenceMaxLength) {
282 |                         guard let timeRange = sentence.audioTimeRange else { continue }
    |                                                        `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
283 |                         let text = String(sentence.characters).trimmingCharacters(in: .whitespacesAndNewlines)
284 |                         guard !text.isEmpty else { continue }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:141:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
139 |         let content: SCShareableContent
140 |         do {
141 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
142 |         } catch {
143 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:56:15: error: cannot find 'SpeechTranscriber' in scope
 54 |         }
 55 |
 56 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 57 |             noora.error(.alert("SpeechTranscriber is not available on this device"))
 58 |             throw Error.speechTranscriberNotAvailable
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         }
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:62:65: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
 64 |             throw Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:63:126: error: cannot infer key path type from context; consider explicitly specifying a root type
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
    |                                                                                                                              `- error: cannot infer key path type from context; consider explicitly specifying a root type
 64 |             throw Error.unsupportedLocale
 65 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:67:29: error: cannot find 'AssetInventory' in scope
 65 |         }
 66 |
 67 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:70:19: error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
 70 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 71 |
 72 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:72:27: error: cannot find 'SpeechTranscriber' in scope
 70 |         try await AssetInventory.reserve(locale: locale)
 71 |
 72 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:74:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 72 |         let transcriber = SpeechTranscriber(
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:76:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:78:27: error: cannot find type 'SpeechModule' in scope
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:79:38: error: cannot find 'SpeechTranscriber' in scope
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:80:63: error: cannot infer contextual base in reference to member 'bcp47'
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
 82 |                 try await noora.progressBarStep(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:81:40: error: cannot find 'AssetInventory' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 82 |                 try await noora.progressBarStep(
 83 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:103:24: error: cannot find 'SpeechAnalyzer' in scope
101 |         }
102 |
103 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
104 |
105 |         let audioFile = try AVAudioFile(forReading: inputFile)
[202/207] Compiling yap AttributedString+Extensions.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/Extensions/AttributedString+Extensions.swift:12:106: error: 'nil' is not compatible with closure result type '(text: String, timeRange: CMTimeRange)'
 10 |         return tokenizer.tokens(for: string.startIndex..<string.endIndex).compactMap { wordRange in
 11 |             guard let attrStart = AttributedString.Index(wordRange.lowerBound, within: self),
 12 |                   let attrEnd = AttributedString.Index(wordRange.upperBound, within: self) else { return nil }
    |                                                                                                          `- error: 'nil' is not compatible with closure result type '(text: String, timeRange: CMTimeRange)'
 13 |             let wordSlice = self[attrStart..<attrEnd]
 14 |             let text = String(wordSlice.characters).trimmingCharacters(in: .whitespacesAndNewlines)
/Users/admin/builder/spi-builder-workspace/Sources/yap/Extensions/AttributedString+Extensions.swift:29:39: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 27 |         var previousEndTime: TimeInterval?
 28 |         for run in runs {
 29 |             guard let timeRange = run.audioTimeRange else { continue }
    |                                       `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 30 |             let text = String(self[run.range].characters)
 31 |             if text.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty { continue }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Extensions/AttributedString+Extensions.swift:99:26: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 97 |                 !String(self[$0.range].characters)
 98 |                     .trimmingCharacters(in: .whitespacesAndNewlines).isEmpty
 99 |             }.compactMap(\.audioTimeRange)
    |                          `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
100 |             guard let first = audioTimeRanges.first,
101 |                   let last = audioTimeRanges.last else { return nil }
[203/207] Compiling yap Dictate.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:204:70: error: cannot find type 'AnalyzerInput' in scope
202 |     // MARK: Lifecycle
203 |
204 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) throws {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
205 |         self.targetFormat = targetFormat
206 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:230:40: error: cannot find type 'AnalyzerInput' in scope
228 |     let audioEngine: AVAudioEngine
229 |     let converter: AVAudioConverter
230 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
231 |     let targetFormat: AVAudioFormat
232 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:39:15: error: cannot find 'SpeechTranscriber' in scope
 37 |
 38 |     @MainActor mutating func run() async throws {
 39 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 40 |             throw Transcribe.Error.speechTranscriberNotAvailable
 41 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:43:38: error: cannot find 'SpeechTranscriber' in scope
 41 |         }
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 45 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:44:65: error: cannot infer contextual base in reference to member 'bcp47'
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 45 |             throw Transcribe.Error.unsupportedLocale
 46 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:48:29: error: cannot find 'AssetInventory' in scope
 46 |         }
 47 |
 48 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:51:19: error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
 51 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 52 |
 53 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:53:27: error: cannot find 'SpeechTranscriber' in scope
 51 |         try await AssetInventory.reserve(locale: locale)
 52 |
 53 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:55:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 53 |         let transcriber = SpeechTranscriber(
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:57:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:59:27: error: cannot find type 'SpeechModule' in scope
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         let modules: [any SpeechModule] = [transcriber]
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 63 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:62:63: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             let piped = isatty(STDOUT_FILENO) == 0
 64 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:70:40: error: cannot find 'AssetInventory' in scope
 68 |                 Noora()
 69 |             }
 70 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 71 |                 try await noora.progressBarStep(
 72 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:92:24: error: cannot find 'SpeechAnalyzer' in scope
 90 |         }
 91 |
 92 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 93 |
 94 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:77: error: cannot find 'AnalyzerInput' in scope
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:50: error: generic parameter 'Element' could not be inferred
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:98:40: error: cannot find 'SpeechAnalyzer' in scope
 96 |
 97 |         // Get target audio format from the analyzer
 98 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
 99 |             compatibleWith: modules
100 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:269:37: error: cannot find 'AnalyzerInput' in scope
267 |
268 |         if error == nil, convertedBuffer.frameLength > 0 {
269 |             inputContinuation.yield(AnalyzerInput(buffer: convertedBuffer))
    |                                     `- error: cannot find 'AnalyzerInput' in scope
270 |         }
271 |     }
[204/207] Compiling yap Listen.swift
<unknown>:0: warning: upcoming feature 'InferSendableFromCaptures' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'GlobalActorIsolatedTypesUsability' is already enabled as of Swift version 6
<unknown>:0: warning: upcoming feature 'DisableOutwardActorInference' is already enabled as of Swift version 6
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:237:70: error: cannot find type 'AnalyzerInput' in scope
235 |     // MARK: Lifecycle
236 |
237 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
238 |         self.targetFormat = targetFormat
239 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:245:40: error: cannot find type 'AnalyzerInput' in scope
243 |
244 |     let targetFormat: AVAudioFormat
245 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
246 |     var converter: AVAudioConverter?
247 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:41:15: error: cannot find 'SpeechTranscriber' in scope
 39 |
 40 |     @MainActor mutating func run() async throws {
 41 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 42 |             throw Transcribe.Error.speechTranscriberNotAvailable
 43 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:45:38: error: cannot find 'SpeechTranscriber' in scope
 43 |         }
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 47 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:46:65: error: cannot infer contextual base in reference to member 'bcp47'
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 47 |             throw Transcribe.Error.unsupportedLocale
 48 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:50:29: error: cannot find 'AssetInventory' in scope
 48 |         }
 49 |
 50 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:53:19: error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
 53 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 54 |
 55 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:55:27: error: cannot find 'SpeechTranscriber' in scope
 53 |         try await AssetInventory.reserve(locale: locale)
 54 |
 55 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:57:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 55 |         let transcriber = SpeechTranscriber(
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:59:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:61:27: error: cannot find type 'SpeechModule' in scope
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:63:38: error: cannot find 'SpeechTranscriber' in scope
 61 |         let modules: [any SpeechModule] = [transcriber]
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 65 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:64:63: error: cannot infer contextual base in reference to member 'bcp47'
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 65 |             let piped = isatty(STDOUT_FILENO) == 0
 66 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:72:40: error: cannot find 'AssetInventory' in scope
 70 |                 Noora()
 71 |             }
 72 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 73 |                 try await noora.progressBarStep(
 74 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:94:24: error: cannot find 'SpeechAnalyzer' in scope
 92 |         }
 93 |
 94 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 95 |
 96 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:77: error: cannot find 'AnalyzerInput' in scope
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:50: error: generic parameter 'Element' could not be inferred
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:100:40: error: cannot find 'SpeechAnalyzer' in scope
 98 |
 99 |         // Get target audio format from the analyzer
100 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
101 |             compatibleWith: modules
102 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:110:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
108 |         let content: SCShareableContent
109 |         do {
110 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
111 |         } catch {
112 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:292:45: error: cannot find 'AnalyzerInput' in scope
290 |
291 |                 if error == nil, convertedBuffer.frameLength > 0 {
292 |                     inputContinuation.yield(AnalyzerInput(buffer: convertedBuffer))
    |                                             `- error: cannot find 'AnalyzerInput' in scope
293 |                 }
294 |             }
Fetching https://github.com/tuist/Noora.git
Fetching https://github.com/modelcontextprotocol/swift-sdk.git
Fetching https://github.com/apple/swift-argument-parser.git from cache
[1/2871] Fetching swift-sdk
[1006/20921] Fetching swift-sdk, noora
Fetched https://github.com/apple/swift-argument-parser.git from cache (1.35s)
Fetched https://github.com/modelcontextprotocol/swift-sdk.git from cache (3.58s)
Fetched https://github.com/tuist/Noora.git from cache (3.58s)
Computing version for https://github.com/modelcontextprotocol/swift-sdk.git
Computed https://github.com/modelcontextprotocol/swift-sdk.git at 0.10.2 (4.08s)
Fetching https://github.com/mattt/eventsource.git
Fetching https://github.com/apple/swift-log.git from cache
Fetching https://github.com/apple/swift-system.git from cache
[1/199] Fetching eventsource
Fetched https://github.com/mattt/eventsource.git from cache (0.78s)
Fetched https://github.com/apple/swift-log.git from cache (1.10s)
Fetched https://github.com/apple/swift-system.git from cache (1.10s)
Computing version for https://github.com/mattt/eventsource.git
Computed https://github.com/mattt/eventsource.git at 1.3.0 (1.58s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.7.0 (0.53s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.9.1 (0.50s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.6.4 (0.49s)
Computing version for https://github.com/tuist/Noora.git
Computed https://github.com/tuist/Noora.git at 0.54.2 (0.46s)
Fetching https://github.com/onevcat/Rainbow
Fetching https://github.com/tuist/path
[1/1420] Fetching rainbow
[58/1809] Fetching rainbow, path
Fetched https://github.com/tuist/path from cache (0.90s)
Fetched https://github.com/onevcat/Rainbow from cache (0.90s)
Computing version for https://github.com/tuist/path
Computed https://github.com/tuist/path at 0.3.8 (3.96s)
Computing version for https://github.com/onevcat/Rainbow
Computed https://github.com/onevcat/Rainbow at 4.2.1 (2.40s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.9.1
Creating working copy for https://github.com/modelcontextprotocol/swift-sdk.git
Working copy of https://github.com/modelcontextprotocol/swift-sdk.git resolved at 0.10.2
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.7.0
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.6.4
Creating working copy for https://github.com/tuist/path
Working copy of https://github.com/tuist/path resolved at 0.3.8
Creating working copy for https://github.com/tuist/Noora.git
Working copy of https://github.com/tuist/Noora.git resolved at 0.54.2
Creating working copy for https://github.com/onevcat/Rainbow
Working copy of https://github.com/onevcat/Rainbow resolved at 4.2.1
Creating working copy for https://github.com/mattt/eventsource.git
Working copy of https://github.com/mattt/eventsource.git resolved at 1.3.0
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
[1/1] Compiling plugin GenerateManual
[2/2] Compiling plugin GenerateDoccReference
Building for debugging...
[2/7] Write swift-version-2F0A5646E1D333AE.txt
[4/63] Emitting module Path
[5/63] Compiling Path Path.swift
[6/63] Compiling Logging MetadataProvider.swift
[7/63] Emitting module ArgumentParserToolInfo
[8/63] Compiling ArgumentParserToolInfo ToolInfo.swift
[9/63] Compiling EventSource AsyncEventsSequence.swift
[10/63] Compiling Rainbow Style.swift
[11/64] Compiling Logging Locks.swift
[12/64] Compiling Logging LogHandler.swift
[13/64] Emitting module Logging
[14/64] Compiling Logging Logging.swift
[15/64] Compiling Rainbow StringGenerator.swift
[16/85] Emitting module EventSource
[17/111] Compiling ArgumentParser ParentCommand.swift
[18/111] Compiling ArgumentParser AsyncParsableCommand.swift
[19/111] Compiling ArgumentParser MessageInfo.swift
[20/111] Compiling ArgumentParser CompletionKind.swift
[21/111] Compiling ArgumentParser Errors.swift
[22/111] Compiling ArgumentParser Flag.swift
[23/114] Emitting module Rainbow
[24/114] Compiling ArgumentParser EnumerableFlag.swift
[25/114] Compiling ArgumentParser ExpressibleByArgument.swift
[26/114] Compiling ArgumentParser CommandConfiguration.swift
[27/114] Compiling ArgumentParser CommandGroup.swift
[28/114] Compiling ArgumentParser Argument.swift
[29/114] Compiling ArgumentParser ArgumentDiscussion.swift
[30/114] Compiling Rainbow String+ConditionalStyling.swift
[31/114] Compiling Rainbow String+Rainbow.swift
[32/114] Compiling Rainbow StyledStringBuilder.swift
[33/114] Compiling ArgumentParser FishCompletionsGenerator.swift
[34/114] Compiling ArgumentParser ZshCompletionsGenerator.swift
[35/114] Compiling ArgumentParser BashCompletionsGenerator.swift
[36/114] Compiling ArgumentParser CompletionsGenerator.swift
[37/114] Compiling EventSource AsyncSequence+Events.swift
[38/114] Compiling EventSource EventSource.swift
[39/114] Emitting module SystemPackage
[49/114] Compiling SystemPackage Util+StringArray.swift
[50/114] Compiling SystemPackage Util.swift
[51/114] Compiling SystemPackage UtilConsumers.swift
[52/154] Compiling Noora Renderer.swift
[53/154] Compiling Noora Spinner.swift
[54/154] Compiling Noora Alert.swift
[55/154] Compiling Noora Theme.swift
[56/154] Compiling Noora KeyStrokeListener.swift
[57/154] Compiling Noora LockIsolated.swift
[58/154] Compiling Noora ProgressStep.swift
[59/154] Compiling Noora TextPrompt.swift
[60/154] Compiling Noora YesOrNoChoicePrompt.swift
[61/154] Compiling Noora NooraError.swift
[62/154] Compiling Noora NooraMock.swift
[63/154] Compiling Noora StandardPipelineType.swift
[67/173] Compiling Noora Content.swift
[68/173] Compiling Noora Stack.swift
[69/173] Compiling MCP Sampling.swift
[70/173] Compiling MCP Data+Extensions.swift
[71/173] Compiling Noora CollapsibleStep.swift
[72/173] Compiling Noora MultipleChoicePrompt.swift
[73/173] Compiling Noora ProgressBarStep.swift
[74/178] Emitting module Noora
[75/178] Compiling MCP Error.swift
[76/178] Compiling MCP ID.swift
[77/178] Compiling MCP Lifecycle.swift
[78/178] Compiling MCP Messages.swift
[79/178] Compiling MCP InMemoryTransport.swift
[80/182] Compiling Noora StandardPipelines.swift
[81/182] Compiling Noora Terminal.swift
[82/182] Compiling Noora TerminalText+DisplayWidth.swift
[83/182] Compiling Noora TerminalText.swift
[84/182] Compiling Noora TableData.swift
[85/182] Compiling Noora TableRenderer.swift
[86/182] Compiling Noora TableStyle.swift
[87/182] Compiling Noora UpdatingSelectableTable.swift
[88/182] Compiling Noora UpdatingTable.swift
[89/182] Compiling Noora Character+isPrintable.swift
[90/182] Compiling Noora String+Rainbow.swift
[91/182] Compiling Noora String+ValidatableError.swift
[92/182] Compiling Noora Noora.swift
[93/182] Emitting module ArgumentParser
[94/182] Compiling MCP Ping.swift
[95/182] Compiling MCP Value.swift
[96/182] Compiling MCP Versioning.swift
[97/182] Compiling MCP Client.swift
[98/182] Compiling MCP Prompts.swift
[104/182] Compiling MCP NetworkTransport.swift
[105/182] Compiling MCP Resources.swift
[106/182] Compiling MCP StdioTransport.swift
[107/182] Compiling MCP UnitInterval.swift
[108/182] Compiling MCP Transport.swift
[109/182] Compiling MCP HTTPClientTransport.swift
[131/182] Compiling ArgumentParser CodingKeyValidator.swift
[132/182] Compiling ArgumentParser NonsenseFlagsValidator.swift
[133/182] Compiling ArgumentParser ParsableArgumentsValidation.swift
[134/182] Compiling ArgumentParser PositionalArgumentsValidator.swift
[135/182] Compiling ArgumentParser UniqueNamesValidator.swift
[144/182] Compiling Noora LengthValidationRule.swift
[145/182] Compiling Noora NonEmptyValidationRule.swift
[146/182] Compiling Noora RegexValidationRule.swift
[147/182] Compiling Noora Validator.swift
[148/182] Compiling ArgumentParser ArgumentDefinition.swift
[149/182] Compiling ArgumentParser ArgumentSet.swift
[150/182] Compiling ArgumentParser CommandParser.swift
[159/183] Write Objects.LinkFileList
/Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning duplicate member name 'String+Rainbow.swift.o' from '/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/Noora.build/String+Rainbow.swift.o(String+Rainbow.swift.o)' and '/Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/Rainbow.build/String+Rainbow.swift.o(String+Rainbow.swift.o)'
[160/183] Archiving libNoora.a
[164/185] Compiling MCP Server.swift
[165/185] Compiling MCP Tools.swift
[182/185] Emitting module MCP
[183/195] Compiling yap Yap.swift
[184/195] Compiling yap TranscriptionEngine.swift
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:23:15: error: cannot find 'SpeechTranscriber' in scope
21 |         }
22 |
23 |         guard SpeechTranscriber.isAvailable else {
   |               `- error: cannot find 'SpeechTranscriber' in scope
24 |             throw TranscriptionError.speechTranscriberNotAvailable
25 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:27:38: error: cannot find 'SpeechTranscriber' in scope
25 |         }
26 |
27 |         let supportedLocales = await SpeechTranscriber.supportedLocales
   |                                      `- error: cannot find 'SpeechTranscriber' in scope
28 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) else {
29 |             throw TranscriptionError.unsupportedLocale(options.locale.identifier)
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:28:65: error: cannot infer contextual base in reference to member 'bcp47'
26 |
27 |         let supportedLocales = await SpeechTranscriber.supportedLocales
28 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) else {
   |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
29 |             throw TranscriptionError.unsupportedLocale(options.locale.identifier)
30 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:32:29: error: cannot find 'AssetInventory' in scope
30 |         }
31 |
32 |         for locale in await AssetInventory.reservedLocales {
   |                             `- error: cannot find 'AssetInventory' in scope
33 |             await AssetInventory.release(reservedLocale: locale)
34 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:35:19: error: cannot find 'AssetInventory' in scope
33 |             await AssetInventory.release(reservedLocale: locale)
34 |         }
35 |         try await AssetInventory.reserve(locale: options.locale)
   |                   `- error: cannot find 'AssetInventory' in scope
36 |
37 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:37:27: error: cannot find 'SpeechTranscriber' in scope
35 |         try await AssetInventory.reserve(locale: options.locale)
36 |
37 |         let transcriber = SpeechTranscriber(
   |                           `- error: cannot find 'SpeechTranscriber' in scope
38 |             locale: options.locale,
39 |             transcriptionOptions: options.censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:39:54: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
37 |         let transcriber = SpeechTranscriber(
38 |             locale: options.locale,
39 |             transcriptionOptions: options.censor ? [.etiquetteReplacements] : [],
   |                                                      `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
40 |             reportingOptions: [],
41 |             attributeOptions: options.outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:41:76: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
39 |             transcriptionOptions: options.censor ? [.etiquetteReplacements] : [],
40 |             reportingOptions: [],
41 |             attributeOptions: options.outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
   |                                                                            `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
42 |         )
43 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:43:27: error: cannot find type 'SpeechModule' in scope
41 |             attributeOptions: options.outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
42 |         )
43 |         let modules: [any SpeechModule] = [transcriber]
   |                           `- error: cannot find type 'SpeechModule' in scope
44 |
45 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:45:38: error: cannot find 'SpeechTranscriber' in scope
43 |         let modules: [any SpeechModule] = [transcriber]
44 |
45 |         let installedLocales = await SpeechTranscriber.installedLocales
   |                                      `- error: cannot find 'SpeechTranscriber' in scope
46 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) {
47 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:46:63: error: cannot infer contextual base in reference to member 'bcp47'
44 |
45 |         let installedLocales = await SpeechTranscriber.installedLocales
46 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) {
   |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
47 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
48 |                 try await request.downloadAndInstall()
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:47:40: error: cannot find 'AssetInventory' in scope
45 |         let installedLocales = await SpeechTranscriber.installedLocales
46 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == options.locale.identifier(.bcp47) }) {
47 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
   |                                        `- error: cannot find 'AssetInventory' in scope
48 |                 try await request.downloadAndInstall()
49 |             }
/Users/admin/builder/spi-builder-workspace/Sources/yap/TranscriptionEngine.swift:52:24: error: cannot find 'SpeechAnalyzer' in scope
50 |         }
51 |
52 |         let analyzer = SpeechAnalyzer(modules: modules)
   |                        `- error: cannot find 'SpeechAnalyzer' in scope
53 |         let audioFile = try AVAudioFile(forReading: file)
54 |         try await analyzer.start(inputAudioFile: audioFile, finishAfterFile: true)
[185/195] Compiling yap MCP.swift
[186/195] Compiling yap OutputFormat.swift
/Users/admin/builder/spi-builder-workspace/Sources/yap/OutputFormat.swift:134:48: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
132 |             .sentences(maxLength: maxLength)
133 |             .compactMap { sentence in
134 |                 guard let timeRange = sentence.audioTimeRange else { return nil }
    |                                                `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
135 |                 let words = allWords?.filter {
136 |                     $0.timeRange.start.seconds >= timeRange.start.seconds
[187/195] Compiling yap Transcribe.swift
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:56:15: error: cannot find 'SpeechTranscriber' in scope
 54 |         }
 55 |
 56 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 57 |             noora.error(.alert("SpeechTranscriber is not available on this device"))
 58 |             throw Error.speechTranscriberNotAvailable
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         }
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:62:65: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
 64 |             throw Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:63:126: error: cannot infer key path type from context; consider explicitly specifying a root type
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
    |                                                                                                                              `- error: cannot infer key path type from context; consider explicitly specifying a root type
 64 |             throw Error.unsupportedLocale
 65 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:67:29: error: cannot find 'AssetInventory' in scope
 65 |         }
 66 |
 67 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:70:19: error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
 70 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 71 |
 72 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:72:27: error: cannot find 'SpeechTranscriber' in scope
 70 |         try await AssetInventory.reserve(locale: locale)
 71 |
 72 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:74:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 72 |         let transcriber = SpeechTranscriber(
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:76:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:78:27: error: cannot find type 'SpeechModule' in scope
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:79:38: error: cannot find 'SpeechTranscriber' in scope
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:80:63: error: cannot infer contextual base in reference to member 'bcp47'
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
 82 |                 try await noora.progressBarStep(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:81:40: error: cannot find 'AssetInventory' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 82 |                 try await noora.progressBarStep(
 83 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:103:24: error: cannot find 'SpeechAnalyzer' in scope
101 |         }
102 |
103 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
104 |
105 |         let audioFile = try AVAudioFile(forReading: inputFile)
error: emit-module command failed with exit code 1 (use -v to see invocation)
[188/195] Emitting module yap
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:204:70: error: cannot find type 'AnalyzerInput' in scope
202 |     // MARK: Lifecycle
203 |
204 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) throws {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
205 |         self.targetFormat = targetFormat
206 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:230:40: error: cannot find type 'AnalyzerInput' in scope
228 |     let audioEngine: AVAudioEngine
229 |     let converter: AVAudioConverter
230 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
231 |     let targetFormat: AVAudioFormat
232 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:39:15: error: cannot find 'SpeechTranscriber' in scope
 37 |
 38 |     @MainActor mutating func run() async throws {
 39 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 40 |             throw Transcribe.Error.speechTranscriberNotAvailable
 41 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:43:38: error: cannot find 'SpeechTranscriber' in scope
 41 |         }
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 45 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:44:65: error: cannot infer contextual base in reference to member 'bcp47'
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 45 |             throw Transcribe.Error.unsupportedLocale
 46 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:48:29: error: cannot find 'AssetInventory' in scope
 46 |         }
 47 |
 48 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:51:19: error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
 51 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 52 |
 53 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:53:27: error: cannot find 'SpeechTranscriber' in scope
 51 |         try await AssetInventory.reserve(locale: locale)
 52 |
 53 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:55:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 53 |         let transcriber = SpeechTranscriber(
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:57:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:59:27: error: cannot find type 'SpeechModule' in scope
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         let modules: [any SpeechModule] = [transcriber]
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 63 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:62:63: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             let piped = isatty(STDOUT_FILENO) == 0
 64 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:70:40: error: cannot find 'AssetInventory' in scope
 68 |                 Noora()
 69 |             }
 70 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 71 |                 try await noora.progressBarStep(
 72 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:92:24: error: cannot find 'SpeechAnalyzer' in scope
 90 |         }
 91 |
 92 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 93 |
 94 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:77: error: cannot find 'AnalyzerInput' in scope
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:50: error: generic parameter 'Element' could not be inferred
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:98:40: error: cannot find 'SpeechAnalyzer' in scope
 96 |
 97 |         // Get target audio format from the analyzer
 98 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
 99 |             compatibleWith: modules
100 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:237:70: error: cannot find type 'AnalyzerInput' in scope
235 |     // MARK: Lifecycle
236 |
237 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
238 |         self.targetFormat = targetFormat
239 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:245:40: error: cannot find type 'AnalyzerInput' in scope
243 |
244 |     let targetFormat: AVAudioFormat
245 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
246 |     var converter: AVAudioConverter?
247 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:41:15: error: cannot find 'SpeechTranscriber' in scope
 39 |
 40 |     @MainActor mutating func run() async throws {
 41 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 42 |             throw Transcribe.Error.speechTranscriberNotAvailable
 43 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:45:38: error: cannot find 'SpeechTranscriber' in scope
 43 |         }
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 47 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:46:65: error: cannot infer contextual base in reference to member 'bcp47'
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 47 |             throw Transcribe.Error.unsupportedLocale
 48 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:50:29: error: cannot find 'AssetInventory' in scope
 48 |         }
 49 |
 50 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:53:19: error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
 53 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 54 |
 55 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:55:27: error: cannot find 'SpeechTranscriber' in scope
 53 |         try await AssetInventory.reserve(locale: locale)
 54 |
 55 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:57:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 55 |         let transcriber = SpeechTranscriber(
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:59:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:61:27: error: cannot find type 'SpeechModule' in scope
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:63:38: error: cannot find 'SpeechTranscriber' in scope
 61 |         let modules: [any SpeechModule] = [transcriber]
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 65 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:64:63: error: cannot infer contextual base in reference to member 'bcp47'
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 65 |             let piped = isatty(STDOUT_FILENO) == 0
 66 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:72:40: error: cannot find 'AssetInventory' in scope
 70 |                 Noora()
 71 |             }
 72 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 73 |                 try await noora.progressBarStep(
 74 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:94:24: error: cannot find 'SpeechAnalyzer' in scope
 92 |         }
 93 |
 94 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 95 |
 96 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:77: error: cannot find 'AnalyzerInput' in scope
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:50: error: generic parameter 'Element' could not be inferred
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:100:40: error: cannot find 'SpeechAnalyzer' in scope
 98 |
 99 |         // Get target audio format from the analyzer
100 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
101 |             compatibleWith: modules
102 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:110:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
108 |         let content: SCShareableContent
109 |         do {
110 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
111 |         } catch {
112 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:50:15: error: cannot find 'SpeechTranscriber' in scope
 48 |
 49 |     @MainActor mutating func run() async throws {
 50 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 51 |             throw Transcribe.Error.speechTranscriberNotAvailable
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:54:38: error: cannot find 'SpeechTranscriber' in scope
 52 |         }
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 56 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:55:65: error: cannot infer contextual base in reference to member 'bcp47'
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 56 |             throw Transcribe.Error.unsupportedLocale
 57 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:59:29: error: cannot find 'AssetInventory' in scope
 57 |         }
 58 |
 59 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:62:19: error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
 62 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:64:39: error: cannot find type 'SpeechTranscriber' in scope
 62 |         try await AssetInventory.reserve(locale: locale)
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
    |                                       `- error: cannot find type 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:65:35: error: cannot find type 'SpeechTranscriber' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                   `- error: cannot find type 'SpeechTranscriber' in scope
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:67:30: error: cannot find 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 68 |             locale: locale,
 69 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:73:30: error: cannot find 'SpeechTranscriber' in scope
 71 |             attributeOptions: attributeOptions
 72 |         )
 73 |         let sysTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 74 |             locale: locale,
 75 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:79:27: error: cannot find type 'SpeechModule' in scope
 77 |             attributeOptions: attributeOptions
 78 |         )
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:81:38: error: cannot find 'SpeechTranscriber' in scope
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 83 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:82:63: error: cannot infer contextual base in reference to member 'bcp47'
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 83 |             let piped = isatty(STDOUT_FILENO) == 0
 84 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:90:40: error: cannot find 'AssetInventory' in scope
 88 |                 Noora()
 89 |             }
 90 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 91 |                 try await noora.progressBarStep(
 92 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:113:27: error: cannot find 'SpeechAnalyzer' in scope
111 |
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:83: error: cannot find 'AnalyzerInput' in scope
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:56: error: generic parameter 'Element' could not be inferred
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:116:37: error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
117 |             compatibleWith: [micTranscriber]
118 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:130:27: error: cannot find 'SpeechAnalyzer' in scope
128 |
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:83: error: cannot find 'AnalyzerInput' in scope
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:56: error: generic parameter 'Element' could not be inferred
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:133:37: error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
134 |             compatibleWith: [sysTranscriber]
135 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:282:56: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
280 |                     let allWords = includeWords ? chunk.wordTimestamps() : nil
281 |                     for sentence in chunk.sentences(maxLength: sentenceMaxLength) {
282 |                         guard let timeRange = sentence.audioTimeRange else { continue }
    |                                                        `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
283 |                         let text = String(sentence.characters).trimmingCharacters(in: .whitespacesAndNewlines)
284 |                         guard !text.isEmpty else { continue }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:141:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
139 |         let content: SCShareableContent
140 |         do {
141 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
142 |         } catch {
143 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:56:15: error: cannot find 'SpeechTranscriber' in scope
 54 |         }
 55 |
 56 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 57 |             noora.error(.alert("SpeechTranscriber is not available on this device"))
 58 |             throw Error.speechTranscriberNotAvailable
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         }
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:62:65: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
 64 |             throw Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:63:126: error: cannot infer key path type from context; consider explicitly specifying a root type
 61 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 62 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 63 |             noora.error(.alert("Locale \"\(locale.identifier)\" is not supported. Supported locales:\n\(supportedLocales.map(\.identifier))"))
    |                                                                                                                              `- error: cannot infer key path type from context; consider explicitly specifying a root type
 64 |             throw Error.unsupportedLocale
 65 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:67:29: error: cannot find 'AssetInventory' in scope
 65 |         }
 66 |
 67 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:70:19: error: cannot find 'AssetInventory' in scope
 68 |             await AssetInventory.release(reservedLocale: locale)
 69 |         }
 70 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 71 |
 72 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:72:27: error: cannot find 'SpeechTranscriber' in scope
 70 |         try await AssetInventory.reserve(locale: locale)
 71 |
 72 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:74:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 72 |         let transcriber = SpeechTranscriber(
 73 |             locale: locale,
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:76:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 74 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 75 |             reportingOptions: [],
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:78:27: error: cannot find type 'SpeechModule' in scope
 76 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:79:38: error: cannot find 'SpeechTranscriber' in scope
 77 |         )
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:80:63: error: cannot infer contextual base in reference to member 'bcp47'
 78 |         let modules: [any SpeechModule] = [transcriber]
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
 82 |                 try await noora.progressBarStep(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:81:40: error: cannot find 'AssetInventory' in scope
 79 |         let installedLocales = await SpeechTranscriber.installedLocales
 80 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 81 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 82 |                 try await noora.progressBarStep(
 83 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Transcribe.swift:103:24: error: cannot find 'SpeechAnalyzer' in scope
101 |         }
102 |
103 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
104 |
105 |         let audioFile = try AVAudioFile(forReading: inputFile)
[189/195] Compiling yap Listen.swift
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:237:70: error: cannot find type 'AnalyzerInput' in scope
235 |     // MARK: Lifecycle
236 |
237 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
238 |         self.targetFormat = targetFormat
239 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:245:40: error: cannot find type 'AnalyzerInput' in scope
243 |
244 |     let targetFormat: AVAudioFormat
245 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
246 |     var converter: AVAudioConverter?
247 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:41:15: error: cannot find 'SpeechTranscriber' in scope
 39 |
 40 |     @MainActor mutating func run() async throws {
 41 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 42 |             throw Transcribe.Error.speechTranscriberNotAvailable
 43 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:45:38: error: cannot find 'SpeechTranscriber' in scope
 43 |         }
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 47 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:46:65: error: cannot infer contextual base in reference to member 'bcp47'
 44 |
 45 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 46 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 47 |             throw Transcribe.Error.unsupportedLocale
 48 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:50:29: error: cannot find 'AssetInventory' in scope
 48 |         }
 49 |
 50 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:53:19: error: cannot find 'AssetInventory' in scope
 51 |             await AssetInventory.release(reservedLocale: locale)
 52 |         }
 53 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 54 |
 55 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:55:27: error: cannot find 'SpeechTranscriber' in scope
 53 |         try await AssetInventory.reserve(locale: locale)
 54 |
 55 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:57:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 55 |         let transcriber = SpeechTranscriber(
 56 |             locale: locale,
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:59:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 57 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 58 |             reportingOptions: [],
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:61:27: error: cannot find type 'SpeechModule' in scope
 59 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 60 |         )
 61 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:63:38: error: cannot find 'SpeechTranscriber' in scope
 61 |         let modules: [any SpeechModule] = [transcriber]
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 65 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:64:63: error: cannot infer contextual base in reference to member 'bcp47'
 62 |
 63 |         let installedLocales = await SpeechTranscriber.installedLocales
 64 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 65 |             let piped = isatty(STDOUT_FILENO) == 0
 66 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:72:40: error: cannot find 'AssetInventory' in scope
 70 |                 Noora()
 71 |             }
 72 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 73 |                 try await noora.progressBarStep(
 74 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:94:24: error: cannot find 'SpeechAnalyzer' in scope
 92 |         }
 93 |
 94 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 95 |
 96 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:77: error: cannot find 'AnalyzerInput' in scope
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:97:50: error: generic parameter 'Element' could not be inferred
 95 |
 96 |         // Set up streaming input
 97 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 98 |
 99 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:100:40: error: cannot find 'SpeechAnalyzer' in scope
 98 |
 99 |         // Get target audio format from the analyzer
100 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
101 |             compatibleWith: modules
102 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:110:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
108 |         let content: SCShareableContent
109 |         do {
110 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
111 |         } catch {
112 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:292:45: error: cannot find 'AnalyzerInput' in scope
290 |
291 |                 if error == nil, convertedBuffer.frameLength > 0 {
292 |                     inputContinuation.yield(AnalyzerInput(buffer: convertedBuffer))
    |                                             `- error: cannot find 'AnalyzerInput' in scope
293 |                 }
294 |             }
[190/195] Compiling yap AttributedString+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/yap/Extensions/AttributedString+Extensions.swift:12:106: error: 'nil' is not compatible with closure result type '(text: String, timeRange: CMTimeRange)'
 10 |         return tokenizer.tokens(for: string.startIndex..<string.endIndex).compactMap { wordRange in
 11 |             guard let attrStart = AttributedString.Index(wordRange.lowerBound, within: self),
 12 |                   let attrEnd = AttributedString.Index(wordRange.upperBound, within: self) else { return nil }
    |                                                                                                          `- error: 'nil' is not compatible with closure result type '(text: String, timeRange: CMTimeRange)'
 13 |             let wordSlice = self[attrStart..<attrEnd]
 14 |             let text = String(wordSlice.characters).trimmingCharacters(in: .whitespacesAndNewlines)
/Users/admin/builder/spi-builder-workspace/Sources/yap/Extensions/AttributedString+Extensions.swift:29:39: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 27 |         var previousEndTime: TimeInterval?
 28 |         for run in runs {
 29 |             guard let timeRange = run.audioTimeRange else { continue }
    |                                       `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 30 |             let text = String(self[run.range].characters)
 31 |             if text.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty { continue }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Extensions/AttributedString+Extensions.swift:99:26: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 97 |                 !String(self[$0.range].characters)
 98 |                     .trimmingCharacters(in: .whitespacesAndNewlines).isEmpty
 99 |             }.compactMap(\.audioTimeRange)
    |                          `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
100 |             guard let first = audioTimeRanges.first,
101 |                   let last = audioTimeRanges.last else { return nil }
[191/195] Compiling yap ListenAndDictate.swift
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:50:15: error: cannot find 'SpeechTranscriber' in scope
 48 |
 49 |     @MainActor mutating func run() async throws {
 50 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 51 |             throw Transcribe.Error.speechTranscriberNotAvailable
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:54:38: error: cannot find 'SpeechTranscriber' in scope
 52 |         }
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 56 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:55:65: error: cannot infer contextual base in reference to member 'bcp47'
 53 |
 54 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 55 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 56 |             throw Transcribe.Error.unsupportedLocale
 57 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:59:29: error: cannot find 'AssetInventory' in scope
 57 |         }
 58 |
 59 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:62:19: error: cannot find 'AssetInventory' in scope
 60 |             await AssetInventory.release(reservedLocale: locale)
 61 |         }
 62 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:64:39: error: cannot find type 'SpeechTranscriber' in scope
 62 |         try await AssetInventory.reserve(locale: locale)
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
    |                                       `- error: cannot find type 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:65:35: error: cannot find type 'SpeechTranscriber' in scope
 63 |
 64 |         let transcriptionOptions: Set<SpeechTranscriber.TranscriptionOption> = censor ? [.etiquetteReplacements] : []
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                   `- error: cannot find type 'SpeechTranscriber' in scope
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:67:30: error: cannot find 'SpeechTranscriber' in scope
 65 |         let attributeOptions: Set<SpeechTranscriber.ResultAttributeOption> = outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 66 |
 67 |         let micTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 68 |             locale: locale,
 69 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:73:30: error: cannot find 'SpeechTranscriber' in scope
 71 |             attributeOptions: attributeOptions
 72 |         )
 73 |         let sysTranscriber = SpeechTranscriber(
    |                              `- error: cannot find 'SpeechTranscriber' in scope
 74 |             locale: locale,
 75 |             transcriptionOptions: transcriptionOptions,
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:79:27: error: cannot find type 'SpeechModule' in scope
 77 |             attributeOptions: attributeOptions
 78 |         )
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:81:38: error: cannot find 'SpeechTranscriber' in scope
 79 |         let modules: [any SpeechModule] = [micTranscriber, sysTranscriber]
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 83 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:82:63: error: cannot infer contextual base in reference to member 'bcp47'
 80 |
 81 |         let installedLocales = await SpeechTranscriber.installedLocales
 82 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 83 |             let piped = isatty(STDOUT_FILENO) == 0
 84 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:90:40: error: cannot find 'AssetInventory' in scope
 88 |                 Noora()
 89 |             }
 90 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 91 |                 try await noora.progressBarStep(
 92 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:113:27: error: cannot find 'SpeechAnalyzer' in scope
111 |
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:83: error: cannot find 'AnalyzerInput' in scope
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:114:56: error: generic parameter 'Element' could not be inferred
112 |         // Set up microphone pipeline
113 |         let micAnalyzer = SpeechAnalyzer(modules: [micTranscriber])
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:116:37: error: cannot find 'SpeechAnalyzer' in scope
114 |         let (micInputSequence, micInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
115 |
116 |         guard let micFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
117 |             compatibleWith: [micTranscriber]
118 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:204:70: error: cannot find type 'AnalyzerInput' in scope
202 |     // MARK: Lifecycle
203 |
204 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) throws {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
205 |         self.targetFormat = targetFormat
206 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:130:27: error: cannot find 'SpeechAnalyzer' in scope
128 |
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
    |                           `- error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:83: error: cannot find 'AnalyzerInput' in scope
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                                   `- error: cannot find 'AnalyzerInput' in scope
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:131:56: error: generic parameter 'Element' could not be inferred
129 |         // Set up system audio pipeline
130 |         let sysAnalyzer = SpeechAnalyzer(modules: [sysTranscriber])
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                        |- error: generic parameter 'Element' could not be inferred
    |                                                        `- note: explicitly specify the generic arguments to fix this issue
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:133:37: error: cannot find 'SpeechAnalyzer' in scope
131 |         let (sysInputSequence, sysInputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
132 |
133 |         guard let sysFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                     `- error: cannot find 'SpeechAnalyzer' in scope
134 |             compatibleWith: [sysTranscriber]
135 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Listen.swift:237:70: error: cannot find type 'AnalyzerInput' in scope
235 |     // MARK: Lifecycle
236 |
237 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
238 |         self.targetFormat = targetFormat
239 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:282:56: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
280 |                     let allWords = includeWords ? chunk.wordTimestamps() : nil
281 |                     for sentence in chunk.sentences(maxLength: sentenceMaxLength) {
282 |                         guard let timeRange = sentence.audioTimeRange else { continue }
    |                                                        `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
283 |                         let text = String(sentence.characters).trimmingCharacters(in: .whitespacesAndNewlines)
284 |                         guard !text.isEmpty else { continue }
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:141:52: error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
139 |         let content: SCShareableContent
140 |         do {
141 |             content = try await SCShareableContent.excludingDesktopWindows(false, onScreenWindowsOnly: true)
    |                                                    `- error: non-sendable result type 'SCShareableContent' cannot be sent from nonisolated context in call to class method 'excludingDesktopWindows(_:onScreenWindowsOnly:)'
142 |         } catch {
143 |             throw ListenError.screenRecordingPermissionDenied
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/ScreenCaptureKit.framework/Headers/SCShareableContent.h:140:12: note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
138 |
139 | API_AVAILABLE(macos(12.3), macCatalyst(18.2))
140 | @interface SCShareableContent : NSObject
    |            `- note: class 'SCShareableContent' does not conform to the 'Sendable' protocol
141 | /*!
142 | @abstract getShareableContentWithCompletionHandler:completionHandler
/Users/admin/builder/spi-builder-workspace/Sources/yap/ListenAndDictate.swift:5:1: warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  3 | import CoreMedia
  4 | @preconcurrency import Noora
  5 | import ScreenCaptureKit
    | `- warning: add '@preconcurrency' to treat 'Sendable'-related errors from module 'ScreenCaptureKit' as warnings
  6 | import Speech
  7 |
[192/195] Compiling yap Dictate.swift
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:204:70: error: cannot find type 'AnalyzerInput' in scope
202 |     // MARK: Lifecycle
203 |
204 |     init(targetFormat: AVAudioFormat, inputContinuation: AsyncStream<AnalyzerInput>.Continuation) throws {
    |                                                                      `- error: cannot find type 'AnalyzerInput' in scope
205 |         self.targetFormat = targetFormat
206 |         self.inputContinuation = inputContinuation
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:230:40: error: cannot find type 'AnalyzerInput' in scope
228 |     let audioEngine: AVAudioEngine
229 |     let converter: AVAudioConverter
230 |     let inputContinuation: AsyncStream<AnalyzerInput>.Continuation
    |                                        `- error: cannot find type 'AnalyzerInput' in scope
231 |     let targetFormat: AVAudioFormat
232 |
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:39:15: error: cannot find 'SpeechTranscriber' in scope
 37 |
 38 |     @MainActor mutating func run() async throws {
 39 |         guard SpeechTranscriber.isAvailable else {
    |               `- error: cannot find 'SpeechTranscriber' in scope
 40 |             throw Transcribe.Error.speechTranscriberNotAvailable
 41 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:43:38: error: cannot find 'SpeechTranscriber' in scope
 41 |         }
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
 45 |             throw Transcribe.Error.unsupportedLocale
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:44:65: error: cannot infer contextual base in reference to member 'bcp47'
 42 |
 43 |         let supportedLocales = await SpeechTranscriber.supportedLocales
 44 |         guard supportedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) else {
    |                                                                 `- error: cannot infer contextual base in reference to member 'bcp47'
 45 |             throw Transcribe.Error.unsupportedLocale
 46 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:48:29: error: cannot find 'AssetInventory' in scope
 46 |         }
 47 |
 48 |         for locale in await AssetInventory.reservedLocales {
    |                             `- error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:51:19: error: cannot find 'AssetInventory' in scope
 49 |             await AssetInventory.release(reservedLocale: locale)
 50 |         }
 51 |         try await AssetInventory.reserve(locale: locale)
    |                   `- error: cannot find 'AssetInventory' in scope
 52 |
 53 |         let transcriber = SpeechTranscriber(
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:53:27: error: cannot find 'SpeechTranscriber' in scope
 51 |         try await AssetInventory.reserve(locale: locale)
 52 |
 53 |         let transcriber = SpeechTranscriber(
    |                           `- error: cannot find 'SpeechTranscriber' in scope
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:55:46: error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 53 |         let transcriber = SpeechTranscriber(
 54 |             locale: locale,
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
    |                                              `- error: reference to member 'etiquetteReplacements' cannot be resolved without a contextual type
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:57:68: error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 55 |             transcriptionOptions: censor ? [.etiquetteReplacements] : [],
 56 |             reportingOptions: [],
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
    |                                                                    `- error: reference to member 'audioTimeRange' cannot be resolved without a contextual type
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:59:27: error: cannot find type 'SpeechModule' in scope
 57 |             attributeOptions: outputFormat.needsAudioTimeRange ? [.audioTimeRange] : []
 58 |         )
 59 |         let modules: [any SpeechModule] = [transcriber]
    |                           `- error: cannot find type 'SpeechModule' in scope
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:61:38: error: cannot find 'SpeechTranscriber' in scope
 59 |         let modules: [any SpeechModule] = [transcriber]
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
    |                                      `- error: cannot find 'SpeechTranscriber' in scope
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
 63 |             let piped = isatty(STDOUT_FILENO) == 0
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:62:63: error: cannot infer contextual base in reference to member 'bcp47'
 60 |
 61 |         let installedLocales = await SpeechTranscriber.installedLocales
 62 |         if !installedLocales.contains(where: { $0.identifier(.bcp47) == locale.identifier(.bcp47) }) {
    |                                                               `- error: cannot infer contextual base in reference to member 'bcp47'
 63 |             let piped = isatty(STDOUT_FILENO) == 0
 64 |             struct DevNull: StandardPipelining { func write(content _: String) {} }
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:70:40: error: cannot find 'AssetInventory' in scope
 68 |                 Noora()
 69 |             }
 70 |             if let request = try await AssetInventory.assetInstallationRequest(supporting: modules) {
    |                                        `- error: cannot find 'AssetInventory' in scope
 71 |                 try await noora.progressBarStep(
 72 |                     message: "Downloading required assets…"
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:92:24: error: cannot find 'SpeechAnalyzer' in scope
 90 |         }
 91 |
 92 |         let analyzer = SpeechAnalyzer(modules: modules)
    |                        `- error: cannot find 'SpeechAnalyzer' in scope
 93 |
 94 |         // Set up streaming input
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:77: error: cannot find 'AnalyzerInput' in scope
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                                             `- error: cannot find 'AnalyzerInput' in scope
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:95:50: error: generic parameter 'Element' could not be inferred
 93 |
 94 |         // Set up streaming input
 95 |         let (inputSequence, inputContinuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
    |                                                  |- error: generic parameter 'Element' could not be inferred
    |                                                  `- note: explicitly specify the generic arguments to fix this issue
 96 |
 97 |         // Get target audio format from the analyzer
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:98:40: error: cannot find 'SpeechAnalyzer' in scope
 96 |
 97 |         // Get target audio format from the analyzer
 98 |         guard let targetFormat = await SpeechAnalyzer.bestAvailableAudioFormat(
    |                                        `- error: cannot find 'SpeechAnalyzer' in scope
 99 |             compatibleWith: modules
100 |         ) else {
/Users/admin/builder/spi-builder-workspace/Sources/yap/Dictate.swift:269:37: error: cannot find 'AnalyzerInput' in scope
267 |
268 |         if error == nil, convertedBuffer.frameLength > 0 {
269 |             inputContinuation.yield(AnalyzerInput(buffer: convertedBuffer))
    |                                     `- error: cannot find 'AnalyzerInput' in scope
270 |         }
271 |     }
BUILD FAILURE 6.1 macosSpm