Проблема была из-за конфликта ролей. В двух местах использовалось Qt::UserRole+1