修改视频生成积分不足提示

This commit is contained in:
Azmat@qq.com
2026-08-14 10:50:10 +08:00
parent a7804c0a26
commit 01698e28fc
3 changed files with 13 additions and 0 deletions
@@ -369,6 +369,8 @@ def classify_generation_error(
compact_code = re.sub(r"[^a-z0-9]", "", provider_code.lower())
# 内容审核必须先于 HTTP 403 判断:部分供应商会以 403 返回 policy violation。
if _contains(signal, "insufficient credit", "余额不足", "额度不足", "credit limit exceeded"):
return _build_error("user_credit_insufficient", operation, reference_id=reference_id)
if _contains(signal, "moderation_blocked", "safety_violation", "safety system", "content_policy", "policyviolation", "sensitivecontentdetected"):
return _build_error("content_rejected", operation, reference_id=reference_id)
if (
@@ -78,6 +78,15 @@ class GenerationErrorClassifierTests(SimpleTestCase):
self.assertEqual(error.code, "user_credit_insufficient")
self.assertEqual(error.action, "recharge")
def test_insufficient_credit_is_detected_without_manual_internal_kind(self):
error = classify_generation_error(
ValueError("insufficient credit"),
operation="video_generate",
)
self.assertEqual(error.code, "user_credit_insufficient")
self.assertEqual(error.action, "recharge")
self.assertIn("积分不足", error.fallback_message)
def test_moderation_takes_precedence_over_403(self):
error = classify_generation_error(
_http_error(403, "PolicyViolation", "safety_violation"),