Allow AUX feature (#73197)

* Allow AUX feature

* Inject set of features
diff --git a/src/python_testing/TC_DeviceConformance.py b/src/python_testing/TC_DeviceConformance.py
index 7e34e83..4a2a5a3 100644
--- a/src/python_testing/TC_DeviceConformance.py
+++ b/src/python_testing/TC_DeviceConformance.py
@@ -56,10 +56,13 @@
 #     quiet: true
 # === END CI TEST ARGUMENTS ===
 
+from matter.clusters import Objects as Clusters
+from matter.testing.conformance import optional
 from matter.testing.decorators import async_test_body
 # TODO: Enable 10.5 in CI once the door lock OTA requestor problem is sorted.
 from matter.testing.device_conformance_tests import DeviceConformanceTests
 from matter.testing.runner import TestStep, default_matter_test_main
+from matter.testing.spec_parsing import XmlFeature
 
 
 class TC_DeviceConformance(DeviceConformanceTests):
@@ -69,6 +72,25 @@
         super().setup_class()
         await self.setup_class_helper()
 
+    def _inject_unsupported_described_conformance(self):
+        # TODO: Remove allow_unsupported_described_conformance after 1.6.1 once <describedConform /> is supported in spec parsing
+        allow_unsupported_described_conformance = self.user_params.get(
+            "allow_unsupported_described_conformance", True)
+        if not allow_unsupported_described_conformance:
+            return
+
+        # Curated list of cluster features using <describedConform /> that are currently unhandled in spec parsing
+        described_conformance_ignore_features = {
+            Clusters.AccessControl.id: {
+                0x04: XmlFeature(code="AUX", name="AuxiliaryAuthentication", conformance=optional()),
+            }
+        }
+        for cluster_id, features in described_conformance_ignore_features.items():
+            if cluster_id in self.xml_clusters:
+                for mask, feature in features.items():
+                    if mask not in self.xml_clusters[cluster_id].features:
+                        self.xml_clusters[cluster_id].features[mask] = feature
+
     def test_TC_IDM_10_2(self):
         # TODO: Turn this off after TE2
         # https://github.com/project-chip/connectedhomeip/issues/34615
@@ -76,6 +98,7 @@
             "ignore_in_progress_test_event_only_disallowed_for_certification", True)
         allow_provisional_test_event_only_disallowed_for_certification = self.user_params.get(
             "allow_provisional_test_event_only_disallowed_for_certification", False)
+        self._inject_unsupported_described_conformance()
         success, problems = self.check_conformance(ignore_in_progress_test_event_only_disallowed_for_certification,
                                                    self.is_pics_sdk_ci_only,
                                                    allow_provisional_test_event_only_disallowed_for_certification)