Есть такая обвертка в Bootstrap.php :
$container->setSingleton(Queue::class, static function () {
return Yii::$app->queue;
});
Если выполнить код, то упадет с 500-й ошибкой, что Yii::$app->queue is null;
Если поставить брекпоинт только на строчке return ... , то мы увидим, что Yii::$app->queue действительно null и получаем 500-ю.
Если поставить брекпоинт на строчкe $container, то мы видим, что Yii::$app->queue не пустой и (!!!) программа неожиданно далее выполняется без падения, все отрабатывает.
Но! Если поставить брекпоинт на $container и на return, то мы увидим что Yii::$app->queue в return стал не пустым и так же все отрабатывает.
Это что корпускулярный-волновой дуализм?))
Причем выше таких обверток для компонентов несколько, но такое поведение только у этого. Месторасположение не влияет, перенос в main.php тоже. Просто вызов Yii::$app->queue вместо DI в том месте программы - отлично работает.