test: P3-1 第二十一波 JWT+Password委托层单元测试 24个 #727

Merged
xiaoxia merged 9 commits from feat/p3-1-auth-handlers-tests into develop 2026-07-23 09:56:48 +08:00
Owner

变更内容

  • JWTHandler 8个(create/verify/additional_claims/不同密钥/自定义配置)
  • JWT全局配置 2个
  • PasswordHandler 12个(hash/verify/needs_rehash/强度校验/自定义rounds)
  • Password全局配置 3个
  • 合计 24 个测试全部通过

测试结果

24 passed in 6.21s
### 变更内容 - JWTHandler 8个(create/verify/additional_claims/不同密钥/自定义配置) - JWT全局配置 2个 - PasswordHandler 12个(hash/verify/needs_rehash/强度校验/自定义rounds) - Password全局配置 3个 - 合计 **24 个**测试全部通过 ### 测试结果 ``` 24 passed in 6.21s ```
xiaoxia added 5 commits 2026-07-22 17:56:03 +08:00
test: P3-1 第十七波 verification_code_service 单元测试 32个
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 / Validate - Type Check (mypy) (pull_request) Successful in 36s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 40s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 37s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 1m6s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 58s
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 Staging (Watchtower auto-deploy) (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 43s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
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 / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Unit Tests (pull_request) Successful in 52s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 2m12s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 4m14s
CI/CD Pipeline / PR Build Worker Image (pull_request) Failing after 4m14s
AI Code Review / AI Code Review (pull_request) Successful in 4m12s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 19m49s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 1m11s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m12s
a14ce113cf
- generate 参数校验/正常生成/自定义参数 8个
- generate 频控(冷却+每日上限+自定义参数)10个
- verify 参数校验/正常验证/异常场景 11个
- 验证码类型隔离 + 常量校验 3个
- 合计 32 个测试全部通过
test: P3-1 第十八波 jobs应用层用例单元测试 37个
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 16s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 20s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 23s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 48s
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 35s
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 / PR Build Web Image (pull_request) Successful in 49s
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 Staging (Watchtower auto-deploy) (pull_request) Has been skipped
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 / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m4s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 1m10s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Failing after 3m0s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / PR Build Worker Image (pull_request) Failing after 6m51s
AI Code Review / AI Code Review (pull_request) Successful in 7m24s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 25m49s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 1m9s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m16s
7ab6b8a2c2
- CreateJobUseCase 3个
- SubmitJobUseCase 4个
- UpdateJobProgressUseCase 3个
- CompleteJobUseCase 4个
- FailJobUseCase 3个
- RetryJobUseCase 3个
- CancelJobUseCase 5个
- GetJobUseCase 2个
- ListJobsUseCase 5个
- GetJobStatisticsUseCase 1个
- Command对象 4个
- 合计 37 个测试全部通过
test: P3-1 第十九波 generation_tasks应用层用例单元测试 17个
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 32s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 41s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 1m0s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 33s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 43s
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 Staging (Watchtower auto-deploy) (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 51s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 6m7s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 56s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 1m18s
AI Code Review / AI Code Review (pull_request) Successful in 9m42s
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
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 / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 24m42s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 36m14s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 1m7s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m16s
f82527aa82
- CreateGenerationTaskUseCase 3个
- GetGenerationTaskUseCase 2个
- ListUserTasksFilteredUseCase 4个
- RetryGenerationTaskUseCase 5个
- Command/Filter/Result对象 3个
- 合计 17 个测试全部通过
test: P3-1 第二十波 wechat_oauth_service单元测试 28个
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 26s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 40s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 39s
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 / PR Build Web Image (pull_request) Successful in 1m7s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 52s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m6s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m15s
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 Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Unit Tests (pull_request) Successful in 50s
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
AI Code Review / AI Code Review (pull_request) Successful in 6m17s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Failing after 42s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 18m24s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 30m4s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 1m3s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m11s
1219a972f6
- MemoryStateStore 6个
- is_configured 5个
- generate_auth_url 5个
- handle_callback 9个
- WechatUserInfo + 工厂函数 3个
- 合计 28 个测试全部通过
test: P3-1 第二十一波 JWT+Password委托层单元测试 24个
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 19s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 35s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 1m1s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Failing after 27s
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 / Frontend Lint (pull_request) Successful in 42s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 36s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 37s
CI/CD Pipeline / Frontend Unit 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 Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 3m53s
AI Code Review / AI Code Review (pull_request) Successful in 3m15s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 2m35s
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
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 / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 12m18s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 20m18s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 34s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m14s
65e1695531
- JWTHandler 8个(create/verify/additional_claims/不同密钥/自定义配置)
- JWT全局配置 2个
- PasswordHandler 12个(hash/verify/needs_rehash/强度校验/自定义rounds)
- Password全局配置 3个
- 合计 24 个测试全部通过

🚀 预览环境已部署

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

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

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

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

🚀 **预览环境已部署** | 项目 | 详情 | |------|------| | PR号 | #727 | | 预览链接 | [https://pr-727.preview.xiaoxiajianji.com](https://pr-727.preview.xiaoxiajianji.com) | | API环境 | staging | > 💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。 > > 🔄 每次提交新代码后预览环境会自动更新。 > > 🗑️ PR 关闭或合并后,预览环境会自动清理。
xiaoxia added 1 commit 2026-07-22 18:23:54 +08:00
style: auto-fix black formatting
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 39s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 38s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 42s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 1m4s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 46s
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 / PR Build Web Image (pull_request) Successful in 45s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 1m3s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 57s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m8s
AI Code Review / AI Code Review (pull_request) Successful in 5m56s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 8m48s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 18m22s
CI/CD Pipeline / Frontend Unit 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 / Integration Tests (pull_request) Failing after 2m47s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m52s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
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 / Production Browser E2E (pull_request) Has been skipped
8b42caf31c
xiaoxia added 1 commit 2026-07-22 22:31:54 +08:00
style: black + isort format fix
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m0s
AI Code Review / AI Code Review (pull_request) Successful in 5m21s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 1m30s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 4m41s
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 Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 3m1s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m48s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 3m36s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 4m4s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 2m51s
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
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 / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m11s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 8m28s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 4m56s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 17m36s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 24m36s
39d4018f26
xiaoxia added 1 commit 2026-07-23 07:02:45 +08:00
fix(bandit): B017 - 用InvalidTokenError替换宽泛Exception
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 37s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 27s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 1m37s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 26s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 45s
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 / 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 / PR Build API Image (pull_request) Successful in 5m0s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 6m20s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m11s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m4s
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 11m42s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 43s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 46s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m54s
AI Code Review / AI Code Review (pull_request) Successful in 3m8s
b624671384
xiaoxia reviewed 2026-07-23 09:39:36 +08:00
xiaoxia left a comment
Author
Owner

CI全绿,approve

CI全绿,approve
xiaoxia added 1 commit 2026-07-23 09:50:45 +08:00
fix: 用develop版本的pr_auto_scan.py解决冲突
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 21s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 34s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 40s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 51s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 1m30s
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 / PR Build Web Image (pull_request) Successful in 2m2s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 1m9s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 59s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 51s
AI Code Review / AI Code Review (pull_request) Successful in 5m19s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m0s
CI/CD Pipeline / Frontend Unit 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 Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 12m41s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 23s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 2m56s
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
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 / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 17m9s
57b297d1b0
auto-approve-bot approved these changes 2026-07-23 09:56:13 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

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

CI全绿,自动审批通过。

CI全绿,自动审批通过。
xiaoxia merged commit c14fd21eaa into develop 2026-07-23 09:56:48 +08:00
Collaborator

代码审查结果 - PR #727

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

  1. scripts/ci/pr_auto_scan.py 第333行:字段拼写错误导致逻辑失效
    • 问题描述:代码将 pr.get("base", {}).get("ref", "") 修改为 pr.get("base", {}).get("re", "")。Gitea/GitHub API 中目标分支引用的字段名为 ref,此处拼写错误导致 base_ref 始终为空字符串。
    • 后果:后续判断 if base_ref != args.base: 将始终为真(除非 args.base 也为空),导致所有 PR 都会被错误地跳过,自动审批和合并逻辑完全失效。

💡 建议(2个可选)

  1. scripts/ci/pr_auto_scan.py 第44-46行:SSL验证被禁用的安全隐患

    • 建议描述api_request 函数中设置了 ctx.verify_mode = ssl.CERT_NONE,这会使脚本容易受到中间人攻击。虽然在内网CI环境可能为了方便自签名证书而这样做,但建议配置正确的CA证书或使用环境变量控制是否跳过验证,而非硬编码禁用。
  2. scripts/ci/pr_auto_scan.py 第139-150行:AI评论解析的正则健壮性不足

    • 建议描述get_ai_review_result 函数中解析“严重问题”数量时,强依赖AI输出的特定格式(如 1. **)。如果AI模型输出格式发生微小变化(例如使用 - 代替 1.),解析将失败导致漏判。建议让AI输出结构化的JSON数据,或增加多种格式的兼容匹配。

格式检查通过 | 逻辑审查需修改 | 性能无明显问题


🤖 由 AI 代码审查机器人自动生成 | 2026-07-23 09:59:10 | 模型:

## 代码审查结果 - PR #727 ### ⚠️ 问题(1个需要修改) 1. **scripts/ci/pr_auto_scan.py 第333行**:字段拼写错误导致逻辑失效 - **问题描述**:代码将 `pr.get("base", {}).get("ref", "")` 修改为 `pr.get("base", {}).get("re", "")`。Gitea/GitHub API 中目标分支引用的字段名为 `ref`,此处拼写错误导致 `base_ref` 始终为空字符串。 - **后果**:后续判断 `if base_ref != args.base:` 将始终为真(除非 `args.base` 也为空),导致所有 PR 都会被错误地跳过,自动审批和合并逻辑完全失效。 ### 💡 建议(2个可选) 1. **scripts/ci/pr_auto_scan.py 第44-46行**:SSL验证被禁用的安全隐患 - **建议描述**:`api_request` 函数中设置了 `ctx.verify_mode = ssl.CERT_NONE`,这会使脚本容易受到中间人攻击。虽然在内网CI环境可能为了方便自签名证书而这样做,但建议配置正确的CA证书或使用环境变量控制是否跳过验证,而非硬编码禁用。 2. **scripts/ci/pr_auto_scan.py 第139-150行**:AI评论解析的正则健壮性不足 - **建议描述**:`get_ai_review_result` 函数中解析“严重问题”数量时,强依赖AI输出的特定格式(如 `1. **`)。如果AI模型输出格式发生微小变化(例如使用 `-` 代替 `1.`),解析将失败导致漏判。建议让AI输出结构化的JSON数据,或增加多种格式的兼容匹配。 --- ✅ 格式检查通过 | ❌ 逻辑审查需修改 | ✅ 性能无明显问题 --- <sub>🤖 由 AI 代码审查机器人自动生成 | 2026-07-23 09:59:10 | 模型: </sub> <!-- AI_CODE_REVIEW_AUTO_COMMENT -->

🗑️ 预览环境已清理

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

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

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