Мнение автора может не совпадать с мнением редакции
Предыстория
Заказчик пришел к нам на техническую поддержку сайта — оптово-розничный магазин, который был в рабочем состоянии, но не обновлялся несколько лет.
В основе функционала — решения (модули), которые не поддерживаются их разработчиками около пяти лет.
Эти устаревшие решения необходимы для функционирования магазина, но они же работают на старой седьмой версии php, а старая версия блокирует обновления Битрикса, что в свою очередь влияет на безопасность — получается замкнутый круг.
Доработать решения под требования 8 версии php вроде бы самое очевидное решение, но весь магазин и его функционал завязан на этих решениях, сразу сыпятся десятки ошибок.
В таких случаях обычно принимается решение делать новую версию сайта с нуля, чтобы не плодить костыли и не тратить зря время разработки на переписывание чужих модулей.
Но возникает две проблемы:
переделывать с нуля довольно дорого, а ситуация здесь и сейчас в глазах клиента не требует срочного вливания денег, т.к. сайт формально работает (хоть и доработки вносить проблематично)
нет исходного ТЗ, по которому делался сайт. Есть разные части задач, которые удалось скомпилировать в один файл, но в полноценное ТЗ это не складывается. Часть функционала, который есть, заказчик не знает или не помнит достаточно подробно. Но его необходимо сохранить.
Поэтому было принято решение вернуться к варианту с последовательным планомерным устранением ошибок после переключения на php8 на отдельной тестовой площадке.