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

38 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 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 и модель данных не меняются.