Compound meshing feature creates duplicate entity tags in physical groups
Gmsh's compound meshing feature with gmsh::option::setNumber("Mesh.CompoundClassify", 0) replaces entity references in physical groups to the newly created compound surface. When multiple entities from that same physical group are used in the compound, this results in duplicate entity references in the physical groups. Any function that references all of the physical group then returns duplicates, such as getNodesForPhysicalGroup(). The only way to address this currently seems to be to iterate through all impacted physical groups, grabbing their entity tags, determining the unique tags, then creating new physical groups with the unique tags, and removing the original physical groups.
It might be nice to add the ability to selectively remove entities from physical groups, or remove duplicate entity tags from physical groups, instead of requiring that an entirely new physical group be created.
I realise that the current behaviour is probably how Gmsh's compound meshing feature provides a map between the entities used in the compound and the newly created entity, and therefore not allowing it to create duplicate physical group entries in the first place is probably not a good idea.