У разных сущностей разные статусы и могут меняться идентификаторы с числовых на ууид или на составной. Если сущности с ивентсорсингом, то может быть у них будет общий абстрактный предок.
мм... то есть отличие от предложенного мной изначально варианта только в названиях. У нас не некий общий "Проект", а "Детали проекта" и объединено всё общим ProjectId. Так?
Отличие в том что у project details и каком нибудь "такой то тип проекта" (тоже сомнительно что это сущность которая тебе нужна) не будет ссылок друг на друга. Вообще. Все что будет объединять из вместе на уровне модели данных это ,ProjectId
Нельзя агрегатам работать с одними и теми же данными, весь смысл агрегатов в том что бы стэйт для операций разделить так что бы не пересекалось ничего - так проще говорить что мол "инвариант такой-то будет собоюдег"
Я не уверен что для каждого типа проектов нужна своя сущность. Возможно там сущности можно разбить по правилам которые эти разные типы проектов отличают между собой