gongxiangp2/docs/deployment-checklist-upload-cleanup-fix.md
chenpei ea9076df45 feat: 实现统一的下载错误处理系统并修复产品全案数据库Schema
- 创建统一的下载错误处理模块 (lib/download-errors.ts)
- 实现13种错误类型分类和中文错误消息
- 后端统一使用 createDownloadError 创建标准化错误响应
- 前端统一使用 parseDownloadError 解析错误并显示
- 修复正式系统数据库Schema,添加产品全案相关字段和表
- 执行数据库迁移:添加 task_no, task_status, task_fetched_at 字段
- 创建 material_assets, api_keys, api_call_logs 表
2026-01-05 17:52:42 +08:00

2.0 KiB
Raw Blame History

上传状态清理修复 - 部署清单

📋 修复内容

  • 导出 generateFileId 函数
  • 在 UploadModal 错误处理中添加状态清理
  • 在 chunkUpload 重试失败时清理状态

✅ 测试状态

  • ESLint 检查通过
  • TypeScript 编译通过
  • 功能验证通过
  • 代码逻辑验证通过

🚀 部署步骤

1. 部署到影子系统(推荐先测试)

.\deploy-local-build.ps1 -Target shadow

验证点:

  • 应用正常启动
  • 可以正常上传文件
  • 模拟错误情况,验证状态清理
  • 检查浏览器控制台日志

2. 部署到正式系统(测试通过后)

.\deploy-local-build.ps1 -Target production

验证点:

  • 应用正常启动
  • 可以正常上传文件
  • 检查现有"上传中"状态的素材
  • 监控错误日志

🔍 部署后验证

1. 功能验证

  • 正常上传小文件(<5MB,不走分片)
  • 正常上传大文件(≥5MB,走分片)
  • 模拟网络错误,验证状态清理

2. 状态检查工具

使用 scripts/check-indexeddb-uploads.html 检查浏览器中的状态:

  • 打开检查工具
  • 查看是否有残留状态
  • 测试清理功能

3. 日志监控

检查应用日志,确认:

  • 正常上传时无错误
  • 错误情况下有清理日志:[UploadModal] 已清理上传状态: file-xxx
  • 无异常错误

📝 回滚方案

如果部署后出现问题,可以:

  1. 使用之前的镜像备份恢复
  2. 或者回滚到上一个版本

⚠️ 注意事项

  1. 状态清理是异步的:清理失败不会影响错误提示
  2. 仅清理分片上传状态:小文件(<5MB)不走分片上传,无需清理
  3. 浏览器环境:IndexedDB 只在浏览器中可用,服务端无法测试

📚 相关文档

  • docs/upload-state-cleanup-fix.md - 修复说明
  • docs/test-report-upload-cleanup-fix.md - 测试报告
  • docs/code-review-upload-state-issues.md - 问题分析