если ты правило не понимаешь - можешь спросить да, но смысл в том что если у тебя есть 2-3 способа сделать одно и то же для этого вопервых должно быть четкое обоснование а во вторых должен быть понятный алгоритм куда тебе идти
тут помогают всякие дизайн ревью и т.д. немного + парное программирование, но сложность обычно в том что "правил нет" или "они только в головах пары синьеров"
скажем "всегда юзайте uuid в качестве ключа и всегда передавайте этот uuid с клиентской стороны" + пара исключений вполне норм правило на проекте если есть обоснование
uuid имхо нужно использовать для распределенных систем которые ведут параллельные списки записей с синхронизацией между собой у примеру если взять адресную таблицу ФИАС из налоговой (у них везде uuid) то разные системы могут однозначно идентифицировать территорию и хранить без привязки к численным идентификаторам