fix(runtime-fallback): classify localized balance failures
This commit is contained in:
@@ -97,6 +97,13 @@ export function extractErrorName(error: unknown): string | undefined {
|
||||
return undefined
|
||||
}
|
||||
|
||||
function isLocalizedQuotaExhaustionMessage(message: string): boolean {
|
||||
return (
|
||||
(/预扣费额度失败/i.test(message) && /用户剩余额度/i.test(message)) ||
|
||||
(/用户剩余额度/i.test(message) && /需要预扣费额度/i.test(message))
|
||||
)
|
||||
}
|
||||
|
||||
export function classifyErrorType(error: unknown): string | undefined {
|
||||
const message = getErrorMessage(error)
|
||||
const errorName = extractErrorName(error)?.toLowerCase()
|
||||
@@ -135,7 +142,8 @@ export function classifyErrorType(error: unknown): string | undefined {
|
||||
/out\s+of\s+credits?/i.test(message) ||
|
||||
/payment.?required/i.test(message) ||
|
||||
/usage\s+limit/i.test(message) ||
|
||||
/credit\s+balance.*too\s+low/i.test(message)
|
||||
/credit\s+balance.*too\s+low/i.test(message) ||
|
||||
isLocalizedQuotaExhaustionMessage(message)
|
||||
) {
|
||||
return "quota_exceeded"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user