router.navigateTo(Screens.EDIT_PROJECT_SCREEN, EditProjectFragment.args(...
Вот эта строка явно показывает, что абстракция над фрагментами начинает что-то много знать о том куда она идет. Мы говорим, что это скрин, и тут же говорим какой именно скрин. И если придется менять что-то, то придется не только в создании фрагов менять, но и тут.
Это связанность кода.
При использовании Object или маркер интерфейса этого не будет. Будут передаваться данные. И не будет видно кому и куда они пойдут. Если вдруг понадобится открывать другой фраг, то придется только поменять тот фраг и его newInstance метод.