We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
[Device Support Request] Lidl _TZ3000_oh7jddmx TS0502A
**Is your feature request related to a problem? Please describe.**
Very similar to #808 I have a LIDL ceiling light panel, which only supports CCT but is incorrectly reported to HA.

**Describe the solution you'd like**
Only exposing the color temperature.

**Device signature**
```
{
  "node_descriptor": "NodeDescriptor(byte1=1, byte2=64, mac_capability_flags=142, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=0, *allocate_address=True, *complex_descriptor_available=False, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False, *is_valid=True, *logical_type=<LogicalType.Router: 1>, *user_descriptor_available=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x010c",
      "in_clusters": [
        "0x0000",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0008",
        "0x0300",
        "0x1000"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    },
    "242": {
      "profile_id": 41440,
      "device_type": "0x0061",
      "in_clusters": [],
      "out_clusters": [
        "0x0021"
      ]
    }
  },
  "manufacturer": "_TZ3000_oh7jddmx",
  "model": "TS0502A",
  "class": "zigpy.device.Device"
}
```

**Additional context**
I'm assuming adding the signature into
https://github.com/zigpy/zha-device-handlers/blob/b180e4f7ab4a096688f4d4ad9b47ac1b3efa9fe2/zhaquirks/lidl/cct.py#L40-L46
will fix this. ~~I'll test it and open a PR if I find time for it.~~
Update: Successfully tested. PR opened.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `zhaquirks/lidl/cct.py`
Content:
```
1 """Quirk for LIDL CCT bulb."""
2 from zigpy.profiles import zha
3 from zigpy.quirks import CustomCluster, CustomDevice
4 from zigpy.zcl.clusters.general import (
5     Basic,
6     GreenPowerProxy,
7     Groups,
8     Identify,
9     LevelControl,
10     OnOff,
11     Ota,
12     Scenes,
13     Time,
14 )
15 from zigpy.zcl.clusters.lighting import Color
16 from zigpy.zcl.clusters.lightlink import LightLink
17 
18 from zhaquirks.const import (
19     DEVICE_TYPE,
20     ENDPOINTS,
21     INPUT_CLUSTERS,
22     MODELS_INFO,
23     OUTPUT_CLUSTERS,
24     PROFILE_ID,
25 )
26 
27 
28 class LidlCCTColorCluster(CustomCluster, Color):
29     """Lidl CCT Lighting custom cluster."""
30 
31     # Remove RGB color wheel for CCT Lighting: only expose color temperature
32     # LIDL bulbs do not correctly report this attribute (comes back as None in Home Assistant)
33     _CONSTANT_ATTRIBUTES = {0x400A: 16}
34 
35 
36 class CCTLight(CustomDevice):
37     """Lidl CCT Lighting device."""
38 
39     signature = {
40         MODELS_INFO: [
41             ("_TZ3000_49qchf10", "TS0502A"),
42             ("_TZ3000_oborybow", "TS0502A"),
43             ("_TZ3000_9evm3otq", "TS0502A"),
44             ("_TZ3000_rylaozuc", "TS0502A"),
45             ("_TZ3000_el5kt5im", "TS0502A"),
46         ],
47         ENDPOINTS: {
48             1: {
49                 # <SimpleDescriptor endpoint=1 profile=260 device_type=268
50                 # device_version=1
51                 # input_clusters=[0, 3, 4, 5, 6, 8, 768, 4096]
52                 # output_clusters=[10, 25]
53                 PROFILE_ID: zha.PROFILE_ID,
54                 DEVICE_TYPE: zha.DeviceType.COLOR_TEMPERATURE_LIGHT,
55                 INPUT_CLUSTERS: [
56                     Basic.cluster_id,
57                     Identify.cluster_id,
58                     Groups.cluster_id,
59                     Scenes.cluster_id,
60                     OnOff.cluster_id,
61                     LevelControl.cluster_id,
62                     Color.cluster_id,
63                     LightLink.cluster_id,
64                 ],
65                 OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
66             },
67             242: {
68                 # <SimpleDescriptor endpoint=242 profile=41440 device_type=97
69                 # device_version=0
70                 # input_clusters=[]
71                 # output_clusters=[33]
72                 PROFILE_ID: 41440,
73                 DEVICE_TYPE: 97,
74                 INPUT_CLUSTERS: [],
75                 OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],
76             },
77         },
78     }
79 
80     replacement = {
81         ENDPOINTS: {
82             1: {
83                 PROFILE_ID: zha.PROFILE_ID,
84                 DEVICE_TYPE: zha.DeviceType.COLOR_TEMPERATURE_LIGHT,
85                 INPUT_CLUSTERS: [
86                     Basic.cluster_id,
87                     Identify.cluster_id,
88                     Groups.cluster_id,
89                     Scenes.cluster_id,
90                     OnOff.cluster_id,
91                     LevelControl.cluster_id,
92                     LidlCCTColorCluster,
93                     LightLink.cluster_id,
94                 ],
95                 OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
96             },
97             242: {
98                 PROFILE_ID: 41440,
99                 DEVICE_TYPE: 97,
100                 INPUT_CLUSTERS: [],
101                 OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],
102             },
103         }
104     }
105
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/zhaquirks/lidl/cct.py b/zhaquirks/lidl/cct.py
--- a/zhaquirks/lidl/cct.py
+++ b/zhaquirks/lidl/cct.py
@@ -43,6 +43,7 @@
             ("_TZ3000_9evm3otq", "TS0502A"),
             ("_TZ3000_rylaozuc", "TS0502A"),
             ("_TZ3000_el5kt5im", "TS0502A"),
+            ("_TZ3000_oh7jddmx", "TS0502A"),
         ],
         ENDPOINTS: {
             1: {

{"golden_diff": "diff --git a/zhaquirks/lidl/cct.py b/zhaquirks/lidl/cct.py\n--- a/zhaquirks/lidl/cct.py\n+++ b/zhaquirks/lidl/cct.py\n@@ -43,6 +43,7 @@\n             (\"_TZ3000_9evm3otq\", \"TS0502A\"),\n             (\"_TZ3000_rylaozuc\", \"TS0502A\"),\n             (\"_TZ3000_el5kt5im\", \"TS0502A\"),\n+            (\"_TZ3000_oh7jddmx\", \"TS0502A\"),\n         ],\n         ENDPOINTS: {\n             1: {\n", "issue": "[Device Support Request] Lidl _TZ3000_oh7jddmx TS0502A\n**Is your feature request related to a problem? Please describe.**\r\nVery similar to #808 I have a LIDL ceiling light panel, which only supports CCT but is incorrectly reported to HA.\r\n\r\n**Describe the solution you'd like**\r\nOnly exposing the color temperature.\r\n\r\n**Device signature**\r\n```\r\n{\r\n  \"node_descriptor\": \"NodeDescriptor(byte1=1, byte2=64, mac_capability_flags=142, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=0, *allocate_address=True, *complex_descriptor_available=False, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False, *is_valid=True, *logical_type=<LogicalType.Router: 1>, *user_descriptor_available=False)\",\r\n  \"endpoints\": {\r\n    \"1\": {\r\n      \"profile_id\": 260,\r\n      \"device_type\": \"0x010c\",\r\n      \"in_clusters\": [\r\n        \"0x0000\",\r\n        \"0x0003\",\r\n        \"0x0004\",\r\n        \"0x0005\",\r\n        \"0x0006\",\r\n        \"0x0008\",\r\n        \"0x0300\",\r\n        \"0x1000\"\r\n      ],\r\n      \"out_clusters\": [\r\n        \"0x000a\",\r\n        \"0x0019\"\r\n      ]\r\n    },\r\n    \"242\": {\r\n      \"profile_id\": 41440,\r\n      \"device_type\": \"0x0061\",\r\n      \"in_clusters\": [],\r\n      \"out_clusters\": [\r\n        \"0x0021\"\r\n      ]\r\n    }\r\n  },\r\n  \"manufacturer\": \"_TZ3000_oh7jddmx\",\r\n  \"model\": \"TS0502A\",\r\n  \"class\": \"zigpy.device.Device\"\r\n}\r\n```\r\n\r\n**Additional context**\r\nI'm assuming adding the signature into\r\nhttps://github.com/zigpy/zha-device-handlers/blob/b180e4f7ab4a096688f4d4ad9b47ac1b3efa9fe2/zhaquirks/lidl/cct.py#L40-L46\r\nwill fix this. ~~I'll test it and open a PR if I find time for it.~~\r\nUpdate: Successfully tested. PR opened.\n", "before_files": [{"content": "\"\"\"Quirk for LIDL CCT bulb.\"\"\"\nfrom zigpy.profiles import zha\nfrom zigpy.quirks import CustomCluster, CustomDevice\nfrom zigpy.zcl.clusters.general import (\n    Basic,\n    GreenPowerProxy,\n    Groups,\n    Identify,\n    LevelControl,\n    OnOff,\n    Ota,\n    Scenes,\n    Time,\n)\nfrom zigpy.zcl.clusters.lighting import Color\nfrom zigpy.zcl.clusters.lightlink import LightLink\n\nfrom zhaquirks.const import (\n    DEVICE_TYPE,\n    ENDPOINTS,\n    INPUT_CLUSTERS,\n    MODELS_INFO,\n    OUTPUT_CLUSTERS,\n    PROFILE_ID,\n)\n\n\nclass LidlCCTColorCluster(CustomCluster, Color):\n    \"\"\"Lidl CCT Lighting custom cluster.\"\"\"\n\n    # Remove RGB color wheel for CCT Lighting: only expose color temperature\n    # LIDL bulbs do not correctly report this attribute (comes back as None in Home Assistant)\n    _CONSTANT_ATTRIBUTES = {0x400A: 16}\n\n\nclass CCTLight(CustomDevice):\n    \"\"\"Lidl CCT Lighting device.\"\"\"\n\n    signature = {\n        MODELS_INFO: [\n            (\"_TZ3000_49qchf10\", \"TS0502A\"),\n            (\"_TZ3000_oborybow\", \"TS0502A\"),\n            (\"_TZ3000_9evm3otq\", \"TS0502A\"),\n            (\"_TZ3000_rylaozuc\", \"TS0502A\"),\n            (\"_TZ3000_el5kt5im\", \"TS0502A\"),\n        ],\n        ENDPOINTS: {\n            1: {\n                # <SimpleDescriptor endpoint=1 profile=260 device_type=268\n                # device_version=1\n                # input_clusters=[0, 3, 4, 5, 6, 8, 768, 4096]\n                # output_clusters=[10, 25]\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.COLOR_TEMPERATURE_LIGHT,\n                INPUT_CLUSTERS: [\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    Scenes.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    Color.cluster_id,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],\n            },\n            242: {\n                # <SimpleDescriptor endpoint=242 profile=41440 device_type=97\n                # device_version=0\n                # input_clusters=[]\n                # output_clusters=[33]\n                PROFILE_ID: 41440,\n                DEVICE_TYPE: 97,\n                INPUT_CLUSTERS: [],\n                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],\n            },\n        },\n    }\n\n    replacement = {\n        ENDPOINTS: {\n            1: {\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.COLOR_TEMPERATURE_LIGHT,\n                INPUT_CLUSTERS: [\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    Scenes.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    LidlCCTColorCluster,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],\n            },\n            242: {\n                PROFILE_ID: 41440,\n                DEVICE_TYPE: 97,\n                INPUT_CLUSTERS: [],\n                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],\n            },\n        }\n    }\n", "path": "zhaquirks/lidl/cct.py"}], "after_files": [{"content": "\"\"\"Quirk for LIDL CCT bulb.\"\"\"\nfrom zigpy.profiles import zha\nfrom zigpy.quirks import CustomCluster, CustomDevice\nfrom zigpy.zcl.clusters.general import (\n    Basic,\n    GreenPowerProxy,\n    Groups,\n    Identify,\n    LevelControl,\n    OnOff,\n    Ota,\n    Scenes,\n    Time,\n)\nfrom zigpy.zcl.clusters.lighting import Color\nfrom zigpy.zcl.clusters.lightlink import LightLink\n\nfrom zhaquirks.const import (\n    DEVICE_TYPE,\n    ENDPOINTS,\n    INPUT_CLUSTERS,\n    MODELS_INFO,\n    OUTPUT_CLUSTERS,\n    PROFILE_ID,\n)\n\n\nclass LidlCCTColorCluster(CustomCluster, Color):\n    \"\"\"Lidl CCT Lighting custom cluster.\"\"\"\n\n    # Remove RGB color wheel for CCT Lighting: only expose color temperature\n    # LIDL bulbs do not correctly report this attribute (comes back as None in Home Assistant)\n    _CONSTANT_ATTRIBUTES = {0x400A: 16}\n\n\nclass CCTLight(CustomDevice):\n    \"\"\"Lidl CCT Lighting device.\"\"\"\n\n    signature = {\n        MODELS_INFO: [\n            (\"_TZ3000_49qchf10\", \"TS0502A\"),\n            (\"_TZ3000_oborybow\", \"TS0502A\"),\n            (\"_TZ3000_9evm3otq\", \"TS0502A\"),\n            (\"_TZ3000_rylaozuc\", \"TS0502A\"),\n            (\"_TZ3000_el5kt5im\", \"TS0502A\"),\n            (\"_TZ3000_oh7jddmx\", \"TS0502A\"),\n        ],\n        ENDPOINTS: {\n            1: {\n                # <SimpleDescriptor endpoint=1 profile=260 device_type=268\n                # device_version=1\n                # input_clusters=[0, 3, 4, 5, 6, 8, 768, 4096]\n                # output_clusters=[10, 25]\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.COLOR_TEMPERATURE_LIGHT,\n                INPUT_CLUSTERS: [\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    Scenes.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    Color.cluster_id,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],\n            },\n            242: {\n                # <SimpleDescriptor endpoint=242 profile=41440 device_type=97\n                # device_version=0\n                # input_clusters=[]\n                # output_clusters=[33]\n                PROFILE_ID: 41440,\n                DEVICE_TYPE: 97,\n                INPUT_CLUSTERS: [],\n                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],\n            },\n        },\n    }\n\n    replacement = {\n        ENDPOINTS: {\n            1: {\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.COLOR_TEMPERATURE_LIGHT,\n                INPUT_CLUSTERS: [\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    Scenes.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    LidlCCTColorCluster,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],\n            },\n            242: {\n                PROFILE_ID: 41440,\n                DEVICE_TYPE: 97,\n                INPUT_CLUSTERS: [],\n                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],\n            },\n        }\n    }\n", "path": "zhaquirks/lidl/cct.py"}]}