Проверить короткие подходы к ОКС и разветвления на границе спецпрохода
Короткое подключение к собственному ОКС уже поддерживается сервисом, но независимый Python-проверяющий отклонял врезку внутри его отступа. Теперь проверяется фактический прямой подход с единственным пересечением ближайшей границы. Другие компоненты MultiPolygon сохраняют отступ по ДУ каждого ребра, включая общий участок. Для вогнутого ОКС исключение ограничено последним связным интервалом отступа на нормали; ранняя отдельная зона другого крыла не получает исключения. Вместо бинарного поиска по немонотонному расстоянию используются пересечения прямой с полосами и кругами граничных отрезков.
Добавлены 7 реальных HTTP-сцен: пять коротких подходов (обычный, вогнутый, составной ОКС, стена со стороны двора, поворот/перенос) и две камеры разветвления ровно на конце полного спецпрохода дороги/трамвая. Литеральные длины и цены заданы независимо. Ещё 7 мутаций реальных ответов проверяют ожидаемый отказ на излом; длины и стоимость пересчитываются.
Корпус увеличен до 166 входов (92 + 16 + 58), контроли M4 — до 72. Обновлены связи N08/N21, документация и список 7 дизайнов без исполнительных свидетельств. Полный M4 остаётся INCOMPLETE, product_accepted=false; 90 частично покрытых дизайнов не означают 90 принятых требований. Production Java-код не менялся.
Проверено локально: 58/58 HTTP-сцен препятствий на Java 11 (LOCAL_PROBE, не пакетируемый PASS), 52 теста геометрического оракула, 14 тестов M4, 16 тестов документов, 1129/1129 документных проверок; 7 новых мутаций реальных ответов отклонены с заявленной диагностикой. Дополнительно прошли 30 локальных проверок поворотов/переноса. После уточнения границы исключения повторно проверены все 161 успешный HTTP-вход и 72 контроля на сохранённых ответах (ещё пять входов исходно отклонены импортом). Последняя правка затрагивает только оракул. Linux CI выполняет полный набор и упаковку на одном commit/pipeline/JAR; ожидается завершение нового прогона. Предыдущий pipeline отменён как устаревший.
Целевая ветка — MR !58 (merged): сохраняет отдельный проверяемый diff цепочки !52 (merged)–!58 (merged). Обновления main в этом MR не заявляется. Beads недоступен: отсутствует локальный SSH-ключ профиля trasser-arkadiy-codex; карточка не изменена, инженерная приёмка не имитируется.
Обновление 24.09.2026: по команде Аркадия target изменён на main, Draft снят. Опубликован 90e354c6 с актуальным main. Единственный конфликт каталога разрешён объединением без потерь: 211 регрессий, 16 локальных тестов каталога PASS. Включены исходные изменения !58 (merged), которая пока отдельно не слита; полный CI объединённой версии #10290 должен пройти перед merge. Автослияние включено. https://git.digital08.ru/arkadiy/trasser/-/pipelines/10290 . Исторические локальные измерения выше не заявляются проверкой нового SHA.