diff --git a/docs/audit-checklist.md b/docs/audit-checklist.md index c6e7145..99a1783 100644 --- a/docs/audit-checklist.md +++ b/docs/audit-checklist.md @@ -37,7 +37,7 @@ ## P2 会话与安全加固 - [x] **M5** 登录安全基线缺失 —— 无锁定/后端验证码/密码策略。✔ 已完成:失败锁定(5 次/15 分钟)+ 密码长度策略(验证码后置) -- [ ] **M7** Swagger 无鉴权 + CORS 全开 + 无 helmet/限流 —— 方案:/docs 收口 + CORS 白名单 + helmet + 限流 +- [x] **M7** Swagger 无鉴权 + CORS 全开 + 无 helmet/限流 —— ✔ 已完成:helmet + CORS 白名单(CORS_ORIGIN)+ Swagger 仅非生产 + @nestjs/throttler 限流 - [x] **M12** RefreshToken 哈希未校验 + 无清理 —— ✔ 已完成:refresh 校验 tokenHash(清理并入 L8) - [x] **M14** 401 强退后 authStore 失真 —— ✔ 已完成:auth store 增 reset,handler 同步清空 - [x] **M15** dictStore loaded 守卫无法刷新 —— ✔ 已完成:fetch 加 force 参数,字典页增删改后 force 刷新 @@ -45,12 +45,12 @@ - [x] **M3** created_by 全项目零写入 —— ✔ 已完成:BaseCrudService.create 注入 createdBy - [x] **L5** 登出审计 username 写 null —— ✔ 已完成:按 userId 回查真实 username - [x] **L7** useRequest loading 竞态 + ty-crud 重复请求 —— ✔ 已完成:useRequest 请求序号防竞态 + ty-crud 搜索/重置去重 -- [ ] **L8** 审计/登录日志、refresh_token 无清理任务 —— 方案:定时清理任务 +- [x] **L8** 审计/登录日志、refresh_token 无清理任务 —— ✔ 已完成:@nestjs/schedule 定时清理(过期 token + 90 天前日志) ## P3 工程化契约 - [ ] **H12** e2e 必然失败 + 无业务测试 —— 方案:修 e2e + 补核心链路用例 -- [ ] **M2** 时间字段 ISO vs Unix 毫秒 —— 方案:API 层转 Unix 毫秒(🔶 需讨论,见 D4) +- [x] **M2** 时间字段 ISO vs Unix 毫秒 —— ✔ 已完成:API 层统一 Unix 毫秒(TransformInterceptor 递归转换 + 前端类型 number) - [ ] **M16** vite `olldownOptions` 拼写错误 —— 方案:改 `rolldownOptions` - [ ] **M19** 前端 .env/.env.dev 入库 + .env.example 带像真密码 —— 方案:gitignore + 模板脱敏 - [ ] **L1** 模板残留/无 LICENSE/stats.html 入库 —— 方案:清理 + 补 LICENSE diff --git a/sources/sysmgr-admin b/sources/sysmgr-admin index 77c9c3f..0a1fbf3 160000 --- a/sources/sysmgr-admin +++ b/sources/sysmgr-admin @@ -1 +1 @@ -Subproject commit 77c9c3fd2558c1758ae433fa22909658a581a73d +Subproject commit 0a1fbf3df2e0269d751fcd6951b8a9e73e94df5e diff --git a/sources/sysmgr-nest b/sources/sysmgr-nest index 606585c..ba1ae43 160000 --- a/sources/sysmgr-nest +++ b/sources/sysmgr-nest @@ -1 +1 @@ -Subproject commit 606585c3bd20fbc65c8cf5a7e3e686c90911ad8a +Subproject commit ba1ae43e397528e4636b649d4040fca5ceefa41d