The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Arboreal, reference 0.4.0-alpha.0 (17eea7), with Swift 6.4 for watchOS using Xcode 27.0 on 24 Sep 2026 12:01:01 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 Arboreal -destination generic/platform=watchOS

Build Log

    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:26:34: error: 'UIHostingConfiguration' is unavailable in watchOS
24 |             addSubview(hostView)
25 |         }
26 |         hostView.configuration = UIHostingConfiguration {
   |                                  `- error: 'UIHostingConfiguration' is unavailable in watchOS
27 |             content
28 |         }
SwiftUI.UIHostingConfiguration:4:15: note: 'UIHostingConfiguration' has been explicitly marked unavailable here
 2 | @available(macOS, unavailable)
 3 | @available(watchOS, unavailable)
 4 | public struct UIHostingConfiguration<Content, Background> : UIContentConfiguration, ~Sendable where Content : View, Background : View {
   |               `- note: 'UIHostingConfiguration' has been explicitly marked unavailable here
 5 |     public func background<B>(@ContentBuilder content: () -> B) -> UIHostingConfiguration<Content, B> where B : View
 6 |     public func background<S>(_ style: S) -> UIHostingConfiguration<Content, _UIHostingConfigurationBackgroundView<S>> where S : ShapeStyle
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:26:34: error: 'init(content:)' is unavailable in watchOS
24 |             addSubview(hostView)
25 |         }
26 |         hostView.configuration = UIHostingConfiguration {
   |                                  `- error: 'init(content:)' is unavailable in watchOS
27 |             content
28 |         }
SwiftUI.UIHostingConfiguration.init:2:8: note: 'init(content:)' has been explicitly marked unavailable here
1 | generic struct UIHostingConfiguration {
2 | public init(@ContentBuilder content: () -> Content)}
  |        `- note: 'init(content:)' has been explicitly marked unavailable here
3 |
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeNodeCell.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/ViewReusePool.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ViewReusePool.swift
SwiftExplicitDependencyGeneratePcm arm64_32 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/SwiftUI-6DR5UJH94SD7QMITGWNAX9FBI.pcm
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
2026-09-24 08:00:51.220 xcodebuild[627:3902] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftCompile normal arm64 (in target 'Arboreal' from project 'Arboreal')
	SwiftEmitModule normal arm64 Emitting\ module\ for\ Arboreal (in target 'Arboreal' from project 'Arboreal')
	Building workspace Arboreal with scheme Arboreal
(3 failures)
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -resolvePackageDependencies
Resolve Package Graph
Resolved source packages:
  Arboreal: /Users/admin/builder/spi-builder-workspace
resolved source packages: Arboreal
2026-09-24 08:00:58.018 xcodebuild[802:4675] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Arboreal",
  "name" : "Arboreal",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "18.0"
    }
  ],
  "products" : [
    {
      "name" : "Arboreal",
      "targets" : [
        "Arboreal"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ArborealTests",
      "module_type" : "SwiftTarget",
      "name" : "ArborealTests",
      "path" : "Tests/ArborealTests",
      "sources" : [
        "ExpansionStateTests.swift",
        "PreviewLayoutTests.swift",
        "TestHelpers.swift",
        "TreeContainerEmbeddedTests.swift",
        "TreeFlatteningTests.swift",
        "TreeMutationTests.swift",
        "TreeNodeTests.swift",
        "VisibleRowCountTests.swift"
      ],
      "target_dependencies" : [
        "Arboreal"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Arboreal",
      "module_type" : "SwiftTarget",
      "name" : "Arboreal",
      "path" : "Sources/Arboreal",
      "product_memberships" : [
        "Arboreal"
      ],
      "sources" : [
        "Configuration/DropPreviewTheme.swift",
        "Configuration/FloatingDragStyle.swift",
        "Configuration/HapticConfiguration.swift",
        "Configuration/TreeDragDropConfiguration.swift",
        "Data/DragPayload.swift",
        "Data/DropTarget.swift",
        "Data/ExpansionState.swift",
        "Data/FlatTreeEntry.swift",
        "Data/TreeFlattening.swift",
        "Data/TreeMutations.swift",
        "Data/TreeNode.swift",
        "Data/TreeNodeContent.swift",
        "Data/VisibleRowCount.swift",
        "SwiftUI/TreeDragDropCoordinator.swift",
        "SwiftUI/TreeDragDropView.swift",
        "UIKit/DragState.swift",
        "UIKit/DropIndicatorLayer.swift",
        "UIKit/HapticController.swift",
        "UIKit/MultiItemPreviewView.swift",
        "UIKit/TreeContainerView.swift",
        "UIKit/TreeNodeCell.swift",
        "UIKit/ViewReusePool.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.2"
}
{
  "workspace" : {
    "name" : "Arboreal",
    "schemes" : [
      "Arboreal"
    ]
  }
}
2026-09-24 08:00:59.256 xcodebuild[810:4744] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme Arboreal -destination generic/platform=watchOS
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath /Users/admin/builder/spi-builder-workspace/.derivedData build -scheme Arboreal -destination generic/platform=watchOS
Resolve Package Graph
Resolved source packages:
  Arboreal: /Users/admin/builder/spi-builder-workspace
ComputePackagePrebuildTargetDependencyGraph
Prepare packages
CreateBuildRequest
SendProjectDescription
CreateBuildOperation
ComputeTargetDependencyGraph
note: Building targets in dependency order
note: Target dependency graph (2 targets)
    Target 'Arboreal-product' in project 'Arboreal'
        ➜ Explicit dependency on target 'Arboreal' in project 'Arboreal'
    Target 'Arboreal' in project 'Arboreal' (no dependencies)
GatherProvisioningInputs
CreateBuildDescription
ClangStatCache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -o /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache
SwiftDriver Arboreal normal arm64_32 com.apple.xcode.tools.swift.compiler (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name Arboreal -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64_32/Arboreal.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -target arm64_32-apple-watchos11.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 6 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64_32/Arboreal-OutputFileMap.json -save-temps -no-color-diagnostics -explicit-module-build -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -clang-scanner-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -sdk-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64_32/Arboreal.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64_32/Arboreal-dependency-scan.dia -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -package-name spi_builder_workspace -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64_32/Arboreal_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64_32/Arboreal-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftDriver Arboreal normal arm64 com.apple.xcode.tools.swift.compiler (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name Arboreal -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -target arm64-apple-watchos11.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 6 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal-OutputFileMap.json -save-temps -no-color-diagnostics -explicit-module-build -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -clang-scanner-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -sdk-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal-dependency-scan.dia -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -package-name spi_builder_workspace -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftCompile normal arm64 Compiling\ TreeDragDropConfiguration.swift,\ DragPayload.swift,\ DropTarget.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/TreeDragDropConfiguration.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/DragPayload.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/DropTarget.swift (in target 'Arboreal' from project 'Arboreal')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/TreeDragDropConfiguration.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeDragDropConfiguration.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/DragPayload.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DragPayload.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/DropTarget.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DropTarget.swift
SwiftCompile normal arm64 Compiling\ DropPreviewTheme.swift,\ FloatingDragStyle.swift,\ HapticConfiguration.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/DropPreviewTheme.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/FloatingDragStyle.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/HapticConfiguration.swift (in target 'Arboreal' from project 'Arboreal')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/DropPreviewTheme.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DropPreviewTheme.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/FloatingDragStyle.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile FloatingDragStyle.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/HapticConfiguration.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile HapticConfiguration.swift
SwiftCompile normal arm64 Compiling\ ExpansionState.swift,\ FlatTreeEntry.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/ExpansionState.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/FlatTreeEntry.swift (in target 'Arboreal' from project 'Arboreal')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/ExpansionState.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ExpansionState.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/FlatTreeEntry.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile FlatTreeEntry.swift
SwiftCompile normal arm64 Compiling\ DropIndicatorLayer.swift,\ HapticController.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift (in target 'Arboreal' from project 'Arboreal')
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:4:33: error: 'CAShapeLayer' is unavailable in watchOS
 2 |
 3 | @MainActor
 4 | final class DropIndicatorLayer: CAShapeLayer {
   |                                 `- error: 'CAShapeLayer' is unavailable in watchOS
 5 |     func update(
 6 |         for rect: CGRect,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
 38 |
 39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 40 | @interface CAShapeLayer : CALayer
    |            `- note: 'CAShapeLayer' has been explicitly marked unavailable here
 41 |
 42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:14:13: error: 'CATransaction' is unavailable in watchOS
12 |     ) {
13 |         if animated {
14 |             CATransaction.begin()
   |             `- error: 'CATransaction' is unavailable in watchOS
15 |             CATransaction.setAnimationDuration(0.15)
16 |             CATransaction.setAnimationTimingFunction(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:15:13: error: 'CATransaction' is unavailable in watchOS
13 |         if animated {
14 |             CATransaction.begin()
15 |             CATransaction.setAnimationDuration(0.15)
   |             `- error: 'CATransaction' is unavailable in watchOS
16 |             CATransaction.setAnimationTimingFunction(
17 |                 CAMediaTimingFunction(name: .easeInEaseOut)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:16:13: error: 'CATransaction' is unavailable in watchOS
14 |             CATransaction.begin()
15 |             CATransaction.setAnimationDuration(0.15)
16 |             CATransaction.setAnimationTimingFunction(
   |             `- error: 'CATransaction' is unavailable in watchOS
17 |                 CAMediaTimingFunction(name: .easeInEaseOut)
18 |             )
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:17:17: error: 'CAMediaTimingFunction' is unavailable in watchOS
15 |             CATransaction.setAnimationDuration(0.15)
16 |             CATransaction.setAnimationTimingFunction(
17 |                 CAMediaTimingFunction(name: .easeInEaseOut)
   |                 `- error: 'CAMediaTimingFunction' is unavailable in watchOS
18 |             )
19 |         } else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h:24:12: note: 'CAMediaTimingFunction' has been explicitly marked unavailable here
22 |
23 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
24 | @interface CAMediaTimingFunction : NSObject <NSSecureCoding>
   |            `- note: 'CAMediaTimingFunction' has been explicitly marked unavailable here
25 | {
26 | @private
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:17:46: error: 'easeInEaseOut' is unavailable in watchOS
15 |             CATransaction.setAnimationDuration(0.15)
16 |             CATransaction.setAnimationTimingFunction(
17 |                 CAMediaTimingFunction(name: .easeInEaseOut)
   |                                              `- error: 'easeInEaseOut' is unavailable in watchOS
18 |             )
19 |         } else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h:60:43: note: 'easeInEaseOut' has been explicitly marked unavailable here
58 | CA_EXTERN CAMediaTimingFunctionName const kCAMediaTimingFunctionEaseOut
59 |     API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos);
60 | CA_EXTERN CAMediaTimingFunctionName const kCAMediaTimingFunctionEaseInEaseOut
   |                                           `- note: 'easeInEaseOut' has been explicitly marked unavailable here
61 |     API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos);
62 | CA_EXTERN CAMediaTimingFunctionName const kCAMediaTimingFunctionDefault
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:20:13: error: 'CATransaction' is unavailable in watchOS
18 |             )
19 |         } else {
20 |             CATransaction.begin()
   |             `- error: 'CATransaction' is unavailable in watchOS
21 |             CATransaction.setDisableActions(true)
22 |         }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:21:13: error: 'CATransaction' is unavailable in watchOS
19 |         } else {
20 |             CATransaction.begin()
21 |             CATransaction.setDisableActions(true)
   |             `- error: 'CATransaction' is unavailable in watchOS
22 |         }
23 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:31:9: error: 'CATransaction' is unavailable in watchOS
29 |         sublayers?.forEach { $0.removeFromSuperlayer() }
30 |
31 |         CATransaction.commit()
   |         `- error: 'CATransaction' is unavailable in watchOS
32 |     }
33 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:35:9: error: 'CATransaction' is unavailable in watchOS
33 |
34 |     func hide() {
35 |         CATransaction.begin()
   |         `- error: 'CATransaction' is unavailable in watchOS
36 |         CATransaction.setAnimationDuration(0.1)
37 |         CATransaction.setAnimationTimingFunction(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:36:9: error: 'CATransaction' is unavailable in watchOS
34 |     func hide() {
35 |         CATransaction.begin()
36 |         CATransaction.setAnimationDuration(0.1)
   |         `- error: 'CATransaction' is unavailable in watchOS
37 |         CATransaction.setAnimationTimingFunction(
38 |             CAMediaTimingFunction(name: .easeOut)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:37:9: error: 'CATransaction' is unavailable in watchOS
35 |         CATransaction.begin()
36 |         CATransaction.setAnimationDuration(0.1)
37 |         CATransaction.setAnimationTimingFunction(
   |         `- error: 'CATransaction' is unavailable in watchOS
38 |             CAMediaTimingFunction(name: .easeOut)
39 |         )
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:38:13: error: 'CAMediaTimingFunction' is unavailable in watchOS
36 |         CATransaction.setAnimationDuration(0.1)
37 |         CATransaction.setAnimationTimingFunction(
38 |             CAMediaTimingFunction(name: .easeOut)
   |             `- error: 'CAMediaTimingFunction' is unavailable in watchOS
39 |         )
40 |         path = nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h:24:12: note: 'CAMediaTimingFunction' has been explicitly marked unavailable here
22 |
23 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
24 | @interface CAMediaTimingFunction : NSObject <NSSecureCoding>
   |            `- note: 'CAMediaTimingFunction' has been explicitly marked unavailable here
25 | {
26 | @private
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:38:42: error: 'easeOut' is unavailable in watchOS
36 |         CATransaction.setAnimationDuration(0.1)
37 |         CATransaction.setAnimationTimingFunction(
38 |             CAMediaTimingFunction(name: .easeOut)
   |                                          `- error: 'easeOut' is unavailable in watchOS
39 |         )
40 |         path = nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h:58:43: note: 'easeOut' has been explicitly marked unavailable here
56 | CA_EXTERN CAMediaTimingFunctionName const kCAMediaTimingFunctionEaseIn
57 |     API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos);
58 | CA_EXTERN CAMediaTimingFunctionName const kCAMediaTimingFunctionEaseOut
   |                                           `- note: 'easeOut' has been explicitly marked unavailable here
59 |     API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos);
60 | CA_EXTERN CAMediaTimingFunctionName const kCAMediaTimingFunctionEaseInEaseOut
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:42:9: error: 'CATransaction' is unavailable in watchOS
40 |         path = nil
41 |         sublayers?.forEach { $0.removeFromSuperlayer() }
42 |         CATransaction.commit()
   |         `- error: 'CATransaction' is unavailable in watchOS
43 |     }
44 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
 32 |
 33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 34 | @interface CATransaction : NSObject
    |            `- note: 'CATransaction' has been explicitly marked unavailable here
 35 |
 36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:5:34: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
 3 | @MainActor
 4 | final class HapticController {
 5 |     private var impactGenerator: UIImpactFeedbackGenerator?
   |                                  `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
 6 |     private var selectionGenerator: UISelectionFeedbackGenerator?
 7 |     private var notificationGenerator: UINotificationFeedbackGenerator?
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:6:37: error: 'UISelectionFeedbackGenerator' is unavailable in watchOS
 4 | final class HapticController {
 5 |     private var impactGenerator: UIImpactFeedbackGenerator?
 6 |     private var selectionGenerator: UISelectionFeedbackGenerator?
   |                                     `- error: 'UISelectionFeedbackGenerator' is unavailable in watchOS
 7 |     private var notificationGenerator: UINotificationFeedbackGenerator?
 8 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISelectionFeedbackGenerator.h:15:12: note: 'UISelectionFeedbackGenerator' has been explicitly marked unavailable here
13 | // UISelectionFeedbackGenerator is used to give user feedback when a selection changes
14 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UISelectionFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UISelectionFeedbackGenerator' has been explicitly marked unavailable here
16 |
17 | /// call when the selection changes (not on initial selection)
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DropIndicatorLayer.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile HapticController.swift
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:7:40: error: 'UINotificationFeedbackGenerator' is unavailable in watchOS
 5 |     private var impactGenerator: UIImpactFeedbackGenerator?
 6 |     private var selectionGenerator: UISelectionFeedbackGenerator?
 7 |     private var notificationGenerator: UINotificationFeedbackGenerator?
   |                                        `- error: 'UINotificationFeedbackGenerator' is unavailable in watchOS
 8 |
 9 |     private let configuration: HapticConfiguration
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UINotificationFeedbackGenerator.h:21:12: note: 'UINotificationFeedbackGenerator' has been explicitly marked unavailable here
19 | // UINotificationFeedbackGenerator is used to give user feedback when an notification is displayed
20 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UINotificationFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UINotificationFeedbackGenerator' has been explicitly marked unavailable here
22 |
23 | /// call when a notification is displayed, passing the corresponding type
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:17:31: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
15 |     func prepare() {
16 |         if configuration.dragStartEnabled || configuration.dropEnabled {
17 |             impactGenerator = UIImpactFeedbackGenerator(style: .medium)
   |                               `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
18 |             impactGenerator?.prepare()
19 |         }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:21:34: error: 'UISelectionFeedbackGenerator' is unavailable in watchOS
19 |         }
20 |         if configuration.hoverOverTargetEnabled {
21 |             selectionGenerator = UISelectionFeedbackGenerator()
   |                                  `- error: 'UISelectionFeedbackGenerator' is unavailable in watchOS
22 |             selectionGenerator?.prepare()
23 |         }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISelectionFeedbackGenerator.h:15:12: note: 'UISelectionFeedbackGenerator' has been explicitly marked unavailable here
13 | // UISelectionFeedbackGenerator is used to give user feedback when a selection changes
14 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UISelectionFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UISelectionFeedbackGenerator' has been explicitly marked unavailable here
16 |
17 | /// call when the selection changes (not on initial selection)
SwiftCompile normal arm64 Compiling\ TreeFlattening.swift,\ TreeMutations.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeFlattening.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeMutations.swift (in target 'Arboreal' from project 'Arboreal')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeFlattening.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeFlattening.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeMutations.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeMutations.swift
SwiftCompile normal arm64 Compiling\ TreeNode.swift,\ TreeNodeContent.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeNode.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeNodeContent.swift (in target 'Arboreal' from project 'Arboreal')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeNode.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeNode.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeNodeContent.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeNodeContent.swift
SwiftCompile normal arm64 Compiling\ VisibleRowCount.swift,\ TreeDragDropCoordinator.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/VisibleRowCount.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift (in target 'Arboreal' from project 'Arboreal')
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:23:35: error: 'UIView' is unavailable in watchOS
 21 |     private var hapticController: HapticController
 22 |     private var view: TreeDragDropView<Content, CellContent>
 23 |     private weak var liftingCell: UIView?
    |                                   `- error: 'UIView' is unavailable in watchOS
 24 |
 25 |     // Floating drag view (follows finger)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:26:35: error: 'UIView' is unavailable in watchOS
 24 |
 25 |     // Floating drag view (follows finger)
 26 |     private var floatingDragView: UIView?
    |                                   `- error: 'UIView' is unavailable in watchOS
 27 |     private var dragTouchOffset: CGPoint = .zero
 28 |     private var originalCellFrameInWindow: CGRect = .zero
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:50:48: error: 'UIDragInteraction' is unavailable in watchOS
 48 |     // MARK: - UIDragInteractionDelegate
 49 |
 50 |     public func dragInteraction(_ interaction: UIDragInteraction, itemsForBeginning session: any UIDragSession) -> [UIDragItem] {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
 51 |         guard let containerView else { return [] }
 52 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:50:98: error: 'UIDragSession' is unavailable in watchOS
 48 |     // MARK: - UIDragInteractionDelegate
 49 |
 50 |     public func dragInteraction(_ interaction: UIDragInteraction, itemsForBeginning session: any UIDragSession) -> [UIDragItem] {
    |                                                                                                  `- error: 'UIDragSession' is unavailable in watchOS
 51 |         guard let containerView else { return [] }
 52 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:50:117: error: 'UIDragItem' is unavailable in watchOS
 48 |     // MARK: - UIDragInteractionDelegate
 49 |
 50 |     public func dragInteraction(_ interaction: UIDragInteraction, itemsForBeginning session: any UIDragSession) -> [UIDragItem] {
    |                                                                                                                     `- error: 'UIDragItem' is unavailable in watchOS
 51 |         guard let containerView else { return [] }
 52 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:48: error: 'UIDragInteraction' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:91: error: 'UIDragItem' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                                                           `- error: 'UIDragItem' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:116: error: 'UIDragSession' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                                                                                    `- error: 'UIDragSession' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:134: error: 'UITargetedDragPreview' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                                                                                                      `- error: 'UITargetedDragPreview' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITargetedDragPreview.h:20:12: note: 'UITargetedDragPreview' has been explicitly marked unavailable here
18 |
19 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
20 | @interface UITargetedDragPreview : UITargetedPreview
   |            `- note: 'UITargetedDragPreview' has been explicitly marked unavailable here
21 |
22 | /* Returns a preview with the same view and parameters, but a new target.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:100:48: error: 'UIDragInteraction' is unavailable in watchOS
 98 |     }
 99 |
100 |     public func dragInteraction(_ interaction: UIDragInteraction, willAnimateLiftWith animator: any UIDragAnimating, session: any UIDragSession) {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
101 |         // Hide the original cell immediately; the floating view is the visual representation
102 |         liftingCell?.isHidden = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:100:101: error: 'UIDragAnimating' is unavailable in watchOS
 98 |     }
 99 |
100 |     public func dragInteraction(_ interaction: UIDragInteraction, willAnimateLiftWith animator: any UIDragAnimating, session: any UIDragSession) {
    |                                                                                                     `- error: 'UIDragAnimating' is unavailable in watchOS
101 |         // Hide the original cell immediately; the floating view is the visual representation
102 |         liftingCell?.isHidden = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:21:11: note: 'UIDragAnimating' has been explicitly marked unavailable here
 19 |
 20 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 21 | @protocol UIDragAnimating <NSObject>
    |           `- note: 'UIDragAnimating' has been explicitly marked unavailable here
 22 |
 23 | /* Instances of UIDragAnimating provide you a way to animate your own changes
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:100:131: error: 'UIDragSession' is unavailable in watchOS
 98 |     }
 99 |
100 |     public func dragInteraction(_ interaction: UIDragInteraction, willAnimateLiftWith animator: any UIDragAnimating, session: any UIDragSession) {
    |                                                                                                                                   `- error: 'UIDragSession' is unavailable in watchOS
101 |         // Hide the original cell immediately; the floating view is the visual representation
102 |         liftingCell?.isHidden = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:117:48: error: 'UIDragInteraction' is unavailable in watchOS
115 |     }
116 |
117 |     public func dragInteraction(_ interaction: UIDragInteraction, session: any UIDragSession, didEndWith operation: UIDropOperation) {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
118 |         // Animate floating view back to original position, then remove
119 |         if let floating = floatingDragView {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:117:80: error: 'UIDragSession' is unavailable in watchOS
115 |     }
116 |
117 |     public func dragInteraction(_ interaction: UIDragInteraction, session: any UIDragSession, didEndWith operation: UIDropOperation) {
    |                                                                                `- error: 'UIDragSession' is unavailable in watchOS
118 |         // Animate floating view back to original position, then remove
119 |         if let floating = floatingDragView {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:117:117: error: 'UIDropOperation' is unavailable in watchOS
115 |     }
116 |
117 |     public func dragInteraction(_ interaction: UIDragInteraction, session: any UIDragSession, didEndWith operation: UIDropOperation) {
    |                                                                                                                     `- error: 'UIDropOperation' is unavailable in watchOS
118 |         // Animate floating view back to original position, then remove
119 |         if let floating = floatingDragView {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:41:29: note: 'UIDropOperation' has been explicitly marked unavailable here
 39 |  * what operation it will perform if the user drops.
 40 |  */
 41 | typedef NS_ENUM(NSUInteger, UIDropOperation) {
    |                             `- note: 'UIDropOperation' has been explicitly marked unavailable here
 42 |     /* Operations that do NOT cause data transfer.
 43 |      *
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:146:48: error: 'UIDragInteraction' is unavailable in watchOS
144 |     }
145 |
146 |     public func dragInteraction(_ interaction: UIDragInteraction, item: UIDragItem, willAnimateCancelWith animator: any UIDragAnimating) {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
147 |         let cell = liftingCell
148 |         animator.addAnimations {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:146:73: error: 'UIDragItem' is unavailable in watchOS
144 |     }
145 |
146 |     public func dragInteraction(_ interaction: UIDragInteraction, item: UIDragItem, willAnimateCancelWith animator: any UIDragAnimating) {
    |                                                                         `- error: 'UIDragItem' is unavailable in watchOS
147 |         let cell = liftingCell
148 |         animator.addAnimations {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:146:121: error: 'UIDragAnimating' is unavailable in watchOS
144 |     }
145 |
146 |     public func dragInteraction(_ interaction: UIDragInteraction, item: UIDragItem, willAnimateCancelWith animator: any UIDragAnimating) {
    |                                                                                                                         `- error: 'UIDragAnimating' is unavailable in watchOS
147 |         let cell = liftingCell
148 |         animator.addAnimations {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:21:11: note: 'UIDragAnimating' has been explicitly marked unavailable here
 19 |
 20 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 21 | @protocol UIDragAnimating <NSObject>
    |           `- note: 'UIDragAnimating' has been explicitly marked unavailable here
 22 |
 23 | /* Instances of UIDragAnimating provide you a way to animate your own changes
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:159:48: error: 'UIDropInteraction' is unavailable in watchOS
157 |     // MARK: - UIDropInteractionDelegate
158 |
159 |     public func dropInteraction(_ interaction: UIDropInteraction, canHandle session: any UIDropSession) -> Bool {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
160 |         session.localDragSession != nil
161 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:159:90: error: 'UIDropSession' is unavailable in watchOS
157 |     // MARK: - UIDropInteractionDelegate
158 |
159 |     public func dropInteraction(_ interaction: UIDropInteraction, canHandle session: any UIDropSession) -> Bool {
    |                                                                                          `- error: 'UIDropSession' is unavailable in watchOS
160 |         session.localDragSession != nil
161 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:163:48: error: 'UIDropInteraction' is unavailable in watchOS
161 |     }
162 |
163 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: any UIDropSession) -> UIDropProposal {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
164 |         guard let containerView else { return UIDropProposal(operation: .cancel) }
165 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:163:97: error: 'UIDropSession' is unavailable in watchOS
161 |     }
162 |
163 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: any UIDropSession) -> UIDropProposal {
    |                                                                                                 `- error: 'UIDropSession' is unavailable in watchOS
164 |         guard let containerView else { return UIDropProposal(operation: .cancel) }
165 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:163:115: error: 'UIDropProposal' is unavailable in watchOS
161 |     }
162 |
163 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: any UIDropSession) -> UIDropProposal {
    |                                                                                                                   `- error: 'UIDropProposal' is unavailable in watchOS
164 |         guard let containerView else { return UIDropProposal(operation: .cancel) }
165 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:87:12: note: 'UIDropProposal' has been explicitly marked unavailable here
 85 |
 86 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 87 | @interface UIDropProposal : NSObject <NSCopying>
    |            `- note: 'UIDropProposal' has been explicitly marked unavailable here
 88 |
 89 | - (instancetype)initWithDropOperation:(UIDropOperation)operation NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:273:48: error: 'UIDropInteraction' is unavailable in watchOS
271 |     }
272 |
273 |     public func dropInteraction(_ interaction: UIDropInteraction, performDrop session: any UIDropSession) {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
274 |         guard let containerView,
275 |               let dragItem = session.items.first,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:273:92: error: 'UIDropSession' is unavailable in watchOS
271 |     }
272 |
273 |     public func dropInteraction(_ interaction: UIDropInteraction, performDrop session: any UIDropSession) {
    |                                                                                            `- error: 'UIDropSession' is unavailable in watchOS
274 |         guard let containerView,
275 |               let dragItem = session.items.first,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:48: error: 'UIDropInteraction' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:92: error: 'UIDragItem' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                                                            `- error: 'UIDragItem' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:132: error: 'UITargetedDragPreview' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                                                                                                    `- error: 'UITargetedDragPreview' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITargetedDragPreview.h:20:12: note: 'UITargetedDragPreview' has been explicitly marked unavailable here
18 |
19 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
20 | @interface UITargetedDragPreview : UITargetedPreview
   |            `- note: 'UITargetedDragPreview' has been explicitly marked unavailable here
21 |
22 | /* Returns a preview with the same view and parameters, but a new target.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:158: error: 'UITargetedDragPreview' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                                                                                                                              `- error: 'UITargetedDragPreview' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITargetedDragPreview.h:20:12: note: 'UITargetedDragPreview' has been explicitly marked unavailable here
18 |
19 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
20 | @interface UITargetedDragPreview : UITargetedPreview
   |            `- note: 'UITargetedDragPreview' has been explicitly marked unavailable here
21 |
22 | /* Returns a preview with the same view and parameters, but a new target.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:332:48: error: 'UIDropInteraction' is unavailable in watchOS
330 |     }
331 |
332 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidExit session: any UIDropSession) {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
333 |         removeFloatingDragView()
334 |         if let existingPayload = containerView?.dragState.payload {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:332:95: error: 'UIDropSession' is unavailable in watchOS
330 |     }
331 |
332 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidExit session: any UIDropSession) {
    |                                                                                               `- error: 'UIDropSession' is unavailable in watchOS
333 |         removeFloatingDragView()
334 |         if let existingPayload = containerView?.dragState.payload {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:341:48: error: 'UIDropInteraction' is unavailable in watchOS
339 |     }
340 |
341 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidEnd session: any UIDropSession) {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
342 |         removeFloatingDragView()
343 |         containerView?.transitionDragState(to: .idle)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:341:94: error: 'UIDropSession' is unavailable in watchOS
339 |     }
340 |
341 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidEnd session: any UIDropSession) {
    |                                                                                              `- error: 'UIDropSession' is unavailable in watchOS
342 |         removeFloatingDragView()
343 |         containerView?.transitionDragState(to: .idle)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:349:51: error: 'UIView' is unavailable in watchOS
347 |     // MARK: - Floating Drag View
348 |
349 |     private func createFloatingDragView(for cell: UIView, in window: UIWindow, touchLocation: CGPoint) {
    |                                                   `- error: 'UIView' is unavailable in watchOS
350 |         let cellFrameInWindow = cell.convert(cell.bounds, to: window)
351 |         originalCellFrameInWindow = cellFrameInWindow
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:349:70: error: 'UIWindow' is unavailable in watchOS
347 |     // MARK: - Floating Drag View
348 |
349 |     private func createFloatingDragView(for cell: UIView, in window: UIWindow, touchLocation: CGPoint) {
    |                                                                      `- error: 'UIWindow' is unavailable in watchOS
350 |         let cellFrameInWindow = cell.convert(cell.bounds, to: window)
351 |         originalCellFrameInWindow = cellFrameInWindow
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
 20 |
 21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 22 | @interface UIWindow : UIView
    |            `- note: 'UIWindow' has been explicitly marked unavailable here
 23 |
 24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:9:100: error: 'UIDragInteractionDelegate' is unavailable in watchOS
  7 | /// conformances require it.
  8 | @MainActor
  9 | public final class TreeDragDropCoordinator<Content: TreeNodeContent, CellContent: View>: NSObject, UIDragInteractionDelegate, UIDropInteractionDelegate where Content: Sendable, Content.ID: Sendable {
    |                                                                                                    `- error: 'UIDragInteractionDelegate' is unavailable in watchOS
 10 |
 11 |     // MARK: - State
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:88:11: note: 'UIDragInteractionDelegate' has been explicitly marked unavailable here
 86 |
 87 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 88 | @protocol UIDragInteractionDelegate <NSObject>
    |           `- note: 'UIDragInteractionDelegate' has been explicitly marked unavailable here
 89 |
 90 | @required
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:9:127: error: 'UIDropInteractionDelegate' is unavailable in watchOS
  7 | /// conformances require it.
  8 | @MainActor
  9 | public final class TreeDragDropCoordinator<Content: TreeNodeContent, CellContent: View>: NSObject, UIDragInteractionDelegate, UIDropInteractionDelegate where Content: Sendable, Content.ID: Sendable {
    |                                                                                                                               `- error: 'UIDropInteractionDelegate' is unavailable in watchOS
 10 |
 11 |     // MARK: - State
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:115:11: note: 'UIDropInteractionDelegate' has been explicitly marked unavailable here
113 |
114 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
115 | @protocol UIDropInteractionDelegate <NSObject>
    |           `- note: 'UIDropInteractionDelegate' has been explicitly marked unavailable here
116 |
117 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:84:24: error: 'UIDragItem' is unavailable in watchOS
 82 |
 83 |         let itemProvider = NSItemProvider()
 84 |         let dragItem = UIDragItem(itemProvider: itemProvider)
    |                        `- error: 'UIDragItem' is unavailable in watchOS
 85 |         dragItem.localObject = payload
 86 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:120:13: error: 'UIView' is unavailable in watchOS
118 |         // Animate floating view back to original position, then remove
119 |         if let floating = floatingDragView {
120 |             UIView.animate(withDuration: 0.25, delay: 0, options: .curveEaseInOut) {
    |             `- error: 'UIView' is unavailable in watchOS
121 |                 floating.transform = .identity
122 |                 floating.frame = self.originalCellFrameInWindow
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:164:47: error: 'UIDropProposal' is unavailable in watchOS
162 |
163 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: any UIDropSession) -> UIDropProposal {
164 |         guard let containerView else { return UIDropProposal(operation: .cancel) }
    |                                               `- error: 'UIDropProposal' is unavailable in watchOS
165 |
166 |         let location = session.location(in: containerView)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:87:12: note: 'UIDropProposal' has been explicitly marked unavailable here
 85 |
 86 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 87 | @interface UIDropProposal : NSObject <NSCopying>
    |            `- note: 'UIDropProposal' has been explicitly marked unavailable here
 88 |
 89 | - (instancetype)initWithDropOperation:(UIDropOperation)operation NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:185:20: error: 'UIDropProposal' is unavailable in watchOS
183 |                 containerView.transitionDragState(to: .idle)
184 |             }
185 |             return UIDropProposal(operation: .cancel)
    |                    `- error: 'UIDropProposal' is unavailable in watchOS
186 |         }
187 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:87:12: note: 'UIDropProposal' has been explicitly marked unavailable here
 85 |
 86 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 87 | @interface UIDropProposal : NSObject <NSCopying>
    |            `- note: 'UIDropProposal' has been explicitly marked unavailable here
 88 |
 89 | - (instancetype)initWithDropOperation:(UIDropOperation)operation NS_DESIGNATED_INITIALIZER;
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/VisibleRowCount.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VisibleRowCount.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeDragDropCoordinator.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ Arboreal (in target 'Arboreal' from project 'Arboreal')
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:23:35: error: 'UIView' is unavailable in watchOS
 21 |     private var hapticController: HapticController
 22 |     private var view: TreeDragDropView<Content, CellContent>
 23 |     private weak var liftingCell: UIView?
    |                                   `- error: 'UIView' is unavailable in watchOS
 24 |
 25 |     // Floating drag view (follows finger)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:26:35: error: 'UIView' is unavailable in watchOS
 24 |
 25 |     // Floating drag view (follows finger)
 26 |     private var floatingDragView: UIView?
    |                                   `- error: 'UIView' is unavailable in watchOS
 27 |     private var dragTouchOffset: CGPoint = .zero
 28 |     private var originalCellFrameInWindow: CGRect = .zero
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:50:48: error: 'UIDragInteraction' is unavailable in watchOS
 48 |     // MARK: - UIDragInteractionDelegate
 49 |
 50 |     public func dragInteraction(_ interaction: UIDragInteraction, itemsForBeginning session: any UIDragSession) -> [UIDragItem] {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
 51 |         guard let containerView else { return [] }
 52 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:50:98: error: 'UIDragSession' is unavailable in watchOS
 48 |     // MARK: - UIDragInteractionDelegate
 49 |
 50 |     public func dragInteraction(_ interaction: UIDragInteraction, itemsForBeginning session: any UIDragSession) -> [UIDragItem] {
    |                                                                                                  `- error: 'UIDragSession' is unavailable in watchOS
 51 |         guard let containerView else { return [] }
 52 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:50:117: error: 'UIDragItem' is unavailable in watchOS
 48 |     // MARK: - UIDragInteractionDelegate
 49 |
 50 |     public func dragInteraction(_ interaction: UIDragInteraction, itemsForBeginning session: any UIDragSession) -> [UIDragItem] {
    |                                                                                                                     `- error: 'UIDragItem' is unavailable in watchOS
 51 |         guard let containerView else { return [] }
 52 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:48: error: 'UIDragInteraction' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:91: error: 'UIDragItem' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                                                           `- error: 'UIDragItem' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:116: error: 'UIDragSession' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                                                                                    `- error: 'UIDragSession' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:95:134: error: 'UITargetedDragPreview' is unavailable in watchOS
 93 |     }
 94 |
 95 |     public func dragInteraction(_ interaction: UIDragInteraction, previewForLifting item: UIDragItem, session: any UIDragSession) -> UITargetedDragPreview? {
    |                                                                                                                                      `- error: 'UITargetedDragPreview' is unavailable in watchOS
 96 |         // Floating view was already created in itemsForBeginning
 97 |         return nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITargetedDragPreview.h:20:12: note: 'UITargetedDragPreview' has been explicitly marked unavailable here
18 |
19 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
20 | @interface UITargetedDragPreview : UITargetedPreview
   |            `- note: 'UITargetedDragPreview' has been explicitly marked unavailable here
21 |
22 | /* Returns a preview with the same view and parameters, but a new target.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:100:48: error: 'UIDragInteraction' is unavailable in watchOS
 98 |     }
 99 |
100 |     public func dragInteraction(_ interaction: UIDragInteraction, willAnimateLiftWith animator: any UIDragAnimating, session: any UIDragSession) {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
101 |         // Hide the original cell immediately; the floating view is the visual representation
102 |         liftingCell?.isHidden = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:100:101: error: 'UIDragAnimating' is unavailable in watchOS
 98 |     }
 99 |
100 |     public func dragInteraction(_ interaction: UIDragInteraction, willAnimateLiftWith animator: any UIDragAnimating, session: any UIDragSession) {
    |                                                                                                     `- error: 'UIDragAnimating' is unavailable in watchOS
101 |         // Hide the original cell immediately; the floating view is the visual representation
102 |         liftingCell?.isHidden = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:21:11: note: 'UIDragAnimating' has been explicitly marked unavailable here
 19 |
 20 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 21 | @protocol UIDragAnimating <NSObject>
    |           `- note: 'UIDragAnimating' has been explicitly marked unavailable here
 22 |
 23 | /* Instances of UIDragAnimating provide you a way to animate your own changes
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:100:131: error: 'UIDragSession' is unavailable in watchOS
 98 |     }
 99 |
100 |     public func dragInteraction(_ interaction: UIDragInteraction, willAnimateLiftWith animator: any UIDragAnimating, session: any UIDragSession) {
    |                                                                                                                                   `- error: 'UIDragSession' is unavailable in watchOS
101 |         // Hide the original cell immediately; the floating view is the visual representation
102 |         liftingCell?.isHidden = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:117:48: error: 'UIDragInteraction' is unavailable in watchOS
115 |     }
116 |
117 |     public func dragInteraction(_ interaction: UIDragInteraction, session: any UIDragSession, didEndWith operation: UIDropOperation) {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
118 |         // Animate floating view back to original position, then remove
119 |         if let floating = floatingDragView {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:117:80: error: 'UIDragSession' is unavailable in watchOS
115 |     }
116 |
117 |     public func dragInteraction(_ interaction: UIDragInteraction, session: any UIDragSession, didEndWith operation: UIDropOperation) {
    |                                                                                `- error: 'UIDragSession' is unavailable in watchOS
118 |         // Animate floating view back to original position, then remove
119 |         if let floating = floatingDragView {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:70:11: note: 'UIDragSession' has been explicitly marked unavailable here
 68 |
 69 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 70 | @protocol UIDragSession <UIDragDropSession>
    |           `- note: 'UIDragSession' has been explicitly marked unavailable here
 71 |
 72 | /* Use `localContext` to attach additional information to this drag session,
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:117:117: error: 'UIDropOperation' is unavailable in watchOS
115 |     }
116 |
117 |     public func dragInteraction(_ interaction: UIDragInteraction, session: any UIDragSession, didEndWith operation: UIDropOperation) {
    |                                                                                                                     `- error: 'UIDropOperation' is unavailable in watchOS
118 |         // Animate floating view back to original position, then remove
119 |         if let floating = floatingDragView {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:41:29: note: 'UIDropOperation' has been explicitly marked unavailable here
 39 |  * what operation it will perform if the user drops.
 40 |  */
 41 | typedef NS_ENUM(NSUInteger, UIDropOperation) {
    |                             `- note: 'UIDropOperation' has been explicitly marked unavailable here
 42 |     /* Operations that do NOT cause data transfer.
 43 |      *
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:146:48: error: 'UIDragInteraction' is unavailable in watchOS
144 |     }
145 |
146 |     public func dragInteraction(_ interaction: UIDragInteraction, item: UIDragItem, willAnimateCancelWith animator: any UIDragAnimating) {
    |                                                `- error: 'UIDragInteraction' is unavailable in watchOS
147 |         let cell = liftingCell
148 |         animator.addAnimations {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:46:12: note: 'UIDragInteraction' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 46 | @interface UIDragInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDragInteraction' has been explicitly marked unavailable here
 47 |
 48 | /// The object managing the delegate for the interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:146:73: error: 'UIDragItem' is unavailable in watchOS
144 |     }
145 |
146 |     public func dragInteraction(_ interaction: UIDragInteraction, item: UIDragItem, willAnimateCancelWith animator: any UIDragAnimating) {
    |                                                                         `- error: 'UIDragItem' is unavailable in watchOS
147 |         let cell = liftingCell
148 |         animator.addAnimations {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:146:121: error: 'UIDragAnimating' is unavailable in watchOS
144 |     }
145 |
146 |     public func dragInteraction(_ interaction: UIDragInteraction, item: UIDragItem, willAnimateCancelWith animator: any UIDragAnimating) {
    |                                                                                                                         `- error: 'UIDragAnimating' is unavailable in watchOS
147 |         let cell = liftingCell
148 |         animator.addAnimations {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:21:11: note: 'UIDragAnimating' has been explicitly marked unavailable here
 19 |
 20 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 21 | @protocol UIDragAnimating <NSObject>
    |           `- note: 'UIDragAnimating' has been explicitly marked unavailable here
 22 |
 23 | /* Instances of UIDragAnimating provide you a way to animate your own changes
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:159:48: error: 'UIDropInteraction' is unavailable in watchOS
157 |     // MARK: - UIDropInteractionDelegate
158 |
159 |     public func dropInteraction(_ interaction: UIDropInteraction, canHandle session: any UIDropSession) -> Bool {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
160 |         session.localDragSession != nil
161 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:159:90: error: 'UIDropSession' is unavailable in watchOS
157 |     // MARK: - UIDropInteractionDelegate
158 |
159 |     public func dropInteraction(_ interaction: UIDropInteraction, canHandle session: any UIDropSession) -> Bool {
    |                                                                                          `- error: 'UIDropSession' is unavailable in watchOS
160 |         session.localDragSession != nil
161 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:163:48: error: 'UIDropInteraction' is unavailable in watchOS
161 |     }
162 |
163 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: any UIDropSession) -> UIDropProposal {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
164 |         guard let containerView else { return UIDropProposal(operation: .cancel) }
165 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:163:97: error: 'UIDropSession' is unavailable in watchOS
161 |     }
162 |
163 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: any UIDropSession) -> UIDropProposal {
    |                                                                                                 `- error: 'UIDropSession' is unavailable in watchOS
164 |         guard let containerView else { return UIDropProposal(operation: .cancel) }
165 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:163:115: error: 'UIDropProposal' is unavailable in watchOS
161 |     }
162 |
163 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: any UIDropSession) -> UIDropProposal {
    |                                                                                                                   `- error: 'UIDropProposal' is unavailable in watchOS
164 |         guard let containerView else { return UIDropProposal(operation: .cancel) }
165 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:87:12: note: 'UIDropProposal' has been explicitly marked unavailable here
 85 |
 86 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 87 | @interface UIDropProposal : NSObject <NSCopying>
    |            `- note: 'UIDropProposal' has been explicitly marked unavailable here
 88 |
 89 | - (instancetype)initWithDropOperation:(UIDropOperation)operation NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:273:48: error: 'UIDropInteraction' is unavailable in watchOS
271 |     }
272 |
273 |     public func dropInteraction(_ interaction: UIDropInteraction, performDrop session: any UIDropSession) {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
274 |         guard let containerView,
275 |               let dragItem = session.items.first,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:273:92: error: 'UIDropSession' is unavailable in watchOS
271 |     }
272 |
273 |     public func dropInteraction(_ interaction: UIDropInteraction, performDrop session: any UIDropSession) {
    |                                                                                            `- error: 'UIDropSession' is unavailable in watchOS
274 |         guard let containerView,
275 |               let dragItem = session.items.first,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:48: error: 'UIDropInteraction' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:92: error: 'UIDragItem' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                                                            `- error: 'UIDragItem' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragItem.h:17:12: note: 'UIDragItem' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
17 | @interface UIDragItem : NSObject
   |            `- note: 'UIDragItem' has been explicitly marked unavailable here
18 |
19 | - (instancetype)initWithItemProvider:(NSItemProvider *)itemProvider NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:132: error: 'UITargetedDragPreview' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                                                                                                    `- error: 'UITargetedDragPreview' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITargetedDragPreview.h:20:12: note: 'UITargetedDragPreview' has been explicitly marked unavailable here
18 |
19 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
20 | @interface UITargetedDragPreview : UITargetedPreview
   |            `- note: 'UITargetedDragPreview' has been explicitly marked unavailable here
21 |
22 | /* Returns a preview with the same view and parameters, but a new target.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:318:158: error: 'UITargetedDragPreview' is unavailable in watchOS
316 |     }
317 |
318 |     public func dropInteraction(_ interaction: UIDropInteraction, previewForDropping item: UIDragItem, withDefault defaultPreview: UITargetedDragPreview) -> UITargetedDragPreview? {
    |                                                                                                                                                              `- error: 'UITargetedDragPreview' is unavailable in watchOS
319 |         guard let containerView,
320 |               let target = containerView.dragState.currentTarget else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITargetedDragPreview.h:20:12: note: 'UITargetedDragPreview' has been explicitly marked unavailable here
18 |
19 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
20 | @interface UITargetedDragPreview : UITargetedPreview
   |            `- note: 'UITargetedDragPreview' has been explicitly marked unavailable here
21 |
22 | /* Returns a preview with the same view and parameters, but a new target.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:332:48: error: 'UIDropInteraction' is unavailable in watchOS
330 |     }
331 |
332 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidExit session: any UIDropSession) {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
333 |         removeFloatingDragView()
334 |         if let existingPayload = containerView?.dragState.payload {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:332:95: error: 'UIDropSession' is unavailable in watchOS
330 |     }
331 |
332 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidExit session: any UIDropSession) {
    |                                                                                               `- error: 'UIDropSession' is unavailable in watchOS
333 |         removeFloatingDragView()
334 |         if let existingPayload = containerView?.dragState.payload {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:341:48: error: 'UIDropInteraction' is unavailable in watchOS
339 |     }
340 |
341 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidEnd session: any UIDropSession) {
    |                                                `- error: 'UIDropInteraction' is unavailable in watchOS
342 |         removeFloatingDragView()
343 |         containerView?.transitionDragState(to: .idle)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:19:12: note: 'UIDropInteraction' has been explicitly marked unavailable here
 17 |
 18 | UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 19 | @interface UIDropInteraction : NSObject <UIInteraction>
    |            `- note: 'UIDropInteraction' has been explicitly marked unavailable here
 20 |
 21 | - (instancetype)initWithDelegate:(id<UIDropInteractionDelegate>)delegate NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:341:94: error: 'UIDropSession' is unavailable in watchOS
339 |     }
340 |
341 |     public func dropInteraction(_ interaction: UIDropInteraction, sessionDidEnd session: any UIDropSession) {
    |                                                                                              `- error: 'UIDropSession' is unavailable in watchOS
342 |         removeFloatingDragView()
343 |         containerView?.transitionDragState(to: .idle)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragSession.h:86:11: note: 'UIDropSession' has been explicitly marked unavailable here
 84 |
 85 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 86 | @protocol UIDropSession <UIDragDropSession, NSProgressReporting>
    |           `- note: 'UIDropSession' has been explicitly marked unavailable here
 87 |
 88 | /* The `UIDragSession` that corresponds to this `UIDropSession`.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:349:51: error: 'UIView' is unavailable in watchOS
347 |     // MARK: - Floating Drag View
348 |
349 |     private func createFloatingDragView(for cell: UIView, in window: UIWindow, touchLocation: CGPoint) {
    |                                                   `- error: 'UIView' is unavailable in watchOS
350 |         let cellFrameInWindow = cell.convert(cell.bounds, to: window)
351 |         originalCellFrameInWindow = cellFrameInWindow
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:349:70: error: 'UIWindow' is unavailable in watchOS
347 |     // MARK: - Floating Drag View
348 |
349 |     private func createFloatingDragView(for cell: UIView, in window: UIWindow, touchLocation: CGPoint) {
    |                                                                      `- error: 'UIWindow' is unavailable in watchOS
350 |         let cellFrameInWindow = cell.convert(cell.bounds, to: window)
351 |         originalCellFrameInWindow = cellFrameInWindow
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
 20 |
 21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 22 | @interface UIWindow : UIView
    |            `- note: 'UIWindow' has been explicitly marked unavailable here
 23 |
 24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:9:100: error: 'UIDragInteractionDelegate' is unavailable in watchOS
  7 | /// conformances require it.
  8 | @MainActor
  9 | public final class TreeDragDropCoordinator<Content: TreeNodeContent, CellContent: View>: NSObject, UIDragInteractionDelegate, UIDropInteractionDelegate where Content: Sendable, Content.ID: Sendable {
    |                                                                                                    `- error: 'UIDragInteractionDelegate' is unavailable in watchOS
 10 |
 11 |     // MARK: - State
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:88:11: note: 'UIDragInteractionDelegate' has been explicitly marked unavailable here
 86 |
 87 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 88 | @protocol UIDragInteractionDelegate <NSObject>
    |           `- note: 'UIDragInteractionDelegate' has been explicitly marked unavailable here
 89 |
 90 | @required
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift:9:127: error: 'UIDropInteractionDelegate' is unavailable in watchOS
  7 | /// conformances require it.
  8 | @MainActor
  9 | public final class TreeDragDropCoordinator<Content: TreeNodeContent, CellContent: View>: NSObject, UIDragInteractionDelegate, UIDropInteractionDelegate where Content: Sendable, Content.ID: Sendable {
    |                                                                                                                               `- error: 'UIDropInteractionDelegate' is unavailable in watchOS
 10 |
 11 |     // MARK: - State
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:115:11: note: 'UIDropInteractionDelegate' has been explicitly marked unavailable here
113 |
114 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
115 | @protocol UIDropInteractionDelegate <NSObject>
    |           `- note: 'UIDropInteractionDelegate' has been explicitly marked unavailable here
116 |
117 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:64:37: error: cannot find type 'Context' in scope
 62 |     }
 63 |
 64 |     public func makeUIView(context: Context) -> TreeContainerView<Content> {
    |                                     `- error: cannot find type 'Context' in scope
 65 |         let view = TreeContainerView<Content>(frame: .zero)
 66 |         view.configuration = configuration
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:77:77: error: cannot find type 'Context' in scope
 75 |     }
 76 |
 77 |     public func updateUIView(_ uiView: TreeContainerView<Content>, context: Context) {
    |                                                                             `- error: cannot find type 'Context' in scope
 78 |         let coordinator = context.coordinator
 79 |
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:105:18: error: cannot find type 'Context' in scope
103 |         _ proposal: ProposedViewSize,
104 |         uiView: TreeContainerView<Content>,
105 |         context: Context
    |                  `- error: cannot find type 'Context' in scope
106 |     ) -> CGSize? {
107 |         // When internal scrolling is enabled, let SwiftUI use its default behavior
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:13:78: error: cannot find type 'UIViewRepresentable' in scope
 11 | /// }
 12 | /// ```
 13 | public struct TreeDragDropView<Content: TreeNodeContent, CellContent: View>: UIViewRepresentable where Content: Sendable, Content.ID: Sendable {
    |                                                                              `- error: cannot find type 'UIViewRepresentable' in scope
 14 |     var tree: [TreeNode<Content>]
 15 |     var selectedIDs: Set<Content.ID>
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift:4:33: error: 'CAShapeLayer' is unavailable in watchOS
 2 |
 3 | @MainActor
 4 | final class DropIndicatorLayer: CAShapeLayer {
   |                                 `- error: 'CAShapeLayer' is unavailable in watchOS
 5 |     func update(
 6 |         for rect: CGRect,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
 38 |
 39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
 40 | @interface CAShapeLayer : CALayer
    |            `- note: 'CAShapeLayer' has been explicitly marked unavailable here
 41 |
 42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:5:34: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
 3 | @MainActor
 4 | final class HapticController {
 5 |     private var impactGenerator: UIImpactFeedbackGenerator?
   |                                  `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
 6 |     private var selectionGenerator: UISelectionFeedbackGenerator?
 7 |     private var notificationGenerator: UINotificationFeedbackGenerator?
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:6:37: error: 'UISelectionFeedbackGenerator' is unavailable in watchOS
 4 | final class HapticController {
 5 |     private var impactGenerator: UIImpactFeedbackGenerator?
 6 |     private var selectionGenerator: UISelectionFeedbackGenerator?
   |                                     `- error: 'UISelectionFeedbackGenerator' is unavailable in watchOS
 7 |     private var notificationGenerator: UINotificationFeedbackGenerator?
 8 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISelectionFeedbackGenerator.h:15:12: note: 'UISelectionFeedbackGenerator' has been explicitly marked unavailable here
13 | // UISelectionFeedbackGenerator is used to give user feedback when a selection changes
14 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UISelectionFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UISelectionFeedbackGenerator' has been explicitly marked unavailable here
16 |
17 | /// call when the selection changes (not on initial selection)
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift:7:40: error: 'UINotificationFeedbackGenerator' is unavailable in watchOS
 5 |     private var impactGenerator: UIImpactFeedbackGenerator?
 6 |     private var selectionGenerator: UISelectionFeedbackGenerator?
 7 |     private var notificationGenerator: UINotificationFeedbackGenerator?
   |                                        `- error: 'UINotificationFeedbackGenerator' is unavailable in watchOS
 8 |
 9 |     private let configuration: HapticConfiguration
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UINotificationFeedbackGenerator.h:21:12: note: 'UINotificationFeedbackGenerator' has been explicitly marked unavailable here
19 | // UINotificationFeedbackGenerator is used to give user feedback when an notification is displayed
20 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UINotificationFeedbackGenerator : UIFeedbackGenerator
   |            `- note: 'UINotificationFeedbackGenerator' has been explicitly marked unavailable here
22 |
23 | /// call when a notification is displayed, passing the corresponding type
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/MultiItemPreviewView.swift:8:22: error: 'UIView' is unavailable in watchOS
 6 |     private let maxVisibleCards = 3
 7 |
 8 |     init(itemViews: [UIView], totalCount: Int) {
   |                      `- error: 'UIView' is unavailable in watchOS
 9 |         super.init(frame: .zero)
10 |         setup(itemViews: itemViews, totalCount: totalCount)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/MultiItemPreviewView.swift:18:36: error: 'UIView' is unavailable in watchOS
16 |     }
17 |
18 |     private func setup(itemViews: [UIView], totalCount: Int) {
   |                                    `- error: 'UIView' is unavailable in watchOS
19 |         let visibleViews = Array(itemViews.prefix(maxVisibleCards))
20 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/MultiItemPreviewView.swift:67:43: error: 'UIView' is unavailable in watchOS
65 |     }
66 |
67 |     private func makeBadge(count: Int) -> UIView {
   |                                           `- error: 'UIView' is unavailable in watchOS
68 |         let container = UIView()
69 |         container.backgroundColor = .systemRed
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/MultiItemPreviewView.swift:4:35: error: 'UIView' is unavailable in watchOS
 2 |
 3 | @MainActor
 4 | final class MultiItemPreviewView: UIView {
   |                                   `- error: 'UIView' is unavailable in watchOS
 5 |     private let stackOffset: CGFloat = 4
 6 |     private let maxVisibleCards = 3
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:14:67: error: 'init()' is unavailable in watchOS
 12 |     private var flatEntries: [FlatTreeEntry<Content>] = []
 13 |     private var rootCount: Int = 0
 14 |     private var cellPool = ViewReusePool<TreeNodeCell>(factory: { TreeNodeCell() })
    |                                                                   `- error: 'init()' is unavailable in watchOS
 15 |     private var dropIndicatorLayer = DropIndicatorLayer()
 16 |     private lazy var dropIndicatorHostView: UIView = {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:158:1: note: 'init()' has been explicitly marked unavailable here
156 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
157 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
158 | - (instancetype)init API_AVAILABLE(ios(2.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos);
    | `- note: 'init()' has been explicitly marked unavailable here
159 |
160 | @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled;  // default is YES. if set to NO, user events (touch, keys) are ignored and removed from the event queue.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:16:45: error: 'UIView' is unavailable in watchOS
 14 |     private var cellPool = ViewReusePool<TreeNodeCell>(factory: { TreeNodeCell() })
 15 |     private var dropIndicatorLayer = DropIndicatorLayer()
 16 |     private lazy var dropIndicatorHostView: UIView = {
    |                                             `- error: 'UIView' is unavailable in watchOS
 17 |         let host = UIView()
 18 |         host.isUserInteractionEnabled = false
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:17:20: error: 'UIView' is unavailable in watchOS
 15 |     private var dropIndicatorLayer = DropIndicatorLayer()
 16 |     private lazy var dropIndicatorHostView: UIView = {
 17 |         let host = UIView()
    |                    `- error: 'UIView' is unavailable in watchOS
 18 |         host.isUserInteractionEnabled = false
 19 |         host.backgroundColor = .clear
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:17:20: error: 'init()' is unavailable in watchOS
 15 |     private var dropIndicatorLayer = DropIndicatorLayer()
 16 |     private lazy var dropIndicatorHostView: UIView = {
 17 |         let host = UIView()
    |                    `- error: 'init()' is unavailable in watchOS
 18 |         host.isUserInteractionEnabled = false
 19 |         host.backgroundColor = .clear
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:158:1: note: 'init()' has been explicitly marked unavailable here
156 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
157 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
158 | - (instancetype)init API_AVAILABLE(ios(2.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos);
    | `- note: 'init()' has been explicitly marked unavailable here
159 |
160 | @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled;  // default is YES. if set to NO, user events (touch, keys) are ignored and removed from the event queue.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:44:41: error: cannot find 'UIHostingController' in scope
 42 |     private var cumulativeHeights: [CGFloat] = [0]
 43 |     private var lastMeasuredWidth: CGFloat = 0
 44 |     private let measurementController = UIHostingController<AnyView>(rootView: AnyView(EmptyView()))
    |                                         `- error: cannot find 'UIHostingController' in scope
 45 |
 46 |     // MARK: - Init
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:63:49: error: 'UIDragInteractionDelegate' is unavailable in watchOS
 61 |     }
 62 |
 63 |     func installInteractions(dragDelegate: (any UIDragInteractionDelegate)?, dropDelegate: (any UIDropInteractionDelegate)?) {
    |                                                 `- error: 'UIDragInteractionDelegate' is unavailable in watchOS
 64 |         if configuration.dragEnabled, let dragDelegate {
 65 |             let dragInteraction = UIDragInteraction(delegate: dragDelegate)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDragInteraction.h:88:11: note: 'UIDragInteractionDelegate' has been explicitly marked unavailable here
 86 |
 87 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 88 | @protocol UIDragInteractionDelegate <NSObject>
    |           `- note: 'UIDragInteractionDelegate' has been explicitly marked unavailable here
 89 |
 90 | @required
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:63:97: error: 'UIDropInteractionDelegate' is unavailable in watchOS
 61 |     }
 62 |
 63 |     func installInteractions(dragDelegate: (any UIDragInteractionDelegate)?, dropDelegate: (any UIDropInteractionDelegate)?) {
    |                                                                                                 `- error: 'UIDropInteractionDelegate' is unavailable in watchOS
 64 |         if configuration.dragEnabled, let dragDelegate {
 65 |             let dragInteraction = UIDragInteraction(delegate: dragDelegate)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDropInteraction.h:115:11: note: 'UIDropInteractionDelegate' has been explicitly marked unavailable here
113 |
114 | API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
115 | @protocol UIDropInteractionDelegate <NSObject>
    |           `- note: 'UIDropInteractionDelegate' has been explicitly marked unavailable here
116 |
117 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:8:65: error: 'UIScrollView' is unavailable in watchOS
  6 | /// Managed internally by ``TreeDragDropView``. Not intended for direct use.
  7 | @MainActor
  8 | public final class TreeContainerView<Content: TreeNodeContent>: UIScrollView
    |                                                                 `- error: 'UIScrollView' is unavailable in watchOS
  9 | where Content: Sendable, Content.ID: Sendable {
 10 |     // MARK: - State
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
 85 |
 86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
    |            `- note: 'UIScrollView' has been explicitly marked unavailable here
 88 |
 89 | @property(nonatomic)         CGPoint                      contentOffset;                  // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:5:27: error: 'UIView' is unavailable in watchOS
 3 |
 4 | @MainActor
 5 | final class TreeNodeCell: UIView {
   |                           `- error: 'UIView' is unavailable in watchOS
 6 |     override init(frame: CGRect) {
 7 |         super.init(frame: frame)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:40:24: error: 'UIContentConfiguration' is unavailable in watchOS
38 | @MainActor
39 | private final class _UIHostingConfigurationBackingView: UIView {
40 |     var configuration: UIContentConfiguration? {
   |                        `- error: 'UIContentConfiguration' is unavailable in watchOS
41 |         didSet {
42 |             if let configuration {
UIKit.UIContentConfiguration:3:17: note: 'UIContentConfiguration' has been explicitly marked unavailable here
1 | @available(iOS 14.0, tvOS 14.0, *)
2 | @available(watchOS, unavailable)
3 | public protocol UIContentConfiguration {
  |                 `- note: 'UIContentConfiguration' has been explicitly marked unavailable here
4 |     @MainActor func makeContentView() -> any UIView & UIContentView
5 |     func updated(for state: any UIConfigurationState) -> Self
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:59:31: error: 'UIView' is unavailable in watchOS
57 |     }
58 |
59 |     private var contentView: (UIView & UIContentView)?
   |                               `- error: 'UIView' is unavailable in watchOS
60 | }
61 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:59:40: error: 'UIContentView' is unavailable in watchOS
57 |     }
58 |
59 |     private var contentView: (UIView & UIContentView)?
   |                                        `- error: 'UIContentView' is unavailable in watchOS
60 | }
61 |
UIKit.UIContentView:3:28: note: 'UIContentView' has been explicitly marked unavailable here
1 | @available(iOS 14.0, tvOS 14.0, *)
2 | @available(watchOS, unavailable)
3 | @MainActor public protocol UIContentView : NSObjectProtocol {
  |                            `- note: 'UIContentView' has been explicitly marked unavailable here
4 |     @MainActor var configuration: any UIContentConfiguration { get set }
5 |     @available(iOS 16.0, tvOS 16.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:39:57: error: 'UIView' is unavailable in watchOS
37 | /// Internal UIView subclass that applies UIHostingConfiguration as its contentConfiguration.
38 | @MainActor
39 | private final class _UIHostingConfigurationBackingView: UIView {
   |                                                         `- error: 'UIView' is unavailable in watchOS
40 |     var configuration: UIContentConfiguration? {
41 |         didSet {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/ViewReusePool.swift:4:33: error: 'UIView' is unavailable in watchOS
 2 |
 3 | @MainActor
 4 | final class ViewReusePool<Cell: UIView> {
   |                                 `- error: 'UIView' is unavailable in watchOS
 5 |     private var available: [Cell] = []
 6 |     private var inUse: [AnyHashable: Cell] = [:]
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/DropPreviewTheme.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/FloatingDragStyle.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/HapticConfiguration.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Configuration/TreeDragDropConfiguration.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/DragPayload.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/DropTarget.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/ExpansionState.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/FlatTreeEntry.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeFlattening.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeMutations.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeNode.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/TreeNodeContent.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/Data/VisibleRowCount.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropCoordinator.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DragState.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DropIndicatorLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/HapticController.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/MultiItemPreviewView.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/ViewReusePool.swift -target arm64-apple-watchos11.0 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libPreviewsMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#PreviewsMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal-dependencies-1.json -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=5 -profile-generate -profile-coverage-mapping -swift-version 6 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name Arboreal -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal_const_extract_protocols.json -disable-clang-spi -clang-target arm64-apple-watchos27.0 -target-sdk-version 27.0 -target-sdk-name watchos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Arboreal.build/Debug-watchos/Arboreal-t.build/Objects-normal/arm64/Arboreal.abi.json
SwiftCompile normal arm64 (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ TreeNodeCell.swift,\ ViewReusePool.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/ViewReusePool.swift (in target 'Arboreal' from project 'Arboreal')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeNodeCell.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/ViewReusePool.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ViewReusePool.swift
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:5:27: error: 'UIView' is unavailable in watchOS
 3 |
 4 | @MainActor
 5 | final class TreeNodeCell: UIView {
   |                           `- error: 'UIView' is unavailable in watchOS
 6 |     override init(frame: CGRect) {
 7 |         super.init(frame: frame)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:40:24: error: 'UIContentConfiguration' is unavailable in watchOS
38 | @MainActor
39 | private final class _UIHostingConfigurationBackingView: UIView {
40 |     var configuration: UIContentConfiguration? {
   |                        `- error: 'UIContentConfiguration' is unavailable in watchOS
41 |         didSet {
42 |             if let configuration {
UIKit.UIContentConfiguration:3:17: note: 'UIContentConfiguration' has been explicitly marked unavailable here
1 | @available(iOS 14.0, tvOS 14.0, *)
2 | @available(watchOS, unavailable)
3 | public protocol UIContentConfiguration {
  |                 `- note: 'UIContentConfiguration' has been explicitly marked unavailable here
4 |     @MainActor func makeContentView() -> any UIView & UIContentView
5 |     func updated(for state: any UIConfigurationState) -> Self
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:59:31: error: 'UIView' is unavailable in watchOS
57 |     }
58 |
59 |     private var contentView: (UIView & UIContentView)?
   |                               `- error: 'UIView' is unavailable in watchOS
60 | }
61 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:59:40: error: 'UIContentView' is unavailable in watchOS
57 |     }
58 |
59 |     private var contentView: (UIView & UIContentView)?
   |                                        `- error: 'UIContentView' is unavailable in watchOS
60 | }
61 |
UIKit.UIContentView:3:28: note: 'UIContentView' has been explicitly marked unavailable here
1 | @available(iOS 14.0, tvOS 14.0, *)
2 | @available(watchOS, unavailable)
3 | @MainActor public protocol UIContentView : NSObjectProtocol {
  |                            `- note: 'UIContentView' has been explicitly marked unavailable here
4 |     @MainActor var configuration: any UIContentConfiguration { get set }
5 |     @available(iOS 16.0, tvOS 16.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:39:57: error: 'UIView' is unavailable in watchOS
37 | /// Internal UIView subclass that applies UIHostingConfiguration as its contentConfiguration.
38 | @MainActor
39 | private final class _UIHostingConfigurationBackingView: UIView {
   |                                                         `- error: 'UIView' is unavailable in watchOS
40 |     var configuration: UIContentConfiguration? {
41 |         didSet {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:26:34: error: 'UIHostingConfiguration' is unavailable in watchOS
24 |             addSubview(hostView)
25 |         }
26 |         hostView.configuration = UIHostingConfiguration {
   |                                  `- error: 'UIHostingConfiguration' is unavailable in watchOS
27 |             content
28 |         }
SwiftUI.UIHostingConfiguration:4:15: note: 'UIHostingConfiguration' has been explicitly marked unavailable here
 2 | @available(macOS, unavailable)
 3 | @available(watchOS, unavailable)
 4 | public struct UIHostingConfiguration<Content, Background> : UIContentConfiguration, ~Sendable where Content : View, Background : View {
   |               `- note: 'UIHostingConfiguration' has been explicitly marked unavailable here
 5 |     public func background<B>(@ContentBuilder content: () -> B) -> UIHostingConfiguration<Content, B> where B : View
 6 |     public func background<S>(_ style: S) -> UIHostingConfiguration<Content, _UIHostingConfigurationBackgroundView<S>> where S : ShapeStyle
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeNodeCell.swift:26:34: error: 'init(content:)' is unavailable in watchOS
24 |             addSubview(hostView)
25 |         }
26 |         hostView.configuration = UIHostingConfiguration {
   |                                  `- error: 'init(content:)' is unavailable in watchOS
27 |             content
28 |         }
SwiftUI.UIHostingConfiguration.init:2:8: note: 'init(content:)' has been explicitly marked unavailable here
1 | generic struct UIHostingConfiguration {
2 | public init(@ContentBuilder content: () -> Content)}
  |        `- note: 'init(content:)' has been explicitly marked unavailable here
3 |
SwiftCompile normal arm64 Compiling\ TreeDragDropView.swift,\ DragState.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DragState.swift (in target 'Arboreal' from project 'Arboreal')
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:64:37: error: cannot find type 'Context' in scope
 62 |     }
 63 |
 64 |     public func makeUIView(context: Context) -> TreeContainerView<Content> {
    |                                     `- error: cannot find type 'Context' in scope
 65 |         let view = TreeContainerView<Content>(frame: .zero)
 66 |         view.configuration = configuration
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:77:77: error: cannot find type 'Context' in scope
 75 |     }
 76 |
 77 |     public func updateUIView(_ uiView: TreeContainerView<Content>, context: Context) {
    |                                                                             `- error: cannot find type 'Context' in scope
 78 |         let coordinator = context.coordinator
 79 |
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:105:18: error: cannot find type 'Context' in scope
103 |         _ proposal: ProposedViewSize,
104 |         uiView: TreeContainerView<Content>,
105 |         context: Context
    |                  `- error: cannot find type 'Context' in scope
106 |     ) -> CGSize? {
107 |         // When internal scrolling is enabled, let SwiftUI use its default behavior
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:13:78: error: cannot find type 'UIViewRepresentable' in scope
 11 | /// }
 12 | /// ```
 13 | public struct TreeDragDropView<Content: TreeNodeContent, CellContent: View>: UIViewRepresentable where Content: Sendable, Content.ID: Sendable {
    |                                                                              `- error: cannot find type 'UIViewRepresentable' in scope
 14 |     var tree: [TreeNode<Content>]
 15 |     var selectedIDs: Set<Content.ID>
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:65:45: error: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context [#ActorIsolatedCall]
 62 |     }
 63 |
 64 |     public func makeUIView(context: Context) -> TreeContainerView<Content> {
    |                 `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
 65 |         let view = TreeContainerView<Content>(frame: .zero)
    |                                             `- error: call to main actor-isolated initializer 'init(frame:)' in a synchronous nonisolated context [#ActorIsolatedCall]
 66 |         view.configuration = configuration
 67 |         let selectedIDs = selectedIDs
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:48:14: note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
 46 |     // MARK: - Init
 47 |
 48 |     override init(frame: CGRect) {
    |              `- note: calls to initializer 'init(frame:)' from outside of its actor context are implicitly asynchronous
 49 |         super.init(frame: frame)
 50 |         setup()
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:66:14: error: main actor-isolated property 'configuration' can not be mutated from a nonisolated context
 62 |     }
 63 |
 64 |     public func makeUIView(context: Context) -> TreeContainerView<Content> {
    |                 `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
 65 |         let view = TreeContainerView<Content>(frame: .zero)
 66 |         view.configuration = configuration
    |              `- error: main actor-isolated property 'configuration' can not be mutated from a nonisolated context
 67 |         let selectedIDs = selectedIDs
 68 |         view.cellContentProvider = { entry in
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:29:9: note: mutation of this property is only permitted within the actor
 27 |     // MARK: - Configuration
 28 |
 29 |     var configuration: TreeDragDropConfiguration<Content> = .init() {
    |         `- note: mutation of this property is only permitted within the actor
 30 |         didSet {
 31 |             contentInset = configuration.contentInsets
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:68:14: error: main actor-isolated property 'cellContentProvider' can not be mutated from a nonisolated context
 62 |     }
 63 |
 64 |     public func makeUIView(context: Context) -> TreeContainerView<Content> {
    |                 `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
 65 |         let view = TreeContainerView<Content>(frame: .zero)
 66 |         view.configuration = configuration
 67 |         let selectedIDs = selectedIDs
 68 |         view.cellContentProvider = { entry in
    |              `- error: main actor-isolated property 'cellContentProvider' can not be mutated from a nonisolated context
 69 |             AnyView(cellContent(entry.content, entry.depth, selectedIDs.contains(entry.id), entry.isExpanded))
 70 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:36:9: note: mutation of this property is only permitted within the actor
 34 |         }
 35 |     }
 36 |     var cellContentProvider: (@MainActor (FlatTreeEntry<Content>) -> AnyView)?
    |         `- note: mutation of this property is only permitted within the actor
 37 |
 38 |     // MARK: - Height Measurement
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:84:16: error: main actor-isolated property 'configuration' can not be mutated from a nonisolated context
 75 |     }
 76 |
 77 |     public func updateUIView(_ uiView: TreeContainerView<Content>, context: Context) {
    |                 `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
 78 |         let coordinator = context.coordinator
 79 |
    :
 82 |
 83 |         coordinator.generation += 1
 84 |         uiView.configuration = configuration
    |                `- error: main actor-isolated property 'configuration' can not be mutated from a nonisolated context
 85 |         let selectedIDs = selectedIDs
 86 |         let cellContent = cellContent
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:29:9: note: mutation of this property is only permitted within the actor
 27 |     // MARK: - Configuration
 28 |
 29 |     var configuration: TreeDragDropConfiguration<Content> = .init() {
    |         `- note: mutation of this property is only permitted within the actor
 30 |         didSet {
 31 |             contentInset = configuration.contentInsets
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:87:16: error: main actor-isolated property 'cellContentProvider' can not be mutated from a nonisolated context
 75 |     }
 76 |
 77 |     public func updateUIView(_ uiView: TreeContainerView<Content>, context: Context) {
    |                 `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
 78 |         let coordinator = context.coordinator
 79 |
    :
 85 |         let selectedIDs = selectedIDs
 86 |         let cellContent = cellContent
 87 |         uiView.cellContentProvider = { entry in
    |                `- error: main actor-isolated property 'cellContentProvider' can not be mutated from a nonisolated context
 88 |             AnyView(cellContent(entry.content, entry.depth, selectedIDs.contains(entry.id), entry.isExpanded))
 89 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:36:9: note: mutation of this property is only permitted within the actor
 34 |         }
 35 |     }
 36 |     var cellContentProvider: (@MainActor (FlatTreeEntry<Content>) -> AnyView)?
    |         `- note: mutation of this property is only permitted within the actor
 37 |
 38 |     // MARK: - Height Measurement
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:98:20: warning: call to main actor-isolated instance method 'invalidateIntrinsicContentSize()' in a synchronous nonisolated context [#ActorIsolatedCall]
 75 |     }
 76 |
 77 |     public func updateUIView(_ uiView: TreeContainerView<Content>, context: Context) {
    |                 `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
 78 |         let coordinator = context.coordinator
 79 |
    :
 96 |         // reflects expand/collapse and insertions/removals in the parent scroll view.
 97 |         if !configuration.scrollEnabled {
 98 |             uiView.invalidateIntrinsicContentSize()
    |                    `- warning: call to main actor-isolated instance method 'invalidateIntrinsicContentSize()' in a synchronous nonisolated context [#ActorIsolatedCall]
 99 |         }
100 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:549:1: note: calls to instance method 'invalidateIntrinsicContentSize()' from outside of its actor context are implicitly asynchronous
547 | UIKIT_EXTERN const CGFloat UIViewNoIntrinsicMetric API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos); // -1
548 | @property(nonatomic, readonly) CGSize intrinsicContentSize API_AVAILABLE(ios(6.0));
549 | - (void)invalidateIntrinsicContentSize API_AVAILABLE(ios(6.0)); // call this when something changes that affects the intrinsicContentSize.  Otherwise UIKit won't notice that it changed.
    | `- note: calls to instance method 'invalidateIntrinsicContentSize()' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:111:39: error: 'UIView' is unavailable in watchOS
109 |         guard !configuration.scrollEnabled else { return nil }
110 |
111 |         let width = proposal.width ?? UIView.layoutFittingExpandedSize.width
    |                                       `- error: 'UIView' is unavailable in watchOS
112 |         let height = uiView.intrinsicContentHeight(forWidth: width)
113 |         return CGSize(width: width, height: height)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
    |            `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass;                        // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:111:46: error: 'layoutFittingExpandedSize' is unavailable in watchOS
109 |         guard !configuration.scrollEnabled else { return nil }
110 |
111 |         let width = proposal.width ?? UIView.layoutFittingExpandedSize.width
    |                                              `- error: 'layoutFittingExpandedSize' is unavailable in watchOS
112 |         let height = uiView.intrinsicContentHeight(forWidth: width)
113 |         return CGSize(width: width, height: height)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:561:27: note: 'layoutFittingExpandedSize' has been explicitly marked unavailable here
559 |
560 | UIKIT_EXTERN const CGSize UILayoutFittingCompressedSize API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos);
561 | UIKIT_EXTERN const CGSize UILayoutFittingExpandedSize API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos);
    |                           `- note: 'layoutFittingExpandedSize' has been explicitly marked unavailable here
562 |
563 | @interface UIView (UIConstraintBasedLayoutFittingSize)
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:111:46: warning: main actor-isolated class property 'layoutFittingExpandedSize' can not be referenced from a nonisolated autoclosure
109 |         guard !configuration.scrollEnabled else { return nil }
110 |
111 |         let width = proposal.width ?? UIView.layoutFittingExpandedSize.width
    |                                              `- warning: main actor-isolated class property 'layoutFittingExpandedSize' can not be referenced from a nonisolated autoclosure
112 |         let height = uiView.intrinsicContentHeight(forWidth: width)
113 |         return CGSize(width: width, height: height)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:561:27: note: class property declared here
559 |
560 | UIKIT_EXTERN const CGSize UILayoutFittingCompressedSize API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos);
561 | UIKIT_EXTERN const CGSize UILayoutFittingExpandedSize API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos);
    |                           `- note: class property declared here
562 |
563 | @interface UIView (UIConstraintBasedLayoutFittingSize)
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:112:29: error: call to main actor-isolated instance method 'intrinsicContentHeight(forWidth:)' in a synchronous nonisolated context [#ActorIsolatedCall]
100 |     }
101 |
102 |     public func sizeThatFits(
    |                 `- note: add '@MainActor' to make instance method 'sizeThatFits(_:uiView:context:)' part of global actor 'MainActor'
103 |         _ proposal: ProposedViewSize,
104 |         uiView: TreeContainerView<Content>,
    :
110 |
111 |         let width = proposal.width ?? UIView.layoutFittingExpandedSize.width
112 |         let height = uiView.intrinsicContentHeight(forWidth: width)
    |                             `- error: call to main actor-isolated instance method 'intrinsicContentHeight(forWidth:)' in a synchronous nonisolated context [#ActorIsolatedCall]
113 |         return CGSize(width: width, height: height)
114 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/TreeContainerView.swift:139:10: note: calls to instance method 'intrinsicContentHeight(forWidth:)' from outside of its actor context are implicitly asynchronous
137 |     /// is empty or the width is non-positive. Populates the shared height cache so a subsequent
138 |     /// `layoutSubviews` pass at the same width can reuse the measurements.
139 |     func intrinsicContentHeight(forWidth width: CGFloat) -> CGFloat {
    |          `- note: calls to instance method 'intrinsicContentHeight(forWidth:)' from outside of its actor context are implicitly asynchronous
140 |         guard width > 0, !flatEntries.isEmpty else { return 0 }
141 |
/Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift:117:9: warning: conformance of 'CellContent' to protocol 'View' may be isolated and cannot be passed to main actor-isolated context [#IsolatedConformances]
115 |
116 |     public func makeCoordinator() -> TreeDragDropCoordinator<Content, CellContent> {
117 |         TreeDragDropCoordinator(view: self)
    |         `- warning: conformance of 'CellContent' to protocol 'View' may be isolated and cannot be passed to main actor-isolated context [#IsolatedConformances]
118 |     }
119 | }
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/SwiftUI/TreeDragDropView.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TreeDragDropView.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Arboreal/UIKit/DragState.swift (in target 'Arboreal' from project 'Arboreal')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DragState.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
2026-09-24 08:01:00.246 xcodebuild[811:4767] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftEmitModule normal arm64 Emitting\ module\ for\ Arboreal (in target 'Arboreal' from project 'Arboreal')
	SwiftCompile normal arm64 (in target 'Arboreal' from project 'Arboreal')
	Building workspace Arboreal with scheme Arboreal
(3 failures)
BUILD FAILURE 6.4 watchOS