Centroid can be used to create a unique ID, but you run into issues with the point potentially being placed outside a polygon if it has an unusual shape, hole, or is a multi-part polygon. The labelPoint property for the Geometry() function in arcpy can be used to solve this issue, but a labelPoint function is not available for Arcade. I would like a labelPoint function for Arcade to help calculate unique IDs using attribute rules.
Cheers,
Dale Jackan