Симфониевский AbstactController - боль и мусор и его надо избегать во всех случаях, если вы пишите что-то сложнее бложика.
В идеале - отдельный класс под каждый экшн с __invoke(), далее инжектим либо в конструктор, либо в аргументы через ArgumentResolver, если часто юзается в экшенах.
Я себе представить не могу в уме как будет выглядеть монолит интернет магазин с 40 контроллерами и как минимум по 4 экшена (круд). Точнее могу, Но это по-моему слишком сильно...