Причина, по которой у нас есть правила, заключается в том, что вы должны подумать, прежде чем их нарушать.
То есть: нет ничего плохого в использовании одной и той же ViewModel для двух похожих видов. Вы должны быть очень осторожны, чтобы ваши два представления не расходились, оставляя вас с моделью представления, которая пытается сделать две разные вещи.
Вот почему рекомендуется иметь одну модель представления для каждого представления. Несмотря на то, что это может привести к дублированию, это в конечном итоге облегчит поддержание представлений.
Что касается дублирования, нет ничего плохого в классах viewmodel, которые имеют общий базовый класс.