agent-mp 0.5.9 → 0.5.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/engine.js +4 -0
- package/dist/utils/qwen-auth.js +22 -0
- package/package.json +1 -1
package/dist/core/engine.js
CHANGED
|
@@ -545,6 +545,10 @@ INSTRUCCIONES:
|
|
|
545
545
|
log.warn(`${cliName} session expired — using fallback`);
|
|
546
546
|
return null;
|
|
547
547
|
}
|
|
548
|
+
if (err.message?.startsWith('QWEN_QUOTA_EXCEEDED')) {
|
|
549
|
+
log.warn(`${cliName} quota exhausted — using fallback`);
|
|
550
|
+
return null;
|
|
551
|
+
}
|
|
548
552
|
log.warn(`${cliName} direct API call failed: ${err.message}`);
|
|
549
553
|
return null;
|
|
550
554
|
}
|
package/dist/utils/qwen-auth.js
CHANGED
|
@@ -462,6 +462,28 @@ export async function qwenUsage(credsPath) {
|
|
|
462
462
|
return { ok: true, token, model: 'coder-model' };
|
|
463
463
|
}
|
|
464
464
|
catch (err) {
|
|
465
|
+
// If auth failed, try refresh even if expiresAt hasn't passed yet
|
|
466
|
+
if (err.message?.startsWith('QWEN_AUTH_EXPIRED') && token.refreshToken) {
|
|
467
|
+
const refreshed = await doRefreshToken(token.refreshToken);
|
|
468
|
+
if (refreshed) {
|
|
469
|
+
token = refreshed;
|
|
470
|
+
if (!credsPath)
|
|
471
|
+
await saveToken(refreshed);
|
|
472
|
+
else
|
|
473
|
+
await fs.writeFile(credsPath, JSON.stringify(refreshed, null, 2), 'utf-8');
|
|
474
|
+
// Retry with new token
|
|
475
|
+
try {
|
|
476
|
+
await callQwenAPIWithToken(refreshed, 'ping', 'coder-model');
|
|
477
|
+
return { ok: true, token: refreshed, model: 'coder-model' };
|
|
478
|
+
}
|
|
479
|
+
catch (err2) {
|
|
480
|
+
if (err2.message?.startsWith('QWEN_QUOTA_EXCEEDED')) {
|
|
481
|
+
return { ok: false, token: refreshed, error: 'Daily quota exhausted — wait or --login with different account' };
|
|
482
|
+
}
|
|
483
|
+
return { ok: false, token: refreshed, error: err2.message };
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
}
|
|
465
487
|
if (err.message?.startsWith('QWEN_QUOTA_EXCEEDED')) {
|
|
466
488
|
return { ok: false, token, error: 'Daily quota exhausted — wait or --login with different account' };
|
|
467
489
|
}
|