Слияние: Defer отклоняет catched, снято мёртвое ребро (T3)
This commit is contained in:
@@ -550,6 +550,12 @@ func (w *Worker) Defer(ctx context.Context, id string) (err error) {
|
||||
if d.State.IsTerminal() {
|
||||
return fmt.Errorf("defer: download %s is terminal (%s): %w", id, d.State, ErrConflict)
|
||||
}
|
||||
// Пре-источниковое catched (торрент ещё не добавлен в qBittorrent) откладывать
|
||||
// нечего: задача не дошла до ревью, а catched → deferred увёл бы её в лимбо —
|
||||
// processCatched листает только catched и больше её не подхватит (MAJOR-6).
|
||||
if d.State == store.StateCatched {
|
||||
return fmt.Errorf("defer: источник ещё не добавлен в qBittorrent (%s), отложить можно после добавления: %w", d.State, ErrConflict)
|
||||
}
|
||||
ctx = w.scoped(ctx, capReview, id, d.PrimaryInfohash())
|
||||
w.transition(ctx, *d, store.StateDeferred, "", "")
|
||||
return nil
|
||||
|
||||
Reference in New Issue
Block a user