- Список: серверные фильтр по группе состояний, поиск и пагинация (GET
f/q/page/all, по 25), сортировка по времени добавления в qBittorrent
(added_on) с фолбеком на created_at и tie-break по id.
- Заголовок загрузки = имя раздачи (display_name) → распознанное название →
усечённый источник; сырой magnet вынесен в блок «Информация о торренте».
- Матч метабазы показан ссылкой на запись (страница загрузки и ревью);
URL берётся у выбранного кандидата либо строится по provider+id и типу.
- Полировка вёрстки; клиентская JS-фильтрация убрана (всё серверное, без JS).
- Миграция 0005 (display_name, source_added_at); воркер однократно
фиксирует source_added_at при поллинге/усыновлении; ER-схема обновлена.
- OpenSpec: дельты влиты в specs/{web-ui,ingest}, change заархивирован.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
12 lines
657 B
SQL
12 lines
657 B
SQL
-- +goose Up
|
|
-- Отображаемое имя раздачи (то, что уходит в qBittorrent как rename) — для
|
|
-- заголовка карточки/страницы в веб-UI. source_added_at — время добавления
|
|
-- торрента в qBittorrent (added_on), базис сортировки списка; nullable, пока
|
|
-- воркер не наблюдал раздачу.
|
|
ALTER TABLE download ADD COLUMN display_name TEXT NOT NULL DEFAULT '';
|
|
ALTER TABLE download ADD COLUMN source_added_at TEXT;
|
|
|
|
-- +goose Down
|
|
ALTER TABLE download DROP COLUMN source_added_at;
|
|
ALTER TABLE download DROP COLUMN display_name;
|