The Swift Package Index logo.Swift Package Index

Build Information

Failed to build WWPuzzleBoardView, reference 1.0.3 (22ac7d), with Swift 6.4 for watchOS using Xcode 27.0 on 25 Sep 2026 02:28:23 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 WWPuzzleBoardView -destination generic/platform=watchOS

Build Log

 21 | @interface UIImageView : UIView
    |            `- note: 'UIImageView' has been explicitly marked unavailable here
 22 |
 23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:54: error: 'init()' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                                      `- error: 'init()' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | public extension WWPuzzleBoardView {
 12 |
 13 |     class TileView: UIView {
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |         public let tileID: Int
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:77:37: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 75 |
 76 |     /// 處理拖曳手勢
 77 |     @objc func handlePan(_ gesture: UIPanGestureRecognizer) {
    |                                     `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 78 |
 79 |         guard let boardView else { return }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:90:38: error: 'UIView' is unavailable in watchOS
 88 |
 89 |     /// 處理狀態 .began: 記錄位置、把圖層拉到最上層、觸發開始拖曳通知。
 90 |     func beginDragging(in boardView: UIView) {
    |                                      `- error: 'UIView' is unavailable in watchOS
 91 |
 92 |         startCenter = center
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:39: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                       `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:77: error: 'UIView' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                                                             `- error: 'UIView' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/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/WWPuzzleBoardView/Utility/Constant.swift:84:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:84:120: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                                                                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:114: error: 'UIViewPropertyAnimator' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                  `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:73: error: 'UIViewAnimatingPosition' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                         `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:112: error: 'UIViewPropertyAnimator' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:103: error: 'UIViewAnimatingPosition' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                       `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:142: error: 'UIViewPropertyAnimator' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                              `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:148: error: 'UIViewAnimatingPosition' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                    `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:187: error: 'UIViewPropertyAnimator' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                                                           `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift:98:22: error: 'UIView' is unavailable in watchOS
 96 |         let damping: CGFloat                    // 阻尼係數(0.0 ~ 1.0),值越小彈性越強,越接近 1.0 則動畫越平穩無震盪
 97 |         let initialVelocity: CGFloat            // 彈簧動畫的初始速度,數值越大起步衝勁越強
 98 |         let options: UIView.AnimationOptions    // 動畫選項(如 .curveEaseInOut、.allowUserInteraction 等),定義動畫的過渡曲線與行為
    |                      `- error: 'UIView' is unavailable in watchOS
 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: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/WWPuzzleBoardView/WWPuzzleBoardView.swift:11:39: error: 'UIView' is unavailable in watchOS
  9 |
 10 | /// MARK: - 拼圖看板視圖
 11 | public final class WWPuzzleBoardView: UIView {
    |                                       `- error: 'UIView' is unavailable in watchOS
 12 |
 13 |     public weak var delegate: WWPuzzleBoardView.Delegate?               // 拼圖看板的事件代理,用來回傳拖曳與互動狀態
/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:
SwiftCompile normal arm64 (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

/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/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/resource_bundle_accessor.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/ImageFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift -target arm64-apple-watchos9.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/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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-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\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_AVAILABLE -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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name WWPuzzleBoardView -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView_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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.abi.json
SwiftCompile normal arm64 Compiling\ ImageFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/ImageFactory.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/ImageFactory.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ImageFactory.swift
SwiftCompile normal arm64 Compiling\ Model.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Model.swift
SwiftCompile normal arm64 Compiling\ Constant.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:84:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:84:120: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                                                                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:114: error: 'UIViewPropertyAnimator' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                  `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:73: error: 'UIViewAnimatingPosition' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                         `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:112: error: 'UIViewPropertyAnimator' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:103: error: 'UIViewAnimatingPosition' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                       `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:142: error: 'UIViewPropertyAnimator' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                              `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:148: error: 'UIViewAnimatingPosition' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                    `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:187: error: 'UIViewPropertyAnimator' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                                                           `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:118:24: error: 'UIViewPropertyAnimator' is unavailable in watchOS
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
    |                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
119 |             withDuration: 0.12,
120 |             delay: 0,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:139:24: error: 'UIViewPropertyAnimator' is unavailable in watchOS
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
    |                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
140 |         animator.addAnimations { animations() }
141 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:139:86: error: 'UICubicTimingParameters' is unavailable in watchOS
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
    |                                                                                      `- error: 'UICubicTimingParameters' is unavailable in watchOS
140 |         animator.addAnimations { animations() }
141 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITimingParameters.h:17:12: note: 'UICubicTimingParameters' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
17 | @interface UICubicTimingParameters : NSObject  <UITimingCurveProvider>
   |            `- note: 'UICubicTimingParameters' has been explicitly marked unavailable here
18 |
19 | @property(nonatomic, readonly) UIViewAnimationCurve animationCurve;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:158:32: error: 'UISpringTimingParameters' is unavailable in watchOS
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
    |                                `- error: 'UISpringTimingParameters' is unavailable in watchOS
159 |         let animator = UIViewPropertyAnimator(duration: duration, timingParameters: timingParameters)
160 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITimingParameters.h:32:12: note: 'UISpringTimingParameters' has been explicitly marked unavailable here
30 |
31 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
32 | @interface UISpringTimingParameters : NSObject  <UITimingCurveProvider>
   |            `- note: 'UISpringTimingParameters' has been explicitly marked unavailable here
33 |
34 | @property(nonatomic, readonly) CGVector initialVelocity;
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Constant.swift
SwiftCompile normal arm64 Compiling\ resource_bundle_accessor.swift /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/resource_bundle_accessor.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/resource_bundle_accessor.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile resource_bundle_accessor.swift
SwiftCompile normal arm64 Compiling\ Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift:22:21: error: 'UIGraphicsImageRendererFormat' is unavailable in watchOS
20 |         }
21 |
22 |         let format: UIGraphicsImageRendererFormat = .default()
   |                     `- error: 'UIGraphicsImageRendererFormat' is unavailable in watchOS
23 |         format.scale = self.scale
24 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGraphicsImageRenderer.h:27:12: note: 'UIGraphicsImageRendererFormat' has been explicitly marked unavailable here
25 |
26 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos)
27 | @interface UIGraphicsImageRendererFormat : UIGraphicsRendererFormat
   |            `- note: 'UIGraphicsImageRendererFormat' has been explicitly marked unavailable here
28 |
29 | @property (nonatomic) CGFloat scale; // display scale of the context. The preferredFormat uses the scale most appropriate for the main screen's current configuration.
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift:22:54: error: 'default()' is unavailable in watchOS
20 |         }
21 |
22 |         let format: UIGraphicsImageRendererFormat = .default()
   |                                                      `- error: 'default()' is unavailable in watchOS
23 |         format.scale = self.scale
24 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGraphicsRenderer.h:25:1: note: 'default()' has been explicitly marked unavailable here
23 |
24 | // returns a default configured format object, best suited for the current device.
25 | + (instancetype)defaultFormat API_AVAILABLE(ios(10.0)) API_DEPRECATED_WITH_REPLACEMENT("preferredFormat", tvos(10.0, 11.0)) API_UNAVAILABLE(watchos);
   | `- note: 'default()' has been explicitly marked unavailable here
26 |
27 | // Returns a new format object best suited for the main screen’s current configuration.
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Extension.swift
SwiftCompile normal arm64 Compiling\ Protocol.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Protocol.swift
SwiftCompile normal arm64 Compiling\ TileView.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:17:29: error: 'UIView' is unavailable in watchOS
 15 |         public let tileID: Int
 16 |
 17 |         weak var boardView: UIView?                             // 參照到父容器,用來做座標轉換與處理層級(bringSubviewToFront)
    |                             `- error: 'UIView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 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/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:39: error: 'UIImageView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                       `- error: 'UIImageView' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
 19 |
 20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 21 | @interface UIImageView : UIView
    |            `- note: 'UIImageView' has been explicitly marked unavailable here
 22 |
 23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:54: error: 'init()' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                                      `- error: 'init()' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | public extension WWPuzzleBoardView {
 12 |
 13 |     class TileView: UIView {
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |         public let tileID: Int
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:77:37: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 75 |
 76 |     /// 處理拖曳手勢
 77 |     @objc func handlePan(_ gesture: UIPanGestureRecognizer) {
    |                                     `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 78 |
 79 |         guard let boardView else { return }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:90:38: error: 'UIView' is unavailable in watchOS
 88 |
 89 |     /// 處理狀態 .began: 記錄位置、把圖層拉到最上層、觸發開始拖曳通知。
 90 |     func beginDragging(in boardView: UIView) {
    |                                      `- error: 'UIView' is unavailable in watchOS
 91 |
 92 |         startCenter = center
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:39: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                       `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:77: error: 'UIView' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                                                             `- error: 'UIView' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:59:61: error: 'systemBlue' is unavailable in watchOS
 57 |         let changes = {
 58 |
 59 |             self.layer.shadowColor = (highlighted ? UIColor.systemBlue : UIColor.black).cgColor
    |                                                             `- error: 'systemBlue' is unavailable in watchOS
 60 |             self.layer.shadowOpacity = highlighted ? 0.28 : 0.10
 61 |             self.layer.shadowRadius = highlighted ? 14 : 6
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:123:49: note: 'systemBlue' has been explicitly marked unavailable here
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor          API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor        API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemBlue' has been explicitly marked unavailable here
124 | @property (class, nonatomic, readonly) UIColor *systemOrangeColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
125 | @property (class, nonatomic, readonly) UIColor *systemYellowColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:69:9: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 67 |
 68 |         if (!animated) { changes(); return }
 69 |         UIViewPropertyAnimator.runningPropertyAnimator(withDuration: 0.12, delay: 0, options: [.curveEaseOut]) { changes() }
    |         `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 70 |     }
 71 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TileView.swift
SwiftCompile normal arm64 Compiling\ WWPuzzleBoardView.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift:11:39: error: 'UIView' is unavailable in watchOS
  9 |
 10 | /// MARK: - 拼圖看板視圖
 11 | public final class WWPuzzleBoardView: UIView {
    |                                       `- error: 'UIView' is unavailable in watchOS
 12 |
 13 |     public weak var delegate: WWPuzzleBoardView.Delegate?               // 拼圖看板的事件代理,用來回傳拖曳與互動狀態
/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.
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile WWPuzzleBoardView.swift
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ WWPuzzleBoardView (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:17:29: error: 'UIView' is unavailable in watchOS
 15 |         public let tileID: Int
 16 |
 17 |         weak var boardView: UIView?                             // 參照到父容器,用來做座標轉換與處理層級(bringSubviewToFront)
    |                             `- error: 'UIView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 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/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:39: error: 'UIImageView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                       `- error: 'UIImageView' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
 19 |
 20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 21 | @interface UIImageView : UIView
    |            `- note: 'UIImageView' has been explicitly marked unavailable here
 22 |
 23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:54: error: 'init()' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                                      `- error: 'init()' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | public extension WWPuzzleBoardView {
 12 |
 13 |     class TileView: UIView {
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |         public let tileID: Int
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:77:37: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 75 |
 76 |     /// 處理拖曳手勢
 77 |     @objc func handlePan(_ gesture: UIPanGestureRecognizer) {
    |                                     `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 78 |
 79 |         guard let boardView else { return }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:90:38: error: 'UIView' is unavailable in watchOS
 88 |
 89 |     /// 處理狀態 .began: 記錄位置、把圖層拉到最上層、觸發開始拖曳通知。
 90 |     func beginDragging(in boardView: UIView) {
    |                                      `- error: 'UIView' is unavailable in watchOS
 91 |
 92 |         startCenter = center
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:39: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                       `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
SwiftCompile normal arm64_32 (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64_32 Compiling\ Protocol.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Protocol.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
2026-09-24 22:28:14.674 xcodebuild[656:4191] [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 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
	SwiftEmitModule normal arm64 Emitting\ module\ for\ WWPuzzleBoardView (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
	Building workspace WWPuzzleBoardView with scheme WWPuzzleBoardView
(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:
  WWPuzzleBoardView: /Users/admin/builder/spi-builder-workspace
resolved source packages: WWPuzzleBoardView
2026-09-24 22:28:20.684 xcodebuild[784:4678] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "WWPuzzleBoardView",
  "name" : "WWPuzzleBoardView",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "16.0"
    }
  ],
  "products" : [
    {
      "name" : "WWPuzzleBoardView",
      "targets" : [
        "WWPuzzleBoardView"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "WWPuzzleBoardView",
      "module_type" : "SwiftTarget",
      "name" : "WWPuzzleBoardView",
      "path" : "Sources/WWPuzzleBoardView",
      "product_memberships" : [
        "WWPuzzleBoardView"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Privacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "PuzzleBoardView/ImageFactory.swift",
        "PuzzleBoardView/TileView.swift",
        "Utility/Constant.swift",
        "Utility/Extension.swift",
        "Utility/Model.swift",
        "Utility/Protocol.swift",
        "WWPuzzleBoardView.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
{
  "workspace" : {
    "name" : "WWPuzzleBoardView",
    "schemes" : [
      "WWPuzzleBoardView"
    ]
  }
}
2026-09-24 22:28:21.886 xcodebuild[792:4746] [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 WWPuzzleBoardView -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 WWPuzzleBoardView -destination generic/platform=watchOS
Resolve Package Graph
Resolved source packages:
  WWPuzzleBoardView: /Users/admin/builder/spi-builder-workspace
ComputePackagePrebuildTargetDependencyGraph
Prepare packages
CreateBuildRequest
SendProjectDescription
CreateBuildOperation
ComputeTargetDependencyGraph
note: Building targets in dependency order
note: Target dependency graph (3 targets)
    Target 'WWPuzzleBoardView-product' in project 'WWPuzzleBoardView'
        ➜ Explicit dependency on target 'WWPuzzleBoardView' in project 'WWPuzzleBoardView'
        ➜ Explicit dependency on target 'WWPuzzleBoardView_WWPuzzleBoardView' in project 'WWPuzzleBoardView'
    Target 'WWPuzzleBoardView' in project 'WWPuzzleBoardView'
        ➜ Explicit dependency on target 'WWPuzzleBoardView_WWPuzzleBoardView' in project 'WWPuzzleBoardView'
    Target 'WWPuzzleBoardView_WWPuzzleBoardView' in project 'WWPuzzleBoardView' (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 WWPuzzleBoardView normal arm64 com.apple.xcode.tools.swift.compiler (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    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 WWPuzzleBoardView -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_AVAILABLE -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-watchos9.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 5 -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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-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 -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView_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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftDriver WWPuzzleBoardView normal arm64_32 com.apple.xcode.tools.swift.compiler (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    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 WWPuzzleBoardView -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_AVAILABLE -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-watchos9.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 5 -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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView-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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView-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 -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView_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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftCompile normal arm64 Compiling\ ImageFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/ImageFactory.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/ImageFactory.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ImageFactory.swift
SwiftCompile normal arm64 Compiling\ resource_bundle_accessor.swift /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/resource_bundle_accessor.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/resource_bundle_accessor.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile resource_bundle_accessor.swift
SwiftCompile normal arm64 Compiling\ Constant.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:84:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:84:120: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                                                                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:114: error: 'UIViewPropertyAnimator' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                  `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:73: error: 'UIViewAnimatingPosition' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                         `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:112: error: 'UIViewPropertyAnimator' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:103: error: 'UIViewAnimatingPosition' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                       `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:142: error: 'UIViewPropertyAnimator' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                              `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:148: error: 'UIViewAnimatingPosition' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                    `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:187: error: 'UIViewPropertyAnimator' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                                                           `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:118:24: error: 'UIViewPropertyAnimator' is unavailable in watchOS
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
    |                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
119 |             withDuration: 0.12,
120 |             delay: 0,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:139:24: error: 'UIViewPropertyAnimator' is unavailable in watchOS
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
    |                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
140 |         animator.addAnimations { animations() }
141 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:139:86: error: 'UICubicTimingParameters' is unavailable in watchOS
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
    |                                                                                      `- error: 'UICubicTimingParameters' is unavailable in watchOS
140 |         animator.addAnimations { animations() }
141 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITimingParameters.h:17:12: note: 'UICubicTimingParameters' has been explicitly marked unavailable here
15 |
16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
17 | @interface UICubicTimingParameters : NSObject  <UITimingCurveProvider>
   |            `- note: 'UICubicTimingParameters' has been explicitly marked unavailable here
18 |
19 | @property(nonatomic, readonly) UIViewAnimationCurve animationCurve;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:158:32: error: 'UISpringTimingParameters' is unavailable in watchOS
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
    |                                `- error: 'UISpringTimingParameters' is unavailable in watchOS
159 |         let animator = UIViewPropertyAnimator(duration: duration, timingParameters: timingParameters)
160 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITimingParameters.h:32:12: note: 'UISpringTimingParameters' has been explicitly marked unavailable here
30 |
31 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
32 | @interface UISpringTimingParameters : NSObject  <UITimingCurveProvider>
   |            `- note: 'UISpringTimingParameters' has been explicitly marked unavailable here
33 |
34 | @property(nonatomic, readonly) CGVector initialVelocity;
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Constant.swift
SwiftCompile normal arm64 Compiling\ TileView.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:17:29: error: 'UIView' is unavailable in watchOS
 15 |         public let tileID: Int
 16 |
 17 |         weak var boardView: UIView?                             // 參照到父容器,用來做座標轉換與處理層級(bringSubviewToFront)
    |                             `- error: 'UIView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 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/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:39: error: 'UIImageView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                       `- error: 'UIImageView' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
 19 |
 20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 21 | @interface UIImageView : UIView
    |            `- note: 'UIImageView' has been explicitly marked unavailable here
 22 |
 23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:54: error: 'init()' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                                      `- error: 'init()' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | public extension WWPuzzleBoardView {
 12 |
 13 |     class TileView: UIView {
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |         public let tileID: Int
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:77:37: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 75 |
 76 |     /// 處理拖曳手勢
 77 |     @objc func handlePan(_ gesture: UIPanGestureRecognizer) {
    |                                     `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 78 |
 79 |         guard let boardView else { return }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:90:38: error: 'UIView' is unavailable in watchOS
 88 |
 89 |     /// 處理狀態 .began: 記錄位置、把圖層拉到最上層、觸發開始拖曳通知。
 90 |     func beginDragging(in boardView: UIView) {
    |                                      `- error: 'UIView' is unavailable in watchOS
 91 |
 92 |         startCenter = center
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:39: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                       `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:77: error: 'UIView' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                                                             `- error: 'UIView' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:59:61: error: 'systemBlue' is unavailable in watchOS
 57 |         let changes = {
 58 |
 59 |             self.layer.shadowColor = (highlighted ? UIColor.systemBlue : UIColor.black).cgColor
    |                                                             `- error: 'systemBlue' is unavailable in watchOS
 60 |             self.layer.shadowOpacity = highlighted ? 0.28 : 0.10
 61 |             self.layer.shadowRadius = highlighted ? 14 : 6
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:123:49: note: 'systemBlue' has been explicitly marked unavailable here
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor          API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor        API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor         API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
    |                                                 `- note: 'systemBlue' has been explicitly marked unavailable here
124 | @property (class, nonatomic, readonly) UIColor *systemOrangeColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
125 | @property (class, nonatomic, readonly) UIColor *systemYellowColor       API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:69:9: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 67 |
 68 |         if (!animated) { changes(); return }
 69 |         UIViewPropertyAnimator.runningPropertyAnimator(withDuration: 0.12, delay: 0, options: [.curveEaseOut]) { changes() }
    |         `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 70 |     }
 71 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile TileView.swift
SwiftCompile normal arm64 Compiling\ Protocol.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Protocol.swift
SwiftCompile normal arm64 Compiling\ Model.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Model.swift
SwiftCompile normal arm64 Compiling\ WWPuzzleBoardView.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift:11:39: error: 'UIView' is unavailable in watchOS
  9 |
 10 | /// MARK: - 拼圖看板視圖
 11 | public final class WWPuzzleBoardView: UIView {
    |                                       `- error: 'UIView' is unavailable in watchOS
 12 |
 13 |     public weak var delegate: WWPuzzleBoardView.Delegate?               // 拼圖看板的事件代理,用來回傳拖曳與互動狀態
/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.
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile WWPuzzleBoardView.swift
SwiftCompile normal arm64 Compiling\ Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift:22:21: error: 'UIGraphicsImageRendererFormat' is unavailable in watchOS
20 |         }
21 |
22 |         let format: UIGraphicsImageRendererFormat = .default()
   |                     `- error: 'UIGraphicsImageRendererFormat' is unavailable in watchOS
23 |         format.scale = self.scale
24 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGraphicsImageRenderer.h:27:12: note: 'UIGraphicsImageRendererFormat' has been explicitly marked unavailable here
25 |
26 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos)
27 | @interface UIGraphicsImageRendererFormat : UIGraphicsRendererFormat
   |            `- note: 'UIGraphicsImageRendererFormat' has been explicitly marked unavailable here
28 |
29 | @property (nonatomic) CGFloat scale; // display scale of the context. The preferredFormat uses the scale most appropriate for the main screen's current configuration.
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift:22:54: error: 'default()' is unavailable in watchOS
20 |         }
21 |
22 |         let format: UIGraphicsImageRendererFormat = .default()
   |                                                      `- error: 'default()' is unavailable in watchOS
23 |         format.scale = self.scale
24 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGraphicsRenderer.h:25:1: note: 'default()' has been explicitly marked unavailable here
23 |
24 | // returns a default configured format object, best suited for the current device.
25 | + (instancetype)defaultFormat API_AVAILABLE(ios(10.0)) API_DEPRECATED_WITH_REPLACEMENT("preferredFormat", tvos(10.0, 11.0)) API_UNAVAILABLE(watchos);
   | `- note: 'default()' has been explicitly marked unavailable here
26 |
27 | // Returns a new format object best suited for the main screen’s current configuration.
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Extension.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ WWPuzzleBoardView (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:17:29: error: 'UIView' is unavailable in watchOS
 15 |         public let tileID: Int
 16 |
 17 |         weak var boardView: UIView?                             // 參照到父容器,用來做座標轉換與處理層級(bringSubviewToFront)
    |                             `- error: 'UIView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 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/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:39: error: 'UIImageView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                       `- error: 'UIImageView' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
 19 |
 20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 21 | @interface UIImageView : UIView
    |            `- note: 'UIImageView' has been explicitly marked unavailable here
 22 |
 23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:54: error: 'init()' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                                      `- error: 'init()' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | public extension WWPuzzleBoardView {
 12 |
 13 |     class TileView: UIView {
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |         public let tileID: Int
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:77:37: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 75 |
 76 |     /// 處理拖曳手勢
 77 |     @objc func handlePan(_ gesture: UIPanGestureRecognizer) {
    |                                     `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 78 |
 79 |         guard let boardView else { return }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:90:38: error: 'UIView' is unavailable in watchOS
 88 |
 89 |     /// 處理狀態 .began: 記錄位置、把圖層拉到最上層、觸發開始拖曳通知。
 90 |     func beginDragging(in boardView: UIView) {
    |                                      `- error: 'UIView' is unavailable in watchOS
 91 |
 92 |         startCenter = center
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:39: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                       `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:77: error: 'UIView' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                                                             `- error: 'UIView' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/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/WWPuzzleBoardView/Utility/Constant.swift:84:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:84:120: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                                                                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:114: error: 'UIViewPropertyAnimator' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                  `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:73: error: 'UIViewAnimatingPosition' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                         `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:112: error: 'UIViewPropertyAnimator' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:103: error: 'UIViewAnimatingPosition' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                       `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:142: error: 'UIViewPropertyAnimator' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並\351\226\213始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                              `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:148: error: 'UIViewAnimatingPosition' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                    `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:187: error: 'UIViewPropertyAnimator' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                                                           `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift:98:22: error: 'UIView' is unavailable in watchOS
 96 |         let damping: CGFloat                    // 阻尼係數(0.0 ~ 1.0),值越小彈性越強,越接近 1.0 則動畫越平穩無震盪
 97 |         let initialVelocity: CGFloat            // 彈簧動畫的初始速度,數值越大起步衝勁越強
 98 |         let options: UIView.AnimationOptions    // 動畫選項(如 .curveEaseInOut、.allowUserInteraction 等),定義動畫的過渡曲線與行為
    |                      `- error: 'UIView' is unavailable in watchOS
 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: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/WWPuzzleBoardView/WWPuzzleBoardView.swift:11:39: error: 'UIView' is unavailable in watchOS
  9 |
 10 | /// MARK: - 拼圖看板視圖
 11 | public final class WWPuzzleBoardView: UIView {
    |                                       `- error: 'UIView' is unavailable in watchOS
 12 |
 13 |     public weak var delegate: WWPuzzleBoardView.Delegate?               // 拼圖看板的事件代理,用來回傳拖曳與互動狀態
/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/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/resource_bundle_accessor.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/ImageFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift -target arm64-apple-watchos9.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/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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-dependencies-2.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\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_AVAILABLE -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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name WWPuzzleBoardView -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView_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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64/WWPuzzleBoardView.abi.json
SwiftCompile normal arm64 (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftEmitModule normal arm64_32 Emitting\ module\ for\ WWPuzzleBoardView (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:17:29: error: 'UIView' is unavailable in watchOS
 15 |         public let tileID: Int
 16 |
 17 |         weak var boardView: UIView?                             // 參照到父容器,用來做座標轉換與處理層級(bringSubviewToFront)
    |                             `- error: 'UIView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 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/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:39: error: 'UIImageView' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                       `- error: 'UIImageView' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
 19 |
 20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 21 | @interface UIImageView : UIView
    |            `- note: 'UIImageView' has been explicitly marked unavailable here
 22 |
 23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:20:54: error: 'init()' is unavailable in watchOS
 18 |         weak var delegate: TileViewDelegate?                    // 代理人,用來回報拖曳狀態給外部 board view。
 19 |
 20 |         private let contentImageView: UIImageView = .init()     // 用來顯示拼圖內容的影像視圖。
    |                                                      `- error: 'init()' is unavailable in watchOS
 21 |         private let cornerRadius: CGFloat = 8                   // 圓角半徑
 22 |
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | public extension WWPuzzleBoardView {
 12 |
 13 |     class TileView: UIView {
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |         public let tileID: Int
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:77:37: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 75 |
 76 |     /// 處理拖曳手勢
 77 |     @objc func handlePan(_ gesture: UIPanGestureRecognizer) {
    |                                     `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 78 |
 79 |         guard let boardView else { return }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:90:38: error: 'UIView' is unavailable in watchOS
 88 |
 89 |     /// 處理狀態 .began: 記錄位置、把圖層拉到最上層、觸發開始拖曳通知。
 90 |     func beginDragging(in boardView: UIView) {
    |                                      `- error: 'UIView' is unavailable in watchOS
 91 |
 92 |         startCenter = center
/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/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:39: error: 'UIPanGestureRecognizer' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                       `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
   |            `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic)          NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos);   // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift:98:77: error: 'UIView' is unavailable in watchOS
 96 |
 97 |     /// 處理狀態 .changed: 計算新位置並限制在 board 範圍內,通知移動。
 98 |     func updateDragging(with gesture: UIPanGestureRecognizer, in boardView: UIView) {
    |                                                                             `- error: 'UIView' is unavailable in watchOS
 99 |
100 |         let translation = gesture.translation(in: boardView)
/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/WWPuzzleBoardView/Utility/Constant.swift:84:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:84:120: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 82 |     /// - Returns: 若有建立動畫控制器則回傳 `UIViewPropertyAnimator`;若為立即套用模式則回傳 `nil`
 83 |     @discardableResult
 84 |     func performAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)? = nil) -> UIViewPropertyAnimator? {
    |                                                                                                                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 85 |
 86 |         switch self {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:75: error: 'UIViewAnimatingPosition' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                           `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:103:114: error: 'UIViewPropertyAnimator' is unavailable in watchOS
101 |     ///   - completion: 套用完成後立即呼叫的完成回呼
102 |     /// - Returns: 永遠回傳 `nil`
103 |     func instantAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                  `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
104 |
105 |         animations()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:73: error: 'UIViewAnimatingPosition' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                         `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:116:112: error: 'UIViewPropertyAnimator' is unavailable in watchOS
114 |     ///   - completion: 動畫完成後呼叫的完成回呼
115 |     /// - Returns: 由 `runningPropertyAnimator` 建立並立即啟動的 animator
116 |     func quickAnimation(animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
117 |
118 |         let animator = UIViewPropertyAnimator.runningPropertyAnimator(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:103: error: 'UIViewAnimatingPosition' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並開始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                       `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:137:142: error: 'UIViewPropertyAnimator' is unavailable in watchOS
135 |     ///   - completion: 動畫完成後呼叫的完成回呼
136 |     /// - Returns: 已建立並\351\226\213始執行的 animator
137 |     func interactiveAnimation(duration: TimeInterval, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                              `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
138 |
139 |         let animator = UIViewPropertyAnimator( duration: duration, timingParameters: UICubicTimingParameters(animationCurve: .easeOut))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:148: error: 'UIViewAnimatingPosition' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                    `- error: 'UIViewAnimatingPosition' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewAnimating.h:20:28: note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
18 | } API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) ;
19 |
20 | typedef NS_ENUM(NSInteger, UIViewAnimatingPosition) {
   |                            `- note: 'UIViewAnimatingPosition' has been explicitly marked unavailable here
21 |     UIViewAnimatingPositionEnd,
22 |     UIViewAnimatingPositionStart,
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift:156:187: error: 'UIViewPropertyAnimator' is unavailable in watchOS
154 |     ///   - completion: 動畫完成後呼叫的完成回呼
155 |     /// - Returns: 已建立並開始執行的 animator
156 |     func springAnimation(duration: TimeInterval, dampingRatio: CGFloat, initialVelocity: CGVector, animations: @escaping () -> Void, completion: ((UIViewAnimatingPosition) -> Void)?) -> UIViewPropertyAnimator? {
    |                                                                                                                                                                                           `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
157 |
158 |         let timingParameters = UISpringTimingParameters(dampingRatio: dampingRatio, initialVelocity: initialVelocity)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift:98:22: error: 'UIView' is unavailable in watchOS
 96 |         let damping: CGFloat                    // 阻尼係數(0.0 ~ 1.0),值越小彈性越強,越接近 1.0 則動畫越平穩無震盪
 97 |         let initialVelocity: CGFloat            // 彈簧動畫的初始速度,數值越大起步衝勁越強
 98 |         let options: UIView.AnimationOptions    // 動畫選項(如 .curveEaseInOut、.allowUserInteraction 等),定義動畫的過渡曲線與行為
    |                      `- error: 'UIView' is unavailable in watchOS
 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: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/WWPuzzleBoardView/WWPuzzleBoardView.swift:11:39: error: 'UIView' is unavailable in watchOS
  9 |
 10 | /// MARK: - 拼圖看板視圖
 11 | public final class WWPuzzleBoardView: UIView {
    |                                       `- error: 'UIView' is unavailable in watchOS
 12 |
 13 |     public weak var delegate: WWPuzzleBoardView.Delegate?               // 拼圖看板的事件代理,用來回傳拖曳與互動狀態
/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/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/resource_bundle_accessor.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/ImageFactory.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/PuzzleBoardView/TileView.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Constant.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Protocol.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/WWPuzzleBoardView.swift -target arm64_32-apple-watchos9.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/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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView-dependencies-1.json -enable-objc-interop -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\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_AVAILABLE -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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name WWPuzzleBoardView -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView_const_extract_protocols.json -disable-clang-spi -clang-target arm64_32-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/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/WWPuzzleBoardView.build/Debug-watchos/WWPuzzleBoardView-t.build/Objects-normal/arm64_32/WWPuzzleBoardView.abi.json
SwiftCompile normal arm64_32 (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64_32 Compiling\ Model.swift /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/WWPuzzleBoardView/Utility/Model.swift (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Model.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
2026-09-24 22:28:22.821 xcodebuild[793:4770] [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\ WWPuzzleBoardView (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
	SwiftCompile normal arm64 (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
	SwiftEmitModule normal arm64_32 Emitting\ module\ for\ WWPuzzleBoardView (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
	SwiftCompile normal arm64_32 (in target 'WWPuzzleBoardView' from project 'WWPuzzleBoardView')
	Building workspace WWPuzzleBoardView with scheme WWPuzzleBoardView
(5 failures)
BUILD FAILURE 6.4 watchOS