Disable Item Duplication and Copying ASAP
As a general rule, duplication / copying is a bad idea.
Bugs' genitals are called copy & paste. That's how they reproduce. Always read what you copy, always audit what you import. Bugs take shelter in complexity. "Magic" is fine in my dependency but not in my code.
Where Item Duplication / Copying Gets Chaotic
Things get complicated when you duplicate / copy items that have renderings with datasources. Datasource links are not updated to point to the new item(s). Most content authors are not aware of this fact, and they will begin to mistakenly make edits to the original datasource items instead of the new ones.
Another facet of complexity gets added when you copy items that were based on a branch template, or if you copy items that have numerous descendants with renderings and datasources.
I see two solutions.
- Disable duplication entirely. Only admin should be able to copy items.
- Add custom handling for item duplication.