AlistGo/alist · error

failed

Error message

failed

What it means

Status maps a provider task state of offlineStatusFailed to status.Err = errors.New(taskStatusText(t)), which for the failed state yields the bare text "failed". Like the 123 Open equivalent, the provider exposes no detailed reason, so the error message is just the state name. Completed and partially-completed states are treated as success; only failed/canceled produce an Err.

Source

Thrown at internal/offline_download/guangyapan/guangyapan.go:121

		return nil, errors.New("GuangYaPan offline download only supports GuangYaPan destination storage")
	}
	tasks, err := g.GetTasks(driver, task.GID)
	if err != nil {
		return nil, err
	}
	status := &tool.Status{
		Status: "the task has been deleted",
	}
	for _, t := range tasks {
		if t.TaskID != task.GID {
			continue
		}
		status.Progress = float64(t.Progress)
		status.TotalBytes = t.TotalSize
		status.Completed = t.Status == offlineStatusCompleted || t.Status == offlineStatusPartiallyCompleted
		status.Status = taskStatusText(t)
		if t.Status == offlineStatusFailed || t.Status == offlineStatusCanceled {
			status.Err = errors.New(status.Status)
		}
		return status, nil
	}
	status.Err = errors.New("the task has been deleted")
	return status, nil
}

func init() {
	tool.Tools.Add(&GuangYaPan{})
}

View on GitHub (pinned to 843d9dc814)

Solutions

  1. Retry the AddURL with a verified-working URL
  2. Check the GuangYaPan provider console/app for the actual task failure reason
  3. Verify account quota and VIP status for offline downloads
Defensive patterns

Strategy: try-catch

Try / catch

// After Status(task):
if st.Err != nil && st.Status == "failed" {
    // provider-side failure, terminal; surface to user, stop polling
    notifyUser(task, "offline download failed on provider side")
    stopPolling(task)
}

Prevention

When it happens

Trigger: Polling GuangYaPan.Status when the provider-side task transitioned to the failed state (t.Status == offlineStatusFailed). Typical provider-side causes: invalid URL, source unreachable, account limits.

Common situations: Dead or region-blocked source links, GuangYaPan account offline-download quota exhausted, or provider-side transcode failure. Users see only "failed" with no diagnostics.

Related errors


AI-assisted analysis of AlistGo/alist@843d9dc814 (2026-08-15). Data as JSON: /api/errors/67c541cabf5d4642. Report an issue: GitHub.