refactor(auth): API层目录化拆分(189行→9个单职责文件) #1176

Merged
auto-approve-bot merged 11 commits from refactor/auth-api-directory into develop 2026-07-30 01:29:23 +08:00
Owner

改动说明

api/auth.ts(189行,12个API函数+10个类型)按功能模块拆分为目录结构:

  • auth/types.ts - 所有类型定义
  • auth/user.ts - normalizeUser 工具函数
  • auth/login.ts - 登录/注册/登出/刷新token
  • auth/currentUser.ts - 获取当前用户
  • auth/password.ts - 密码重置
  • auth/email.ts - 邮箱验证
  • auth/wechat.ts - 微信登录
  • auth/contact.ts - 发送验证码/绑定联系方式
  • auth/index.ts - re-export 保持向后兼容

路径不变@/api/auth 仍然有效,所有导出均保持原名。

改动行数

  • 原文件:189行(单文件)
  • 拆分后:9个文件,单文件最大82行(types.ts)
  • 主入口 index.ts:39行

风险

  • 纯结构重构,无逻辑改动
  • index.ts re-export 所有导出,路径向后兼容
## 改动说明 将 `api/auth.ts`(189行,12个API函数+10个类型)按功能模块拆分为目录结构: - `auth/types.ts` - 所有类型定义 - `auth/user.ts` - normalizeUser 工具函数 - `auth/login.ts` - 登录/注册/登出/刷新token - `auth/currentUser.ts` - 获取当前用户 - `auth/password.ts` - 密码重置 - `auth/email.ts` - 邮箱验证 - `auth/wechat.ts` - 微信登录 - `auth/contact.ts` - 发送验证码/绑定联系方式 - `auth/index.ts` - re-export 保持向后兼容 **路径不变**:`@/api/auth` 仍然有效,所有导出均保持原名。 ## 改动行数 - 原文件:189行(单文件) - 拆分后:9个文件,单文件最大82行(types.ts) - 主入口 index.ts:39行 ## 风险 - 纯结构重构,无逻辑改动 - index.ts re-export 所有导出,路径向后兼容
xiaoxia added 10 commits 2026-07-30 00:28:23 +08:00
refactor(auth): remove old auth.ts (moved to auth/ directory)
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 52s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 1m36s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m32s
AI Code Review / AI Code Review (pull_request) Successful in 1m26s
CI/CD Pipeline / PR Build API Image (pull_request) Has been skipped
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m41s
CI/CD Pipeline / PR Build Worker Image (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m15s
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 1m21s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 1m36s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m5s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m45s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 5m36s
CI/CD Pipeline / Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Failing after 6s
08bf93d6ad

🚀 预览环境已部署

项目 详情
PR号 #1176
预览链接 https://pr-1176.preview.xiaoxiajianji.com
API环境 staging

💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。

🔄 每次提交新代码后预览环境会自动更新。

🗑️ PR 关闭或合并后,预览环境会自动清理。

🚀 **预览环境已部署** | 项目 | 详情 | |------|------| | PR号 | #1176 | | 预览链接 | [https://pr-1176.preview.xiaoxiajianji.com](https://pr-1176.preview.xiaoxiajianji.com) | | API环境 | staging | > 💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。 > > 🔄 每次提交新代码后预览环境会自动更新。 > > 🗑️ PR 关闭或合并后,预览环境会自动清理。
auto-approve-bot approved these changes 2026-07-30 00:31:46 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
auto-approve-bot approved these changes 2026-07-30 00:31:46 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
xiaoxia added 1 commit 2026-07-30 00:55:08 +08:00
test(auth): 更新测试文件头注释,适配auth目录化
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1m33s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 2m37s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 2m36s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m26s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
AI Code Review / AI Code Review (pull_request) Successful in 1m46s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m31s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m12s
CI/CD Pipeline / Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Successful in 28s
CI/CD Pipeline / PR Build Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 45s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 6m9s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m38s
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Successful in 17s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 38s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 47s
f50e90c8c4
Collaborator

代码审查结果 - PR #1176

⚠️ 问题(0个需要修改)

💡 建议(0个可选)


格式检查通过 | 逻辑审查通过 | 性能无问题

【阻塞级判定】

  • 是否存在阻塞级问题:否
  • 阻塞级问题数量:0 个

📊 审查概览

  • 整体评价:通过
  • 建议级问题数量:0 个

🔴 阻塞级问题(必须修复)

💡 改进建议(不阻塞合并)

良好实践

  1. 模块化拆分:将原本臃肿的单文件 auth.ts 按功能拆分为 login, password, wechat, types 等模块,提高了代码的可维护性和可读性。
  2. 向后兼容:通过 index.ts 统一导出所有类型和函数,确保了引入路径 @/api/auth 的向后兼容性,降低了重构对其他代码的影响。
  3. 关注点分离:将类型定义 (types.ts) 和工具函数 (user.ts) 独立出来,结构清晰,符合单一职责原则。
  4. 逻辑一致性:重构过程中完整保留了原有的业务逻辑(如 normalizeUser 的处理逻辑、refreshAccessToken 使用裸 axios 的特殊处理),未引入逻辑变更。

🤖 由 AI 代码审查机器人自动生成 | 2026-07-29 16:58:04 | 模型:

## 代码审查结果 - PR #1176 ### ⚠️ 问题(0个需要修改) 无 ### 💡 建议(0个可选) 无 --- ✅ 格式检查通过 | ✅ 逻辑审查通过 | ✅ 性能无问题 ### 【阻塞级判定】 - 是否存在阻塞级问题:否 - 阻塞级问题数量:0 个 ### 📊 审查概览 - 整体评价:通过 - 建议级问题数量:0 个 ### 🔴 阻塞级问题(必须修复) 无 ### 💡 改进建议(不阻塞合并) 无 ### ✅ 良好实践 1. **模块化拆分**:将原本臃肿的单文件 `auth.ts` 按功能拆分为 `login`, `password`, `wechat`, `types` 等模块,提高了代码的可维护性和可读性。 2. **向后兼容**:通过 `index.ts` 统一导出所有类型和函数,确保了引入路径 `@/api/auth` 的向后兼容性,降低了重构对其他代码的影响。 3. **关注点分离**:将类型定义 (`types.ts`) 和工具函数 (`user.ts`) 独立出来,结构清晰,符合单一职责原则。 4. **逻辑一致性**:重构过程中完整保留了原有的业务逻辑(如 `normalizeUser` 的处理逻辑、`refreshAccessToken` 使用裸 axios 的特殊处理),未引入逻辑变更。 --- <sub>🤖 由 AI 代码审查机器人自动生成 | 2026-07-29 16:58:04 | 模型: </sub> <!-- AI_CODE_REVIEW_AUTO_COMMENT -->
auto-approve-bot merged commit 5256bd0d8b into develop 2026-07-30 01:29:23 +08:00
auto-approve-bot deleted branch refactor/auth-api-directory 2026-07-30 01:29:23 +08:00

🗑️ 预览环境已清理

PR #1176 已关闭或合并,对应的预览环境已被清理。

如有需要,可以重新打开 PR 来重新生成预览环境。

🗑️ **预览环境已清理** PR #1176 已关闭或合并,对应的预览环境已被清理。 > 如有需要,可以重新打开 PR 来重新生成预览环境。
Sign in to join this conversation.