The Swift Package Index logo.Swift Package Index

Build Information

Failed to build TranscriptDebugMenu, reference 2.0.0 (a450ed), with Swift 6.4 for watchOS using Xcode 27.0 on 26 Sep 2026 19:57:46 UTC.

Build Command

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

Build Log

 9 | struct TranscriptSection: View {
   |        `- note: add '@available' attribute to enclosing struct
10 |     let transcript: Transcript
11 |     var onSelect: (Transcript.Entry) -> Void = { _ in }
12 |     var onCopy: (Transcript.Entry) -> Void = { _ in }
13 |
14 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
15 |         Section("Transcript") {
   |                               |- error: conformance of 'Transcript' to 'RandomAccessCollection' is only available in watchOS 27.0 or newer
   |                               `- note: add 'if #available' version check
16 |             ForEach(transcript) { entry in
17 |                 TranscriptEntryRow(entry: entry)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:16:13: error: conformance of 'Transcript' to 'RandomAccessCollection' is only available in watchOS 27.0 or newer
 7 |
 8 | /// Lists transcript entries with accent colors, selection, and copy actions.
 9 | struct TranscriptSection: View {
   |        `- note: add '@available' attribute to enclosing struct
10 |     let transcript: Transcript
11 |     var onSelect: (Transcript.Entry) -> Void = { _ in }
12 |     var onCopy: (Transcript.Entry) -> Void = { _ in }
13 |
14 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
15 |         Section("Transcript") {
16 |             ForEach(transcript) { entry in
   |             |- error: conformance of 'Transcript' to 'RandomAccessCollection' is only available in watchOS 27.0 or newer
   |             `- note: add 'if #available' version check
17 |                 TranscriptEntryRow(entry: entry)
18 |                     .contentShape(Rectangle())
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:16:13: error: conformance of 'Transcript' to 'RandomAccessCollection' is only available in watchOS 27.0 or newer
 7 |
 8 | /// Lists transcript entries with accent colors, selection, and copy actions.
 9 | struct TranscriptSection: View {
   |        `- note: add '@available' attribute to enclosing struct
10 |     let transcript: Transcript
11 |     var onSelect: (Transcript.Entry) -> Void = { _ in }
12 |     var onCopy: (Transcript.Entry) -> Void = { _ in }
13 |
14 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
15 |         Section("Transcript") {
16 |             ForEach(transcript) { entry in
   |             |- error: conformance of 'Transcript' to 'RandomAccessCollection' is only available in watchOS 27.0 or newer
   |             `- note: add 'if #available' version check
17 |                 TranscriptEntryRow(entry: entry)
18 |                     .contentShape(Rectangle())
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:22:22: warning: 'contextMenu(menuItems:)' was deprecated in watchOS 7.0 [#DeprecatedDeclaration]
20 |                         onSelect(entry)
21 |                     }
22 |                     .contextMenu {
   |                      `- warning: 'contextMenu(menuItems:)' was deprecated in watchOS 7.0 [#DeprecatedDeclaration]
23 |                         Button("Copy") {
24 |                             onCopy(entry)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:14:25: error: conformance of 'Transcript' to 'RandomAccessCollection' is only available in watchOS 27.0 or newer
 7 |
 8 | /// Lists transcript entries with accent colors, selection, and copy actions.
 9 | struct TranscriptSection: View {
   |        `- note: add '@available' attribute to enclosing struct
10 |     let transcript: Transcript
11 |     var onSelect: (Transcript.Entry) -> Void = { _ in }
12 |     var onCopy: (Transcript.Entry) -> Void = { _ in }
13 |
14 |     var body: some View {
   |         |               |- error: conformance of 'Transcript' to 'RandomAccessCollection' is only available in watchOS 27.0 or newer
   |         |               `- note: add 'if #available' version check
   |         `- note: add '@available' attribute to enclosing property
15 |         Section("Transcript") {
16 |             ForEach(transcript) { entry in
macro expansion #Preview:20:51: error: 'Transcript' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:64:2: note: expanded code originates here
58 | }
59 |
60 | #Preview("Single entry") {
   | |- note: in expansion of macro 'Preview' here
   | |- note: in expansion of macro 'Preview' here
   | `- note: in expansion of macro 'Preview' here
61 |     List {
62 |         TranscriptSection(transcript: Transcript(entries: [.promptMock]))
63 |     }
64 | }
   +--- macro expansion #Preview ---------------------------------------
   |11 |     }
   |12 |
   |13 |     @MainActor static func makePreview() throws -> DeveloperToolsSupport.Preview {
   |   |                            `- note: add '@available' attribute to enclosing static method
   |14 |         DeveloperToolsSupport.Preview("Single entry") {
   |15 |             func __b_buildView(@SwiftUI.ViewBuilder body: () -> any SwiftUI.View) -> any SwiftUI.View {
   |   :
   |18 |             return __b_buildView {
   |19 |                 List {
   |20 |                     TranscriptSection(transcript: Transcript(entries: [.promptMock]))
   |   |                                                   |- error: 'Transcript' is only available in watchOS 27.0 or newer
   |   |                                                   `- note: add 'if #available' version check
   |21 |                 }
   |22 |             }
   +--------------------------------------------------------------------
65 |
66 | #Preview("Empty") {
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TranscriptSection.swift
SwiftCompile normal arm64_32 Compiling\ DebugUtilities.swift,\ FeedbackView.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:16:42: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
 13 | #endif
 14 |
 15 | enum DebugJSON {
    |      `- note: add '@available' attribute to enclosing enum
 16 |     static func prettyPrinted(_ content: GeneratedContent) -> String {
    |                 |                        `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |                 `- note: add '@available' attribute to enclosing static method
 17 |         prettyPrinted(jsonString: content.jsonString)
 18 |     }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:100:11: error: 'GenerationOptions' is only available in watchOS 27.0 or newer
 98 | }
 99 |
100 | extension GenerationOptions.SamplingMode {
    | |         `- error: 'GenerationOptions' is only available in watchOS 27.0 or newer
    | `- note: add '@available' attribute to enclosing extension
101 |     var debugDescription: String {
102 |         guard #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) else {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:127:11: error: 'GenerationOptions' is only available in watchOS 27.0 or newer
125 | }
126 |
127 | extension GenerationOptions {
    | |         `- error: 'GenerationOptions' is only available in watchOS 27.0 or newer
    | `- note: add '@available' attribute to enclosing extension
128 |     var hasInspectableValues: Bool {
129 |         if maximumResponseTokens != nil || temperature != nil || samplingMode != nil {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:17:43: error: 'jsonString' is only available in watchOS 27.0 or newer
 13 | #endif
 14 |
 15 | enum DebugJSON {
    |      `- note: add '@available' attribute to enclosing enum
 16 |     static func prettyPrinted(_ content: GeneratedContent) -> String {
    |                 `- note: add '@available' attribute to enclosing static method
 17 |         prettyPrinted(jsonString: content.jsonString)
    |                                           |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |                                           `- note: add 'if #available' version check
 18 |     }
 19 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:47:9: error: 'UIPasteboard' is unavailable in watchOS
 45 |     static func copy(_ string: String) {
 46 |         #if canImport(UIKit)
 47 |         UIPasteboard.general.string = string
    |         `- error: 'UIPasteboard' is unavailable in watchOS
 48 |         #elseif canImport(AppKit)
 49 |         NSPasteboard.general.clearContents()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPasteboard.h:50:12: note: 'UIPasteboard' has been explicitly marked unavailable here
 48 |
 49 | UIKIT_EXTERN API_AVAILABLE(ios(3.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
 50 | @interface UIPasteboard : NSObject
    |            `- note: 'UIPasteboard' has been explicitly marked unavailable here
 51 |
 52 | @property(class, nonatomic, readonly) UIPasteboard *generalPasteboard;
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:47:30: error: 'string' is unavailable in watchOS
 45 |     static func copy(_ string: String) {
 46 |         #if canImport(UIKit)
 47 |         UIPasteboard.general.string = string
    |                              `- error: 'string' is unavailable in watchOS
 48 |         #elseif canImport(AppKit)
 49 |         NSPasteboard.general.clearContents()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPasteboard.h:108:46: note: 'string' has been explicitly marked unavailable here
106 | - (void)setItems:(NSArray<NSDictionary<NSString *, id> *> *)items options:(NSDictionary<UIPasteboardOption, id> *)options API_AVAILABLE(ios(10.0));
107 |
108 | @property(nullable,nonatomic,copy) NSString *string API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos);
    |                                              `- note: 'string' has been explicitly marked unavailable here
109 | @property(nullable,nonatomic,copy) NSArray<NSString *> *strings API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos);
110 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:82:10: warning: 'contextMenu(menuItems:)' was deprecated in watchOS 7.0 [#DeprecatedDeclaration]
 80 |             }
 81 |         }
 82 |         .contextMenu {
    |          `- warning: 'contextMenu(menuItems:)' was deprecated in watchOS 7.0 [#DeprecatedDeclaration]
 83 |             Button("Copy", systemImage: "document.on.document") {
 84 |                 DebugClipboard.copy(value)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:96:14: error: 'textSelection' is unavailable in watchOS
 94 |         Text(value)
 95 |             .foregroundStyle(.secondary)
 96 |             .textSelection(.enabled)
    |              `- error: 'textSelection' is unavailable in watchOS
 97 |     }
 98 | }
SwiftUI.View.textSelection:2:25: note: 'textSelection' has been explicitly marked unavailable here
1 | protocol View {
2 | nonisolated public func textSelection<S>(_ selectability: S) -> some View where S : TextSelectability
  |                         `- note: 'textSelection' has been explicitly marked unavailable here
3 |   }
4 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:96:29: error: 'enabled' is unavailable in watchOS
 94 |         Text(value)
 95 |             .foregroundStyle(.secondary)
 96 |             .textSelection(.enabled)
    |                             `- error: 'enabled' is unavailable in watchOS
 97 |     }
 98 | }
SwiftUI.TextSelectability.enabled:2:43: note: 'enabled' has been explicitly marked unavailable here
1 | protocol TextSelectability {
2 | @export(implementation) public static var enabled: EnabledTextSelectability { get }}
  |                                           `- note: 'enabled' has been explicitly marked unavailable here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:110:16: error: 'kind' is only available in watchOS 27.0 or newer
 98 | }
 99 |
100 | extension GenerationOptions.SamplingMode {
    | `- note: add '@available' attribute to enclosing extension
101 |     var debugDescription: String {
102 |         guard #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) else {
    :
107 |
108 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
109 |     private var kindDescription: String {
    |                 `- note: add '@available' attribute to enclosing property
110 |         switch kind {
    |                |- error: 'kind' is only available in watchOS 27.0 or newer
    |                `- note: add 'if #available' version check
111 |         case .greedy:
112 |             "Greedy"
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:118:32: error: 'kind' is only available in watchOS 27.0 or newer
 98 | }
 99 |
100 | extension GenerationOptions.SamplingMode {
    | `- note: add '@available' attribute to enclosing extension
101 |     var debugDescription: String {
102 |         guard #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) else {
    :
107 |
108 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
109 |     private var kindDescription: String {
    |                 `- note: add '@available' attribute to enclosing property
110 |         switch kind {
111 |         case .greedy:
    :
116 |             "Random · top-k \(topK)\(seedDescription(seed))"
117 |         @unknown default:
118 |             String(describing: kind)
    |                                |- error: 'kind' is only available in watchOS 27.0 or newer
    |                                `- note: add 'if #available' version check
119 |         }
120 |     }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:129:12: error: 'maximumResponseTokens' is only available in watchOS 27.0 or newer
125 | }
126 |
127 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
128 |     var hasInspectableValues: Bool {
    |         `- note: add '@available' attribute to enclosing property
129 |         if maximumResponseTokens != nil || temperature != nil || samplingMode != nil {
    |            |- error: 'maximumResponseTokens' is only available in watchOS 27.0 or newer
    |            `- note: add 'if #available' version check
130 |             return true
131 |         }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:129:44: error: 'temperature' is only available in watchOS 27.0 or newer
125 | }
126 |
127 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
128 |     var hasInspectableValues: Bool {
    |         `- note: add '@available' attribute to enclosing property
129 |         if maximumResponseTokens != nil || temperature != nil || samplingMode != nil {
    |                                            |- error: 'temperature' is only available in watchOS 27.0 or newer
    |                                            `- note: add 'if #available' version check
130 |             return true
131 |         }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:129:66: error: 'samplingMode' is only available in watchOS 27.0 or newer
125 | }
126 |
127 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
128 |     var hasInspectableValues: Bool {
    |         `- note: add '@available' attribute to enclosing property
129 |         if maximumResponseTokens != nil || temperature != nil || samplingMode != nil {
    |                                                                  |- error: 'samplingMode' is only available in watchOS 27.0 or newer
    |                                                                  `- note: add 'if #available' version check
130 |             return true
131 |         }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift:133:20: error: 'toolCallingMode' is only available in watchOS 27.0 or newer
125 | }
126 |
127 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
128 |     var hasInspectableValues: Bool {
    |         `- note: add '@available' attribute to enclosing property
129 |         if maximumResponseTokens != nil || temperature != nil || samplingMode != nil {
130 |             return true
131 |         }
132 |         if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
133 |             return toolCallingMode != nil
    |                    |- error: 'toolCallingMode' is only available in watchOS 27.0 or newer
    |                    `- note: add 'if #available' version check
134 |         }
135 |         return false
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift:37:45: error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
  6 | import SwiftUI
  7 |
  8 | struct FeedbackDraft: Equatable {
    |        `- note: add '@available' attribute to enclosing struct
  9 |     enum SentimentSelection: String, CaseIterable, Identifiable {
 10 |         case unspecified
    :
 35 |
 36 |     var sentiment: SentimentSelection = .unspecified
 37 |     var issueDrafts: [FeedbackIssueDraft] = LanguageModelFeedback.Issue.Category.allCases.map {
    |                                             `- error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
 38 |         FeedbackIssueDraft(category: $0)
 39 |     }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift:26:20: error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
  7 |
  8 | struct FeedbackDraft: Equatable {
  9 |     enum SentimentSelection: String, CaseIterable, Identifiable {
    |          `- note: add '@available' attribute to enclosing enum
 10 |         case unspecified
 11 |         case positive
    :
 24 |         }
 25 |
 26 |         var value: LanguageModelFeedback.Sentiment? {
    |             |      `- error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
    |             `- note: add '@available' attribute to enclosing property
 27 |             switch self {
 28 |             case .unspecified: nil
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift:42:18: error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
  6 | import SwiftUI
  7 |
  8 | struct FeedbackDraft: Equatable {
    |        `- note: add '@available' attribute to enclosing struct
  9 |     enum SentimentSelection: String, CaseIterable, Identifiable {
 10 |         case unspecified
    :
 40 |     var desiredResponseText = ""
 41 |
 42 |     var issues: [LanguageModelFeedback.Issue] {
    |         |        `- error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
    |         `- note: add '@available' attribute to enclosing property
 43 |         issueDrafts.compactMap { draft in
 44 |             guard draft.isSelected else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift:60:19: error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
 57 | }
 58 |
 59 | struct FeedbackIssueDraft: Identifiable, Equatable {
    |        `- note: add '@available' attribute to enclosing struct
 60 |     let category: LanguageModelFeedback.Issue.Category
    |                   `- error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
 61 |     var isSelected = false
 62 |     var explanation = ""
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift:67:19: error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
 65 | }
 66 |
 67 | private extension LanguageModelFeedback.Issue.Category {
    |         |         `- error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
    |         `- note: add '@available' attribute to enclosing extension
 68 |     var title: String {
 69 |         switch self {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:290:39: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
288 | #Preview {
289 |     @Previewable @State var isPresented = true
290 |     @Previewable @State var session = LanguageModelSession(transcript: .mock)
    |                                       |- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                                       `- note: add 'if #available' version check
291 |
292 |     Button("Show Transcript Menu") {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:290:39: error: 'init(model:tools:transcript:)' is unavailable in watchOS
288 | #Preview {
289 |     @Previewable @State var isPresented = true
290 |     @Previewable @State var session = LanguageModelSession(transcript: .mock)
    |                                       `- error: 'init(model:tools:transcript:)' is unavailable in watchOS
291 |
292 |     Button("Show Transcript Menu") {
FoundationModels.LanguageModelSession.init:2:20: note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
1 | class LanguageModelSession {
2 | public convenience init(model: SystemLanguageModel = .default, tools: [any Tool] = [], transcript: Transcript)}
  |                    `- note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:298:38: error: 'default' is unavailable in watchOS
296 |         session,
297 |         isPresented: $isPresented,
298 |         configuration: .systemModel(.default)
    |                                      `- error: 'default' is unavailable in watchOS
299 |     )
300 | }
FoundationModels.SystemLanguageModel.default:5:20: note: 'default' has been explicitly marked unavailable here
3 |   @available(tvOS, unavailable)
4 |   @available(watchOS, unavailable)
5 |   public class var `default`: SystemLanguageModel { get }}
  |                    `- note: 'default' has been explicitly marked unavailable here
6 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:304:18: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
302 | #Preview("Transcript") {
303 |     TranscriptDebugMenu(
304 |         session: LanguageModelSession(transcript: .mock),
    |                  |- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                  `- note: add 'if #available' version check
305 |         configuration: .init(contextMetricsProvider: .init { _ in
306 |             .init(tokenCount: Mock.contextUsage.tokenCount, contextSize: Mock.contextUsage.contextSize)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:304:18: error: 'init(model:tools:transcript:)' is unavailable in watchOS
302 | #Preview("Transcript") {
303 |     TranscriptDebugMenu(
304 |         session: LanguageModelSession(transcript: .mock),
    |                  `- error: 'init(model:tools:transcript:)' is unavailable in watchOS
305 |         configuration: .init(contextMetricsProvider: .init { _ in
306 |             .init(tokenCount: Mock.contextUsage.tokenCount, contextSize: Mock.contextUsage.contextSize)
FoundationModels.LanguageModelSession.init:2:20: note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
1 | class LanguageModelSession {
2 | public convenience init(model: SystemLanguageModel = .default, tools: [any Tool] = [], transcript: Transcript)}
  |                    `- note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:312:34: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
310 |
311 | #Preview("Empty Transcript") {
312 |     TranscriptDebugMenu(session: LanguageModelSession(transcript: Transcript()))
    |                                  |- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                                  `- note: add 'if #available' version check
313 | }
314 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:312:34: error: 'init(model:tools:transcript:)' is unavailable in watchOS
310 |
311 | #Preview("Empty Transcript") {
312 |     TranscriptDebugMenu(session: LanguageModelSession(transcript: Transcript()))
    |                                  `- error: 'init(model:tools:transcript:)' is unavailable in watchOS
313 | }
314 |
FoundationModels.LanguageModelSession.init:2:20: note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
1 | class LanguageModelSession {
2 | public convenience init(model: SystemLanguageModel = .default, tools: [any Tool] = [], transcript: Transcript)}
  |                    `- note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:312:67: error: 'Transcript' is only available in watchOS 27.0 or newer
310 |
311 | #Preview("Empty Transcript") {
312 |     TranscriptDebugMenu(session: LanguageModelSession(transcript: Transcript()))
    |                                                                   |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                                                                   `- note: add 'if #available' version check
313 | }
314 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:62:39: error: 'Transcript' is only available in watchOS 27.0 or newer
60 | #Preview("Single entry") {
61 |     List {
62 |         TranscriptSection(transcript: Transcript(entries: [.promptMock]))
   |                                       |- error: 'Transcript' is only available in watchOS 27.0 or newer
   |                                       `- note: add 'if #available' version check
63 |     }
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:68:39: error: 'Transcript' is only available in watchOS 27.0 or newer
66 | #Preview("Empty") {
67 |     List {
68 |         TranscriptSection(transcript: Transcript())
   |                                       |- error: 'Transcript' is only available in watchOS 27.0 or newer
   |                                       `- note: add 'if #available' version check
69 |     }
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:113:23: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
109 |
110 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
111 | extension LanguageModelSession.Usage {
    | `- note: add '@available' attribute to enclosing extension
112 |     /// Mock usage for previews and independent section testing.
113 |     static let mock = LanguageModelSession.Usage(
    |                |      `- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
114 |         input: .init(totalTokenCount: 150, cachedTokenCount: 50),
115 |         output: .init(totalTokenCount: 80, reasoningTokenCount: 20),
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:116:32: error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
109 |
110 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
111 | extension LanguageModelSession.Usage {
    | `- note: add '@available' attribute to enclosing extension
112 |     /// Mock usage for previews and independent section testing.
113 |     static let mock = LanguageModelSession.Usage(
    |                `- note: add '@available' attribute to enclosing static property
114 |         input: .init(totalTokenCount: 150, cachedTokenCount: 50),
115 |         output: .init(totalTokenCount: 80, reasoningTokenCount: 20),
116 |         metadata: ["provider": "on-device"]
    |                                `- error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
117 |     )
118 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift:46:20: error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
  6 | import SwiftUI
  7 |
  8 | struct FeedbackDraft: Equatable {
    |        `- note: add '@available' attribute to enclosing struct
  9 |     enum SentimentSelection: String, CaseIterable, Identifiable {
 10 |         case unspecified
    :
 40 |     var desiredResponseText = ""
 41 |
 42 |     var issues: [LanguageModelFeedback.Issue] {
    |         `- note: add '@available' attribute to enclosing property
 43 |         issueDrafts.compactMap { draft in
 44 |             guard draft.isSelected else { return nil }
 45 |             let explanation = draft.explanation.trimmingCharacters(in: .whitespacesAndNewlines)
 46 |             return LanguageModelFeedback.Issue(
    |                    |- error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
    |                    `- note: add 'if #available' version check
 47 |                 category: draft.category,
 48 |                 explanation: explanation.isEmpty ? nil : explanation
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/DebugUtilities.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DebugUtilities.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile FeedbackView.swift
SwiftCompile normal arm64_32 Compiling\ Mocks.swift,\ SearchScope.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:10:22: error: 'Transcript' is only available in watchOS 27.0 or newer
  7 | import CoreGraphics
  8 |
  9 | extension Transcript {
    | `- note: add '@available' attribute to enclosing extension
 10 |     static let mock: Transcript = .init(entries: [
    |                |     `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 11 |         .instructionsMock,
 12 |         .promptMock,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:9:11: error: 'Transcript' is only available in watchOS 27.0 or newer
  7 | import CoreGraphics
  8 |
  9 | extension Transcript {
    | |         `- error: 'Transcript' is only available in watchOS 27.0 or newer
    | `- note: add '@available' attribute to enclosing extension
 10 |     static let mock: Transcript = .init(entries: [
 11 |         .instructionsMock,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:20:30: error: 'init(samplingMode:temperature:maximumResponseTokens:)' is only available in watchOS 27.0 or newer
 17 | }
 18 |
 19 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
 20 |     static let mock: Self = .init(samplingMode: .random(probabilityThreshold: 1), temperature: 1, maximumResponseTokens: 30)
    |                |             `- error: 'init(samplingMode:temperature:maximumResponseTokens:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 21 |
 22 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:20:50: error: 'random(probabilityThreshold:seed:)' is only available in watchOS 27.0 or newer
 17 | }
 18 |
 19 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
 20 |     static let mock: Self = .init(samplingMode: .random(probabilityThreshold: 1), temperature: 1, maximumResponseTokens: 30)
    |                |                                 `- error: 'random(probabilityThreshold:seed:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 21 |
 22 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:23:34: error: 'init(samplingMode:temperature:maximumResponseTokens:toolCallingMode:)' is only available in watchOS 27.0 or newer
 17 | }
 18 |
 19 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
 20 |     static let mock: Self = .init(samplingMode: .random(probabilityThreshold: 1), temperature: 1, maximumResponseTokens: 30)
 21 |
 22 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 23 |     static let mockFull: Self = .init(
    |                |                 `- error: 'init(samplingMode:temperature:maximumResponseTokens:toolCallingMode:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 24 |         samplingMode: .random(probabilityThreshold: 1),
 25 |         temperature: 1,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:24:24: error: 'random(probabilityThreshold:seed:)' is only available in watchOS 27.0 or newer
 17 | }
 18 |
 19 | extension GenerationOptions {
    | `- note: add '@available' attribute to enclosing extension
 20 |     static let mock: Self = .init(samplingMode: .random(probabilityThreshold: 1), temperature: 1, maximumResponseTokens: 30)
 21 |
 22 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 23 |     static let mockFull: Self = .init(
    |                `- note: add '@available' attribute to enclosing static property
 24 |         samplingMode: .random(probabilityThreshold: 1),
    |                        `- error: 'random(probabilityThreshold:seed:)' is only available in watchOS 27.0 or newer
 25 |         temperature: 1,
 26 |         maximumResponseTokens: 30,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:19:11: error: 'GenerationOptions' is only available in watchOS 27.0 or newer
 17 | }
 18 |
 19 | extension GenerationOptions {
    | |         `- error: 'GenerationOptions' is only available in watchOS 27.0 or newer
    | `- note: add '@available' attribute to enclosing extension
 20 |     static let mock: Self = .init(samplingMode: .random(probabilityThreshold: 1), temperature: 1, maximumResponseTokens: 30)
 21 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:129:6: error: 'Generable(description:)' is only available in watchOS 27.0 or newer
123 | }
124 |
125 | final class MoodTool: Tool {
    |             `- note: add '@available' attribute to enclosing class
126 |     let name = "generateMood"
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |      `- error: 'Generable(description:)' is only available in watchOS 27.0 or newer
130 |     struct Arguments {}
131 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:32:109: error: 'init(tool:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
    |                |                                                                                            `- error: 'init(tool:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 33 |
 34 |     static let promptMock: Self = .prompt(.init(segments: Mock.prompt,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:34:44: error: 'init(id:segments:options:responseFormat:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
 34 |     static let promptMock: Self = .prompt(.init(segments: Mock.prompt,
    |                |                           `- error: 'init(id:segments:options:responseFormat:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 35 |                                                 options: .mock))
 36 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:137:2: error: 'Generable(description:)' is only available in watchOS 27.0 or newer
135 | }
136 |
137 | @Generable
    |  `- error: 'Generable(description:)' is only available in watchOS 27.0 or newer
138 | struct Haiku {
139 |     let text: String
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:38:48: error: 'init(id:metadata:segments:options:responseFormat:contextOptions:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 36 |
 37 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 38 |     static let promptMockFull: Self = .prompt(.init(
    |                |                               `- error: 'init(id:metadata:segments:options:responseFormat:contextOptions:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 39 |         metadata: ["session_id": "abc123", "version": "2"],
 40 |         segments: Mock.prompt,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:39:34: error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 36 |
 37 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 38 |     static let promptMockFull: Self = .prompt(.init(
    |                `- note: add '@available' attribute to enclosing static property
 39 |         metadata: ["session_id": "abc123", "version": "2"],
    |                                  `- error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
 40 |         segments: Mock.prompt,
 41 |         options: .mockFull,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:39:55: error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 36 |
 37 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 38 |     static let promptMockFull: Self = .prompt(.init(
    |                `- note: add '@available' attribute to enclosing static property
 39 |         metadata: ["session_id": "abc123", "version": "2"],
    |                                                       `- error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
 40 |         segments: Mock.prompt,
 41 |         options: .mockFull,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:42:26: error: 'init(type:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 36 |
 37 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 38 |     static let promptMockFull: Self = .prompt(.init(
    |                `- note: add '@available' attribute to enclosing static property
 39 |         metadata: ["session_id": "abc123", "version": "2"],
 40 |         segments: Mock.prompt,
 41 |         options: .mockFull,
 42 |         responseFormat: .init(type: Haiku.self),
    |                          `- error: 'init(type:)' is only available in watchOS 27.0 or newer
 43 |         contextOptions: .init(includeSchemaInPrompt: true, reasoningLevel: .moderate)
 44 |     ))
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:47:58: error: 'init(id:segments:options:responseFormat:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 45 |
 46 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 47 |     static let promptMockWithAttachment: Self = .prompt(.init(segments: Mock.attachmentSegments))
    |                |                                         `- error: 'init(id:segments:options:responseFormat:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 48 |
 49 |     static let toolCallsMock: Self = {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:50:20: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 47 |     static let promptMockWithAttachment: Self = .prompt(.init(segments: Mock.attachmentSegments))
 48 |
 49 |     static let toolCallsMock: Self = {
    |                `- note: add '@available' attribute to enclosing static property
 50 |         let call = Transcript.ToolCall(id: "id", toolName: MoodTool().name, arguments: MoodTool.Arguments().generatedContent)
    |                    |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                    `- note: add 'if #available' version check
 51 |         return .toolCalls(Transcript.ToolCalls([call]))
 52 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:50:31: error: 'init(id:toolName:arguments:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 47 |     static let promptMockWithAttachment: Self = .prompt(.init(segments: Mock.attachmentSegments))
 48 |
 49 |     static let toolCallsMock: Self = {
    |                `- note: add '@available' attribute to enclosing static property
 50 |         let call = Transcript.ToolCall(id: "id", toolName: MoodTool().name, arguments: MoodTool.Arguments().generatedContent)
    |                               |- error: 'init(id:toolName:arguments:)' is only available in watchOS 27.0 or newer
    |                               `- note: add 'if #available' version check
 51 |         return .toolCalls(Transcript.ToolCalls([call]))
 52 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:51:27: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 47 |     static let promptMockWithAttachment: Self = .prompt(.init(segments: Mock.attachmentSegments))
 48 |
 49 |     static let toolCallsMock: Self = {
    |                `- note: add '@available' attribute to enclosing static property
 50 |         let call = Transcript.ToolCall(id: "id", toolName: MoodTool().name, arguments: MoodTool.Arguments().generatedContent)
 51 |         return .toolCalls(Transcript.ToolCalls([call]))
    |                           |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                           `- note: add 'if #available' version check
 52 |     }()
 53 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:56:20: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 53 |
 54 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 55 |     static let toolCallsMockFull: Self = {
    |                `- note: add '@available' attribute to enclosing static property
 56 |         let call = Transcript.ToolCall(
    |                    |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                    `- note: add 'if #available' version check
 57 |             id: "call-1",
 58 |             metadata: ["request_id": "req-42"],
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:56:31: error: 'init(id:metadata:toolName:arguments:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 53 |
 54 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 55 |     static let toolCallsMockFull: Self = {
    |                `- note: add '@available' attribute to enclosing static property
 56 |         let call = Transcript.ToolCall(
    |                               |- error: 'init(id:metadata:toolName:arguments:)' is only available in watchOS 27.0 or newer
    |                               `- note: add 'if #available' version check
 57 |             id: "call-1",
 58 |             metadata: ["request_id": "req-42"],
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:58:38: error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 53 |
 54 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 55 |     static let toolCallsMockFull: Self = {
    |                `- note: add '@available' attribute to enclosing static property
 56 |         let call = Transcript.ToolCall(
 57 |             id: "call-1",
 58 |             metadata: ["request_id": "req-42"],
    |                                      |- error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
    |                                      `- note: add 'if #available' version check
 59 |             toolName: MoodTool().name,
 60 |             arguments: MoodTool.Arguments().generatedContent
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:62:27: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 53 |
 54 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 55 |     static let toolCallsMockFull: Self = {
    |                `- note: add '@available' attribute to enclosing static property
 56 |         let call = Transcript.ToolCall(
 57 |             id: "call-1",
    :
 60 |             arguments: MoodTool.Arguments().generatedContent
 61 |         )
 62 |         return .toolCalls(Transcript.ToolCalls([call]))
    |                           |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                           `- note: add 'if #available' version check
 63 |     }()
 64 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:67:48: error: 'init(id:assetIDs:segments:)' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 65 |     static let toolOutputMock: Self = .toolOutput(.init(id: "id", toolName: MoodTool().name, segments: Mock.toolOutput))
 66 |
 67 |     static let responseMock: Self = .response(.init(assetIDs: Mock.assetIDs, segments: Mock.response))
    |                |                               `- error: 'init(id:assetIDs:segments:)' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 68 |
 69 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:70:39: error: 'reasoning' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 68 |
 69 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 70 |     static let reasoningMock: Self = .reasoning(.init(
    |                |                      `- error: 'reasoning' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 71 |         metadata: ["thinking_tokens": 512],
 72 |         segments: Mock.reasoning,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:71:39: error: conformance of 'Int' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
    :
 68 |
 69 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 70 |     static let reasoningMock: Self = .reasoning(.init(
    |                `- note: add '@available' attribute to enclosing static property
 71 |         metadata: ["thinking_tokens": 512],
    |                                       `- error: conformance of 'Int' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
 72 |         segments: Mock.reasoning,
 73 |         signature: Data([0x54, 0x44, 0x4D])
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:31:11: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | extension Transcript.Entry {
    | |         `- error: 'Transcript' is only available in watchOS 27.0 or newer
    | `- note: add '@available' attribute to enclosing extension
 32 |     static let instructionsMock: Self = .instructions(.init(segments: Mock.instructions, toolDefinitions: [.init(tool: MoodTool())]))
 33 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:78:31: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
    |                |              `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
 80 |     static let toolOutput: [Transcript.Segment] = [.text(.init(content: #"{"mood": "calm"}"#))]
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:79:25: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
    |                |        `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 80 |     static let toolOutput: [Transcript.Segment] = [.text(.init(content: #"{"mood": "calm"}"#))]
 81 |     static let response: [Transcript.Segment] = [.text(.init(content: "In Swift's calm embrace,\nCode flows like a gentle stream,\nInnovation blooms."))]
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:80:29: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
 80 |     static let toolOutput: [Transcript.Segment] = [.text(.init(content: #"{"mood": "calm"}"#))]
    |                |            `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 81 |     static let response: [Transcript.Segment] = [.text(.init(content: "In Swift's calm embrace,\nCode flows like a gentle stream,\nInnovation blooms."))]
 82 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:81:27: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
 80 |     static let toolOutput: [Transcript.Segment] = [.text(.init(content: #"{"mood": "calm"}"#))]
 81 |     static let response: [Transcript.Segment] = [.text(.init(content: "In Swift's calm embrace,\nCode flows like a gentle stream,\nInnovation blooms."))]
    |                |          `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 82 |
 83 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:84:28: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
    :
 82 |
 83 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 84 |     static let reasoning: [Transcript.Segment] = [.text(.init(content: "Let me think about how to write a haiku about Swift. A haiku has three lines: 5-7-5 syllables. Swift's key traits are speed, safety, and expressiveness. I'll craft something poetic around these."))]
    |                |           `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 85 |
 86 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:87:37: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
    :
 85 |
 86 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 87 |     static let attachmentSegments: [Transcript.Segment] = {
    |                |                    `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
 88 |         var pixels = [UInt8](repeating: 128, count: 4)
 89 |         let ctx = CGContext(data: &pixels, width: 1, height: 1, bitsPerComponent: 8, bytesPerRow: 4,
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:92:21: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
    :
 85 |
 86 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 87 |     static let attachmentSegments: [Transcript.Segment] = {
    |                `- note: add '@available' attribute to enclosing static property
 88 |         var pixels = [UInt8](repeating: 128, count: 4)
 89 |         let ctx = CGContext(data: &pixels, width: 1, height: 1, bitsPerComponent: 8, bytesPerRow: 4,
 90 |                             space: CGColorSpaceCreateDeviceRGB(),
 91 |                             bitmapInfo: CGImageAlphaInfo.premultipliedLast.rawValue)!
 92 |         let image = Transcript.ImageAttachment(ctx.makeImage()!)
    |                     |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                     `- note: add 'if #available' version check
 93 |         let attachment = Transcript.AttachmentSegment(id: "att1", content: .image(image), label: "haiku-photo")
 94 |         return [
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:92:32: error: 'init(_:orientation:)' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
    :
 85 |
 86 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 87 |     static let attachmentSegments: [Transcript.Segment] = {
    |                `- note: add '@available' attribute to enclosing static property
 88 |         var pixels = [UInt8](repeating: 128, count: 4)
 89 |         let ctx = CGContext(data: &pixels, width: 1, height: 1, bitsPerComponent: 8, bytesPerRow: 4,
 90 |                             space: CGColorSpaceCreateDeviceRGB(),
 91 |                             bitmapInfo: CGImageAlphaInfo.premultipliedLast.rawValue)!
 92 |         let image = Transcript.ImageAttachment(ctx.makeImage()!)
    |                                |- error: 'init(_:orientation:)' is only available in watchOS 27.0 or newer
    |                                `- note: add 'if #available' version check
 93 |         let attachment = Transcript.AttachmentSegment(id: "att1", content: .image(image), label: "haiku-photo")
 94 |         return [
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:93:26: error: 'Transcript' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
    :
 85 |
 86 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 87 |     static let attachmentSegments: [Transcript.Segment] = {
    |                `- note: add '@available' attribute to enclosing static property
 88 |         var pixels = [UInt8](repeating: 128, count: 4)
 89 |         let ctx = CGContext(data: &pixels, width: 1, height: 1, bitsPerComponent: 8, bytesPerRow: 4,
    :
 91 |                             bitmapInfo: CGImageAlphaInfo.premultipliedLast.rawValue)!
 92 |         let image = Transcript.ImageAttachment(ctx.makeImage()!)
 93 |         let attachment = Transcript.AttachmentSegment(id: "att1", content: .image(image), label: "haiku-photo")
    |                          |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                          `- note: add 'if #available' version check
 94 |         return [
 95 |             .text(.init(content: "Here is an image:")),
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:96:14: error: 'attachment' is only available in watchOS 27.0 or newer
 75 | }
 76 |
 77 | enum Mock {
    |      `- note: add '@available' attribute to enclosing enum
 78 |     static let instructions: [Transcript.Segment] = [.text(.init(content: "You're a helpful assistant that generates haiku."))]
 79 |     static let prompt: [Transcript.Segment] = [.text(.init(content: "Generate a haiku about Swift"))]
    :
 85 |
 86 |     @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
 87 |     static let attachmentSegments: [Transcript.Segment] = {
    |                `- note: add '@available' attribute to enclosing static property
 88 |         var pixels = [UInt8](repeating: 128, count: 4)
 89 |         let ctx = CGContext(data: &pixels, width: 1, height: 1, bitsPerComponent: 8, bytesPerRow: 4,
    :
 94 |         return [
 95 |             .text(.init(content: "Here is an image:")),
 96 |             .attachment(attachment)
    |              |- error: 'attachment' is only available in watchOS 27.0 or newer
    |              `- note: add 'if #available' version check
 97 |         ]
 98 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:113:23: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
109 |
110 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
111 | extension LanguageModelSession.Usage {
    | `- note: add '@available' attribute to enclosing extension
112 |     /// Mock usage for previews and independent section testing.
113 |     static let mock = LanguageModelSession.Usage(
    |                |      `- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
114 |         input: .init(totalTokenCount: 150, cachedTokenCount: 50),
115 |         output: .init(totalTokenCount: 80, reasoningTokenCount: 20),
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:116:32: error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
109 |
110 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
111 | extension LanguageModelSession.Usage {
    | `- note: add '@available' attribute to enclosing extension
112 |     /// Mock usage for previews and independent section testing.
113 |     static let mock = LanguageModelSession.Usage(
    |                `- note: add '@available' attribute to enclosing static property
114 |         input: .init(totalTokenCount: 150, cachedTokenCount: 50),
115 |         output: .init(totalTokenCount: 80, reasoningTokenCount: 20),
116 |         metadata: ["provider": "on-device"]
    |                                `- error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
117 |     )
118 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:111:11: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
109 |
110 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
111 | extension LanguageModelSession.Usage {
    | |         `- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    | `- note: add '@available' attribute to enclosing extension
112 |     /// Mock usage for previews and independent section testing.
113 |     static let mock = LanguageModelSession.Usage(
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:120:2: error: 'Generable(description:)' is only available in watchOS 27.0 or newer
118 | }
119 |
120 | @Generable
    |  `- error: 'Generable(description:)' is only available in watchOS 27.0 or newer
121 | enum Mood: String, CaseIterable {
122 |     case happy, sad, thoughtful, excited, calm
macro expansion @Generable:1:59: error: 'GenerationSchema' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:1: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
    |      `- note: add '@available' attribute to enclosing enum
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    |1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |  |                        |                                  `- error: 'GenerationSchema' is only available in watchOS 27.0 or newer
    |  |                        `- note: add '@available' attribute to enclosing static property
    |2 |     FoundationModels.GenerationSchema(type: Self.self, anyOf: [happy.rawValue, sad.rawValue, thoughtful.rawValue, excited.rawValue, calm.rawValue])
    |3 | }
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
macro expansion @Generable:5:35: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:1: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
    |      `- note: add '@available' attribute to enclosing enum
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    |3 | }
    |4 |
    |5 | nonisolated var generatedContent: GeneratedContent {
    |  |                 |                 `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |  |                 `- note: add '@available' attribute to enclosing property
    |6 |     rawValue.generatedContent
    |7 | }
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:120:2: error: 'Generable(description:)' is only available in watchOS 27.0 or newer
118 | }
119 |
120 | @Generable
    |  `- error: 'Generable(description:)' is only available in watchOS 27.0 or newer
121 | enum Mood: String, CaseIterable {
    |      `- note: add '@available' attribute to enclosing enum
122 |     case happy, sad, thoughtful, excited, calm
123 | }
macro expansion @Generable:1:59: error: 'GenerationSchema' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        |                                  `- error: 'GenerationSchema' is only available in watchOS 27.0 or newer
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    | 3 |         type: Self.self,
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:10:35: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 |                 `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:30:13: error: 'GenerationID' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    +--- macro expansion @Generable ------------------------------------
    |27 | }
    |28 |
    |29 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |30 |     var id: GenerationID
    |   |             `- error: 'GenerationID' is only available in watchOS 27.0 or newer
    |31 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |32 |         self.id = content.id ?? GenerationID()
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:31:50: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    +--- macro expansion @Generable ------------------------------------
    |27 | }
    |28 |
    |29 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |30 |     var id: GenerationID
    |31 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 |                                `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |                 `- note: add '@available' attribute to enclosing initializer
    |32 |         self.id = content.id ?? GenerationID()
    |33 |     }
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:29:20: warning: protocol 'Identifiable' requires 'GenerationID' to be available in watchOS 26.0 and newer; this will be an error in a future Swift language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    +--- macro expansion @Generable ------------------------------------
    |27 | }
    |28 |
    |29 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- warning: protocol 'Identifiable' requires 'GenerationID' to be available in watchOS 26.0 and newer; this will be an error in a future Swift language mode
    |30 |     var id: GenerationID
    |31 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
FoundationModels.GenerationID:3:15: note: 'GenerationID' declared here
1 | @available(iOS 26.0, macOS 26.0, watchOS 27.0, *)
2 | @available(tvOS, unavailable)
3 | public struct GenerationID : Sendable, Hashable {
  |               `- note: 'GenerationID' declared here
4 |     public static func == (a: GenerationID, b: GenerationID) -> Bool
5 |     public func hash(into hasher: inout Hasher)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:129:6: error: 'Generable(description:)' is only available in watchOS 27.0 or newer
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |      `- error: 'Generable(description:)' is only available in watchOS 27.0 or newer
130 |     struct Arguments {}
    |            |- note: add '@available' attribute to enclosing struct
    |            `- note: add '@available' attribute to enclosing struct
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:1:59: error: 'GenerationSchema' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        |                                  `- error: 'GenerationSchema' is only available in watchOS 27.0 or newer
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    | 3 |         type: Self.self,
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:10:35: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 |                 `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:31:13: error: 'GenerationID' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |28 | }
    |29 |
    |30 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |31 |     var id: GenerationID
    |   |             `- error: 'GenerationID' is only available in watchOS 27.0 or newer
    |32 |     var text: String.PartiallyGenerated?
    |33 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:32:22: error: 'PartiallyGenerated' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |28 | }
    |29 |
    |30 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |31 |     var id: GenerationID
    |32 |     var text: String.PartiallyGenerated?
    |   |                      `- error: 'PartiallyGenerated' is only available in watchOS 27.0 or newer
    |33 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |34 |         self.id = content.id ?? GenerationID()
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:33:50: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |28 | }
    |29 |
    |30 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |31 |     var id: GenerationID
    |32 |     var text: String.PartiallyGenerated?
    |33 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 |                                `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |                 `- note: add '@available' attribute to enclosing initializer
    |34 |         self.id = content.id ?? GenerationID()
    |35 |         self.text = try content.value(forProperty: "text")
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:30:20: warning: protocol 'Identifiable' requires 'GenerationID' to be available in watchOS 26.0 and newer; this will be an error in a future Swift language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |28 | }
    |29 |
    |30 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- warning: protocol 'Identifiable' requires 'GenerationID' to be available in watchOS 26.0 and newer; this will be an error in a future Swift language mode
    |31 |     var id: GenerationID
    |32 |     var text: String.PartiallyGenerated?
    +-------------------------------------------------------------------
141 |
FoundationModels.GenerationID:3:15: note: 'GenerationID' declared here
1 | @available(iOS 26.0, macOS 26.0, watchOS 27.0, *)
2 | @available(tvOS, unavailable)
3 | public struct GenerationID : Sendable, Hashable {
  |               `- note: 'GenerationID' declared here
4 |     public static func == (a: GenerationID, b: GenerationID) -> Bool
5 |     public func hash(into hasher: inout Hasher)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:137:2: error: 'Generable(description:)' is only available in watchOS 27.0 or newer
135 | }
136 |
137 | @Generable
    |  `- error: 'Generable(description:)' is only available in watchOS 27.0 or newer
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
macro expansion @Generable:2:50: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:2: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |1 | extension Haiku: nonisolated FoundationModels.Generable {
    |  | `- note: add '@available' attribute to enclosing extension
    |2 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |  |                 |                                `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |  |                 `- note: add '@available' attribute to enclosing initializer
    |3 |         self.text = try content.value(forProperty: "text")
    |4 |     }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:2:50: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:135:2: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
131 |
    :
133 |         .allCases.randomElement()
134 |     }
135 | }
    +--- macro expansion @Generable ------------------------------------
    |1 | extension MoodTool.Arguments: nonisolated FoundationModels.Generable {
    |  | `- note: add '@available' attribute to enclosing extension
    |2 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |  |                 |                                `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |  |                 `- note: add '@available' attribute to enclosing initializer
    |3 |     }
    |4 | }
    +-------------------------------------------------------------------
136 |
137 | @Generable
macro expansion @Generable:2:50: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:2: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | extension Mood: nonisolated FoundationModels.Generable {
    |   | `- note: add '@available' attribute to enclosing extension
    | 2 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 |                                `- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |                 `- note: add '@available' attribute to enclosing initializer
    | 3 |         let rawValue = try content.value(String.self)
    | 4 |         if let value = Self(rawValue: rawValue) {
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
macro expansion @Generable:2:22: error: 'GenerationSchema' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:1: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
    |      `- note: add '@available' attribute to enclosing enum
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    |1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |  |                        `- note: add '@available' attribute to enclosing static property
    |2 |     FoundationModels.GenerationSchema(type: Self.self, anyOf: [happy.rawValue, sad.rawValue, thoughtful.rawValue, excited.rawValue, calm.rawValue])
    |  |                      |- error: 'GenerationSchema' is only available in watchOS 27.0 or newer
    |  |                      `- note: add 'if #available' version check
    |3 | }
    |4 |
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
macro expansion @Generable:2:22: error: 'init(type:description:anyOf:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:1: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
    |      `- note: add '@available' attribute to enclosing enum
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    |1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |  |                        `- note: add '@available' attribute to enclosing static property
    |2 |     FoundationModels.GenerationSchema(type: Self.self, anyOf: [happy.rawValue, sad.rawValue, thoughtful.rawValue, excited.rawValue, calm.rawValue])
    |  |                      |- error: 'init(type:description:anyOf:)' is only available in watchOS 27.0 or newer
    |  |                      `- note: add 'if #available' version check
    |3 | }
    |4 |
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
macro expansion @Generable:6:14: error: 'generatedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:1: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
    |      `- note: add '@available' attribute to enclosing enum
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    |3 | }
    |4 |
    |5 | nonisolated var generatedContent: GeneratedContent {
    |  |                 `- note: add '@available' attribute to enclosing property
    |6 |     rawValue.generatedContent
    |  |              |- error: 'generatedContent' is only available in watchOS 27.0 or newer
    |  |              `- note: add 'if #available' version check
    |7 | }
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
macro expansion @Generable:2:22: error: 'GenerationSchema' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    |   |                      |- error: 'GenerationSchema' is only available in watchOS 27.0 or newer
    |   |                      `- note: add 'if #available' version check
    | 3 |         type: Self.self,
    | 4 |         properties: [
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:2:22: error: 'init(type:description:properties:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    |   |                      |- error: 'init(type:description:properties:)' is only available in watchOS 27.0 or newer
    |   |                      `- note: add 'if #available' version check
    | 3 |         type: Self.self,
    | 4 |         properties: [
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:12:49: error: 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   |                                                 |- error: 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
    |   |                                                 `- note: add 'if #available' version check
    |13 |     return GeneratedContent(
    |14 |         properties: properties,
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:13:12: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |13 |     return GeneratedContent(
    |   |            |- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |            `- note: add 'if #available' version check
    |14 |         properties: properties,
    |15 |         uniquingKeysWith: { _, second in
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:13:12: error: 'init(properties:id:uniquingKeysWith:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |13 |     return GeneratedContent(
    |   |            |- error: 'init(properties:id:uniquingKeysWith:)' is only available in watchOS 27.0 or newer
    |   |            `- note: add 'if #available' version check
    |14 |         properties: properties,
    |15 |         uniquingKeysWith: { _, second in
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:19:48: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |17 |         }
    |18 |     )
    |19 |     func addProperty(name: String, value: some Generable) {
    |   |                                                `- error: 'Generable' is only available in watchOS 27.0 or newer
    |20 |       properties.append((name: name, value: value))
    |21 |     }
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:19:48: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |17 |         }
    |18 |     )
    |19 |     func addProperty(name: String, value: some Generable) {
    |   |                                                `- error: 'Generable' is only available in watchOS 27.0 or newer
    |20 |       properties.append((name: name, value: value))
    |21 |     }
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:22:49: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |20 |       properties.append((name: name, value: value))
    |21 |     }
    |22 |     func addProperty(name: String, value: (some Generable)?) {
    |   |                                                 `- error: 'Generable' is only available in watchOS 27.0 or newer
    |23 |       if explicitNil || value != nil {
    |24 |         properties.append((name: name, value: value))
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:22:49: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |20 |       properties.append((name: name, value: value))
    |21 |     }
    |22 |     func addProperty(name: String, value: (some Generable)?) {
    |   |                                                 `- error: 'Generable' is only available in watchOS 27.0 or newer
    |23 |       if explicitNil || value != nil {
    |24 |         properties.append((name: name, value: value))
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:24:47: error: conformance of 'Optional<Wrapped>' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    |            `- note: add '@available' attribute to enclosing struct
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |22 |     func addProperty(name: String, value: (some Generable)?) {
    |23 |       if explicitNil || value != nil {
    |24 |         properties.append((name: name, value: value))
    |   |                                               |- error: conformance of 'Optional<Wrapped>' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
    |   |                                               `- note: add 'if #available' version check
    |25 |       }
    |26 |     }
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:32:33: error: 'GenerationID' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    +--- macro expansion @Generable ------------------------------------
    |27 | }
    |28 |
    |29 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |30 |     var id: GenerationID
    |31 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    |32 |         self.id = content.id ?? GenerationID()
    |   |                                 |- error: 'GenerationID' is only available in watchOS 27.0 or newer
    |   |                                 `- note: add 'if #available' version check
    |33 |     }
    |34 | }
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:32:33: error: 'init()' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:130:23: note: expanded code originates here
127 |     let description = "Generates a random mood for haiku"
128 |
129 |     @Generable
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     |- note: in expansion of macro 'Generable' on struct 'Arguments' here
    |     `- note: in expansion of macro 'Generable' on struct 'Arguments' here
130 |     struct Arguments {}
    +--- macro expansion @Generable ------------------------------------
    |27 | }
    |28 |
    |29 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |30 |     var id: GenerationID
    |31 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    |32 |         self.id = content.id ?? GenerationID()
    |   |                                 |- error: 'init()' is only available in watchOS 27.0 or newer
    |   |                                 `- note: add 'if #available' version check
    |33 |     }
    |34 | }
    +-------------------------------------------------------------------
131 |
132 |     func call(arguments: Arguments) async throws -> Mood? {
macro expansion @Generable:2:22: error: 'GenerationSchema' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    |   |                      |- error: 'GenerationSchema' is only available in watchOS 27.0 or newer
    |   |                      `- note: add 'if #available' version check
    | 3 |         type: Self.self,
    | 4 |         properties: [
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:2:22: error: 'init(type:description:properties:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    |   |                      |- error: 'init(type:description:properties:)' is only available in watchOS 27.0 or newer
    |   |                      `- note: add 'if #available' version check
    | 3 |         type: Self.self,
    | 4 |         properties: [
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:5:30: error: 'GenerationSchema' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    | 3 |         type: Self.self,
    | 4 |         properties: [
    | 5 |             FoundationModels.GenerationSchema.Property(name: "text", type: String.self)
    |   |                              |- error: 'GenerationSchema' is only available in watchOS 27.0 or newer
    |   |                              `- note: add 'if #available' version check
    | 6 |         ]
    | 7 |     )
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:5:47: error: 'init(name:description:type:guides:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | nonisolated static var generationSchema: FoundationModels.GenerationSchema {
    |   |                        `- note: add '@available' attribute to enclosing static property
    | 2 |     FoundationModels.GenerationSchema(
    | 3 |         type: Self.self,
    | 4 |         properties: [
    | 5 |             FoundationModels.GenerationSchema.Property(name: "text", type: String.self)
    |   |                                               |- error: 'init(name:description:type:guides:)' is only available in watchOS 27.0 or newer
    |   |                                               `- note: add 'if #available' version check
    | 6 |         ]
    | 7 |     )
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:12:49: error: 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   |                                                 |- error: 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
    |   |                                                 `- note: add 'if #available' version check
    |13 |     addProperty(name: "text", value: self.text)
    |14 |     return GeneratedContent(
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:13:5: error: conformance of 'String' to 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |13 |     addProperty(name: "text", value: self.text)
    |   |     |- error: conformance of 'String' to 'Generable' is only available in watchOS 27.0 or newer
    |   |     `- note: add 'if #available' version check
    |14 |     return GeneratedContent(
    |15 |         properties: properties,
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:14:12: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |13 |     addProperty(name: "text", value: self.text)
    |14 |     return GeneratedContent(
    |   |            |- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |            `- note: add 'if #available' version check
    |15 |         properties: properties,
    |16 |         uniquingKeysWith: { _, second in
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:14:12: error: 'init(properties:id:uniquingKeysWith:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |13 |     addProperty(name: "text", value: self.text)
    |14 |     return GeneratedContent(
    |   |            |- error: 'init(properties:id:uniquingKeysWith:)' is only available in watchOS 27.0 or newer
    |   |            `- note: add 'if #available' version check
    |15 |         properties: properties,
    |16 |         uniquingKeysWith: { _, second in
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:20:48: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |18 |         }
    |19 |     )
    |20 |     func addProperty(name: String, value: some Generable) {
    |   |                                                `- error: 'Generable' is only available in watchOS 27.0 or newer
    |21 |       properties.append((name: name, value: value))
    |22 |     }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:20:48: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |18 |         }
    |19 |     )
    |20 |     func addProperty(name: String, value: some Generable) {
    |   |                                                `- error: 'Generable' is only available in watchOS 27.0 or newer
    |21 |       properties.append((name: name, value: value))
    |22 |     }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:23:49: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |21 |       properties.append((name: name, value: value))
    |22 |     }
    |23 |     func addProperty(name: String, value: (some Generable)?) {
    |   |                                                 `- error: 'Generable' is only available in watchOS 27.0 or newer
    |24 |       if explicitNil || value != nil {
    |25 |         properties.append((name: name, value: value))
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:23:49: error: 'Generable' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |21 |       properties.append((name: name, value: value))
    |22 |     }
    |23 |     func addProperty(name: String, value: (some Generable)?) {
    |   |                                                 `- error: 'Generable' is only available in watchOS 27.0 or newer
    |24 |       if explicitNil || value != nil {
    |25 |         properties.append((name: name, value: value))
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:25:47: error: conformance of 'Optional<Wrapped>' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
    |        `- note: add '@available' attribute to enclosing struct
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    | 8 | }
    | 9 |
    |10 | nonisolated var generatedContent: GeneratedContent {
    |   |                 `- note: add '@available' attribute to enclosing property
    |11 |     let explicitNil = false
    |12 |     var properties = [(name: String, value: any ConvertibleToGeneratedContent)]()
    |   :
    |23 |     func addProperty(name: String, value: (some Generable)?) {
    |24 |       if explicitNil || value != nil {
    |25 |         properties.append((name: name, value: value))
    |   |                                               |- error: conformance of 'Optional<Wrapped>' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
    |   |                                               `- note: add 'if #available' version check
    |26 |       }
    |27 |     }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:34:33: error: 'GenerationID' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |28 | }
    |29 |
    |30 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |31 |     var id: GenerationID
    |32 |     var text: String.PartiallyGenerated?
    |33 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    |34 |         self.id = content.id ?? GenerationID()
    |   |                                 |- error: 'GenerationID' is only available in watchOS 27.0 or newer
    |   |                                 `- note: add 'if #available' version check
    |35 |         self.text = try content.value(forProperty: "text")
    |36 |     }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:34:33: error: 'init()' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |28 | }
    |29 |
    |30 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |31 |     var id: GenerationID
    |32 |     var text: String.PartiallyGenerated?
    |33 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    |34 |         self.id = content.id ?? GenerationID()
    |   |                                 |- error: 'init()' is only available in watchOS 27.0 or newer
    |   |                                 `- note: add 'if #available' version check
    |35 |         self.text = try content.value(forProperty: "text")
    |36 |     }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:35:33: error: 'value(_:forProperty:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:1: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |28 | }
    |29 |
    |30 | nonisolated struct PartiallyGenerated: Identifiable, nonisolated FoundationModels.ConvertibleFromGeneratedContent {
    |   |                    `- note: add '@available' attribute to enclosing struct
    |31 |     var id: GenerationID
    |32 |     var text: String.PartiallyGenerated?
    |33 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    |34 |         self.id = content.id ?? GenerationID()
    |35 |         self.text = try content.value(forProperty: "text")
    |   |                                 |- error: 'value(_:forProperty:)' is only available in watchOS 27.0 or newer
    |   |                                 `- note: add 'if #available' version check
    |36 |     }
    |37 | }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:3:33: error: 'value(_:forProperty:)' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:140:2: note: expanded code originates here
135 | }
136 |
137 | @Generable
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | |- note: in expansion of macro 'Generable' on struct 'Haiku' here
    | `- note: in expansion of macro 'Generable' on struct 'Haiku' here
138 | struct Haiku {
139 |     let text: String
140 | }
    +--- macro expansion @Generable ------------------------------------
    |1 | extension Haiku: nonisolated FoundationModels.Generable {
    |  | `- note: add '@available' attribute to enclosing extension
    |2 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |  |                 `- note: add '@available' attribute to enclosing initializer
    |3 |         self.text = try content.value(forProperty: "text")
    |  |                                 |- error: 'value(_:forProperty:)' is only available in watchOS 27.0 or newer
    |  |                                 `- note: add 'if #available' version check
    |4 |     }
    |5 | }
    +-------------------------------------------------------------------
141 |
macro expansion @Generable:3:36: error: 'value' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:2: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | extension Mood: nonisolated FoundationModels.Generable {
    |   | `- note: add '@available' attribute to enclosing extension
    | 2 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    | 3 |         let rawValue = try content.value(String.self)
    |   |                                    |- error: 'value' is only available in watchOS 27.0 or newer
    |   |                                    `- note: add 'if #available' version check
    | 4 |         if let value = Self(rawValue: rawValue) {
    | 5 |             self = value
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
macro expansion @Generable:7:36: error: 'GeneratedContent' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:2: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | extension Mood: nonisolated FoundationModels.Generable {
    |   | `- note: add '@available' attribute to enclosing extension
    | 2 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    | 3 |         let rawValue = try content.value(String.self)
    | 4 |         if let value = Self(rawValue: rawValue) {
    | 5 |             self = value
    | 6 |         } else {
    | 7 |             throw FoundationModels.GeneratedContent.ParsingError(rawContent: content.jsonString, debugDescription: "Unexpected rawValue \"\(rawValue)\" for \(Self.self)")
    |   |                                    |- error: 'GeneratedContent' is only available in watchOS 27.0 or newer
    |   |                                    `- note: add 'if #available' version check
    | 8 |         }
    | 9 |     }
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
macro expansion @Generable:7:86: error: 'jsonString' is only available in watchOS 27.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:123:2: note: expanded code originates here
118 | }
119 |
120 | @Generable
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | |- note: in expansion of macro 'Generable' on enum 'Mood' here
    | `- note: in expansion of macro 'Generable' on enum 'Mood' here
121 | enum Mood: String, CaseIterable {
122 |     case happy, sad, thoughtful, excited, calm
123 | }
    +--- macro expansion @Generable ------------------------------------
    | 1 | extension Mood: nonisolated FoundationModels.Generable {
    |   | `- note: add '@available' attribute to enclosing extension
    | 2 |     nonisolated init(_ content: FoundationModels.GeneratedContent) throws {
    |   |                 `- note: add '@available' attribute to enclosing initializer
    | 3 |         let rawValue = try content.value(String.self)
    | 4 |         if let value = Self(rawValue: rawValue) {
    | 5 |             self = value
    | 6 |         } else {
    | 7 |             throw FoundationModels.GeneratedContent.ParsingError(rawContent: content.jsonString, debugDescription: "Unexpected rawValue \"\(rawValue)\" for \(Self.self)")
    |   |                                                                                      |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |   |                                                                                      `- note: add 'if #available' version check
    | 8 |         }
    | 9 |     }
    +-------------------------------------------------------------------
124 |
125 | final class MoodTool: Tool {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:33:23: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | enum TranscriptFilter {
    |      `- note: add '@available' attribute to enclosing enum
 32 |     static func filter(
    |                 `- note: add '@available' attribute to enclosing static method
 33 |         _ transcript: Transcript,
    |                       `- error: 'Transcript' is only available in watchOS 27.0 or newer
 34 |         searchText: String,
 35 |         scope: SearchScope
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:36:10: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | enum TranscriptFilter {
    |      `- note: add '@available' attribute to enclosing enum
 32 |     static func filter(
    |                 `- note: add '@available' attribute to enclosing static method
 33 |         _ transcript: Transcript,
 34 |         searchText: String,
 35 |         scope: SearchScope
 36 |     ) -> Transcript {
    |          `- error: 'Transcript' is only available in watchOS 27.0 or newer
 37 |         guard !searchText.isEmpty else { return transcript }
 38 |         let entries = transcript.filter { entry in
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:46:28: error: 'Transcript' is only available in watchOS 27.0 or newer
 43 | }
 44 |
 45 | private extension SearchScope {
    |         `- note: add '@available' attribute to enclosing extension
 46 |     func includes(_ entry: Transcript.Entry) -> Bool {
    |          |                 `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 47 |         switch self {
 48 |         case .all:
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:115:57: error: 'Transcript' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
 72 |         var values = [id, description]
    :
113 |     }
114 |
115 |     private static func searchableValues(for segments: [Transcript.Segment]) -> [String] {
    |                         |                               `- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                         `- note: add '@available' attribute to enclosing static method
116 |         segments.flatMap { segment -> [String] in
117 |             switch segment {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:70:11: error: 'Transcript' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | |         `- error: 'Transcript' is only available in watchOS 27.0 or newer
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
 72 |         var values = [id, description]
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:38:34: error: conformance of 'Transcript' to 'RangeReplaceableCollection' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | enum TranscriptFilter {
    |      `- note: add '@available' attribute to enclosing enum
 32 |     static func filter(
    |                 `- note: add '@available' attribute to enclosing static method
 33 |         _ transcript: Transcript,
 34 |         searchText: String,
    :
 36 |     ) -> Transcript {
 37 |         guard !searchText.isEmpty else { return transcript }
 38 |         let entries = transcript.filter { entry in
    |                                  |- error: conformance of 'Transcript' to 'RangeReplaceableCollection' is only available in watchOS 27.0 or newer
    |                                  `- note: add 'if #available' version check
 39 |             scope.includes(entry) && entry.searchableText.localizedCaseInsensitiveContains(searchText)
 40 |         }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:41:16: error: 'Transcript' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | enum TranscriptFilter {
    |      `- note: add '@available' attribute to enclosing enum
 32 |     static func filter(
    |                 `- note: add '@available' attribute to enclosing static method
 33 |         _ transcript: Transcript,
 34 |         searchText: String,
    :
 39 |             scope.includes(entry) && entry.searchableText.localizedCaseInsensitiveContains(searchText)
 40 |         }
 41 |         return Transcript(entries: entries)
    |                |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                `- note: add 'if #available' version check
 42 |     }
 43 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:41:16: error: conformance of 'Transcript' to 'Sequence' is only available in watchOS 27.0 or newer
 29 | }
 30 |
 31 | enum TranscriptFilter {
    |      `- note: add '@available' attribute to enclosing enum
 32 |     static func filter(
    |                 `- note: add '@available' attribute to enclosing static method
 33 |         _ transcript: Transcript,
 34 |         searchText: String,
    :
 39 |             scope.includes(entry) && entry.searchableText.localizedCaseInsensitiveContains(searchText)
 40 |         }
 41 |         return Transcript(entries: entries)
    |                |- error: conformance of 'Transcript' to 'Sequence' is only available in watchOS 27.0 or newer
    |                `- note: add 'if #available' version check
 42 |     }
 43 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:72:23: error: 'id' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
    |                       |- error: 'id' is only available in watchOS 27.0 or newer
    |                       `- note: add 'if #available' version check
 73 |         switch self {
 74 |         case .instructions(let instructions):
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:72:27: error: 'description' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
    |                           |- error: 'description' is only available in watchOS 27.0 or newer
    |                           `- note: add 'if #available' version check
 73 |         switch self {
 74 |         case .instructions(let instructions):
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:79:45: error: conformance of 'GenerationSchema' to 'Encodable' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 77 |                 values.append(contentsOf: [tool.name, tool.description])
 78 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 79 |                     values.append(DebugJSON.prettyPrinted(tool.parameters))
    |                                             |- error: conformance of 'GenerationSchema' to 'Encodable' is only available in watchOS 27.0 or newer
    |                                             `- note: add 'if #available' version check
 80 |                 }
 81 |             }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:79:64: error: 'parameters' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 77 |                 values.append(contentsOf: [tool.name, tool.description])
 78 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 79 |                     values.append(DebugJSON.prettyPrinted(tool.parameters))
    |                                                                |- error: 'parameters' is only available in watchOS 27.0 or newer
    |                                                                `- note: add 'if #available' version check
 80 |                 }
 81 |             }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:86:51: error: 'name' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 84 |             values.append(String(describing: prompt.options))
 85 |             if let format = prompt.responseFormat {
 86 |                 values.append(contentsOf: [format.name, format.description])
    |                                                   |- error: 'name' is only available in watchOS 27.0 or newer
    |                                                   `- note: add 'if #available' version check
 87 |             }
 88 |             if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:86:64: error: 'description' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 84 |             values.append(String(describing: prompt.options))
 85 |             if let format = prompt.responseFormat {
 86 |                 values.append(contentsOf: [format.name, format.description])
    |                                                                |- error: 'description' is only available in watchOS 27.0 or newer
    |                                                                `- note: add 'if #available' version check
 87 |             }
 88 |             if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:89:50: error: 'metadata' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 87 |             }
 88 |             if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 89 |                 values.append(contentsOf: prompt.metadata.map { "\($0.key) \($0.value.jsonString)" })
    |                                                  |- error: 'metadata' is only available in watchOS 27.0 or newer
    |                                                  `- note: add 'if #available' version check
 90 |                 values.append(String(describing: prompt.contextOptions))
 91 |             }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:89:87: error: 'jsonString' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 87 |             }
 88 |             if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 89 |                 values.append(contentsOf: prompt.metadata.map { "\($0.key) \($0.value.jsonString)" })
    |                                                                                       |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |                                                                                       `- note: add 'if #available' version check
 90 |                 values.append(String(describing: prompt.contextOptions))
 91 |             }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:90:57: error: 'contextOptions' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 88 |             if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 89 |                 values.append(contentsOf: prompt.metadata.map { "\($0.key) \($0.value.jsonString)" })
 90 |                 values.append(String(describing: prompt.contextOptions))
    |                                                         |- error: 'contextOptions' is only available in watchOS 27.0 or newer
    |                                                         `- note: add 'if #available' version check
 91 |             }
 92 |         case .toolCalls(let calls):
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:94:83: error: 'jsonString' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 92 |         case .toolCalls(let calls):
 93 |             for call in calls {
 94 |                 values.append(contentsOf: [call.id, call.toolName, call.arguments.jsonString])
    |                                                                                   |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |                                                                                   `- note: add 'if #available' version check
 95 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 96 |                     values.append(contentsOf: call.metadata.map { "\($0.key) \($0.value.jsonString)" })
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:96:52: error: 'metadata' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 94 |                 values.append(contentsOf: [call.id, call.toolName, call.arguments.jsonString])
 95 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 96 |                     values.append(contentsOf: call.metadata.map { "\($0.key) \($0.value.jsonString)" })
    |                                                    |- error: 'metadata' is only available in watchOS 27.0 or newer
    |                                                    `- note: add 'if #available' version check
 97 |                 }
 98 |             }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:96:89: error: 'jsonString' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 94 |                 values.append(contentsOf: [call.id, call.toolName, call.arguments.jsonString])
 95 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
 96 |                     values.append(contentsOf: call.metadata.map { "\($0.key) \($0.value.jsonString)" })
    |                                                                                         |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |                                                                                         `- note: add 'if #available' version check
 97 |                 }
 98 |             }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:104:48: error: 'metadata' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
102 |         case .response(let response):
103 |             values.append(contentsOf: response.assetIDs)
104 |             values.append(contentsOf: response.metadata.map { "\($0.key) \($0.value.jsonString)" })
    |                                                |- error: 'metadata' is only available in watchOS 27.0 or newer
    |                                                `- note: add 'if #available' version check
105 |             values.append(contentsOf: Self.searchableValues(for: response.segments))
106 |         default:
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:104:85: error: 'jsonString' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
102 |         case .response(let response):
103 |             values.append(contentsOf: response.assetIDs)
104 |             values.append(contentsOf: response.metadata.map { "\($0.key) \($0.value.jsonString)" })
    |                                                                                     |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |                                                                                     `- note: add 'if #available' version check
105 |             values.append(contentsOf: Self.searchableValues(for: response.segments))
106 |         default:
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Mocks.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile SearchScope.swift
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:108:90: error: 'jsonString' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
106 |         default:
107 |             if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *), case .reasoning(let reasoning) = self {
108 |                 values.append(contentsOf: reasoning.metadata.map { "\($0.key) \($0.value.jsonString)" })
    |                                                                                          |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |                                                                                          `- note: add 'if #available' version check
109 |                 values.append(contentsOf: Self.searchableValues(for: reasoning.segments))
110 |             }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:93:13: error: for-in loop requires 'Transcript.ToolCalls' to conform to 'Sequence', which is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
    |         `- note: add '@available' attribute to enclosing property
 72 |         var values = [id, description]
 73 |         switch self {
    :
 91 |             }
 92 |         case .toolCalls(let calls):
 93 |             for call in calls {
    |             |- error: for-in loop requires 'Transcript.ToolCalls' to conform to 'Sequence', which is only available in watchOS 27.0 or newer
    |             `- note: add 'if #available' version check
 94 |                 values.append(contentsOf: [call.id, call.toolName, call.arguments.jsonString])
 95 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *) {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:121:41: error: 'schemaName' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
 72 |         var values = [id, description]
    :
113 |     }
114 |
115 |     private static func searchableValues(for segments: [Transcript.Segment]) -> [String] {
    |                         `- note: add '@available' attribute to enclosing static method
116 |         segments.flatMap { segment -> [String] in
117 |             switch segment {
    :
119 |                 return [value.id, value.content]
120 |             case .structure(let value):
121 |                 return [value.id, value.schemaName, value.content.jsonString]
    |                                         |- error: 'schemaName' is only available in watchOS 27.0 or newer
    |                                         `- note: add 'if #available' version check
122 |             default:
123 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *), case .attachment(let value) = segment {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:121:67: error: 'jsonString' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
 72 |         var values = [id, description]
    :
113 |     }
114 |
115 |     private static func searchableValues(for segments: [Transcript.Segment]) -> [String] {
    |                         `- note: add '@available' attribute to enclosing static method
116 |         segments.flatMap { segment -> [String] in
117 |             switch segment {
    :
119 |                 return [value.id, value.content]
120 |             case .structure(let value):
121 |                 return [value.id, value.schemaName, value.content.jsonString]
    |                                                                   |- error: 'jsonString' is only available in watchOS 27.0 or newer
    |                                                                   `- note: add 'if #available' version check
122 |             default:
123 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *), case .attachment(let value) = segment {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/SearchScope.swift:125:80: error: 'url' is only available in watchOS 27.0 or newer
 68 | }
 69 |
 70 | extension Transcript.Entry {
    | `- note: add '@available' attribute to enclosing extension
 71 |     var searchableText: String {
 72 |         var values = [id, description]
    :
113 |     }
114 |
115 |     private static func searchableValues(for segments: [Transcript.Segment]) -> [String] {
    |                         `- note: add '@available' attribute to enclosing static method
116 |         segments.flatMap { segment -> [String] in
117 |             switch segment {
    :
123 |                 if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *), case .attachment(let value) = segment {
124 |                     var result = [value.id, value.label ?? "", String(describing: value.content)]
125 |                     if case .image(let image) = value.content, let url = image.url {
    |                                                                                |- error: 'url' is only available in watchOS 27.0 or newer
    |                                                                                `- note: add 'if #available' version check
126 |                         result.append(url.absoluteString)
127 |                     }
SwiftCompile normal arm64_32 Compiling\ TokenCounter.swift,\ Transcript.Entry+AccentColor.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TokenCounter.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:44:46: error: 'Transcript' is only available in watchOS 27.0 or newer
11 | #endif
12 |
13 | extension Transcript.Entry {
   | `- note: add '@available' attribute to enclosing extension
14 |     var title: String {
15 |         switch self {
   :
42 |     }
43 |
44 |     private static func text(from segments: [Transcript.Segment]) -> String {
   |                         |                    `- error: 'Transcript' is only available in watchOS 27.0 or newer
   |                         `- note: add '@available' attribute to enclosing static method
45 |         segments.compactMap { segment -> String? in
46 |             switch segment {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:13:11: error: 'Transcript' is only available in watchOS 27.0 or newer
11 | #endif
12 |
13 | extension Transcript.Entry {
   | |         `- error: 'Transcript' is only available in watchOS 27.0 or newer
   | `- note: add '@available' attribute to enclosing extension
14 |     var title: String {
15 |         switch self {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:82:45: error: 'systemGray' is unavailable in watchOS
80 | private extension Color {
81 |     #if canImport(UIKit)
82 |     static let systemGray = Color(uiColor: .systemGray)
   |                                             `- error: 'systemGray' is unavailable in watchOS
83 |     static let systemBlue = Color(uiColor: .systemBlue)
84 |     static let systemGreen = Color(uiColor: .systemGreen)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:136:49: note: 'systemGray' has been explicitly marked unavailable here
134 | /* Shades of gray. systemGray is the base gray color.
135 |  */
136 | @property (class, nonatomic, readonly) UIColor *systemGrayColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemGray' has been explicitly marked unavailable here
137 |
138 | /* The numbered variations, systemGray2 through systemGray6, are grays which increasingly
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:83:45: error: 'systemBlue' is unavailable in watchOS
81 |     #if canImport(UIKit)
82 |     static let systemGray = Color(uiColor: .systemGray)
83 |     static let systemBlue = Color(uiColor: .systemBlue)
   |                                             `- error: 'systemBlue' is unavailable in watchOS
84 |     static let systemGreen = Color(uiColor: .systemGreen)
85 |     static let systemOrange = Color(uiColor: .systemOrange)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:123:49: note: 'systemBlue' has been explicitly marked unavailable here
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor          API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor        API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemBlue' has been explicitly marked unavailable here
124 | @property (class, nonatomic, readonly) UIColor *systemOrangeColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
125 | @property (class, nonatomic, readonly) UIColor *systemYellowColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:84:46: error: 'systemGreen' is unavailable in watchOS
82 |     static let systemGray = Color(uiColor: .systemGray)
83 |     static let systemBlue = Color(uiColor: .systemBlue)
84 |     static let systemGreen = Color(uiColor: .systemGreen)
   |                                              `- error: 'systemGreen' is unavailable in watchOS
85 |     static let systemOrange = Color(uiColor: .systemOrange)
86 |     static let systemIndigo = Color(uiColor: .systemIndigo)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:122:49: note: 'systemGreen' has been explicitly marked unavailable here
120 |  */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor          API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor        API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemGreen' has been explicitly marked unavailable here
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
124 | @property (class, nonatomic, readonly) UIColor *systemOrangeColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:85:47: error: 'systemOrange' is unavailable in watchOS
83 |     static let systemBlue = Color(uiColor: .systemBlue)
84 |     static let systemGreen = Color(uiColor: .systemGreen)
85 |     static let systemOrange = Color(uiColor: .systemOrange)
   |                                               `- error: 'systemOrange' is unavailable in watchOS
86 |     static let systemIndigo = Color(uiColor: .systemIndigo)
87 |     static let systemPurple = Color(uiColor: .systemPurple)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:124:49: note: 'systemOrange' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor        API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
124 | @property (class, nonatomic, readonly) UIColor *systemOrangeColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemOrange' has been explicitly marked unavailable here
125 | @property (class, nonatomic, readonly) UIColor *systemYellowColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
126 | @property (class, nonatomic, readonly) UIColor *systemPinkColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:86:47: error: 'systemIndigo' is unavailable in watchOS
84 |     static let systemGreen = Color(uiColor: .systemGreen)
85 |     static let systemOrange = Color(uiColor: .systemOrange)
86 |     static let systemIndigo = Color(uiColor: .systemIndigo)
   |                                               `- error: 'systemIndigo' is unavailable in watchOS
87 |     static let systemPurple = Color(uiColor: .systemPurple)
88 |     #elseif canImport(AppKit)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:129:49: note: 'systemIndigo' has been explicitly marked unavailable here
127 | @property (class, nonatomic, readonly) UIColor *systemPurpleColor       API_AVAILABLE(ios(9.0), tvos(9.0)) API_UNAVAILABLE(watchos);
128 | @property (class, nonatomic, readonly) UIColor *systemTealColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
129 | @property (class, nonatomic, readonly) UIColor *systemIndigoColor       API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemIndigo' has been explicitly marked unavailable here
130 | @property (class, nonatomic, readonly) UIColor *systemBrownColor        API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
131 | @property (class, nonatomic, readonly) UIColor *systemMintColor         API_AVAILABLE(ios(15.0), tvos(15.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:87:47: error: 'systemPurple' is unavailable in watchOS
85 |     static let systemOrange = Color(uiColor: .systemOrange)
86 |     static let systemIndigo = Color(uiColor: .systemIndigo)
87 |     static let systemPurple = Color(uiColor: .systemPurple)
   |                                               `- error: 'systemPurple' is unavailable in watchOS
88 |     #elseif canImport(AppKit)
89 |     static let systemGray = Color(nsColor: .systemGray)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:127:49: note: 'systemPurple' has been explicitly marked unavailable here
125 | @property (class, nonatomic, readonly) UIColor *systemYellowColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
126 | @property (class, nonatomic, readonly) UIColor *systemPinkColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
127 | @property (class, nonatomic, readonly) UIColor *systemPurpleColor       API_AVAILABLE(ios(9.0), tvos(9.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemPurple' has been explicitly marked unavailable here
128 | @property (class, nonatomic, readonly) UIColor *systemTealColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
129 | @property (class, nonatomic, readonly) UIColor *systemIndigoColor       API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift:35:42: error: conformance of 'Transcript.ToolCalls' to 'Collection' is only available in watchOS 27.0 or newer
11 | #endif
12 |
13 | extension Transcript.Entry {
   | `- note: add '@available' attribute to enclosing extension
14 |     var title: String {
15 |         switch self {
   :
27 |     }
28 |
29 |     var preview: String {
   |         `- note: add '@available' attribute to enclosing property
30 |         switch self {
31 |         case .instructions(let v): return Self.text(from: v.segments)
   :
33 |         case .response(let v): return Self.text(from: v.segments)
34 |         case .toolOutput(let v): return Self.text(from: v.segments)
35 |         case .toolCalls(let v): return v.map(\.toolName).joined(separator: ", ")
   |                                          |- error: conformance of 'Transcript.ToolCalls' to 'Collection' is only available in watchOS 27.0 or newer
   |                                          `- note: add 'if #available' version check
36 |         default:
37 |             if #available(iOS 27.0, macOS 27.0, visionOS 27.0, *), case .reasoning(let v) = self {
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TokenCounter.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TokenCounter.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Transcript.Entry+AccentColor.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Transcript.Entry+AccentColor.swift
SwiftCompile normal arm64_32 Compiling\ View+TranscriptDebugMenu.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/View+TranscriptDebugMenu.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/View+TranscriptDebugMenu.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile View+TranscriptDebugMenu.swift
SwiftCompile normal arm64_32 Compiling\ TranscriptDebugMenu+Configuration.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift:22:49: error: 'SystemLanguageModel' is unavailable in watchOS
20 |
21 |         /// Creates a configuration for a system language model.
22 |         public static func systemModel(_ model: SystemLanguageModel) -> Self {
   |                                                 `- error: 'SystemLanguageModel' is unavailable in watchOS
23 |             Self(contextMetricsProvider: .systemModel(model))
24 |         }
FoundationModels.SystemLanguageModel:4:20: note: 'SystemLanguageModel' has been explicitly marked unavailable here
2 | @available(tvOS, unavailable)
3 | @available(watchOS, unavailable)
4 | final public class SystemLanguageModel : Sendable {
  |                    `- note: 'SystemLanguageModel' has been explicitly marked unavailable here
5 |     @objc deinit
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift:48:43: error: 'Transcript' is only available in watchOS 27.0 or newer
44 |     /// The menu supplies either the complete transcript or a transcript containing
45 |     /// a single entry for its detail view. Keep custom providers stable across view updates.
46 |     struct ContextMetricsProvider: Sendable {
   |            `- note: add '@available' attribute to enclosing struct
47 |         var id: ContextMetricsProviderID = .custom(UUID())
48 |         private let calculate: @Sendable (Transcript) async throws -> ContextMetrics
   |                                           `- error: 'Transcript' is only available in watchOS 27.0 or newer
49 |
50 |         public init(
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift:51:45: error: 'Transcript' is only available in watchOS 27.0 or newer
44 |     /// The menu supplies either the complete transcript or a transcript containing
45 |     /// a single entry for its detail view. Keep custom providers stable across view updates.
46 |     struct ContextMetricsProvider: Sendable {
   |            `- note: add '@available' attribute to enclosing struct
47 |         var id: ContextMetricsProviderID = .custom(UUID())
48 |         private let calculate: @Sendable (Transcript) async throws -> ContextMetrics
49 |
50 |         public init(
   |                `- note: add '@available' attribute to enclosing initializer
51 |             calculate: @escaping @Sendable (Transcript) async throws -> ContextMetrics
   |                                             `- error: 'Transcript' is only available in watchOS 27.0 or newer
52 |         ) {
53 |             self.calculate = calculate
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift:57:49: error: 'SystemLanguageModel' is unavailable in watchOS
55 |
56 |         /// Creates a provider backed by a system language model's tokenizer.
57 |         public static func systemModel(_ model: SystemLanguageModel) -> Self {
   |                                                 `- error: 'SystemLanguageModel' is unavailable in watchOS
58 |             var provider = Self { transcript in
59 |                 guard #available(iOS 26.4, macOS 26.4, macCatalyst 26.4, visionOS 26.4, *) else {
FoundationModels.SystemLanguageModel:4:20: note: 'SystemLanguageModel' has been explicitly marked unavailable here
2 | @available(tvOS, unavailable)
3 | @available(watchOS, unavailable)
4 | final public class SystemLanguageModel : Sendable {
  |                    `- note: 'SystemLanguageModel' has been explicitly marked unavailable here
5 |     @objc deinit
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift:69:38: error: 'Transcript' is only available in watchOS 27.0 or newer
44 |     /// The menu supplies either the complete transcript or a transcript containing
45 |     /// a single entry for its detail view. Keep custom providers stable across view updates.
46 |     struct ContextMetricsProvider: Sendable {
   |            `- note: add '@available' attribute to enclosing struct
47 |         var id: ContextMetricsProviderID = .custom(UUID())
48 |         private let calculate: @Sendable (Transcript) async throws -> ContextMetrics
   :
67 |         }
68 |
69 |         func metrics(for transcript: Transcript) async throws -> ContextMetrics {
   |              |                       `- error: 'Transcript' is only available in watchOS 27.0 or newer
   |              `- note: add '@available' attribute to enclosing instance method
70 |             try await calculate(transcript)
71 |         }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift:77:21: error: 'Transcript' is only available in watchOS 27.0 or newer
74 |
75 | /// Restarts diagnostics when either the transcript or its configured counter changes.
76 | struct ContextMetricsRequest: Equatable {
   |        `- note: add '@available' attribute to enclosing struct
77 |     let transcript: Transcript
   |                     `- error: 'Transcript' is only available in watchOS 27.0 or newer
78 |     let providerID: ContextMetricsProviderID?
79 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift:62:50: error: 'tokenCount(for:)' is unavailable in watchOS
60 |                     throw ContextMetricsUnavailableError()
61 |                 }
62 |                 let tokenCount = try await model.tokenCount(for: transcript)
   |                                                  `- error: 'tokenCount(for:)' is unavailable in watchOS
63 |                 return ContextMetrics(tokenCount: tokenCount, contextSize: model.contextSize)
64 |             }
FoundationModels.SystemLanguageModel.tokenCount:5:45: note: 'tokenCount(for:)' has been explicitly marked unavailable here
3 |   @available(tvOS, unavailable)
4 |   @available(watchOS, unavailable)
5 |   nonisolated(nonsending) final public func tokenCount(for transcriptEntries: some Collection<Transcript.Entry>) async throws -> Int}
  |                                             `- note: 'tokenCount(for:)' has been explicitly marked unavailable here
6 |
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu+Configuration.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TranscriptDebugMenu+Configuration.swift
SwiftCompile normal arm64_32 Compiling\ UsageSection.swift /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/UsageSection.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/UsageSection.swift:11:16: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
 8 | /// Displays session token usage breakdown (input, cached, output, reasoning).
 9 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
10 | struct UsageSection: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let usage: LanguageModelSession.Usage
   |                `- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
12 |     @State private var isExpanded = false
13 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:113:23: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
109 |
110 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
111 | extension LanguageModelSession.Usage {
    | `- note: add '@available' attribute to enclosing extension
112 |     /// Mock usage for previews and independent section testing.
113 |     static let mock = LanguageModelSession.Usage(
    |                |      `- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                `- note: add '@available' attribute to enclosing static property
114 |         input: .init(totalTokenCount: 150, cachedTokenCount: 50),
115 |         output: .init(totalTokenCount: 80, reasoningTokenCount: 20),
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/Mocks.swift:116:32: error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
109 |
110 | @available(iOS 27.0, macOS 27.0, visionOS 27.0, *)
111 | extension LanguageModelSession.Usage {
    | `- note: add '@available' attribute to enclosing extension
112 |     /// Mock usage for previews and independent section testing.
113 |     static let mock = LanguageModelSession.Usage(
    |                `- note: add '@available' attribute to enclosing static property
114 |         input: .init(totalTokenCount: 150, cachedTokenCount: 50),
115 |         output: .init(totalTokenCount: 80, reasoningTokenCount: 20),
116 |         metadata: ["provider": "on-device"]
    |                                `- error: conformance of 'String' to 'ConvertibleToGeneratedContent' is only available in watchOS 27.0 or newer
117 |     )
118 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/FeedbackView.swift:37:45: error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
  6 | import SwiftUI
  7 |
  8 | struct FeedbackDraft: Equatable {
    |        `- note: add '@available' attribute to enclosing struct
  9 |     enum SentimentSelection: String, CaseIterable, Identifiable {
 10 |         case unspecified
    :
 35 |
 36 |     var sentiment: SentimentSelection = .unspecified
 37 |     var issueDrafts: [FeedbackIssueDraft] = LanguageModelFeedback.Issue.Category.allCases.map {
    |                                             `- error: 'LanguageModelFeedback' is only available in watchOS 27.0 or newer
 38 |         FeedbackIssueDraft(category: $0)
 39 |     }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:290:39: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
288 | #Preview {
289 |     @Previewable @State var isPresented = true
290 |     @Previewable @State var session = LanguageModelSession(transcript: .mock)
    |                                       |- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                                       `- note: add 'if #available' version check
291 |
292 |     Button("Show Transcript Menu") {
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:290:39: error: 'init(model:tools:transcript:)' is unavailable in watchOS
288 | #Preview {
289 |     @Previewable @State var isPresented = true
290 |     @Previewable @State var session = LanguageModelSession(transcript: .mock)
    |                                       `- error: 'init(model:tools:transcript:)' is unavailable in watchOS
291 |
292 |     Button("Show Transcript Menu") {
FoundationModels.LanguageModelSession.init:2:20: note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
1 | class LanguageModelSession {
2 | public convenience init(model: SystemLanguageModel = .default, tools: [any Tool] = [], transcript: Transcript)}
  |                    `- note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:298:38: error: 'default' is unavailable in watchOS
296 |         session,
297 |         isPresented: $isPresented,
298 |         configuration: .systemModel(.default)
    |                                      `- error: 'default' is unavailable in watchOS
299 |     )
300 | }
FoundationModels.SystemLanguageModel.default:5:20: note: 'default' has been explicitly marked unavailable here
3 |   @available(tvOS, unavailable)
4 |   @available(watchOS, unavailable)
5 |   public class var `default`: SystemLanguageModel { get }}
  |                    `- note: 'default' has been explicitly marked unavailable here
6 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:304:18: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
302 | #Preview("Transcript") {
303 |     TranscriptDebugMenu(
304 |         session: LanguageModelSession(transcript: .mock),
    |                  |- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                  `- note: add 'if #available' version check
305 |         configuration: .init(contextMetricsProvider: .init { _ in
306 |             .init(tokenCount: Mock.contextUsage.tokenCount, contextSize: Mock.contextUsage.contextSize)
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:304:18: error: 'init(model:tools:transcript:)' is unavailable in watchOS
302 | #Preview("Transcript") {
303 |     TranscriptDebugMenu(
304 |         session: LanguageModelSession(transcript: .mock),
    |                  `- error: 'init(model:tools:transcript:)' is unavailable in watchOS
305 |         configuration: .init(contextMetricsProvider: .init { _ in
306 |             .init(tokenCount: Mock.contextUsage.tokenCount, contextSize: Mock.contextUsage.contextSize)
FoundationModels.LanguageModelSession.init:2:20: note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
1 | class LanguageModelSession {
2 | public convenience init(model: SystemLanguageModel = .default, tools: [any Tool] = [], transcript: Transcript)}
  |                    `- note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:312:34: error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
310 |
311 | #Preview("Empty Transcript") {
312 |     TranscriptDebugMenu(session: LanguageModelSession(transcript: Transcript()))
    |                                  |- error: 'LanguageModelSession' is only available in watchOS 27.0 or newer
    |                                  `- note: add 'if #available' version check
313 | }
314 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:312:34: error: 'init(model:tools:transcript:)' is unavailable in watchOS
310 |
311 | #Preview("Empty Transcript") {
312 |     TranscriptDebugMenu(session: LanguageModelSession(transcript: Transcript()))
    |                                  `- error: 'init(model:tools:transcript:)' is unavailable in watchOS
313 | }
314 |
FoundationModels.LanguageModelSession.init:2:20: note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
1 | class LanguageModelSession {
2 | public convenience init(model: SystemLanguageModel = .default, tools: [any Tool] = [], transcript: Transcript)}
  |                    `- note: 'init(model:tools:transcript:)' has been explicitly marked unavailable here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptDebugMenu.swift:312:67: error: 'Transcript' is only available in watchOS 27.0 or newer
310 |
311 | #Preview("Empty Transcript") {
312 |     TranscriptDebugMenu(session: LanguageModelSession(transcript: Transcript()))
    |                                                                   |- error: 'Transcript' is only available in watchOS 27.0 or newer
    |                                                                   `- note: add 'if #available' version check
313 | }
314 |
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:62:39: error: 'Transcript' is only available in watchOS 27.0 or newer
60 | #Preview("Single entry") {
61 |     List {
62 |         TranscriptSection(transcript: Transcript(entries: [.promptMock]))
   |                                       |- error: 'Transcript' is only available in watchOS 27.0 or newer
   |                                       `- note: add 'if #available' version check
63 |     }
64 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/TranscriptSection.swift:68:39: error: 'Transcript' is only available in watchOS 27.0 or newer
66 | #Preview("Empty") {
67 |     List {
68 |         TranscriptSection(transcript: Transcript())
   |                                       |- error: 'Transcript' is only available in watchOS 27.0 or newer
   |                                       `- note: add 'if #available' version check
69 |     }
70 | }
/Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/UsageSection.swift:16:13: error: 'DisclosureGroup' is unavailable in watchOS
14 |     var body: some View {
15 |         Section {
16 |             DisclosureGroup(isExpanded: $isExpanded) {
   |             `- error: 'DisclosureGroup' is unavailable in watchOS
17 |                 LabeledContent("Input", value: usage.input.totalTokenCount, format: .number)
18 |                 LabeledContent("Cached input", value: usage.input.cachedTokenCount, format: .number)
SwiftUI.DisclosureGroup:4:27: note: 'DisclosureGroup' has been explicitly marked unavailable here
 2 | @available(tvOS, unavailable)
 3 | @available(watchOS, unavailable)
 4 | nonisolated public struct DisclosureGroup<Label, Content> : View, ~Sendable where Label : View, Content : View {
   |                           `- note: 'DisclosureGroup' has been explicitly marked unavailable here
 5 |     nonisolated public init(@ContentBuilder content: @escaping () -> Content, @ContentBuilder label: () -> Label)
 6 |     nonisolated public init(isExpanded: Binding<Bool>, @ContentBuilder content: @escaping () -> Content, @ContentBuilder label: () -> Label)
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/TranscriptDebugMenu/UsageSection.swift (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile UsageSection.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ TranscriptDebugMenu (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
SwiftCompile normal arm64 (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
2026-09-26 15:57:44.961 xcodebuild[854:4983] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftCompile normal arm64_32 (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
	SwiftEmitModule normal arm64_32 Emitting\ module\ for\ TranscriptDebugMenu (in target 'TranscriptDebugMenu' from project 'TranscriptDebugMenu')
	Building workspace TranscriptDebugMenu with scheme TranscriptDebugMenu
(3 failures)
BUILD FAILURE 6.4 watchOS