Skip to content

Matter macOS xcode26.1 b2

Rolf Bjarne Kvinge edited this page Oct 7, 2025 · 2 revisions

#Matter.framework

diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRBaseClusters.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRBaseClusters.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRBaseClusters.h	2025-09-08 04:47:38
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRBaseClusters.h	2025-09-26 18:01:29
@@ -14999,7 +14999,7 @@
 /**
  * Command MPTZSetPosition
  *
- * This command SHALL set the values for the pan, tilt, and zoom in the mechanical PTZ.
+ * This command SHALL move the camera to the provided values for pan, tilt, and zoom in the mechanical PTZ.
  */
 - (void)MPTZSetPositionWithParams:(MTRCameraAVSettingsUserLevelManagementClusterMPTZSetPositionParams * _Nullable)params completion:(MTRStatusCompletion)completion MTR_PROVISIONALLY_AVAILABLE;
 - (void)MPTZSetPositionWithCompletion:(MTRStatusCompletion)completion
@@ -15097,6 +15097,12 @@
                              reportHandler:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))reportHandler MTR_PROVISIONALLY_AVAILABLE;
 + (void)readAttributePanMaxWithClusterStateCache:(MTRClusterStateCacheContainer *)clusterStateCacheContainer endpoint:(NSNumber *)endpoint queue:(dispatch_queue_t)queue completion:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 
