Files
jellybit/docs/specs
avandClaude Opus 4.8 3f1a928000 Единое окно: полное пользовательское удаление загрузки (delete)
Вторая половина «единого окна»: команда «Удалить» снимает наши библиотечные
хардлинки (гард последней копии осознанно выключен, в отличие от Undo) и сносит
раздачу с файлами из qBittorrent (deleteFiles=true) → терминальный deleted.
Доступна из done/orphaned/target_missing, идемпотентна к отсутствующей стороне;
инициатор различается через error_code=user_delete. Подтверждение обязательно:
веб — danger-секция внизу страницы (hx-confirm + details), Telegram — двухшаговый
inline-confirm. qbt.Delete + layout.Remove (unlink без ErrLastCopy, только свои
ссылки под movies/series). Граф переходов не менялся — рёбра уже были.

OpenSpec: state-reconciliation +1 требование; синк workflow.md; беклог закрыт.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-10 12:17:51 +03:00
..

Спецификации

Живые документы о том, как устроена система — целевое и актуальное состояние. В отличие от ADR, спецификации изменяемы: их правят по мере развития проекта и держат в соответствии с кодом. В отличие от черновиков, описывают принятое и реализуемое, а не идеи.

Соглашения

  • Имя файла — kebab-topic.md, без дат (дата живёт в git-истории).
  • Одна спецификация — одна тема.
  • Если решение требует объяснения «почему именно так» с долгим следом — заведи ADR и сошлись на него из спецификации.

Записи

  • architecture.md — общее устройство: компоненты, транспорты, хранилище, раскладка, деплой.
  • workflow.md — жизненный цикл загрузки: машина состояний, переходы, сопоставление состояний qBittorrent.
  • recognition.md — распознавание контента и модель уверенности.
  • review-ux.md — ревью раскладки человеком: UI/UX-сценарии на случай, когда система не уверена.
  • jellyfin-layout.md — конвенции именования файлов Jellyfin, в которые раскладываем.