Решили: площадка приводит мир к бою САМА, по виду мероприятия: расстановка видит
ActivityKind.ProvingGrounds и входит в venue в своём Start(), сразу после применения состава,
приехавшего с входом. Интент «включи площадку» из GameFlow удалён совсем.
Сказано: «Bones - почему-то все начниает работать лишь когда я нажимаю что-то в табе. Чет у тебя инициализация поехала. До этого момента вижу лишь UI» (02.08.2026, сессия f24f0cc4).
Почему: интент публиковался в момент открытия площадки, а расстановка рождается ВМЕСТЕ с ней и подписывается в фазе Startup — то есть позже. Первый интент терялся, а таб «Бой» публиковал тот же интент повторно, и второй уже доходил. Со стороны это выглядело как «арена появляется от нажатия в табе».
Инвариант, который теперь держит код: состояние места — следствие ВИДА мероприятия, а не внешнего сообщения. Кто открыл площадку, тот уже всё сказал видом; отдельный интент после этого — второй владелец одного факта.
Грабли (третий случай за день, один и тот же класс): сообщение, отправленное адресату, который
рождается вместе с заказом, теряется молча. Сегодня так терялись: интент серой зоны при входе через
меню, заказ состава команды bones и вот этот интент. Признак один и тот же — «работает со второго
раза» или «работает после нажатия чего-нибудь ещё». Мёртвая строка публикации при этом хуже
отсутствующей: она читается как рабочая.
Владелец правды: Game/DeploymentController.Start, Game/Services/GameFlow.ShowProvingGroundsAsync.