web-ui: добавлена страница группового удаления загрузок
- выбор → поимённое подтверждение → отчёт: пачка до 20 загрузок, гарды входа на обеих границах, потолок времени и остановка после трёх подряд отказов внешнего сервиса - допуск полного удаления сведён в единую точку store.State.CanDelete() — worker, страница загрузки и Telegram больше не держат своих перечней
This commit is contained in:
+3
-2
@@ -32,6 +32,7 @@ REST API работают **без авторизации** осознанно;
|
||||
| Ответы метабаз | HTTP к TMDB/TVDB/TVMaze | канонические названия, из которых тоже строится путь; чистятся наравне с выходом LLM на каждой точке входа в план ([ADR-2026-08-10-sanitize-at-every-entry](adr/ADR-2026-08-10-sanitize-at-every-entry.md)) |
|
||||
| Ответы qBittorrent | HTTP | пути, состояния, размеры |
|
||||
| Запросы веб-UI и REST | LAN | идентификаторы, параметры действий |
|
||||
| Пачка идентификаторов и признак подтверждения на групповом удалении | форма веб-UI | необратимое действие сразу по многим загрузкам; разбор, схлопывание дублей и предел размера стоят на **обеих** границах — подтверждении и исполнении, потому что вторая получает пачку формой заново |
|
||||
|
||||
**Выход LLM не отвечает за безопасность.** Инъекция в промпт считается
|
||||
состоявшейся по умолчанию; защита стоит ниже — на валидации целевого пути.
|
||||
@@ -103,8 +104,8 @@ REST API работают **без авторизации** осознанно;
|
||||
- **Отказ в обслуживании изнутри контура.** Огромная раздача, тысяча файлов,
|
||||
бесконечный ответ LLM — это вопросы устойчивости и ресурсов
|
||||
([architecture.md](architecture.md) → «Эксплуатация»), а не безопасности.
|
||||
Лимита на размер ответа LLM нет — известный пробел
|
||||
([architecture.md](architecture.md) → «Открытые вопросы»).
|
||||
Тело ответа внешнего сервиса при этом читается с пределом: LLM — 8 MiB
|
||||
(`internal/llm`), метабазы — 4 MiB (`internal/metadata`).
|
||||
- **Целостность содержимого медиафайлов.** Что в контейнере mkv — не наша забота.
|
||||
- **Цепочка поставки** — модули Go, базовый образ distroless, плагины тулинга.
|
||||
- **Приватность запросов к внешним сервисам.** Названия раздач уезжают в LLM и
|
||||
|
||||
Reference in New Issue
Block a user