Skip to content

fix(offline_download): handle unknown-size offline download tasks#2622

Draft
kobe-koto wants to merge 1 commit into
OpenListTeam:mainfrom
kobe-koto:main
Draft

fix(offline_download): handle unknown-size offline download tasks#2622
kobe-koto wants to merge 1 commit into
OpenListTeam:mainfrom
kobe-koto:main

Conversation

@kobe-koto

@kobe-koto kobe-koto commented Jun 15, 2026

Copy link
Copy Markdown

Summary / 摘要

  • 修复 Aria2/qBittorrent 在 total_bytes = 0 时计算出非有限进度,导致任务接口 JSON 编码失败并返回空 body 的问题。

  • 修复 SimpleHttp 普通下载在响应缺少 Content-Length 时,任务完成后不返回 total_bytes、进度不显示 100% 的问题。

  • 修复 Download stream direct upload 模式下远端大小未知时,上传完成后未把实际大小回填到 transfer task 和父 offline download task的问题。

  • 在任务 API 响应层兜底清理 Inf progress,避免单个异常任务影响整个任务列表接口。

  • This PR has breaking changes.
    / 此 PR 包含破坏性变更。

  • This PR changes public API, config, storage format, or migration behavior.
    / 此 PR 修改了公开 API、配置、存储格式或迁移行为。

  • This PR requires corresponding changes in related repositories.
    / 此 PR 需要关联仓库同步修改。

Testing / 测试

  • go test ./...
  • Manual test / 手动测试:
    在 Web 前端使用 Aria2 和 Simple HTTP (Download stream direct upload 和其他任意 policy) 作为后端下载一不返回 HEAD 或 HEAD 中不返回有效 Content-Length 的链接,在 /@manage/tasks/offline_download 中观察是否能渲染正在下载中的任务,以及下载完成后该任务是否返回有效 total bytes.

Checklist / 检查清单

  • I have read CONTRIBUTING.
    / 我已阅读 CONTRIBUTING
  • I confirm this contribution follows the repository license, contribution policy, and code of conduct.
    / 我确认此贡献符合仓库许可证、贡献规范和行为准则。
  • I have formatted the changed code with gofmt, go fmt, or prettier where applicable.
    / 我已按适用情况使用 gofmtgo fmtprettier 格式化变更代码。
  • I have requested review from relevant maintainers or code owners where applicable.
    / 我已在适用情况下请求相关维护者或代码所有者审查。

AI Disclosure / AI 使用声明

  • This PR includes AI-assisted content.
    / 此 PR 包含 AI 辅助内容。

Tools used / 使用工具:

  • ChatGPT
  • Codex
  • GitHub Copilot
  • Claude
  • Gemini
  • Other (please specify) / 其他(请注明):

Usage scope / 使用范围:

  • Code generation / 代码生成
  • Refactoring / 重构
  • Documentation / 文档
  • Tests / 测试
  • Translation / 翻译
  • Review assistance / 审查辅助
  • I have reviewed and validated all AI-assisted content included in this PR.
    / 我已审核并验证此 PR 中的所有 AI 辅助内容。
  • I have ensured that all AI-assisted commits include Co-Authored-By attribution.
    / 我已确保所有 AI 辅助提交都包含 Co-Authored-By 归属信息。
  • I can reproduce all AI-assisted content included in this PR without any AI tools.
    / 我可以在没有任何 AI 工具的情况下重现此 PR 中包含的所有 AI 辅助内容。

@jyxjjj jyxjjj added the invalid Invalid Content/Cannot Reproduce label Jun 15, 2026
@jyxjjj

jyxjjj commented Jun 15, 2026

Copy link
Copy Markdown
Member

模板

@jyxjjj jyxjjj marked this pull request as draft June 15, 2026 23:32
@kobe-koto kobe-koto changed the title fix: handle unknown-size offline download tasks fix(offline_download): handle unknown-size offline download tasks Jun 16, 2026
@kobe-koto

Copy link
Copy Markdown
Author

已按模板更新 pr body 和标题

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

invalid Invalid Content/Cannot Reproduce

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants