Files
Nexus/docs/changelog/2026-06-02-push-refactor-B0-B1.md
T
2026-07-08 22:31:31 +08:00

1.5 KiB
Raw Blame History

推送页重构 Batch 0 + Batch 1

日期: 2026-06-02

变更摘要

  • B0(后端热修复):修复推送历史无法落库终态、rsync 统计未写入、重试误判成功、max_retries 默认值。
  • B1(前端 Critical:合并进度 UI、修复全选/预览/WS 字段映射、取消状态、表单校验与重入保护。

动机

推送页存在 S1 级缺陷(sync_log_repo.update 缺失导致历史永远 running)及多处前后端契约不一致;按设计文档分批先交付 B0+B1。

涉及文件

  • server/infrastructure/database/sync_log_repo.py
  • server/application/services/sync_engine_v2.py
  • server/background/retry_runner.py
  • server/domain/models/__init__.py
  • frontend/src/pages/PushPage.vue
  • docs/design/plans/2026-06-02-push-refactor.md

迁移 / 重启

  • 需重启 nexus Supervisor 进程以加载后端改动。
  • 前端需重新 npm run build 并部署 web/app/

验证方式

ruff check server/infrastructure/database/sync_log_repo.py server/application/services/sync_engine_v2.py server/background/retry_runner.py
cd frontend && npm run build-only
  • 推送多台服务器:进度列表应出现「同步中」→ 成功/失败,失败行显示 error_message
  • 推送历史新记录 status 应为 success/failed,非长期 running
  • 预览对话框显示文件数与传输大小。

后续批次

  • B2:移除冗余 fallback、M8 get_by_ids、M9 临时目录清理
  • B3:历史表列与 PushItem 类型对齐
  • B4/B5:体验与 composable 拆分