Reports "joining"

Hello!

My device reports attributes from on/off, level control and color control clusters (once something is changed and periodically).
The reports are sent 1 per cluster as the command requires clusterId.

It leads to publishing MQTT topics like “state: ON, brightness: 0” after the state ON is reported even thought the current brightness is already 123 e.g…
The situation “is fixed” after reporting the actual brightness - the new topic like “state: ON, brightness: 123” is published almost immediately, at the same time it looks confusing at least in logs.

Could you please advice me whether there is a way how to “join” the reports?

Should I do it on the device side like it’s done in ZigUP project, where the author report everything under OnOff cluster and then parse it in in converters?

Or there is another way how deal with it on zigbee2mqtt side, i.e. don’t publish MQTT topics after each report but “trigger” them somehow?

Thank you in advance!