6.4 KiB
6.4 KiB
Changelog
1.3.0 — 2026-10-30
- Проверка литературы учитывает доступ к полному тексту без авторизации: вход, подписка, покупка онлайн-доступа и ознакомительный режим отмечаются как причины недоступности.
- Добавлены правила для Лань, Юрайт, Znanium, iBooks, Springer и BOOK.ru с браузерной проверкой видимого содержимого и ограниченными переходами в читатель.
- Причина и подтверждающая цитата доступны рядом с результатом; HTTP 200, аннотация и PDF сами по себе больше не подтверждают доступность полного текста.
- Старые результаты и истёкшие проверки перепроверяются независимо от изменения курса; версия правил и срок кэша предотвращают повторное использование прежних HTTP-оценок.
- Chromium работает в изолированном контейнере с проверкой публичных адресов, ограничениями ресурсов и сохранением двухсекундной паузы между переходами к одному хосту.
- Увеличен таймаут только маршрута /courses для браузерной проверки; причины недоступности адаптированы для мобильных экранов.
1.2.2 — 2026-10-29
- Интервал между запросами к одному хосту установлен в две секунды вместо случайной паузы 3–4 секунды.
1.2.1 — 2026-10-29
- Материалы проверяются последовательно; запросы к одному хосту разделены паузой 3–4 секунды, включая перенаправления.
- Паузы и ограничения общие для ручных и автоматических проверок и сохраняются в PostgreSQL после перезапуска.
- HTTP429/503 учитывают срок Retry-After с минимальной паузой в минуту; HTTP403 приостанавливает обращения на пять минут.
- Пропущенные из-за ограничения ссылки показывают причину и срок паузы; повторные запросы в цикле не выполняются.
- Общий таймаут загрузки увеличен до 30 секунд с учётом пауз на перенаправлениях.
1.2.0 — 2026-10-29
- Хранилище перенесено на PostgreSQL для использования существующего сервера VPS; приложению предназначены отдельная база и роль.
- Добавлено общее редактируемое расписание: ежедневная или еженедельная проверка по московскому времени, выбор режима кэша, включение и отключение.
- Проверки по расписанию выполняются на сервере при закрытом браузере и возобновляются после перезапуска.
- Расписание выключено по умолчанию; изменение или отключение не прерывает уже начатую автоматическую проверку.
- Следующий запуск, пропуск совпавшего запуска и ошибки фоновой проверки отображаются в интерфейсе.
- Расписание и запуск сохраняются атомарно; совпавшие запуски не дублируются, после простоя выполняется один пропущенный запуск.
- При старте приложения одновременно запускаются веб-сервер и worker с общим завершением при сбое одного процесса.
1.1.1 — 2026-10-29
- Ответы 302/304 без материала, включая бинарный Content-Type, отмечаются как требующие ручной проверки.
1.1.0 — 2026-10-29
- Перенесён сервер с Cloudflare Workers/D1 на Node.js24 и постоянную SQLite для VPS.
- Добавлен путь
/coursesдля интерфейса, API и шрифтов; production Origin настроен для miem.space. - DNS-адрес закрепляется в сетевом соединении, включая повторную проверку перенаправлений.
- Добавлены standalone-сборка, непривилегированный Docker runtime, постоянный volume, healthcheck и Nginx-сниппет.
- Сохранение порций и очереди атомарно; добавлены проверки восстановления после ошибки записи, блокировки одновременных порций и Origin за reverse proxy.
1.0.1 — 2026-10-29
- Добавлен общий реестр доступности литературы пяти программ НИУ ВШЭ без регистрации.
- Ручной запуск с продолжением, обход пагинации, чтение основной и дополнительной литературы, включая текстовые URL.
- Сохранение результатов и контрольных сумм курсов; повторное использование неизменившихся курсов и полная проверка без кэша.
- Отдельные причины недоступности, переходы к материалам и исходным курсам, поиск, фильтры и экспорт CSV.
- Явные отметки неполного охвата, JavaScript-заглушек, ограничений доступа и устаревших результатов.