+- (void)readAttributeMovementStateWithCompletion:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
+- (void)subscribeAttributeMovementStateWithParams:(MTRSubscribeParams *)params
+                          subscriptionEstablished:(MTRSubscriptionEstablishedHandler _Nullable)subscriptionEstablished
+                                    reportHandler:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))reportHandler MTR_PROVISIONALLY_AVAILABLE;
++ (void)readAttributeMovementStateWithClusterStateCache:(MTRClusterStateCacheContainer *)clusterStateCacheContainer endpoint:(NSNumber *)endpoint queue:(dispatch_queue_t)queue completion:(void (^)(NSNumber * _Nullable value, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
+
 - (void)readAttributeGeneratedCommandListWithCompletion:(void (^)(NSArray * _Nullable value, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 - (void)subscribeAttributeGeneratedCommandListWithParams:(MTRSubscribeParams *)params
                                  subscriptionEstablished:(MTRSubscriptionEstablishedHandler _Nullable)subscriptionEstablished
@@ -16217,7 +16223,7 @@
 /**
  * Command FindRootCertificate
  *
- * This command SHALL return the specified TLS root certificate, or all TLS provisioned root certificates, based on the contents of the CAID field.
+ * This command SHALL return the specified TLS root certificate, or all provisioned TLS root certificates for the accessing fabric, based on the contents of the CAID field.
  */
 - (void)findRootCertificateWithParams:(MTRTLSCertificateManagementClusterFindRootCertificateParams *)params completion:(void (^)(MTRTLSCertificateManagementClusterFindRootCertificateResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 /**
@@ -16233,11 +16239,11 @@
  */
 - (void)removeRootCertificateWithParams:(MTRTLSCertificateManagementClusterRemoveRootCertificateParams *)params completion:(MTRStatusCompletion)completion MTR_PROVISIONALLY_AVAILABLE;
 /**
- * Command TLSClientCSR
+ * Command ClientCSR
  *
- * This command SHALL be generated to request the Node generates a Certificate Signing Request.
+ * This command SHALL be generated to request the Node generates a certificate signing request for a new TLS key pair or use an existing CCDID for certificate rotation.
  */
-- (void)TLSClientCSRWithParams:(MTRTLSCertificateManagementClusterTLSClientCSRParams *)params completion:(void (^)(MTRTLSCertificateManagementClusterTLSClientCSRResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
+- (void)clientCSRWithParams:(MTRTLSCertificateManagementClusterClientCSRParams *)params completion:(void (^)(MTRTLSCertificateManagementClusterClientCSRResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 /**
  * Command ProvisionClientCertificate
  *
@@ -16247,7 +16253,7 @@
 /**
  * Command FindClientCertificate
  *
- * This command SHALL return the TLSClientCertificateDetailStruct for the passed in CCDID, or all TLS client certificates, based on the contents of the CCDID field.
+ * This command SHALL return the TLSClientCertificateDetailStruct for the passed in CCDID, or all TLS client certificates for the accessing fabric, based on the contents of the CCDID field.
  */
 - (void)findClientCertificateWithParams:(MTRTLSCertificateManagementClusterFindClientCertificateParams *)params completion:(void (^)(MTRTLSCertificateManagementClusterFindClientCertificateResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 /**
@@ -22041,6 +22047,11 @@
     MTRCameraAVStreamManagementFeatureNightVision MTR_PROVISIONALLY_AVAILABLE = 0x400,
 } MTR_PROVISIONALLY_AVAILABLE;
 
+typedef NS_ENUM(uint8_t, MTRCameraAVSettingsUserLevelManagementPhysicalMovement) {
+    MTRCameraAVSettingsUserLevelManagementPhysicalMovementIdle MTR_PROVISIONALLY_AVAILABLE = 0x00,
+    MTRCameraAVSettingsUserLevelManagementPhysicalMovementMoving MTR_PROVISIONALLY_AVAILABLE = 0x01,
+} MTR_PROVISIONALLY_AVAILABLE;
+
 typedef NS_OPTIONS(uint32_t, MTRCameraAVSettingsUserLevelManagementFeature) {
     MTRCameraAVSettingsUserLevelManagementFeatureDigitalPTZ MTR_PROVISIONALLY_AVAILABLE = 0x1,
     MTRCameraAVSettingsUserLevelManagementFeatureMechanicalPan MTR_PROVISIONALLY_AVAILABLE = 0x2,
@@ -22206,11 +22217,6 @@
     MTRJointFabricAdministratorTransferAnchorResponseStatusOK MTR_PROVISIONALLY_AVAILABLE = 0x00,
     MTRJointFabricAdministratorTransferAnchorResponseStatusTransferAnchorStatusDatastoreBusy MTR_PROVISIONALLY_AVAILABLE = 0x01,
     MTRJointFabricAdministratorTransferAnchorResponseStatusTransferAnchorStatusNoUserConsent MTR_PROVISIONALLY_AVAILABLE = 0x02,
-} MTR_PROVISIONALLY_AVAILABLE;
-
-typedef NS_ENUM(uint8_t, MTRTLSCertificateManagementStatusCode) {
-    MTRTLSCertificateManagementStatusCodeCertificateAlreadyInstalled MTR_PROVISIONALLY_AVAILABLE = 0x02,
-    MTRTLSCertificateManagementStatusCodeDuplicateKey MTR_PROVISIONALLY_AVAILABLE = 0x03,
 } MTR_PROVISIONALLY_AVAILABLE;
 
 typedef NS_ENUM(uint8_t, MTRTLSClientManagementStatusCode) {
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusterConstants.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusterConstants.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusterConstants.h	2025-09-08 04:38:59
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusterConstants.h	2025-09-26 14:21:02
@@ -4770,6 +4770,7 @@
     MTRAttributeIDTypeClusterCameraAVSettingsUserLevelManagementAttributeTiltMaxID MTR_PROVISIONALLY_AVAILABLE = 0x00000006,
     MTRAttributeIDTypeClusterCameraAVSettingsUserLevelManagementAttributePanMinID MTR_PROVISIONALLY_AVAILABLE = 0x00000007,
     MTRAttributeIDTypeClusterCameraAVSettingsUserLevelManagementAttributePanMaxID MTR_PROVISIONALLY_AVAILABLE = 0x00000008,
+    MTRAttributeIDTypeClusterCameraAVSettingsUserLevelManagementAttributeMovementStateID MTR_PROVISIONALLY_AVAILABLE = 0x00000009,
     MTRAttributeIDTypeClusterCameraAVSettingsUserLevelManagementAttributeGeneratedCommandListID MTR_PROVISIONALLY_AVAILABLE = MTRAttributeIDTypeGlobalAttributeGeneratedCommandListID,
     MTRAttributeIDTypeClusterCameraAVSettingsUserLevelManagementAttributeAcceptedCommandListID MTR_PROVISIONALLY_AVAILABLE = MTRAttributeIDTypeGlobalAttributeAcceptedCommandListID,
     MTRAttributeIDTypeClusterCameraAVSettingsUserLevelManagementAttributeAttributeListID MTR_PROVISIONALLY_AVAILABLE = MTRAttributeIDTypeGlobalAttributeAttributeListID,
@@ -7246,8 +7247,8 @@
     MTRCommandIDTypeClusterTLSCertificateManagementCommandLookupRootCertificateID MTR_PROVISIONALLY_AVAILABLE = 0x00000004,
     MTRCommandIDTypeClusterTLSCertificateManagementCommandLookupRootCertificateResponseID MTR_PROVISIONALLY_AVAILABLE = 0x00000005,
     MTRCommandIDTypeClusterTLSCertificateManagementCommandRemoveRootCertificateID MTR_PROVISIONALLY_AVAILABLE = 0x00000006,
-    MTRCommandIDTypeClusterTLSCertificateManagementCommandTLSClientCSRID MTR_PROVISIONALLY_AVAILABLE = 0x00000007,
-    MTRCommandIDTypeClusterTLSCertificateManagementCommandTLSClientCSRResponseID MTR_PROVISIONALLY_AVAILABLE = 0x00000008,
+    MTRCommandIDTypeClusterTLSCertificateManagementCommandClientCSRID MTR_PROVISIONALLY_AVAILABLE = 0x00000007,
+    MTRCommandIDTypeClusterTLSCertificateManagementCommandClientCSRResponseID MTR_PROVISIONALLY_AVAILABLE = 0x00000008,
     MTRCommandIDTypeClusterTLSCertificateManagementCommandProvisionClientCertificateID MTR_PROVISIONALLY_AVAILABLE = 0x00000009,
     MTRCommandIDTypeClusterTLSCertificateManagementCommandFindClientCertificateID MTR_PROVISIONALLY_AVAILABLE = 0x0000000A,
     MTRCommandIDTypeClusterTLSCertificateManagementCommandFindClientCertificateResponseID MTR_PROVISIONALLY_AVAILABLE = 0x0000000B,
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusters.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusters.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusters.h	2025-09-09 08:26:27
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRClusters.h	2025-09-29 06:40:18
@@ -7007,6 +7007,8 @@
 
 - (NSDictionary<NSString *, id> * _Nullable)readAttributePanMaxWithParams:(MTRReadParams * _Nullable)params MTR_PROVISIONALLY_AVAILABLE;
 
+- (NSDictionary<NSString *, id> * _Nullable)readAttributeMovementStateWithParams:(MTRReadParams * _Nullable)params MTR_PROVISIONALLY_AVAILABLE;
+
 - (NSDictionary<NSString *, id> * _Nullable)readAttributeGeneratedCommandListWithParams:(MTRReadParams * _Nullable)params MTR_PROVISIONALLY_AVAILABLE;
 
 - (NSDictionary<NSString *, id> * _Nullable)readAttributeAcceptedCommandListWithParams:(MTRReadParams * _Nullable)params MTR_PROVISIONALLY_AVAILABLE;
@@ -7506,7 +7508,7 @@
 - (void)findRootCertificateWithParams:(MTRTLSCertificateManagementClusterFindRootCertificateParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(void (^)(MTRTLSCertificateManagementClusterFindRootCertificateResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 - (void)lookupRootCertificateWithParams:(MTRTLSCertificateManagementClusterLookupRootCertificateParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(void (^)(MTRTLSCertificateManagementClusterLookupRootCertificateResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 - (void)removeRootCertificateWithParams:(MTRTLSCertificateManagementClusterRemoveRootCertificateParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(MTRStatusCompletion)completion MTR_PROVISIONALLY_AVAILABLE;
-- (void)TLSClientCSRWithParams:(MTRTLSCertificateManagementClusterTLSClientCSRParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(void (^)(MTRTLSCertificateManagementClusterTLSClientCSRResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
+- (void)clientCSRWithParams:(MTRTLSCertificateManagementClusterClientCSRParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(void (^)(MTRTLSCertificateManagementClusterClientCSRResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 - (void)provisionClientCertificateWithParams:(MTRTLSCertificateManagementClusterProvisionClientCertificateParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(MTRStatusCompletion)completion MTR_PROVISIONALLY_AVAILABLE;
 - (void)findClientCertificateWithParams:(MTRTLSCertificateManagementClusterFindClientCertificateParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(void (^)(MTRTLSCertificateManagementClusterFindClientCertificateResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
 - (void)lookupClientCertificateWithParams:(MTRTLSCertificateManagementClusterLookupClientCertificateParams *)params expectedValues:(NSArray<NSDictionary<NSString *, id> *> * _Nullable)expectedDataValueDictionaries expectedValueInterval:(NSNumber * _Nullable)expectedValueIntervalMs completion:(void (^)(MTRTLSCertificateManagementClusterLookupClientCertificateResponseParams * _Nullable data, NSError * _Nullable error))completion MTR_PROVISIONALLY_AVAILABLE;
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommandPayloadsObjc.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommandPayloadsObjc.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommandPayloadsObjc.h	2025-09-08 04:37:44
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommandPayloadsObjc.h	2025-09-26 14:21:01
@@ -13946,9 +13946,11 @@
 @end
 
 MTR_PROVISIONALLY_AVAILABLE
-@interface MTRTLSCertificateManagementClusterTLSClientCSRParams : NSObject <NSCopying>
+@interface MTRTLSCertificateManagementClusterClientCSRParams : NSObject <NSCopying>
 
 @property (nonatomic, copy) NSData * _Nonnull nonce MTR_PROVISIONALLY_AVAILABLE;
+
+@property (nonatomic, copy) NSNumber * _Nullable ccdid MTR_PROVISIONALLY_AVAILABLE;
 /**
  * Controls whether the command is a timed command (using Timed Invoke).
  *
@@ -13976,16 +13978,16 @@
 @end
 
 MTR_PROVISIONALLY_AVAILABLE
-@interface MTRTLSCertificateManagementClusterTLSClientCSRResponseParams : NSObject <NSCopying>
+@interface MTRTLSCertificateManagementClusterClientCSRResponseParams : NSObject <NSCopying>
 
 @property (nonatomic, copy) NSNumber * _Nonnull ccdid MTR_PROVISIONALLY_AVAILABLE;
 
 @property (nonatomic, copy) NSData * _Nonnull csr MTR_PROVISIONALLY_AVAILABLE;
 
-@property (nonatomic, copy) NSData * _Nonnull nonce MTR_PROVISIONALLY_AVAILABLE;
+@property (nonatomic, copy) NSData * _Nonnull nonceSignature MTR_PROVISIONALLY_AVAILABLE;
 
 /**
- * Initialize an MTRTLSCertificateManagementClusterTLSClientCSRResponseParams with a response-value dictionary
+ * Initialize an MTRTLSCertificateManagementClusterClientCSRResponseParams with a response-value dictionary
  * of the sort that MTRDeviceResponseHandler would receive.
  *
  * Will return nil and hand out an error if the response-value dictionary is not
@@ -14003,7 +14005,9 @@
 
 @property (nonatomic, copy) NSNumber * _Nonnull ccdid MTR_PROVISIONALLY_AVAILABLE;
 
-@property (nonatomic, copy) MTRTLSCertificateManagementClusterTLSClientCertificateDetailStruct * _Nonnull clientCertificateDetails MTR_PROVISIONALLY_AVAILABLE;
+@property (nonatomic, copy) NSData * _Nonnull clientCertificate MTR_PROVISIONALLY_AVAILABLE;
+
+@property (nonatomic, copy) NSArray * _Nonnull intermediateCertificates MTR_PROVISIONALLY_AVAILABLE;
 /**
  * Controls whether the command is a timed command (using Timed Invoke).
  *
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioneeInfo.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioneeInfo.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioneeInfo.h	2025-09-08 05:14:31
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioneeInfo.h	2025-09-26 20:04:19
@@ -55,7 +55,7 @@
  * 1) The attributes in extraAttributesToRead on MTRCommissioningParameters.
  * 2) The FeatureMap attributes of all Network Commissioning clusters on the commissionee.
  */
-@property (nonatomic, copy, readonly, nullable) NSDictionary<MTRAttributePath *, NSDictionary<NSString *, id> *> * attributes MTR_UNSTABLE_API;
+@property (nonatomic, copy, readonly, nullable) NSDictionary<MTRAttributePath *, NSDictionary<NSString *, id> *> * attributes MTR_PROVISIONALLY_AVAILABLE;
 
 @end
 
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningDelegate.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningDelegate.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningDelegate.h	1970-01-01 01:00:00
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningDelegate.h	2025-09-26 20:04:20
@@ -0,0 +1,127 @@
+/**
+ *    Copyright (c) 2025 Project CHIP Authors
+ *
+ *    Licensed under the Apache License, Version 2.0 (the "License");
+ *    you may not use this file except in compliance with the License.
+ *    You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ */
+
+#import <Foundation/Foundation.h>
+#import <Matter/MTRCommissioneeInfo.h>
+#import <Matter/MTRDeviceAttestationDelegate.h> // For MTRDeviceAttestationDeviceInfo
+#import <Matter/MTRMetrics.h>
+#import <Matter/MTRStructsObjc.h>
+
+@class MTRCommissioningOperation;
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, MTRCommissioningStage) {
+    // Possible stages that can be reached during commissioning.  The order of
+    // these stages is not guaranteed to be anything in particular, or to match
+    // the numeric order of this enum.  There are no guarantees that any
+    // particular stage will in fact be reached, unless documented otherwise.
+
+    // The commissionee has received network credentials.  This will never be reached
+    // during on-network commissioning.
+    MTRCommissioningStageProvisionedNetworkCredentials = 1,
+
+    // The commissioning operation is about to ask the commissionee to do a Wi-Fi network scan.
+    MTRCommissioningStageWiFiScanStart = 2,
+
+    // The commissioning operation is about to ask the commissionee to do a Thread network scan.
+    MTRCommissioningStageThreadScanStart = 3,
+} MTR_PROVISIONALLY_AVAILABLE;
+
+MTR_PROVISIONALLY_AVAILABLE
+@protocol MTRCommissioningDelegate <NSObject>
+@optional
+/**
+ * Callback that gets called after various information (product identity,
+ * optionally endpoint structure information, optionally other attributes that
+ * were requested) has been read from the commissionee.
+ */
+- (void)commissioning:(MTRCommissioningOperation *)commissioning
+    readCommissioneeInfo:(MTRCommissioneeInfo *)info;
+
+@required
+/**
+ * Notification that device attestation has completed.
+ *
+ * Commissioning will pause, regardless of whether attestation succeeded or
+ * failed, until the completion is invoked (indicating that commissioning should
+ * proceed, even if attestation failed), or commissioning is stopped.
+ */
+- (void)commissioning:(MTRCommissioningOperation *)commissioning
+    completedDeviceAttestation:(MTRDeviceAttestationDeviceInfo *)attestationDeviceInfo
+                         error:(nullable NSError *)error
+                    completion:(dispatch_block_t)completion;
+
+@optional
+/**
+ * Callback that gets called for a commissionee that supports Wi-Fi if
+ * Wi-Fi network commissioning is required and Wi-Fi credentials were not
+ * provided in MTRCommissioningParameters.
+ *
+ * Commissioning will pause, including in cases when the network scan failed,
+ * until the completion is invoked with the network and credentials the
+ * commissionee should use, or until commissioning is stopped.  The provided
+ * credentials are allowed to be nil for an open Wi-Fi network.
+ *
+ * * error will be non-nil if a scan was attempted and failed.
+ * * networks will be non-nil if a scan was attempted and succeeded.
+ * * Both error and networks will be nil if no scan was performed.
+ */
+- (void)commissioning:(MTRCommissioningOperation *)commissioning
+    needsWiFiNetworkSelectionWithScanResults:(nullable NSArray<MTRNetworkCommissioningClusterWiFiInterfaceScanResultStruct *> *)networks
+                                       error:(nullable NSError *)error
+                                  completion:(void (^)(NSData * ssid, NSData * _Nullable credentials))completion;
+
+/**
+ * Callback that gets called for a commissionee that supports Thread if Thread
+ * network commissioning is required and an operational dataset was not provided
+ * in MTRCommissioningParameters.
+ *
+ * Commissioning will pause, including in cases when the network scan failed,
+ * until the completion is invoked with the operational dataset the commissionee
+ * should use, or until commissioning is stopped.
+ *
+ * * error will be non-nil if a scan was attempted and failed.
+ * * networks will be non-nil if a scan was attempted and succeeded.
+ * * Both error and networks will be nil if no scan was performed.
+ */
+- (void)commissioning:(MTRCommissioningOperation *)commissioning
+    needsThreadNetworkSelectionWithScanResults:(nullable NSArray<MTRNetworkCommissioningClusterThreadInterfaceScanResultStruct *> *)networks
+                                         error:(nullable NSError *)error
+                                    completion:(void (^)(NSData * operationalDataset))completion;
+
+/**
+ * Notification that a particular commissioning stage has been reached.
+ */
+- (void)commissioning:(MTRCommissioningOperation *)commissioning reachedCommissioningStage:(MTRCommissioningStage)stage;
+
+/**
+ * Notification that commissioning has failed.
+ */
+- (void)commissioning:(MTRCommissioningOperation *)commissioning
+      failedWithError:(NSError *)error
+              metrics:(MTRMetrics *)metrics;
+
+/**
+ * Notification that commissioning has succeeded.
+ */
+- (void)commissioning:(MTRCommissioningOperation *)commissioning
+    succeededForNodeID:(NSNumber *)nodeID
+               metrics:(MTRMetrics *)metrics;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningOperation.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningOperation.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningOperation.h	1970-01-01 01:00:00
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningOperation.h	2025-09-26 20:04:16
@@ -0,0 +1,74 @@
+/**
+ *    Copyright (c) 2025 Project CHIP Authors
+ *
+ *    Licensed under the Apache License, Version 2.0 (the "License");
+ *    you may not use this file except in compliance with the License.
+ *    You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ */
+
+#import <Foundation/Foundation.h>
+#import <Matter/MTRCommissioningDelegate.h>
+#import <Matter/MTRCommissioningParameters.h>
+#import <Matter/MTRDeviceController.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+MTR_PROVISIONALLY_AVAILABLE
+@interface MTRCommissioningOperation : NSObject
+/**
+ * Initialized via initWithParameters:setupPayload:delegate:queue:
+ */
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+/**
+ * Prepare to commission a device with the given parameters and the given setup
+ * payload (QR code, manual pairing code, etc).  Returns nil if the payload is
+ * not valid.
+ *
+ * The deviceAttestationDelegate property of MTRCommissioningParameters will be
+ * ignored. Device attestation notifications will be delivered to the
+ * MTRCommissioningDelegate instead.  The failSafeTimeout property of
+ * MTRCommissioningParameters will be respected.
+ *
+ * The provided delegate will be notified about various things as commissioning
+ * proceeds.  The calls into the delegate will happen on the provided queue.
+ *
+ * Modifying the parameters after this call will have no effect on the behavior
+ * of the MTRCommissioningOperation.
+ */
+- (nullable instancetype)initWithParameters:(MTRCommissioningParameters *)parameters
+                               setupPayload:(NSString *)payload
+                                   delegate:(id<MTRCommissioningDelegate>)delegate
+                                      queue:(dispatch_queue_t)queue;
+
+/**
+ * Start commissioning with the given controller (which identifies the fabric
+ * the commissionee should be commissioned into).  The delegate will be notified
+ * if there are any failures.
+ */
+- (void)startWithController:(MTRDeviceController *)controller;
+
+/**
+ * Stop commissioning.  This will typically result in
+ * commissioning:failedWithError: callbacks to delegates.
+ *
+ * Returns YES if this commissioning was still in-progress and has now been
+ * stopped; returns NO if this commissioning wasn't in-progress.
+ *
+ * Note that this can return NO while there are still pending async calls to
+ * delegate callbacks for the end of the commissioning.
+ */
+- (BOOL)stop;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningParameters.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningParameters.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningParameters.h	2025-09-09 08:26:28
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRCommissioningParameters.h	2025-09-26 18:01:30
@@ -122,7 +122,7 @@
  * The FeatureMap attribute of all Network Commissioning clusters on the commissionee
  * will always be read and does not need to be included in this list.
  */
-@property (nonatomic, copy, nullable) NSArray<MTRAttributeRequestPath *> * extraAttributesToRead MTR_UNSTABLE_API;
+@property (nonatomic, copy, nullable) NSArray<MTRAttributeRequestPath *> * extraAttributesToRead MTR_PROVISIONALLY_AVAILABLE;
 
 @end
 
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRDeviceControllerStartupParams.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRDeviceControllerStartupParams.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRDeviceControllerStartupParams.h	2025-09-08 04:39:02
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/MTRDeviceControllerStartupParams.h	2025-09-26 14:13:44
@@ -248,7 +248,7 @@
 
 /**
  * The certificate issuer delegate to use for issuing operational certificates
- * when commmissioning devices.  Allowed to be nil if this controller either
+ * when commissioning devices.  Allowed to be nil if this controller either
  * does not issue operational certificates at all or internally generates the
  * certificates to be issued.  In the latter case, nocSigner must not be nil.
  */
diff -ruN /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/Matter.h /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/Matter.h
--- /Applications/Xcode_26.1.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/Matter.h	2025-09-08 05:14:27
+++ /Applications/Xcode_26.1.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Matter.framework/Headers/Matter.h	2025-09-26 20:04:15
@@ -38,6 +38,8 @@
 #import <Matter/MTRCommissionableBrowserDelegate.h>
 #import <Matter/MTRCommissionableBrowserResult.h>
 #import <Matter/MTRCommissioneeInfo.h>
+#import <Matter/MTRCommissioningDelegate.h>
+#import <Matter/MTRCommissioningOperation.h>
 #import <Matter/MTRCommissioningParameters.h>
 #import <Matter/MTRDefines.h>
 #import <Matter/MTRDevice.h>

Clone this wiki locally