Files
jellybit/openspec/changes/archive/2026-07-17-2026-07-17-retry-reject-broken-torrent/tasks.md
T

915 B
Raw Blame History

1. Код

  • 1.1 В Worker.Retry заменить ветку alive && classify(state)==classErrored: вместо reAdd=true — отказ ErrConflict с понятным сообщением (починить раздачу recheck в qBittorrent), без изменения состояния и без Add
  • 1.2 reAdd оставить true только когда раздачи нет (!alive)

2. Тесты

  • 2.1 TestRetryRejectsLiveErroredTorrenterror/missingFiles: retry возвращает ErrConflict, состояние failed не тронуто, Add не вызван
  • 2.2 TestRetryReattachesLiveHealthyTorrent — контроль: живой здоровый торрент перецепляется без Add

3. Спека

  • 3.1 MODIFIED-требование в state-reconciliation; openspec validate --strict