fix(quality): classification_status 赋枚举值而非裸字符串 + 仓储层防御 (#2079) #2080

Merged
auto-approve-bot merged 2 commits from fix/quality-classification-status-enum into develop 2026-09-28 01:37:21 +08:00

2 Commits

Author SHA1 Message Date
xiaoxia 66749ea4a5 fix(asset-repo): status/classification_status 赋值防御,兼容裸字符串 (#2079) - create/update 时对 status/classification_status 两处 .value 调用加 hasattr 防御,已经是 str 时直接使用,避免后续再出现同类 str.value 错误
CI/CD Pipeline / Check push changed paths (pull_request) Has been skipped
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
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) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging 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 / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 46s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 50s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m29s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m57s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 3m37s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m48s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 4m11s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 4m40s
AI Code Review / AI Code Review (pull_request) Successful in 6m40s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 9m34s
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 / CI Gate (pull_request) Successful in 2s
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
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 7m21s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 38s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 38s
2026-09-28 01:26:42 +08:00
xiaoxia d6254b8db0 fix(quality): classification_status 赋枚举值而非裸字符串,补 FAILED 分支 (#2079) - 修复 calculate_asset_quality task:99 处 asset.classification_status="completed" 导致 repo.update() 在 .value 处抛 'str' object has no attribute 'value'; 导入 ClassificationStatus 并用 COMPLETED/FAILED 枚举; 分类异常时显式标记 FAILED 避免 PENDING 死循环重试 2026-09-28 01:26:41 +08:00