Files
avandClaude Opus 4.8 9ed732e49e Веб-UI: основной идентификатор карточек — download.id вместо infohash
В карточке списка и шапке /download/{id} показываем и копируем download.id
(ULID) — тот же ключ, что в логах (download_id), удобно грепать. Infohash
остаётся в блоке «Информация о торренте». Поиск по списку расширен: матчит
любой идентификатор (download.id ИЛИ infohash), плюс название/контекст.
Удалены осиротевшие поля Infohash/InfohashShort и хелпер shortenHash.

Дельта web-ui влита в спеки, change заархивирован.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-04 09:47:27 +03:00

2.4 KiB
Raw Permalink Blame History

Why

Веб-UI показывал в карточках (список + шапка страницы просмотра) infohash с кнопкой копирования. Но в логах основной ключ загрузки — download_id (ULID), именно по нему удобно грепать и связывать события; infohash в логах второстепенен. Пользователю нужно копировать из карточки то, что реально ищется в логах.

What Changes

  • В карточке списка и в шапке /download/{id} показываем и копируем download.id (ULID) вместо infohash — как основной идентификатор загрузки.
  • Infohash остаётся видимым только в блоке «Информация о торренте» (без изменений), где ему место рядом с сырым источником.
  • Поиск по списку расширяем: искать можно по любому идентификатору (download.id ИЛИ infohash), плюс прежние название/контекст. Плейсхолдер строки поиска обновлён.

Capabilities

New Capabilities

Modified Capabilities

  • web-ui: основной копируемый идентификатор карточек — download.id, а не infohash (Requirement «Клиентские взаимодействия без сборки» и Scenario копирования); поиск по списку матчит любой идентификатор загрузки (Scenario «Серверный фильтр и поиск»).

Impact

  • Шаблоны: web/templates/index.html, web/templates/download.html.
  • Поиск: internal/store/list.go (в LIKE-условие добавлен download.id).
  • View: internal/httpapi/httpapi.go, internal/httpapi/download.go (удалены осиротевшие поля Infohash/InfohashShort и хелпер shortenHash).
  • Клиент: web/static/js/app.js (комментарий — функция копирования теперь про идентификатор загрузки, не только infohash).
  • Совместимость: чисто презентационно; API-DTO и модель данных не меняются.