Почему сложно понять что куда прилетело? У тебя есть четко определенный тип, под него находится кандидат, если их несколько - ошибка, уточняй который нужен. Все детерминировано
В итоге получается что... Вы ставите кучу аннотаций. Если повезет и звезды сойдутся (утрирую, да) - у вас НИ У ОДНОЙ зависимости не будет параллельных реализаций. Иначе - вы пойдете прописывать ручками там, где реализаций больше одной (что и куда инжектить).