4.4 KiB
2026-04-20 Code Review Task List
P0
- 修复 Windows 下
logger.Sync()对stdout/stderrpipe 的阻塞问题 - 为
internal/pkg/logger补充 Windows 兼容回归测试,确保go test ./...可稳定通过 - 重新执行后端全量测试,确认
internal/pkg/logger修复后无新增失败
P1
-
修复管理端“删除全部未使用兑换码”只处理前 1000 条的问题
-
明确该功能应采用分页循环删除、后端专用批量接口,还是服务端单点清理命令
-
为该流程补充前端测试,覆盖“超过 1000 条未使用兑换码”场景
-
修复
GenerateRedeemCodes的非事务性问题 -
明确幂等语义: 部分成功后应回滚、应返回已生成结果,还是应禁止重放生成
-
为兑换码生成补充失败注入测试,覆盖“部分创建成功 + 重试”路径
-
调整
BatchDeleteRedeemCodes返回语义 -
明确接口是否应该失败即整体失败,或返回
deleted/failed_ids/errors -
同步更新 handler、前端提示文案和现有测试断言
P2
-
修复前端
typecheck失败 -
处理 SoraAdminView.vue 中无效的
Icon名称,或将停用页面排除出编译链 -
修复前端
lint:check失败 -
处理 AppSidebar.spec.ts 中的
no-regex-spaces问题 -
清理当前 lint warning,避免门禁长期失真
P3
- 盘点仍保留 mock 返回的管理接口
- 对每个接口确定策略: 实现、废弃、隐藏入口,或从路由移除
- 为仍需保留的接口补充契约测试,避免占位实现长期留在主分支
Recommended Execution Order
- 先修复
internal/pkg/logger,恢复后端全量测试可信度 - 再修复兑换码两个批量操作问题,避免管理端误操作
- 然后恢复前端
typecheck和lint - 最后清理低优先级占位接口
Assignable Work Packages
Backend
-
BE-LOGGER-001目标: 修复 Windows 下logger.Sync()对 pipestdout/stderr的阻塞 交付物:logger.go修复、回归测试、go test ./internal/pkg/logger通过 验收标准:TestInit_DualOutput和TestInit_CallerShouldPointToCallsite不再超时 -
BE-REDEEM-001目标: 将兑换码生成从“逐条创建 + 部分成功可重试”改为可证明安全的语义 交付物: 服务层实现调整、失败注入测试、幂等路径验证 验收标准: 不存在“部分成功后同 key 重试超量生成”的路径 -
BE-REDEEM-002目标: 重构批量删除返回语义,明确成功、失败和跳过项 交付物: 服务层返回结构、handler 响应调整、测试同步 验收标准: 部分失败时 API 不再伪装为“完全成功”
Frontend
-
FE-REDEEM-001目标: 修复“删除全部未使用兑换码”只删前 1000 条的问题 交付物:RedeemView.vue实现调整、视图测试 验收标准: 超过 1000 条未使用兑换码时仍能完整删除或明确失败 -
FE-REDEEM-002目标: 对齐新的批量删除 API 语义和用户提示 交付物: API 类型、页面提示、异常和部分成功文案 验收标准: 用户能看到准确的删除结果 -
FE-QUALITY-001目标: 恢复typecheck交付物: 修复无效Icon名称或将停用页移出编译链 验收标准:npm run typecheck通过 -
FE-QUALITY-002目标: 恢复lint:check交付物: 修复AppSidebar.spec.ts正则问题并清理 warning 验收标准:npm run lint:check通过
Testing
-
TEST-BE-001目标: 为 logger Windows 行为建立稳定回归测试 交付物: 针对Sync()、stdout/stderr pipe、caller 输出的测试 验收标准: 可在 Windows 环境稳定执行,不依赖 10 分钟超时 -
TEST-BE-002目标: 为兑换码批量生成/删除建立失败路径覆盖 交付物: 服务层和 handler 层测试 验收标准: 覆盖部分成功、失败回滚、结果透出 -
TEST-FE-001目标: 为RedeemView补足批量删除流程测试 交付物: 视图级测试,覆盖分页循环和部分失败提示 验收标准: 批量删除流程不再依赖人工回归 -
TEST-FULL-001目标: 恢复全链路质量门禁 交付物: 后端go test ./...、前端npm run test:run、npm run typecheck、npm run lint:check验收标准: 四项全部通过