Инбокс Tududi разгружен: четыре открытые задачи проекта оформлены файлами в docs/backlog и помечены выполненными в Tududi. - режиссёр в блоке «Распознано как» на странице загрузки (средний); - карточка информации о торренте вылезает за экран на мобильном (средний); - сигнал Jellyfin после отката и удаления файлов (средний); - кнопки выглядят как кнопки: btn-ghost и рассогласование весов (низкий). Каждая задача проверена по коду: все четыре актуальны, ни одну не закрыли прошлые коммиты. В телах — точки правки, развилки и нужные дельты спек. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3.4 KiB
Карточка информации о торренте вылезает за границу экрана на мобильном
Приоритет: средний
На узком экране блок «Информация о торренте» на /download/{id} выталкивает
страницу за вьюпорт — появляется горизонтальный скролл всей страницы.
Причина
Grid-blowout на .kv из-за неразрывного infohash:
web/templates/partials/download_main.html:83-86—<dl class="kv">с<dd class="mono">{{.}}</dd>для каждого инфохэша.web/static/css/jellybit.css:448-451—.kv{grid-template-columns:auto 1fr}, у.kv ddнетoverflow-wrap/word-break/min-width:0. Трек1fr=minmax(auto,1fr), его автоминимум = min-content = весь 40-символьный хэш.
Арифметика на 360px: доступно ≈302px, требуется ≈380px (dt «infohash» nowrap
≈52px + gap 16px + хэш ≈312px) → переполнение ~78px. overflow-x:hidden на
body/html нигде нет, поэтому блок физически ломает страницу.
Недавние коммиты про ellipsis (44c5952 — только .btn-file) и .type-ico
(3f80d36) этот блок не трогали.
Что уже защищено (не виновники)
jellybit.css:283-285—.src-full{word-break:break-all}→ magnet уже чинится.jellybit.css:365-366—.table-wrap{overflow-x:auto}+table.tbl{min-width:560px}→ таблица раскладки скроллится внутри себя. Страницу не ломает, но 560px принудительного горизонтального скролла на мобильном — отдельная заноза..fname/.link-to(:374,:378-379),.card-title(:205),.review-title(:298) —word-breakесть.
Развилки
- (а) точечно:
.kv dd{overflow-wrap:anywhere;min-width:0}+.kv dd.mono{word-break:break-all}. - (б) в медиа-запросе перевести
.kvв одну колонку (grid-template-columns:1fr,dd{text-align:left}) — заодно снимает проблемуdt{white-space:nowrap}.
Учесть: .kv используется и в блоке «Распознано как»
(download_main.html:34-43) — правка затронет оба, то есть чинится и потенциально
длинный RecTitle. Страховку body{overflow-x:hidden} как единственную меру не
брать — маскирует, а не лечит.
Мобильных стилей почти нет: единственный @media (max-width:640px) —
jellybit.css:477-492 (14 правил), ни .kv, ни .table-wrap в нём не упомянуты.
Спеки
openspec/specs/web-ui/spec.md:237-247 («Блок информации о торренте») требований
к адаптивности не содержит → либо чистый bugfix, либо дельта с требованием
переноса длинных значений.
Связано: web-ui-pwa (крупная переделка, этот фикс — точечный).