TC-IDM-10.2: Work around conformance for color control (#32157)

Some attributes are using a non-standard conformance marker in
the spec. For now, treat all these as optional and default to the
color control cluster tests to properly verify these values.

Test: Tested against the example lighting app. The app still HAS
      conformance issues, but these particular attribues are no
      longer listed as problems.
diff --git a/src/python_testing/spec_parsing_support.py b/src/python_testing/spec_parsing_support.py
index 3d6cedf..9b65df0 100644
--- a/src/python_testing/spec_parsing_support.py
+++ b/src/python_testing/spec_parsing_support.py
@@ -496,6 +496,33 @@
             clusters[id] = new
 
     # TODO: All these fixups should be removed BEFORE SVE if at all possible
+    # Workaround for Color Control cluster - the spec uses a non-standard conformance. Set all to optional now, will need
+    # to implement either arithmetic conformance handling (once spec changes land here) or specific test
+    # https://github.com/CHIP-Specifications/connectedhomeip-spec/pull/7808 for spec changes.
+    # see 3.2.8. Defined Primaries Information Attribute Set, affects Primary<#>X/Y/Intensity attributes.
+    cc_id = Clusters.ColorControl.id
+    cc_attr = Clusters.ColorControl.Attributes
+    affected_attributes = [cc_attr.Primary1X,
+                           cc_attr.Primary1Y,
+                           cc_attr.Primary1Intensity,
+                           cc_attr.Primary2X,
+                           cc_attr.Primary2Y,
+                           cc_attr.Primary2Intensity,
+                           cc_attr.Primary3X,
+                           cc_attr.Primary3Y,
+                           cc_attr.Primary3Intensity,
+                           cc_attr.Primary4X,
+                           cc_attr.Primary4Y,
+                           cc_attr.Primary4Intensity,
+                           cc_attr.Primary5X,
+                           cc_attr.Primary5Y,
+                           cc_attr.Primary5Intensity,
+                           cc_attr.Primary6X,
+                           cc_attr.Primary6Y,
+                           cc_attr.Primary6Intensity,
+                           ]
+    for a in affected_attributes:
+        clusters[cc_id].attributes[a.attribute_id].conformance = optional()
 
     # Workaround for temp control cluster - this is parsed incorrectly in the DM XML and is missing all its attributes
     # Remove this workaround when https://github.com/csa-data-model/projects/issues/330 is fixed