Files
Nexus/docs/design/plans/2026-06-02-push-refactor.md
2026-07-08 22:31:31 +08:00

2.1 KiB
Raw Permalink Blame History

推送页重构 — 分批实施计划

日期: 2026-06-02
设计: docs/design/specs/2026-06-02-push-refactor-design.md (v2.0)

分批总览

批次 名称 范围 状态
B0 后端热修复 S1/S2/S3/S4、C8 running 广播 已完成
B1 前端 Critical C1C6、C7、C9、C10 已完成
B2 性能与数据 M8/M9、M6、PushItem、历史表列 已完成
B3 历史筛选、reconcile API、ZIP 源路径禁用 已完成
B4 体验增强 多机预览、诊断、is_online、列表刷新 已完成
B5 架构拆分 composables + 子组件 已完成
B6 M2 /ws/sync + M9 清理 + 全量预览 见 post-b5 设计 已完成

B0 — 涉及文件

  • server/infrastructure/database/sync_log_repo.py — 新增 update()
  • server/application/services/sync_engine_v2.py--stats、解析统计、running 广播
  • server/background/retry_runner.py — 成功判定逻辑
  • server/domain/models/__init__.pymax_retries 默认 3

B1 — 涉及文件

  • frontend/src/pages/PushPage.vue

B5 — 涉及文件

  • frontend/src/pages/PushPage.vue — 薄编排层(~100 行)
  • frontend/src/composables/push/types.tslabels.tsusePushFormusePushServersusePushProgressusePushPreviewusePushLogsusePushPage
  • frontend/src/components/push/PushZipUploadPushToolbarPushServerGridPushSyncModeCardPushProgressListPushPreviewDialogPushDiagnoseDialogPushHistoryTable

验证

cd frontend && npm run build-only
ruff check server/infrastructure/database/sync_log_repo.py server/application/services/sync_engine_v2.py server/background/retry_runner.py
python -c "from server.infrastructure.database.sync_log_repo import SyncLogRepositoryImpl; assert hasattr(SyncLogRepositoryImpl, 'update')"

回滚

  • B0/B1 均为向后兼容改动,回滚对应文件 git revert 即可;无 DB 迁移(max_retries 仅影响新行默认值)。