Skip to content

完善下载恢复、通知可靠性与订阅管理 - #1

Open
Green-hats wants to merge 3 commits into
masterfrom
codex/download-reliability-optimizations
Open

Green-hats wants to merge 3 commits into
masterfrom
codex/download-reliability-optimizations

Conversation

@Green-hats

Copy link
Copy Markdown
Owner

改动说明

完善从订阅刷新、云端下载到通知反馈的处理流程。云端任务失败或暂时查不到时保留可恢复状态;切换网盘账号后,旧账号任务暂停处理,避免错误查询、重试或重复下载。

  • 下载:增加手动重试、换源、账号隔离及刷新超时;刷新队列支持分批处理大量订阅,PikPak 共享任务快照,减少重复请求和无变化写盘。
  • 通知:使用有界队列、指数退避与单次请求超时;下载异常触发错误通知,日志页提供发送记录和失败补发。
  • 配置与状态:代理客户端和 RSS/BGM 调度随配置更新;显示当前网盘及检查时间,AI 状态读取最近实际请求或手动测试结果,打开页面不会调用 AI。
  • 缓存与首页:限制缓存容量并定期清理,清空操作覆盖解析、播放和 PikPak 缓存;增加搜索、失败筛选、批量操作、按需分页任务记录和自适应轮询;修复无播出日期的订阅不可见问题。

验证

  • 后端 go vet ./...、go test -race -timeout=120s ./... 通过。
  • 前端 npm run lint、npm run test:coverage 通过(36 项测试)。
  • 前端生产构建及嵌入前端后的 Go 二进制构建通过。
  • 使用隔离配置完成浏览器实测:未定档订阅显示、搜索、任务记录及日志状态页。

验证边界与运行说明

  • 外部服务的自动化测试主要使用模拟服务,尚未完成真实 PikPak 账号及通知渠道的端到端验证。
  • 通知历史与待发送内容保存在内存中,重启后清空;超时后的补发可能产生重复消息,界面已提供确认提示。
  • 旧版未记录账号的下载任务在首次启动时绑定当前配置账号;升级前应确认配置仍对应原任务账号。详细行为见 README。

Batch large refreshes, enforce refresh and cloud task timeouts, cache PikPak lookups, and avoid redundant persistence. Add recovery controls and regression coverage.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant