не обязательно, это могут быть три инварианта за которые отвечает один агрегат, или они распределы между двумя агрегатами, или тремя, это не столь важно. Если они сильно связаны между собой - возможно это один инвариант. Для этого надо анализировать юзкейсы и какие инварианты у тебя требуют имидиейт консистентности.
Тут сложность именно в том что бы определить какие из инвариантов стэйта являются true invariants и на самом деле требуют этой самой immidiate consisntency. ДДД тут учит именно что ты не можешь знать ответ на этот вопрос без колаборации с бизнесом и без построения модели вместе.
Надо ли загоняться и дробить больше - зависит от проекта. В случае маленьких простых проектов где бизнес логика достаточно стабильна - там в целом загоняться не нужно. Есть еще критерии колаборатив не колаборатив. Есть влияние декомпозиции стэйта на масштабирование системы и всякие нефункциональные требования. Еще то же ДДД рекомендует выделять у тебя в проекте кор, супортинг и дженерик домены, имнно с той целью что загоняться в кор стоит а в супортинг уже может и не надо. А дженерик домены - вообще может лучше взять готовый софт и не тратить ресурсы на решение уже решенных проблем.
Можно в целом игнорировать все эти вопросы и смотреть на все это исключительно с позиции всяких там SOLID и/или GRASP, там соблюдение всех принципов (пусть и не полное) всеравно будет направлять к большей декомпозиции стэйта.
Ну или можно продолжать лепить стэйт по принципу "все что про проект в табличку проект, все что про юзера в табличку юзера" и наслаждаться количеству возникающих связей в стэйте. Большинство так живет и "им норм".