Решили: редакторный стенд показывает эффект, ВЫЗЫВАЯ боевой код, а не повторяя его. Для дуги за клинком это оформлено двумя владельцами, которых зовут оба потребителя: SwingArcGeometry (плечо и остриё, вынесено из UnitView) и SwingArcVfx.Tick(deltaTime) (шаг жизни дуги; LateUpdate стал однострочным вызовом).

Почему: стенд вёл дугу своим кодом — своя геометрия, свой угол, своё затухание. Выглядело похоже и потому обмануло: в самоделке не было ни разворота угла через DeltaAngle (без него сектор схлопывается ровно на середине удара), ни клампа по максимальному сектору, ни утекающего хвоста. Дуга «почти такая же» — и неверная, а разбирать такое приходится по кадрам.

Публичный шаг с ЯВНЫМ временем нужен потому, что у редакторного стенда нет кадров: Update там не идёт и идти не должен. Либо эффект умеет шагать по чужому времени, либо любой стенд обречён изображать его поведение сам.

Сказано: «Дуга идет НЕ КОРРЕКТНО. Надо сделать 1 в 1 как в нас в реальности! Не создавай ничего нового, лучше сделай везде 1 источник правды, чтобы не было проблем!!!» (2026-08-06, сессия d760c178). На вопрос «нужен ли новый источник» ответ был: не нужен, он есть — его надо звать.

Грабли: правило «у факта один владелец» легко соблюсти в игре и нарушить в инструменте. Стенд кажется отдельной территорией, где «можно попроще», — а он ровно то место, по которому потом судят о поведении игры. Признак нарушения простой: если в стенде появился расчёт, который что-то ЗНАЧИТ (не кадрирование, не подписи, а логика показа), значит либо он уже есть в игре, либо его туда и надо класть.

Владелец правды: Assets/_Project/Scripts/Presentation/Effects/SwingArcGeometry.cs, SwingArcVfx.Tick.