zevairouter 1.1.20 → 1.1.21
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/CHANGELOG.md +5 -0
- package/cli/app/.next-cli-build/BUILD_ID +1 -1
- package/cli/app/.next-cli-build/app-path-routes-manifest.json +11 -11
- package/cli/app/.next-cli-build/build-manifest.json +2 -2
- package/cli/app/.next-cli-build/prerender-manifest.json +3 -3
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
- package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
- package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/callback.html +1 -1
- package/cli/app/.next-cli-build/server/app/callback.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/playground.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/playground.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/skills.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/index.html +1 -1
- package/cli/app/.next-cli-build/server/app/index.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/landing.html +1 -1
- package/cli/app/.next-cli-build/server/app/landing.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/login.html +1 -1
- package/cli/app/.next-cli-build/server/app/login.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app-paths-manifest.json +11 -11
- package/cli/app/.next-cli-build/server/chunks/1051.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/1131.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/1350.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/1890.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/3101.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/3949.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/4827.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/5436.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/7319.js +4 -4
- package/cli/app/.next-cli-build/server/chunks/7634.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/8306.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/8895.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/8910.js +1 -1
- package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/pages/404.html +1 -1
- package/cli/app/.next-cli-build/server/pages/500.html +1 -1
- package/cli/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/cli/app/.next-cli-build/static/chunks/{620-87693c86ce52cd6b.js → 620-46dbc702c96915a8.js} +1 -1
- package/cli/app/CHANGELOG.md +5 -0
- package/cli/app/package.json +1 -1
- package/cli/package.json +1 -1
- package/package.json +1 -1
- /package/cli/app/.next-cli-build/static/{d1_y1j8QTrpRMT0feZnO_ → 1SUOdmC5cYVWo8ijpBKlM}/_buildManifest.js +0 -0
- /package/cli/app/.next-cli-build/static/{d1_y1j8QTrpRMT0feZnO_ → 1SUOdmC5cYVWo8ijpBKlM}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=1051,exports.ids=[1051],exports.modules={19225:(a,b,c)=>{a.exports=c(44870)},79761:(a,b,c)=>{c.d(b,{BU:()=>l,hb:()=>k,tH:()=>j});var d=c(40669),e=c(35989),f=c(75434);let g=new Set(["account","provider","egress","integrity"]);function h(a,b="unknown",c=160){return String(a||"").trim().toLowerCase().replace(/[^a-z0-9._:-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,c)||b}function i(a={}){let b=g.has(a.scope)?a.scope:null;if(!b)return null;let c=h((0,d.g2)(h(a.provider)),"unknown-provider",80),f=h(a.accountId||a.connectionId,"unknown-account"),j=h(a.egressId,"direct"),k=(0,e.Nm)(a.modelFamily||a.model);return Object.freeze("account"===b?{scope:b,provider:c,accountId:f}:"provider"===b?{scope:b,provider:c}:"egress"===b?{scope:b,egressId:j}:{scope:b,provider:c,modelFamily:k,egressId:j})}let j=function(a={}){let b="function"==typeof a.now?a.now:Date.now,c="function"==typeof a.onTransition?a.onTransition:()=>{},e=new Map,f=0;function g(a,b,d){c(Object.freeze({type:"circuit",provider:a.dimensions.provider,phase:b,reason:a.dimensions.scope,deadlineMs:a.openUntilMs?Math.max(0,a.openUntilMs-d):0,...a.dimensions.modelFamily?{modelFamily:a.dimensions.modelFamily}:{}}))}function j(a){for(let[b,c]of e)c.failures=c.failures.filter(b=>a-b.atMs<=6e4),"closed"===c.mode&&0===c.failures.length&&a-c.lastTouchedAtMs>18e5&&e.delete(b);let b=[...e.entries()].filter(([,a])=>"closed"===a.mode).sort((a,b)=>a[1].lastTouchedAtMs-b[1].lastTouchedAtMs);for(;b.length>2048;)e.delete(b.shift()[0])}function k(a,c=!1){let d=i(a);if(!d)return null;let f=Object.values(d).join("\x1f"),g=e.get(f);return!g&&c&&(g={dimensions:d,mode:"closed",failures:[],openDurationMs:3e4,openUntilMs:null,probeLeaseId:null,probeSuccesses:0,lastTouchedAtMs:b()},e.set(f,g)),g}function l(a,b){a?.mode==="open"&&b>=a.openUntilMs&&(a.mode="half_open",a.probeLeaseId=null,g(a,"half_open",b))}function m(a,b,c=a.openDurationMs){a.mode="open",a.openDurationMs=Math.min(3e5,Math.max(3e4,c)),a.openUntilMs=b+a.openDurationMs,a.probeLeaseId=null,a.probeSuccesses=0,a.lastTouchedAtMs=b,g(a,"open",b)}return Object.freeze({recordFailure:function(a={}){let c;if(!1===a.evidentiary)return!1;let e=b();j(e);let f=k(a,!0);return!!f&&(l(f,e),"closed"===f.mode)&&(f.failures=f.failures.filter(a=>e-a.atMs<=6e4),f.failures.push(Object.freeze({atMs:e,accountId:h(a.accountId||a.connectionId,"unknown-account"),provider:h((0,d.g2)(h(a.provider)),"unknown-provider",80)})),f.lastTouchedAtMs=e,c=f.failures.length,("integrity"===f.dimensions.scope?c>=1:!(c<5)&&("provider"===f.dimensions.scope?new Set(f.failures.map(a=>a.accountId)).size>=2:"egress"!==f.dimensions.scope||new Set(f.failures.map(a=>a.provider)).size>=2))&&m(f,e),!0)},recordSuccess:function(a={}){let c=b(),d=k(a);return!!d&&(l(d,c),"closed"===d.mode&&(d.failures=[],d.lastTouchedAtMs=c,!0))},getDecision:function(a){let c=b();j(c);let d=i(a),e=k(a);return e?(l(e,c),Object.freeze({...e.dimensions,state:e.mode,openUntilMs:e.openUntilMs,openDurationMs:e.openDurationMs,probeInFlight:!!e.probeLeaseId,consecutiveProbeSuccesses:e.probeSuccesses})):Object.freeze({...d||{scope:null},state:"closed",openUntilMs:null,openDurationMs:3e4,probeInFlight:!1,consecutiveProbeSuccesses:0})},tryAcquireProbe:function(a){let c=b(),d=k(a);return d?(l(d,c),"half_open"!==d.mode)?Object.freeze({acquired:!1,reason:"open"===d.mode?"circuit_open":"circuit_closed"}):d.probeLeaseId?Object.freeze({acquired:!1,reason:"probe_in_flight"}):(d.probeLeaseId=`probe-${c}-${++f}`,d.lastTouchedAtMs=c,Object.freeze({acquired:!0,leaseId:d.probeLeaseId})):Object.freeze({acquired:!1,reason:"circuit_closed"})},releaseProbe:function(a,c={}){let d=b(),e=k(a);if(!e||"half_open"!==e.mode||!e.probeLeaseId||c.leaseId!==e.probeLeaseId)return!1;if(e.probeLeaseId=null,e.lastTouchedAtMs=d,!0===c.cancelled)return!0;if(!0===c.success)return e.probeSuccesses+=1,e.probeSuccesses>=2&&(e.mode="closed",e.failures=[],e.openDurationMs=3e4,e.openUntilMs=null,e.probeLeaseId=null,e.probeSuccesses=0,e.lastTouchedAtMs=d,g(e,"closed",d)),!0;return m(e,d,Math.min(3e5,2*e.openDurationMs)),!0}})}({onTransition:f.cN}),k=j.recordFailure;j.recordSuccess,j.getDecision,j.tryAcquireProbe;let l=j.releaseProbe},80238:(a,b,c)=>{c.d(b,{Pt:()=>D,Tr:()=>E,c1:()=>z,kI:()=>F,uT:()=>y,vk:()=>C});var d=c(89718),e=c(39326),f=c(34938),g=c(3662),h=c(29679),i=c(91254),j=c(75681),k=c(7803),l=c(93930),m=c(79761);let n=Promise.resolve(),o=new Set(["policy_suspended","credential_rejected","reauth_required"]),p=new Set(["authentication","entitlement_or_quota","permission_denied","rate_limited","upstream_transient"]),q=new Set(["not_attempted","succeeded","transient_failed","rejected"]);function r(a,b=200){return null==a||""===a?null:String(a).slice(0,b).replace(/[^a-zA-Z0-9._:/#-]/g,"")||null}function s(a){let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=599?b:null}function t(a,b){let c=a&&"object"==typeof a&&!Array.isArray(a)?a:{},d=Number(b??c.resetsAtMs),e=new Date(d),f=Number.isFinite(d)&&d>0&&Number.isFinite(e.getTime())?e.toISOString():null;return{failureClass:r(c.failureClass,80)?.toLowerCase()||null,providerErrorCode:r(c.providerErrorCode),upstreamRequestId:r(c.upstreamRequestId),failureResetAt:f,authLifecycle:function(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b=q.has(a.refreshOutcome)?a.refreshOutcome:"not_attempted";return{initialStatus:s(a.initialStatus),refreshAttempted:!0===a.refreshAttempted,refreshOutcome:b,retryStatus:s(a.retryStatus)}}(c.authLifecycle)}}function u(a,b){return({policy_suspended:"Kiro reports that this account is suspended or disabled by upstream policy.",credential_rejected:"Kiro rejected the credential after a successful token refresh.",reauth_required:"Kiro rejected the refresh credential; sign in again before re-enabling.",entitlement_or_quota:"Kiro entitlement or quota is temporarily unavailable.",rate_limited:"Kiro rate limit is temporarily exhausted.",authentication:"Kiro authentication is temporarily unavailable.",permission_denied:"Kiro denied this request without confirming an account suspension.",upstream_transient:"Kiro upstream is temporarily unavailable."})[a]||`Kiro upstream request failed with status ${b||"unknown"}.`}function v(a){return"string"!=typeof a?"":a.trim().replace(/^(?:kiro|kr)\//i,"")}function w(a,b){let c=a?.providerSpecificData?.enabledModels;if(!Array.isArray(c)||0===c.length)return!0;let d=v(b);return c.some(a=>v(a)===d)}function x(a){return Object.freeze({...a,supportedModels:Object.freeze([...a.supportedModels||[]]),supportedOperations:Object.freeze([...a.supportedOperations||[]]),capabilities:Object.freeze([...a.capabilities||[]]),quota:a.quota?Object.freeze({...a.quota}):null,circuits:Object.freeze({...a.circuits||{}}),eligibility:Object.freeze({eligible:a.eligibility.eligible,reasons:Object.freeze([...a.eligibility.reasons])})})}async function y(a,b=null,c={}){let e=(0,j.rs)(a),g=Array.isArray(c.allowedConnectionIds)?c.allowedConnectionIds:null;if(!g&&c.apiKey&&(g=await (0,d.ME)(c.apiKey)),j.IS[e]?.noAuth){let a={id:"noauth",provider:e,priority:1,legacyOrder:0,isActive:!0,quarantinedAt:null,reauthRequired:!1,supportedModels:[],supportedOperations:[c.operation||"chat"],capabilities:c.capabilities||[],modelLocked:!1,quota:null,circuits:{},transportAvailable:!1!==c.transportAvailable,outboundAllowed:!1!==c.outboundAllowed,egressId:"direct",health:null,sticky:!1};return a.eligibility=(0,l.Z)(a,{...c,provider:e,model:b,operation:c.operation||"chat",allowedConnectionIds:g,pinnedConnectionId:c.strictPreferred?c.preferredConnectionId:null}),Object.freeze([x(a)])}let[h,i]=await Promise.all([(0,d.getProviderConnections)({provider:e}),(0,d.tV)(e)]),k=new Map(i.map(a=>[a.connectionId,a])),n=Number.isFinite(c.nowMs)?c.nowMs:Date.now(),o=c.circuitRegistry||m.tH;return Object.freeze(h.map((a,d)=>{let h=a.providerSpecificData||{},i=k.get(a.id)||null,j=Date.parse(i?.fetchedAt),m=Number.isFinite(j)&&n-j<=f.JN,p=(0,f.td)(i?.usage,e,b),q=(0,f.yH)(i,n),r=Array.isArray(h.enabledModels)?h.enabledModels.map(a=>v(a)):[],s=h.connectionProxyPoolId||h.proxyPoolId||(h.vercelRelayUrl?"relay":"direct"),t={account:{scope:"account",provider:e,accountId:a.id},provider:{scope:"provider",provider:e},egress:{scope:"egress",egressId:s},integrity:{scope:"integrity",provider:e,model:b,egressId:s}},u=Object.fromEntries(Object.entries(t).map(([a,b])=>[a,o.getDecision(b)])),w=Object.entries(u).filter(([,a])=>"half_open"===a.state),y=Object.values(u).some(a=>"open"===a.state);if(!0===c.acquireCircuitProbes&&!y&&1===w.length){let[a]=w[0],b=o.tryAcquireProbe(t[a]);u[a]={...u[a],probeAcquired:!0===b.acquired,...b.leaseId?{probeLeaseId:b.leaseId}:{}}}let z={id:a.id,provider:e,priority:Number.isFinite(a.priority)?a.priority:999,legacyOrder:d,isActive:!0===a.isActive,quarantinedAt:a.quarantinedAt||null,reauthRequired:"reauth_required"===a.failureClass||"token_expired"===a.autoDisabledReason||"reauth_required"===a.autoDisabledReason,supportedModels:r,supportedOperations:Array.isArray(h.supportedOperations)?h.supportedOperations:[c.operation||"chat"],capabilities:Array.isArray(h.capabilities)?h.capabilities:[],modelLocked:(0,f.Bl)(a,b,e),quota:i?{provenance:m?"fresh":"last_successful",exhausted:!!q,remaining:p>=0?p:null,total:p>=0?100:null,fetchedAtMs:Number.isFinite(j)?j:null,validUntilMs:Number.isFinite(j)?j+f.JN:null,exhaustedUntilMs:q||null}:null,circuits:u,transportAvailable:!1!==c.transportAvailable&&!1!==h.transportAvailable,outboundAllowed:!1!==c.outboundAllowed,egressId:s,health:"unavailable"===a.testStatus||a.lastError?"degraded":"success"===a.testStatus||"connected"===a.testStatus?"healthy":null,sticky:a.consecutiveUseCount>0};return z.eligibility=(0,l.Z)(z,{...c,provider:e,model:b,operation:c.operation||"chat",allowedConnectionIds:g,pinnedConnectionId:c.strictPreferred?c.preferredConnectionId:null,nowMs:n}),x(z)}))}async function z(a,b=null,g=null,l={}){let m,o=b instanceof Set?b:b?new Set([b]):new Set,p=l?.preferredConnectionId||null,q=!!l?.strictPreferred,r=n;n=new Promise(a=>{m=a});try{let b;await r;let m=(0,j.rs)(a);if(j.IS[m]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[m]||{},b=a.rotateStrategy||"none",c=a.proxyPoolId||null;if("none"!==b){let a=(await (0,d.ui)({isActive:!0})).filter(a=>a.proxyUrl).map(a=>a.id);c=(0,e.p)(a,b,m)}let f=await (0,e.B)({proxyPoolId:c||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:f.connectionProxyEnabled,connectionProxyUrl:f.connectionProxyUrl,connectionNoProxy:f.connectionNoProxy,connectionProxyPoolId:f.proxyPoolId||null,vercelRelayUrl:f.vercelRelayUrl||""}}}let n=await (0,d.getProviderConnections)({provider:m,isActive:!0}),s=Array.isArray(l?.allowedConnectionIds)?l.allowedConnectionIds:null;if(!s&&l?.apiKey&&(s=await (0,d.ME)(l.apiKey)),Array.isArray(s)&&s.length>0){let b=new Set(s);n=n.filter(a=>b.has(a.id)),k.debug("AUTH",`${a} | API key scoped to ${n.length} allowed connection(s)`)}k.debug("AUTH",`${a} | total connections: ${n.length}, excludeIds: ${o.size>0?[...o].join(","):"none"}, model: ${g||"any"}`);let t=null;if("kiro"===m&&g)try{t=await (0,h.ED)(g)}catch(a){k.warn("AUTH",`Kiro model support cache unavailable: ${a?.message||a}`)}let u=t?.state==="supported"||t?.state==="unsupported",v={modelUnavailable:!0,provider:m,model:g};if(0===n.length){if(u)return k.warn("AUTH",`${a} | no eligible supporter for ${g}`),v;return k.warn("AUTH",`No credentials for ${a}`),null}let x=n.filter(a=>!a.quarantinedAt),y=new Set,z=new Set,A=!1;if("kiro"===m&&g){let a=x=x.filter(a=>w(a,g)),b=new Set(t?.unsupportedConnectionIds||[]),c=new Set(t?.freshCatalogConnectionIds||[]),d=n.filter(a=>{let c=a?.providerSpecificData?.enabledModels;return Array.isArray(c)&&c.length>0&&w(a,g)&&!b.has(a.id)}).map(a=>a.id),e=new Set([...t?.supportingConnectionIds||[],...d].filter(a=>!b.has(a)));z=new Set([...b,...[...c].filter(a=>!e.has(a))]),x=x.filter(a=>!z.has(a.id)),A=a.length>0&&a.every(a=>z.has(a.id)),e.size>0?(y=e,u=!0):t?.state==="unsupported"&&(x=[])}let B=new Map;if("codebuddy-cn"===m)for(let a of(await (0,d.tV)(m))){let b=(0,f.yH)(a);b&&B.set(a.connectionId,b)}let C=new Map;if("codebuddy-cn"===m)for(let a of n){if(11140!==Number(a.providerErrorCode))continue;let b=(0,f.kJ)(a);b&&C.set(a.id,b)}let D=new Set,E=new Set;if("codex"===m&&g){let a=await (0,d.tV)(m),b=new Map(a.map(a=>[a.connectionId,a]));for(let a of n)(0,f.xB)(a,g,m)&&E.add(a.id),(0,f.N2)(a,g,b.get(a.id),m,{ignoreProbe:!0})&&!E.has(a.id)&&D.add(a.id)}if("codebuddy"===m||"codebuddy-cn"===m)for(let a of n)(0,i.hN)(a)&&(0,f.xB)(a,null,m)&&E.add(a.id);let F=a=>C.has(a.id)||("codebuddy"===m||"codebuddy-cn"===m)&&(0,i.hN)(a)&&E.has(a.id)||(0,f.Bl)(a,g,m)&&!D.has(a.id),G=a=>E.has(a.id)?"codebuddy"===m||"codebuddy-cn"===m?a[(0,f.UM)(null,m)]:new Date(Date.now()+1e3).toISOString():[(0,f.V0)(a,g,m),C.get(a.id)].filter(Boolean).sort().at(-1)||null,H=x.filter(a=>!(o.has(a.id)||F(a)||B.has(a.id))),I=H,J=!1;if("kiro"===m&&g&&!q){let a=H.filter(a=>y.has(a.id));if(a.length>0)I=a;else{let a=H.filter(a=>!y.has(a.id)),b=[...o].filter(a=>!y.has(a)).length;I=a,b>=3?(I=[],J=!0):o.size>0&&0===a.length&&(J=!0)}}if(q&&p){let b=n.find(a=>a.id===p);if(!b)return k.warn("AUTH",`${a} | pinned account not found: ${p}`),null;if(b.quarantinedAt)return k.warn("AUTH",`${a} | pinned account is quarantined: ${b.id?.slice(0,8)}`),null;if(z.has(b.id))return k.warn("AUTH",`${a} | pinned account does not support ${g}: ${b.id?.slice(0,8)}`),v;if(!x.some(a=>a.id===b.id))return k.warn("AUTH",`${a} | pinned account is not eligible for ${g||"this request"}: ${b.id?.slice(0,8)}`),u?v:null;if(o.has(b.id))return k.warn("AUTH",`${a} | pinned account excluded after failure: ${b.id?.slice(0,8)}`),null;if(F(b)||B.has(b.id)){let a=[G(b),B.has(b.id)?new Date(B.get(b.id)).toISOString():null].filter(Boolean).sort().at(-1);return{allRateLimited:!0,retryAfter:a,retryAfterHuman:(0,f.Qo)(a),lastError:b.lastError||"Pinned account unavailable",lastErrorCode:b.errorCode||null}}I=[b]}if(k.debug("AUTH",`${a} | available: ${I.length}/${x.length}`),n.forEach(a=>{let b=o.has(a.id),c=F(a),d=D.has(a.id),e=B.get(a.id),h=!!a.quarantinedAt,i=z.has(a.id);if(b||c||e||d||h||i){let j=(0,f.kJ)(a),l=E.has(a.id);k.debug("AUTH",` \u2192 ${a.id?.slice(0,8)} | ${b?"excluded":""} ${c?`modelLocked(${g}) until ${j}`:""} ${d?`staleLockRecovered(${g})`:""} ${l?`recoveryProbeInFlight(${g})`:""} ${e?`quotaExhausted until ${new Date(e).toISOString()}`:""} ${h?"quarantined":""} ${i?`unsupported(${g})`:""}`)}}),0===I.length){if(J)return k.warn("AUTH",`${a} | bounded fallback exhausted for ${g}`),null;let b=x.filter(a=>F(a)),c=x.map(a=>[F(a)?G(a):null,B.has(a.id)?new Date(B.get(a.id)).toISOString():null].filter(Boolean).sort().at(-1)).filter(Boolean).sort()[0]||null;if(c){let d=b[0];return k.warn("AUTH",`${a} | all ${x.length} candidate accounts locked for ${g||"all"} (${(0,f.Qo)(c)}) | lastError=${d?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:c,retryAfterHuman:(0,f.Qo)(c),lastError:d?.lastError||null,lastErrorCode:d?.errorCode||null}}return k.warn("AUTH",`${a} | all ${n.length} accounts unavailable`),u||A?v:null}let K=await (0,d.mt)(),L=(K.providerStrategies||{})[m]||{},M=L.fallbackStrategy||K.fallbackStrategy||"fill-first";if(p&&(b=I.find(a=>a.id===p))&&k.debug("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if(q&&p)return k.warn("AUTH",`${a} | pinned account unavailable: ${p}`),null;else if("round-robin"===M){let a=L.stickyRoundRobinLimit||K.stickyRoundRobinLimit||3,c=[...I].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],e=c?.consecutiveUseCount||0;c&&c.lastUsedAt&&e<a?(b=c,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(b.consecutiveUseCount||0)+1})):(b=[...I].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else if("most-quota"===M){let a=await Promise.all(I.map(async a=>{let b=-1;try{let c=await (0,d.getQuotaSnapshot)(a.id);b=(0,f.td)(c?.usage,m,g)}catch{}return{conn:a,remaining:b}}));a.sort((a,b)=>a.remaining!==b.remaining?b.remaining-a.remaining:(a.conn.priority||999)-(b.conn.priority||999)),b=(a.filter(a=>0!==a.remaining)[0]||a[0]).conn,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1})}else if("lowest-latency"===M){let{getLatencyStats:e}=await Promise.resolve().then(c.bind(c,93999)),f=await e(),g=I.map(a=>{let b=f.get(`${a.provider}|${a.id}`)||f.get(`${m}|${a.id}`);return{conn:a,avgMs:b?b.avgMs:null,samples:b?b.samples:0}});g.sort((a,b)=>null===a.avgMs&&null===b.avgMs?(a.conn.priority||999)-(b.conn.priority||999):null===a.avgMs?1:null===b.avgMs?-1:a.avgMs!==b.avgMs?a.avgMs-b.avgMs:(a.conn.priority||999)-(b.conn.priority||999)),b=g[0].conn,k.debug("AUTH",`${a} | lowest-latency → ${b.id?.slice(0,8)} (${g[0].avgMs??"?"}ms avg, ${g[0].samples} samples)`),await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1})}else b=I[0];if(D.has(b.id)){let a=(0,f.WP)(g,m);await (0,d.updateProviderConnection)(b.id,a),b={...b,...a}}if(("codebuddy"===m||"codebuddy-cn"===m)&&(0,i.hN)(b)){let a=(0,f.WP)(null,m);await (0,d.updateProviderConnection)(b.id,a),b={...b,...a}}let N=await (0,e.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,idToken:b.idToken,expiresAt:b.expiresAt,expiresIn:b.expiresIn,lastRefreshAt:b.lastRefreshAt,projectId:b.projectId||b.providerSpecificData?.projectId||null,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:N.connectionProxyEnabled,connectionProxyUrl:N.connectionProxyUrl,connectionNoProxy:N.connectionNoProxy,strictProxy:!0===N.strictProxy,connectionProxyPoolId:N.proxyPoolId||null,vercelRelayUrl:N.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{m&&m()}}async function A(a,b,e,h=null,l=null,m=null,n=null,o=null){let p,q,r;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let s=(0,j.rs)(h),t=(0,f.UM)(l,s);if((0,f.d5)(b,e))return await (0,d.updateProviderConnection)(a,{[t]:null}),k.warn("AUTH",`shared egress/WAF error; fallback without locking account [${b}]`),{shouldFallback:!0,cooldownMs:0};if((0,f.P0)(b,e))return await (0,d.updateProviderConnection)(a,{[t]:null}),k.warn("AUTH",`non-account error; no fallback [${b}] ${"string"==typeof e?e.slice(0,100):"Provider error"}`),{shouldFallback:!1,cooldownMs:0};let u=(await (0,d.getProviderConnections)({provider:s})).find(b=>b.id===a),v=u?.backoffLevel||0,w=(0,f.UO)(e),x="codebuddy-cn"===s&&14018===w,y="codebuddy"===s&&14018===w,z="codebuddy-cn"===s&&11140===w;if(z){let c=new Date().toISOString(),e="CodeBuddy CN rejected this credential (11140 request illegal).";return await (0,d.Iu)(a,(a,d)=>{if(a.manuallyReenabledAt&&a.manuallyReenabledAt!==n?.manuallyReenabledAt)return null;let f={...a,providerSpecificData:(0,i.r_)(a.providerSpecificData,c,w)};return{connection:{[t]:null,isActive:!1,testStatus:"unavailable",lastError:e,errorCode:b,providerErrorCode:w,quarantinedAt:c,quarantineReason:e,lastErrorAt:c,autoDisabledAt:c,autoDisabledReason:"credential_rejected",consecutiveAuthFailures:Math.max(1,(a.consecutiveAuthFailures||0)+1),backoffLevel:0,providerSpecificData:f.providerSpecificData},quotaUsage:(0,i.pX)(d?.usage||{},f)}}),k.warn("AUTH",`${u?.displayName||u?.name||a.slice(0,8)} quarantined immediately [11140]`),{shouldFallback:!0,cooldownMs:0}}if(x){let b=await (0,d.getQuotaSnapshot)(a);m=(0,f.lI)(b?.usage)||m}if(m&&m>Date.now()?(p=!0,q=Math.min(m-Date.now(),g.fh),r=0):{shouldFallback:p,cooldownMs:q,newBackoffLevel:r}=(0,f.hk)(b,e,v),!p)return await (0,d.updateProviderConnection)(a,{[t]:null}),{shouldFallback:!1,cooldownMs:0};let B="string"==typeof e?e.slice(0,100):"Provider error",C=x||y,D=C?null:(0,f.LV)(s,l),E=(0,f.S5)(D,q,s),F=new Date().toISOString(),G={...E,[t]:null,...C?{[(0,f.UM)(null,s)]:null}:{},testStatus:"unavailable",lastError:B,errorCode:b,providerErrorCode:w,modelLockReason:{model:D||"__all",providerErrorCode:w,reason:B,lockedAt:F,resetsAt:new Date(Date.now()+q).toISOString()},lastErrorAt:F,backoffLevel:r??v};if(C)try{await (0,d.Iu)(a,(a,b)=>{if(a.manuallyReenabledAt&&a.manuallyReenabledAt!==n?.manuallyReenabledAt)return null;let c={...a,providerSpecificData:(0,i.QN)(a.providerSpecificData,F)};return{connection:{...G,providerSpecificData:c.providerSpecificData},quotaUsage:(0,i.pX)(b?.usage||{},c)}})}catch(a){throw k.warn("AUTH",`CodeBuddy runtime exhaustion update failed: ${a?.message||a}`),a}else await (0,d.updateProviderConnection)(a,G);let H=Object.keys(E)[0],I=u?.displayName||u?.name||u?.email||a.slice(0,8);if(k.warn("AUTH",`${I} locked ${H} for ${Math.round(q/1e3)}s [${b}]`),h&&c.e(6802).then(c.bind(c,86802)).then(a=>{a.alertProviderDown(h,`${I}: ${B}`),(429===b||B.toLowerCase().includes("quota"))&&a.alertQuotaExhausted(h,I)}).catch(()=>{}),h&&b&&B&&console.error(`\u274c ${h} [${b}]: ${B}`),new Set([401,403]).has(b)&&!x){let c=("string"==typeof e?e:"").toLowerCase(),f=["quota","payment","billing","entitlement","subscription","insufficient_quota"].some(a=>c.includes(a)),g=o?.failureClass==="credential_rejected";if(z||g||!f&&["token expired","token is expired","token has expired","expired token","token invalid","invalid token","revoked","invalid_grant","unauthorized","invalid api key","invalid_api_key","banned","suspended","restricted","account disabled"].some(a=>c.includes(a))){let e=(u?.consecutiveAuthFailures||0)+1;e>=3?(await (0,d.updateProviderConnection)(a,{isActive:!1,autoDisabledAt:new Date().toISOString(),autoDisabledReason:c.includes("banned")||c.includes("suspended")||c.includes("restricted")||c.includes("account disabled")?"banned":"token_expired",consecutiveAuthFailures:e}),k.warn("AUTH",`\u26d4 Auto-disabled ${I} after ${e} consecutive auth failures [${b}]: ${B}`)):(await (0,d.updateProviderConnection)(a,{consecutiveAuthFailures:e}),k.warn("AUTH",`${I} auth failure ${e}/3 [${b}]: ${B}`))}}return{shouldFallback:!0,cooldownMs:q}}async function B(a,b,c,e,g){if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let h=(await (0,d.getProviderConnections)({provider:c})).find(b=>b.id===a),i=h?.displayName||h?.name||h?.email||a.slice(0,8),j=new Date().toISOString(),l=`${c} rejected the refresh credential; sign in again before re-enabling.`;return await (0,d.updateProviderConnection)(a,{[(0,f.UM)(e,c)]:null,isActive:!1,testStatus:"unavailable",lastError:l,lastErrorType:"auth",errorCode:b,failureClass:"reauth_required",providerErrorCode:g.providerErrorCode,upstreamRequestId:g.upstreamRequestId,failureResetAt:g.failureResetAt,authLifecycle:g.authLifecycle,quarantinedAt:j,quarantineReason:l,lastErrorAt:j,autoDisabledAt:j,autoDisabledReason:"reauth_required",consecutiveAuthFailures:Math.max(1,(h?.consecutiveAuthFailures||0)+1),backoffLevel:0}),k.warn("AUTH",`${i} quarantined immediately [reauth_required]`),{shouldFallback:!0,cooldownMs:0}}async function C(a,b,c,e=null,i=null,l=null,m=null,n=null){let q,s,v,w=(0,j.rs)(e);if("antigravity"===w){let c=t(m,l),e="policy_suspended"===c.failureClass&&"ORG_CODE_ASSIST_RESTRICTED"===c.providerErrorCode,g="account_validation_required"===c.failureClass&&"VALIDATION_REQUIRED"===c.providerErrorCode;if(e||g){if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let e=(await (0,d.getProviderConnections)({provider:w})).find(b=>b.id===a),h=new Date().toISOString(),j=g?"Google requires account verification before Antigravity can use Gemini Code Assist.":"Google organization policy blocks Gemini Code Assist access for this Antigravity account.",l=(0,f.UM)(i,w);await (0,d.Op)(a,a=>({...Object.fromEntries(Object.keys(a||{}).filter(a=>a.startsWith("modelLock_")).map(a=>[a,null])),[l]:null,modelLockReason:null,isActive:!1,testStatus:"unavailable",lastError:j,errorCode:b,failureClass:c.failureClass,providerErrorCode:c.providerErrorCode,upstreamRequestId:c.upstreamRequestId,failureResetAt:c.failureResetAt,authLifecycle:c.authLifecycle,quarantinedAt:h,quarantineReason:j,lastErrorAt:h,autoDisabledAt:h,autoDisabledReason:c.failureClass,consecutiveAuthFailures:Math.max(1,(a?.consecutiveAuthFailures||0)+1),backoffLevel:0}));let m=e?.displayName||e?.name||e?.email||a.slice(0,8);return k.warn("AUTH",`${m} quarantined immediately [${c.failureClass}]`),{shouldFallback:!0,cooldownMs:0}}}if("kiro"!==w){let d=t(m,l);return"reauth_required"===d.failureClass?B(a,b,w,i,d):A(a,b,c,e,i,l,n,d)}if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let x=(0,f.UM)(i,w),y=t(m,l),{failureClass:z}=y;if("shared_egress_waf"===z||(0,f.d5)(b,c))return await (0,d.updateProviderConnection)(a,{[x]:null}),k.warn("AUTH",`Kiro shared egress/WAF error; fallback without account punishment [${b}]`),{shouldFallback:!0,cooldownMs:0};if(function(a,b){if("invalid_model"===a)return!0;let c=String(b||"").toUpperCase();return/INVALID[_-]?MODEL|MODEL[_-]?(?:NOT[_-]?(?:FOUND|SUPPORTED)|UNSUPPORTED)/.test(c)}(z,y.providerErrorCode)){await (0,d.updateProviderConnection)(a,{[x]:null});let b=!1;try{await (0,h.FL)(a,i);let c=(await (0,d.getProviderConnections)({provider:w,isActive:!0})).filter(a=>!a.quarantinedAt).map(a=>a.id);b=!!i&&await (0,h.CY)(i,a,c)}catch(a){k.warn("AUTH",`Kiro model support cache update failed: ${a?.message||a}`)}return k.warn("AUTH",`Kiro model is unsupported by ${a.slice(0,8)}; ${b?"trying a known supporter":"not rotating to an unknown account"}`),{shouldFallback:b,cooldownMs:0}}if(function(a,b){if("invalid_request"===a||"request_error"===a)return!0;let c=String(b||"").toUpperCase();return/INVALID[_-]?(?:REQUEST|ARGUMENT)|VALIDATION|BAD[_-]?REQUEST|MALFORMED/.test(c)}(z,y.providerErrorCode)||(0,f.P0)(b,c))return await (0,d.updateProviderConnection)(a,{[x]:null}),k.warn("AUTH",`Kiro request error; no account lock or credential rotation [${b}]`),{shouldFallback:!1,cooldownMs:0};let D=(await (0,d.getProviderConnections)({provider:w})).find(b=>b.id===a),E=D?.backoffLevel||0,F=y.providerErrorCode||r((0,f.UO)(c)),G=D?.displayName||D?.name||D?.email||a.slice(0,8);if(o.has(z)){let c=new Date().toISOString(),e=u(z,b);return await (0,d.updateProviderConnection)(a,{[x]:null,isActive:!1,testStatus:"unavailable",lastError:e,errorCode:b,failureClass:z,providerErrorCode:F,upstreamRequestId:y.upstreamRequestId,failureResetAt:y.failureResetAt,authLifecycle:y.authLifecycle,quarantinedAt:c,quarantineReason:e,lastErrorAt:c,autoDisabledAt:c,autoDisabledReason:z,consecutiveAuthFailures:Math.max(1,(D?.consecutiveAuthFailures||0)+1),backoffLevel:0}),k.warn("AUTH",`${G} quarantined immediately [${z}]`),{shouldFallback:!0,cooldownMs:0}}let H=Number(l);if(Number.isFinite(H)&&H>Date.now()?(q=!0,s=Math.min(H-Date.now(),g.fh),v=0):{shouldFallback:q,cooldownMs:s,newBackoffLevel:v}=(0,f.hk)(b,c,E),!q)return await (0,d.updateProviderConnection)(a,{[x]:null}),{shouldFallback:!1,cooldownMs:0};let I=p.has(z)||403===b||408===b||429===b||b>=500,J=z||(429===b?"rate_limited":403===b?"permission_denied":b>=500?"upstream_transient":null),K=u(J,b),L=I?null:(0,f.LV)(w,i),M=(0,f.S5)(L,s,w),N=new Date().toISOString(),O=new Date(Date.now()+s).toISOString();await (0,d.updateProviderConnection)(a,{...M,[x]:null,testStatus:"unavailable",lastError:K,errorCode:b,failureClass:J,providerErrorCode:F,upstreamRequestId:y.upstreamRequestId,failureResetAt:y.failureResetAt,authLifecycle:y.authLifecycle,modelLockReason:{model:L||"__all",providerErrorCode:F,reason:K,lockedAt:N,resetsAt:O},lastErrorAt:N,backoffLevel:v??E,consecutiveAuthFailures:0});let P=Object.keys(M)[0];if(k.warn("AUTH",`${G} locked ${P} for ${Math.round(s/1e3)}s [${b}]`),!z&&(401===b||403===b)){let e=("string"==typeof c?c:"").toLowerCase();if(!["quota","payment","billing","entitlement","subscription","insufficient_quota"].some(a=>e.includes(a))&&["token expired","token invalid","invalid token","revoked","unauthorized","invalid api key","invalid_api_key","banned","suspended","restricted","account disabled"].some(a=>e.includes(a))){let c=(D?.consecutiveAuthFailures||0)+1,f=["banned","suspended","restricted","account disabled"].some(a=>e.includes(a));if(c>=3){let e=new Date().toISOString(),g=f?u("policy_suspended",b):"Kiro rejected this credential three consecutive times.";await (0,d.updateProviderConnection)(a,{isActive:!1,quarantinedAt:e,quarantineReason:g,failureClass:f?"policy_suspended":"authentication",autoDisabledAt:e,autoDisabledReason:f?"policy_suspended":"token_expired",consecutiveAuthFailures:c}),k.warn("AUTH",`${G} quarantined after ${c} unstructured auth failures`)}else await (0,d.updateProviderConnection)(a,{consecutiveAuthFailures:c})}}return{shouldFallback:!0,cooldownMs:s}}async function D(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,g=(0,j.rs)(e.provider),h=(0,f.LV)(g,c),l=Date.now(),m=(0,f.UM)(c,g),n=!1,o=!1,p=(a,b=!1)=>{if(!a||b&&(a.quarantinedAt||e.quarantinedAt))return null;let d=(a,b)=>{if(!a.startsWith(b))return!1;let d=a.slice(b.length);return"__all"===d||!c||(0,f.LV)(g,d)===h};if(b&&Object.keys(a).some(b=>(d(b,"modelLock_")||d(b,"modelRecoveryProbe_"))&&a[b]!==e[b]&&Date.parse(a[b])>l))return n=!0,null;let i=Object.keys(a).filter(a=>a.startsWith("modelLock_"));if("unavailable"!==a.testStatus&&!a.lastError&&0===i.length)return null;let j=i.filter(d=>{if(b&&a[d]!==e[d])return!1;let i=d.slice(10);if(c&&(0,f.LV)(g,i)===h||c&&"modelLock___all"===d)return!0;let j=a[d];return j&&new Date(j).getTime()<=l});if(0===j.length&&"unavailable"!==a.testStatus&&!a.lastError)return null;let k=i.filter(b=>!j.includes(b)&&Date.parse(a[b])>l),o={...Object.fromEntries(j.map(a=>[a,null]))};return b&&a[m]!==e[m]||(o[m]=null),0===k.length&&Object.assign(o,{testStatus:"active",lastError:null,errorCode:null,providerErrorCode:null,..."kiro"===g?{failureClass:null,upstreamRequestId:null,failureResetAt:null,authLifecycle:null}:{},modelLockReason:null,lastErrorAt:null,backoffLevel:0,consecutiveAuthFailures:0}),o};if("kiro"===g){await (0,d.Op)(a,a=>p(a,!0)),n&&k.debug("AUTH",`Kiro success did not clear newer failure state for ${a.slice(0,8)}`);return}if("codebuddy"===g||"codebuddy-cn"===g){let b=(0,i.kt)(e);await (0,d.Iu)(a,a=>{if(a.quarantinedAt||(0,i.uF)(a))return null;let c=(0,i.kt)(a);if(c&&c!==b)return null;let d=p(a)||{};return(b&&(0,i.kt)(a)===b&&(d.providerSpecificData=(0,i.US)(a.providerSpecificData),d[(0,f.UM)(null,g)]=null,o=!0),0===Object.keys(d).length)?null:{connection:d,...o?{quotaUsage:null}:{}}});return}let q=p(e);q&&await (0,d.updateProviderConnection)(a,q)}function E(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function F(a){return!!a&&await (0,d.ek)(a)}},91254:(a,b,c)=>{c.d(b,{CG:()=>p,QN:()=>k,US:()=>o,hN:()=>j,kt:()=>i,pX:()=>q,r_:()=>n,uF:()=>m});let d="codebuddyRuntimeExhaustedAt",e="codebuddyRuntimeExhaustedCode",f="codebuddyRuntimeRejectedAt",g="codebuddyRuntimeRejectedCode";function h(a){return a?.provider==="codebuddy"||a?.provider==="codebuddy-cn"}function i(a){return h(a)&&a.providerSpecificData?.[d]||null}function j(a){return!!i(a)}function k(a,b){return{...a||{},[d]:b,[e]:14018}}function l(a){return a?.provider!=="codebuddy-cn"?null:a.providerSpecificData?.[f]||null}function m(a){return!!l(a)}function n(a,b,c=11140){return{...a||{},[f]:b,[g]:c}}function o(a){let b={...a||{}};return delete b[d],delete b[e],b}function p(a){let b=o(a);return delete b[f],delete b[g],b}function q(a,b){if(!h(b))return a;let c=l(b),d=i(b);if(!c&&!d)return a;let e=a?.billingQuotas||a?.quotas||{};if(c)return{...a||{},message:"CodeBuddy CN chat API rejected this credential (11140); billing package balance is nominal and does not prove chat access.",billingQuotas:e,runtimeStatus:"credential_rejected",chatUsable:!1,runtimeRejectedAt:c,runtimeRejectedCode:Number(b.providerSpecificData?.[g])||11140};let f=Object.fromEntries(Object.entries(e).map(([a,b])=>{let c=Number(b?.total);return[a,{...b||{},...Number.isFinite(c)?{used:c}:{},remaining:0,remainingPercentage:0}]}));return{...a||{},message:"CodeBuddy chat API reported exhausted credits (14018); billing package balance is nominal until a chat request succeeds.",billingQuotas:e,quotas:f,runtimeStatus:"exhausted",chatUsable:!1,runtimeExhausted:!0,runtimeExhaustedAt:d,runtimeExhaustedCode:14018}}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},93930:(a,b,c)=>{c.d(b,{Z:()=>e});let d=Object.freeze([["unsupported_model",(a,b)=>Array.isArray(a.supportedModels)&&a.supportedModels.length>0&&!a.supportedModels.includes(b.model)],["unsupported_operation",(a,b)=>Array.isArray(a.supportedOperations)&&a.supportedOperations.length>0&&!a.supportedOperations.includes(b.operation)],["unsupported_capability",(a,b)=>{let c=new Set(a.capabilities||[]);return c.size>0&&(b.requiredCapabilities||[]).some(a=>!c.has(a))}],["api_key_model_restricted",(a,b)=>Array.isArray(b.allowedModels)&&b.allowedModels.length>0&&!b.allowedModels.includes(b.model)],["api_key_provider_restricted",(a,b)=>Array.isArray(b.allowedProviders)&&b.allowedProviders.length>0&&!b.allowedProviders.includes(a.provider)],["connection_restricted",(a,b)=>Array.isArray(b.allowedConnectionIds)&&b.allowedConnectionIds.length>0&&!b.allowedConnectionIds.includes(a.id)],["explicit_pin_mismatch",(a,b)=>!!b.pinnedConnectionId&&b.pinnedConnectionId!==a.id],["inactive",a=>!0!==a.isActive],["quarantined",a=>!!a.quarantinedAt],["reauth_required",a=>!0===a.reauthRequired],["model_locked",a=>!0===a.modelLocked],["quota_exhausted",(a,b)=>{let c=a.quota;return!!c&&!0===c.exhausted&&("last_successful"!==c.provenance||!(Number(c.remaining)>0&&Number(c.validUntilMs)>Number(b.nowMs||Date.now())))}],["circuit_open",a=>Object.values(a.circuits||{}).some(a=>a?.state==="open"||a?.state==="half_open"&&a?.probeAcquired!==!0)],["missing_transport",a=>!1===a.transportAvailable],["outbound_rejected",a=>!1===a.outboundAllowed]]);function e(a={},b={}){let c=d.filter(([,c])=>c(a,b)).map(([a])=>a);return Object.freeze({eligible:0===c.length,reasons:Object.freeze(c)})}}};
|
|
1
|
+
"use strict";exports.id=1051,exports.ids=[1051],exports.modules={19225:(a,b,c)=>{a.exports=c(44870)},79761:(a,b,c)=>{c.d(b,{BU:()=>l,hb:()=>k,tH:()=>j});var d=c(40669),e=c(35989),f=c(75434);let g=new Set(["account","provider","egress","integrity"]);function h(a,b="unknown",c=160){return String(a||"").trim().toLowerCase().replace(/[^a-z0-9._:-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,c)||b}function i(a={}){let b=g.has(a.scope)?a.scope:null;if(!b)return null;let c=h((0,d.g2)(h(a.provider)),"unknown-provider",80),f=h(a.accountId||a.connectionId,"unknown-account"),j=h(a.egressId,"direct"),k=(0,e.Nm)(a.modelFamily||a.model);return Object.freeze("account"===b?{scope:b,provider:c,accountId:f}:"provider"===b?{scope:b,provider:c}:"egress"===b?{scope:b,egressId:j}:{scope:b,provider:c,modelFamily:k,egressId:j})}let j=function(a={}){let b="function"==typeof a.now?a.now:Date.now,c="function"==typeof a.onTransition?a.onTransition:()=>{},e=new Map,f=0;function g(a,b,d){c(Object.freeze({type:"circuit",provider:a.dimensions.provider,phase:b,reason:a.dimensions.scope,deadlineMs:a.openUntilMs?Math.max(0,a.openUntilMs-d):0,...a.dimensions.modelFamily?{modelFamily:a.dimensions.modelFamily}:{}}))}function j(a){for(let[b,c]of e)c.failures=c.failures.filter(b=>a-b.atMs<=6e4),"closed"===c.mode&&0===c.failures.length&&a-c.lastTouchedAtMs>18e5&&e.delete(b);let b=[...e.entries()].filter(([,a])=>"closed"===a.mode).sort((a,b)=>a[1].lastTouchedAtMs-b[1].lastTouchedAtMs);for(;b.length>2048;)e.delete(b.shift()[0])}function k(a,c=!1){let d=i(a);if(!d)return null;let f=Object.values(d).join("\x1f"),g=e.get(f);return!g&&c&&(g={dimensions:d,mode:"closed",failures:[],openDurationMs:3e4,openUntilMs:null,probeLeaseId:null,probeSuccesses:0,lastTouchedAtMs:b()},e.set(f,g)),g}function l(a,b){a?.mode==="open"&&b>=a.openUntilMs&&(a.mode="half_open",a.probeLeaseId=null,g(a,"half_open",b))}function m(a,b,c=a.openDurationMs){a.mode="open",a.openDurationMs=Math.min(3e5,Math.max(3e4,c)),a.openUntilMs=b+a.openDurationMs,a.probeLeaseId=null,a.probeSuccesses=0,a.lastTouchedAtMs=b,g(a,"open",b)}return Object.freeze({recordFailure:function(a={}){let c;if(!1===a.evidentiary)return!1;let e=b();j(e);let f=k(a,!0);return!!f&&(l(f,e),"closed"===f.mode)&&(f.failures=f.failures.filter(a=>e-a.atMs<=6e4),f.failures.push(Object.freeze({atMs:e,accountId:h(a.accountId||a.connectionId,"unknown-account"),provider:h((0,d.g2)(h(a.provider)),"unknown-provider",80)})),f.lastTouchedAtMs=e,c=f.failures.length,("integrity"===f.dimensions.scope?c>=1:!(c<5)&&("provider"===f.dimensions.scope?new Set(f.failures.map(a=>a.accountId)).size>=2:"egress"!==f.dimensions.scope||new Set(f.failures.map(a=>a.provider)).size>=2))&&m(f,e),!0)},recordSuccess:function(a={}){let c=b(),d=k(a);return!!d&&(l(d,c),"closed"===d.mode&&(d.failures=[],d.lastTouchedAtMs=c,!0))},getDecision:function(a){let c=b();j(c);let d=i(a),e=k(a);return e?(l(e,c),Object.freeze({...e.dimensions,state:e.mode,openUntilMs:e.openUntilMs,openDurationMs:e.openDurationMs,probeInFlight:!!e.probeLeaseId,consecutiveProbeSuccesses:e.probeSuccesses})):Object.freeze({...d||{scope:null},state:"closed",openUntilMs:null,openDurationMs:3e4,probeInFlight:!1,consecutiveProbeSuccesses:0})},tryAcquireProbe:function(a){let c=b(),d=k(a);return d?(l(d,c),"half_open"!==d.mode)?Object.freeze({acquired:!1,reason:"open"===d.mode?"circuit_open":"circuit_closed"}):d.probeLeaseId?Object.freeze({acquired:!1,reason:"probe_in_flight"}):(d.probeLeaseId=`probe-${c}-${++f}`,d.lastTouchedAtMs=c,Object.freeze({acquired:!0,leaseId:d.probeLeaseId})):Object.freeze({acquired:!1,reason:"circuit_closed"})},releaseProbe:function(a,c={}){let d=b(),e=k(a);if(!e||"half_open"!==e.mode||!e.probeLeaseId||c.leaseId!==e.probeLeaseId)return!1;if(e.probeLeaseId=null,e.lastTouchedAtMs=d,!0===c.cancelled)return!0;if(!0===c.success)return e.probeSuccesses+=1,e.probeSuccesses>=2&&(e.mode="closed",e.failures=[],e.openDurationMs=3e4,e.openUntilMs=null,e.probeLeaseId=null,e.probeSuccesses=0,e.lastTouchedAtMs=d,g(e,"closed",d)),!0;return m(e,d,Math.min(3e5,2*e.openDurationMs)),!0}})}({onTransition:f.cN}),k=j.recordFailure;j.recordSuccess,j.getDecision,j.tryAcquireProbe;let l=j.releaseProbe},80238:(a,b,c)=>{c.d(b,{Pt:()=>D,Tr:()=>E,c1:()=>z,kI:()=>F,uT:()=>y,vk:()=>C});var d=c(89718),e=c(39326),f=c(12557),g=c(3662),h=c(29679),i=c(91254),j=c(75681),k=c(7803),l=c(93930),m=c(79761);let n=Promise.resolve(),o=new Set(["policy_suspended","credential_rejected","reauth_required"]),p=new Set(["authentication","entitlement_or_quota","permission_denied","rate_limited","upstream_transient"]),q=new Set(["not_attempted","succeeded","transient_failed","rejected"]);function r(a,b=200){return null==a||""===a?null:String(a).slice(0,b).replace(/[^a-zA-Z0-9._:/#-]/g,"")||null}function s(a){let b=Number(a);return Number.isInteger(b)&&b>=0&&b<=599?b:null}function t(a,b){let c=a&&"object"==typeof a&&!Array.isArray(a)?a:{},d=Number(b??c.resetsAtMs),e=new Date(d),f=Number.isFinite(d)&&d>0&&Number.isFinite(e.getTime())?e.toISOString():null;return{failureClass:r(c.failureClass,80)?.toLowerCase()||null,providerErrorCode:r(c.providerErrorCode),upstreamRequestId:r(c.upstreamRequestId),failureResetAt:f,authLifecycle:function(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b=q.has(a.refreshOutcome)?a.refreshOutcome:"not_attempted";return{initialStatus:s(a.initialStatus),refreshAttempted:!0===a.refreshAttempted,refreshOutcome:b,retryStatus:s(a.retryStatus)}}(c.authLifecycle)}}function u(a,b){return({policy_suspended:"Kiro reports that this account is suspended or disabled by upstream policy.",credential_rejected:"Kiro rejected the credential after a successful token refresh.",reauth_required:"Kiro rejected the refresh credential; sign in again before re-enabling.",entitlement_or_quota:"Kiro entitlement or quota is temporarily unavailable.",rate_limited:"Kiro rate limit is temporarily exhausted.",authentication:"Kiro authentication is temporarily unavailable.",permission_denied:"Kiro denied this request without confirming an account suspension.",upstream_transient:"Kiro upstream is temporarily unavailable."})[a]||`Kiro upstream request failed with status ${b||"unknown"}.`}function v(a){return"string"!=typeof a?"":a.trim().replace(/^(?:kiro|kr)\//i,"")}function w(a,b){let c=a?.providerSpecificData?.enabledModels;if(!Array.isArray(c)||0===c.length)return!0;let d=v(b);return c.some(a=>v(a)===d)}function x(a){return Object.freeze({...a,supportedModels:Object.freeze([...a.supportedModels||[]]),supportedOperations:Object.freeze([...a.supportedOperations||[]]),capabilities:Object.freeze([...a.capabilities||[]]),quota:a.quota?Object.freeze({...a.quota}):null,circuits:Object.freeze({...a.circuits||{}}),eligibility:Object.freeze({eligible:a.eligibility.eligible,reasons:Object.freeze([...a.eligibility.reasons])})})}async function y(a,b=null,c={}){let e=(0,j.rs)(a),g=Array.isArray(c.allowedConnectionIds)?c.allowedConnectionIds:null;if(!g&&c.apiKey&&(g=await (0,d.ME)(c.apiKey)),j.IS[e]?.noAuth){let a={id:"noauth",provider:e,priority:1,legacyOrder:0,isActive:!0,quarantinedAt:null,reauthRequired:!1,supportedModels:[],supportedOperations:[c.operation||"chat"],capabilities:c.capabilities||[],modelLocked:!1,quota:null,circuits:{},transportAvailable:!1!==c.transportAvailable,outboundAllowed:!1!==c.outboundAllowed,egressId:"direct",health:null,sticky:!1};return a.eligibility=(0,l.Z)(a,{...c,provider:e,model:b,operation:c.operation||"chat",allowedConnectionIds:g,pinnedConnectionId:c.strictPreferred?c.preferredConnectionId:null}),Object.freeze([x(a)])}let[h,i]=await Promise.all([(0,d.getProviderConnections)({provider:e}),(0,d.tV)(e)]),k=new Map(i.map(a=>[a.connectionId,a])),n=Number.isFinite(c.nowMs)?c.nowMs:Date.now(),o=c.circuitRegistry||m.tH;return Object.freeze(h.map((a,d)=>{let h=a.providerSpecificData||{},i=k.get(a.id)||null,j=Date.parse(i?.fetchedAt),m=Number.isFinite(j)&&n-j<=f.JN,p=(0,f.td)(i?.usage,e,b),q=(0,f.yH)(i,n),r=Array.isArray(h.enabledModels)?h.enabledModels.map(a=>v(a)):[],s=h.connectionProxyPoolId||h.proxyPoolId||(h.vercelRelayUrl?"relay":"direct"),t={account:{scope:"account",provider:e,accountId:a.id},provider:{scope:"provider",provider:e},egress:{scope:"egress",egressId:s},integrity:{scope:"integrity",provider:e,model:b,egressId:s}},u=Object.fromEntries(Object.entries(t).map(([a,b])=>[a,o.getDecision(b)])),w=Object.entries(u).filter(([,a])=>"half_open"===a.state),y=Object.values(u).some(a=>"open"===a.state);if(!0===c.acquireCircuitProbes&&!y&&1===w.length){let[a]=w[0],b=o.tryAcquireProbe(t[a]);u[a]={...u[a],probeAcquired:!0===b.acquired,...b.leaseId?{probeLeaseId:b.leaseId}:{}}}let z={id:a.id,provider:e,priority:Number.isFinite(a.priority)?a.priority:999,legacyOrder:d,isActive:!0===a.isActive,quarantinedAt:a.quarantinedAt||null,reauthRequired:"reauth_required"===a.failureClass||"token_expired"===a.autoDisabledReason||"reauth_required"===a.autoDisabledReason,supportedModels:r,supportedOperations:Array.isArray(h.supportedOperations)?h.supportedOperations:[c.operation||"chat"],capabilities:Array.isArray(h.capabilities)?h.capabilities:[],modelLocked:(0,f.Bl)(a,b,e),quota:i?{provenance:m?"fresh":"last_successful",exhausted:!!q,remaining:p>=0?p:null,total:p>=0?100:null,fetchedAtMs:Number.isFinite(j)?j:null,validUntilMs:Number.isFinite(j)?j+f.JN:null,exhaustedUntilMs:q||null}:null,circuits:u,transportAvailable:!1!==c.transportAvailable&&!1!==h.transportAvailable,outboundAllowed:!1!==c.outboundAllowed,egressId:s,health:"unavailable"===a.testStatus||a.lastError?"degraded":"success"===a.testStatus||"connected"===a.testStatus?"healthy":null,sticky:a.consecutiveUseCount>0};return z.eligibility=(0,l.Z)(z,{...c,provider:e,model:b,operation:c.operation||"chat",allowedConnectionIds:g,pinnedConnectionId:c.strictPreferred?c.preferredConnectionId:null,nowMs:n}),x(z)}))}async function z(a,b=null,g=null,l={}){let m,o=b instanceof Set?b:b?new Set([b]):new Set,p=l?.preferredConnectionId||null,q=!!l?.strictPreferred,r=n;n=new Promise(a=>{m=a});try{let b;await r;let m=(0,j.rs)(a);if(j.IS[m]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[m]||{},b=a.rotateStrategy||"none",c=a.proxyPoolId||null;if("none"!==b){let a=(await (0,d.ui)({isActive:!0})).filter(a=>a.proxyUrl).map(a=>a.id);c=(0,e.p)(a,b,m)}let f=await (0,e.B)({proxyPoolId:c||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:f.connectionProxyEnabled,connectionProxyUrl:f.connectionProxyUrl,connectionNoProxy:f.connectionNoProxy,connectionProxyPoolId:f.proxyPoolId||null,vercelRelayUrl:f.vercelRelayUrl||""}}}let n=await (0,d.getProviderConnections)({provider:m,isActive:!0}),s=Array.isArray(l?.allowedConnectionIds)?l.allowedConnectionIds:null;if(!s&&l?.apiKey&&(s=await (0,d.ME)(l.apiKey)),Array.isArray(s)&&s.length>0){let b=new Set(s);n=n.filter(a=>b.has(a.id)),k.debug("AUTH",`${a} | API key scoped to ${n.length} allowed connection(s)`)}k.debug("AUTH",`${a} | total connections: ${n.length}, excludeIds: ${o.size>0?[...o].join(","):"none"}, model: ${g||"any"}`);let t=null;if("kiro"===m&&g)try{t=await (0,h.ED)(g)}catch(a){k.warn("AUTH",`Kiro model support cache unavailable: ${a?.message||a}`)}let u=t?.state==="supported"||t?.state==="unsupported",v={modelUnavailable:!0,provider:m,model:g};if(0===n.length){if(u)return k.warn("AUTH",`${a} | no eligible supporter for ${g}`),v;return k.warn("AUTH",`No credentials for ${a}`),null}let x=n.filter(a=>!a.quarantinedAt),y=new Set,z=new Set,A=!1;if("kiro"===m&&g){let a=x=x.filter(a=>w(a,g)),b=new Set(t?.unsupportedConnectionIds||[]),c=new Set(t?.freshCatalogConnectionIds||[]),d=n.filter(a=>{let c=a?.providerSpecificData?.enabledModels;return Array.isArray(c)&&c.length>0&&w(a,g)&&!b.has(a.id)}).map(a=>a.id),e=new Set([...t?.supportingConnectionIds||[],...d].filter(a=>!b.has(a)));z=new Set([...b,...[...c].filter(a=>!e.has(a))]),x=x.filter(a=>!z.has(a.id)),A=a.length>0&&a.every(a=>z.has(a.id)),e.size>0?(y=e,u=!0):t?.state==="unsupported"&&(x=[])}let B=new Map;if("codebuddy-cn"===m)for(let a of(await (0,d.tV)(m))){let b=(0,f.yH)(a);b&&B.set(a.connectionId,b)}let C=new Map;if("codebuddy-cn"===m)for(let a of n){if(11140!==Number(a.providerErrorCode))continue;let b=(0,f.kJ)(a);b&&C.set(a.id,b)}let D=new Set,E=new Set;if("codex"===m&&g){let a=await (0,d.tV)(m),b=new Map(a.map(a=>[a.connectionId,a]));for(let a of n)(0,f.xB)(a,g,m)&&E.add(a.id),(0,f.N2)(a,g,b.get(a.id),m,{ignoreProbe:!0})&&!E.has(a.id)&&D.add(a.id)}if("codebuddy"===m||"codebuddy-cn"===m)for(let a of n)(0,i.hN)(a)&&(0,f.xB)(a,null,m)&&E.add(a.id);let F=a=>C.has(a.id)||("codebuddy"===m||"codebuddy-cn"===m)&&(0,i.hN)(a)&&E.has(a.id)||(0,f.Bl)(a,g,m)&&!D.has(a.id),G=a=>E.has(a.id)?"codebuddy"===m||"codebuddy-cn"===m?a[(0,f.UM)(null,m)]:new Date(Date.now()+1e3).toISOString():[(0,f.V0)(a,g,m),C.get(a.id)].filter(Boolean).sort().at(-1)||null,H=x.filter(a=>!(o.has(a.id)||F(a)||B.has(a.id))),I=H,J=!1;if("kiro"===m&&g&&!q){let a=H.filter(a=>y.has(a.id));if(a.length>0)I=a;else{let a=H.filter(a=>!y.has(a.id)),b=[...o].filter(a=>!y.has(a)).length;I=a,b>=3?(I=[],J=!0):o.size>0&&0===a.length&&(J=!0)}}if(q&&p){let b=n.find(a=>a.id===p);if(!b)return k.warn("AUTH",`${a} | pinned account not found: ${p}`),null;if(b.quarantinedAt)return k.warn("AUTH",`${a} | pinned account is quarantined: ${b.id?.slice(0,8)}`),null;if(z.has(b.id))return k.warn("AUTH",`${a} | pinned account does not support ${g}: ${b.id?.slice(0,8)}`),v;if(!x.some(a=>a.id===b.id))return k.warn("AUTH",`${a} | pinned account is not eligible for ${g||"this request"}: ${b.id?.slice(0,8)}`),u?v:null;if(o.has(b.id))return k.warn("AUTH",`${a} | pinned account excluded after failure: ${b.id?.slice(0,8)}`),null;if(F(b)||B.has(b.id)){let a=[G(b),B.has(b.id)?new Date(B.get(b.id)).toISOString():null].filter(Boolean).sort().at(-1);return{allRateLimited:!0,retryAfter:a,retryAfterHuman:(0,f.Qo)(a),lastError:b.lastError||"Pinned account unavailable",lastErrorCode:b.errorCode||null}}I=[b]}if(k.debug("AUTH",`${a} | available: ${I.length}/${x.length}`),n.forEach(a=>{let b=o.has(a.id),c=F(a),d=D.has(a.id),e=B.get(a.id),h=!!a.quarantinedAt,i=z.has(a.id);if(b||c||e||d||h||i){let j=(0,f.kJ)(a),l=E.has(a.id);k.debug("AUTH",` \u2192 ${a.id?.slice(0,8)} | ${b?"excluded":""} ${c?`modelLocked(${g}) until ${j}`:""} ${d?`staleLockRecovered(${g})`:""} ${l?`recoveryProbeInFlight(${g})`:""} ${e?`quotaExhausted until ${new Date(e).toISOString()}`:""} ${h?"quarantined":""} ${i?`unsupported(${g})`:""}`)}}),0===I.length){if(J)return k.warn("AUTH",`${a} | bounded fallback exhausted for ${g}`),null;let b=x.filter(a=>F(a)),c=x.map(a=>[F(a)?G(a):null,B.has(a.id)?new Date(B.get(a.id)).toISOString():null].filter(Boolean).sort().at(-1)).filter(Boolean).sort()[0]||null;if(c){let d=b[0];return k.warn("AUTH",`${a} | all ${x.length} candidate accounts locked for ${g||"all"} (${(0,f.Qo)(c)}) | lastError=${d?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:c,retryAfterHuman:(0,f.Qo)(c),lastError:d?.lastError||null,lastErrorCode:d?.errorCode||null}}return k.warn("AUTH",`${a} | all ${n.length} accounts unavailable`),u||A?v:null}let K=await (0,d.mt)(),L=(K.providerStrategies||{})[m]||{},M=L.fallbackStrategy||K.fallbackStrategy||"fill-first";if(p&&(b=I.find(a=>a.id===p))&&k.debug("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if(q&&p)return k.warn("AUTH",`${a} | pinned account unavailable: ${p}`),null;else if("round-robin"===M){let a=L.stickyRoundRobinLimit||K.stickyRoundRobinLimit||3,c=[...I].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],e=c?.consecutiveUseCount||0;c&&c.lastUsedAt&&e<a?(b=c,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(b.consecutiveUseCount||0)+1})):(b=[...I].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else if("most-quota"===M){let a=await Promise.all(I.map(async a=>{let b=-1;try{let c=await (0,d.getQuotaSnapshot)(a.id);b=(0,f.td)(c?.usage,m,g)}catch{}return{conn:a,remaining:b}}));a.sort((a,b)=>a.remaining!==b.remaining?b.remaining-a.remaining:(a.conn.priority||999)-(b.conn.priority||999)),b=(a.filter(a=>0!==a.remaining)[0]||a[0]).conn,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1})}else if("lowest-latency"===M){let{getLatencyStats:e}=await Promise.resolve().then(c.bind(c,93999)),f=await e(),g=I.map(a=>{let b=f.get(`${a.provider}|${a.id}`)||f.get(`${m}|${a.id}`);return{conn:a,avgMs:b?b.avgMs:null,samples:b?b.samples:0}});g.sort((a,b)=>null===a.avgMs&&null===b.avgMs?(a.conn.priority||999)-(b.conn.priority||999):null===a.avgMs?1:null===b.avgMs?-1:a.avgMs!==b.avgMs?a.avgMs-b.avgMs:(a.conn.priority||999)-(b.conn.priority||999)),b=g[0].conn,k.debug("AUTH",`${a} | lowest-latency → ${b.id?.slice(0,8)} (${g[0].avgMs??"?"}ms avg, ${g[0].samples} samples)`),await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1})}else b=I[0];if(D.has(b.id)){let a=(0,f.WP)(g,m);await (0,d.updateProviderConnection)(b.id,a),b={...b,...a}}if(("codebuddy"===m||"codebuddy-cn"===m)&&(0,i.hN)(b)){let a=(0,f.WP)(null,m);await (0,d.updateProviderConnection)(b.id,a),b={...b,...a}}let N=await (0,e.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,idToken:b.idToken,expiresAt:b.expiresAt,expiresIn:b.expiresIn,lastRefreshAt:b.lastRefreshAt,projectId:b.projectId||b.providerSpecificData?.projectId||null,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:N.connectionProxyEnabled,connectionProxyUrl:N.connectionProxyUrl,connectionNoProxy:N.connectionNoProxy,strictProxy:!0===N.strictProxy,connectionProxyPoolId:N.proxyPoolId||null,vercelRelayUrl:N.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{m&&m()}}async function A(a,b,e,h=null,l=null,m=null,n=null,o=null){let p,q,r;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let s=(0,j.rs)(h),t=(0,f.UM)(l,s);if((0,f.d5)(b,e))return await (0,d.updateProviderConnection)(a,{[t]:null}),k.warn("AUTH",`shared egress/WAF error; fallback without locking account [${b}]`),{shouldFallback:!0,cooldownMs:0};if((0,f.P0)(b,e))return await (0,d.updateProviderConnection)(a,{[t]:null}),k.warn("AUTH",`non-account error; no fallback [${b}] ${"string"==typeof e?e.slice(0,100):"Provider error"}`),{shouldFallback:!1,cooldownMs:0};let u=(await (0,d.getProviderConnections)({provider:s})).find(b=>b.id===a),v=u?.backoffLevel||0,w=(0,f.UO)(e),x="codebuddy-cn"===s&&14018===w,y="codebuddy"===s&&14018===w,z="codebuddy-cn"===s&&11140===w;if(z){let c=new Date().toISOString(),e="CodeBuddy CN rejected this credential (11140 request illegal).";return await (0,d.Iu)(a,(a,d)=>{if(a.manuallyReenabledAt&&a.manuallyReenabledAt!==n?.manuallyReenabledAt)return null;let f={...a,providerSpecificData:(0,i.r_)(a.providerSpecificData,c,w)};return{connection:{[t]:null,isActive:!1,testStatus:"unavailable",lastError:e,errorCode:b,providerErrorCode:w,quarantinedAt:c,quarantineReason:e,lastErrorAt:c,autoDisabledAt:c,autoDisabledReason:"credential_rejected",consecutiveAuthFailures:Math.max(1,(a.consecutiveAuthFailures||0)+1),backoffLevel:0,providerSpecificData:f.providerSpecificData},quotaUsage:(0,i.pX)(d?.usage||{},f)}}),k.warn("AUTH",`${u?.displayName||u?.name||a.slice(0,8)} quarantined immediately [11140]`),{shouldFallback:!0,cooldownMs:0}}if(x){let b=await (0,d.getQuotaSnapshot)(a);m=(0,f.lI)(b?.usage)||m}if(m&&m>Date.now()?(p=!0,q=Math.min(m-Date.now(),g.fh),r=0):{shouldFallback:p,cooldownMs:q,newBackoffLevel:r}=(0,f.hk)(b,e,v),!p)return await (0,d.updateProviderConnection)(a,{[t]:null}),{shouldFallback:!1,cooldownMs:0};let B="string"==typeof e?e.slice(0,100):"Provider error",C=x||y,D=C?null:(0,f.LV)(s,l),E=(0,f.S5)(D,q,s),F=new Date().toISOString(),G={...E,[t]:null,...C?{[(0,f.UM)(null,s)]:null}:{},testStatus:"unavailable",lastError:B,errorCode:b,providerErrorCode:w,modelLockReason:{model:D||"__all",providerErrorCode:w,reason:B,lockedAt:F,resetsAt:new Date(Date.now()+q).toISOString()},lastErrorAt:F,backoffLevel:r??v};if(C)try{await (0,d.Iu)(a,(a,b)=>{if(a.manuallyReenabledAt&&a.manuallyReenabledAt!==n?.manuallyReenabledAt)return null;let c={...a,providerSpecificData:(0,i.QN)(a.providerSpecificData,F)};return{connection:{...G,providerSpecificData:c.providerSpecificData},quotaUsage:(0,i.pX)(b?.usage||{},c)}})}catch(a){throw k.warn("AUTH",`CodeBuddy runtime exhaustion update failed: ${a?.message||a}`),a}else await (0,d.updateProviderConnection)(a,G);let H=Object.keys(E)[0],I=u?.displayName||u?.name||u?.email||a.slice(0,8);if(k.warn("AUTH",`${I} locked ${H} for ${Math.round(q/1e3)}s [${b}]`),h&&c.e(6802).then(c.bind(c,86802)).then(a=>{a.alertProviderDown(h,`${I}: ${B}`),(429===b||B.toLowerCase().includes("quota"))&&a.alertQuotaExhausted(h,I)}).catch(()=>{}),h&&b&&B&&console.error(`\u274c ${h} [${b}]: ${B}`),new Set([401,403]).has(b)&&!x){let c=("string"==typeof e?e:"").toLowerCase(),f=["quota","payment","billing","entitlement","subscription","insufficient_quota"].some(a=>c.includes(a)),g=o?.failureClass==="credential_rejected";if(z||g||!f&&["token expired","token is expired","token has expired","expired token","token invalid","invalid token","revoked","invalid_grant","unauthorized","invalid api key","invalid_api_key","banned","suspended","restricted","account disabled"].some(a=>c.includes(a))){let e=(u?.consecutiveAuthFailures||0)+1;e>=3?(await (0,d.updateProviderConnection)(a,{isActive:!1,autoDisabledAt:new Date().toISOString(),autoDisabledReason:c.includes("banned")||c.includes("suspended")||c.includes("restricted")||c.includes("account disabled")?"banned":"token_expired",consecutiveAuthFailures:e}),k.warn("AUTH",`\u26d4 Auto-disabled ${I} after ${e} consecutive auth failures [${b}]: ${B}`)):(await (0,d.updateProviderConnection)(a,{consecutiveAuthFailures:e}),k.warn("AUTH",`${I} auth failure ${e}/3 [${b}]: ${B}`))}}return{shouldFallback:!0,cooldownMs:q}}async function B(a,b,c,e,g){if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let h=(await (0,d.getProviderConnections)({provider:c})).find(b=>b.id===a),i=h?.displayName||h?.name||h?.email||a.slice(0,8),j=new Date().toISOString(),l=`${c} rejected the refresh credential; sign in again before re-enabling.`;return await (0,d.updateProviderConnection)(a,{[(0,f.UM)(e,c)]:null,isActive:!1,testStatus:"unavailable",lastError:l,lastErrorType:"auth",errorCode:b,failureClass:"reauth_required",providerErrorCode:g.providerErrorCode,upstreamRequestId:g.upstreamRequestId,failureResetAt:g.failureResetAt,authLifecycle:g.authLifecycle,quarantinedAt:j,quarantineReason:l,lastErrorAt:j,autoDisabledAt:j,autoDisabledReason:"reauth_required",consecutiveAuthFailures:Math.max(1,(h?.consecutiveAuthFailures||0)+1),backoffLevel:0}),k.warn("AUTH",`${i} quarantined immediately [reauth_required]`),{shouldFallback:!0,cooldownMs:0}}async function C(a,b,c,e=null,i=null,l=null,m=null,n=null){let q,s,v,w=(0,j.rs)(e);if("antigravity"===w){let c=t(m,l),e="policy_suspended"===c.failureClass&&"ORG_CODE_ASSIST_RESTRICTED"===c.providerErrorCode,g="account_validation_required"===c.failureClass&&"VALIDATION_REQUIRED"===c.providerErrorCode;if(e||g){if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let e=(await (0,d.getProviderConnections)({provider:w})).find(b=>b.id===a),h=new Date().toISOString(),j=g?"Google requires account verification before Antigravity can use Gemini Code Assist.":"Google organization policy blocks Gemini Code Assist access for this Antigravity account.",l=(0,f.UM)(i,w);await (0,d.Op)(a,a=>({...Object.fromEntries(Object.keys(a||{}).filter(a=>a.startsWith("modelLock_")).map(a=>[a,null])),[l]:null,modelLockReason:null,isActive:!1,testStatus:"unavailable",lastError:j,errorCode:b,failureClass:c.failureClass,providerErrorCode:c.providerErrorCode,upstreamRequestId:c.upstreamRequestId,failureResetAt:c.failureResetAt,authLifecycle:c.authLifecycle,quarantinedAt:h,quarantineReason:j,lastErrorAt:h,autoDisabledAt:h,autoDisabledReason:c.failureClass,consecutiveAuthFailures:Math.max(1,(a?.consecutiveAuthFailures||0)+1),backoffLevel:0}));let m=e?.displayName||e?.name||e?.email||a.slice(0,8);return k.warn("AUTH",`${m} quarantined immediately [${c.failureClass}]`),{shouldFallback:!0,cooldownMs:0}}}if("kiro"!==w){let d=t(m,l);return"reauth_required"===d.failureClass?B(a,b,w,i,d):A(a,b,c,e,i,l,n,d)}if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let x=(0,f.UM)(i,w),y=t(m,l),{failureClass:z}=y;if("shared_egress_waf"===z||(0,f.d5)(b,c))return await (0,d.updateProviderConnection)(a,{[x]:null}),k.warn("AUTH",`Kiro shared egress/WAF error; fallback without account punishment [${b}]`),{shouldFallback:!0,cooldownMs:0};if(function(a,b){if("invalid_model"===a)return!0;let c=String(b||"").toUpperCase();return/INVALID[_-]?MODEL|MODEL[_-]?(?:NOT[_-]?(?:FOUND|SUPPORTED)|UNSUPPORTED)/.test(c)}(z,y.providerErrorCode)){await (0,d.updateProviderConnection)(a,{[x]:null});let b=!1;try{await (0,h.FL)(a,i);let c=(await (0,d.getProviderConnections)({provider:w,isActive:!0})).filter(a=>!a.quarantinedAt).map(a=>a.id);b=!!i&&await (0,h.CY)(i,a,c)}catch(a){k.warn("AUTH",`Kiro model support cache update failed: ${a?.message||a}`)}return k.warn("AUTH",`Kiro model is unsupported by ${a.slice(0,8)}; ${b?"trying a known supporter":"not rotating to an unknown account"}`),{shouldFallback:b,cooldownMs:0}}if(function(a,b){if("invalid_request"===a||"request_error"===a)return!0;let c=String(b||"").toUpperCase();return/INVALID[_-]?(?:REQUEST|ARGUMENT)|VALIDATION|BAD[_-]?REQUEST|MALFORMED/.test(c)}(z,y.providerErrorCode)||(0,f.P0)(b,c))return await (0,d.updateProviderConnection)(a,{[x]:null}),k.warn("AUTH",`Kiro request error; no account lock or credential rotation [${b}]`),{shouldFallback:!1,cooldownMs:0};let D=(await (0,d.getProviderConnections)({provider:w})).find(b=>b.id===a),E=D?.backoffLevel||0,F=y.providerErrorCode||r((0,f.UO)(c)),G=D?.displayName||D?.name||D?.email||a.slice(0,8);if(o.has(z)){let c=new Date().toISOString(),e=u(z,b);return await (0,d.updateProviderConnection)(a,{[x]:null,isActive:!1,testStatus:"unavailable",lastError:e,errorCode:b,failureClass:z,providerErrorCode:F,upstreamRequestId:y.upstreamRequestId,failureResetAt:y.failureResetAt,authLifecycle:y.authLifecycle,quarantinedAt:c,quarantineReason:e,lastErrorAt:c,autoDisabledAt:c,autoDisabledReason:z,consecutiveAuthFailures:Math.max(1,(D?.consecutiveAuthFailures||0)+1),backoffLevel:0}),k.warn("AUTH",`${G} quarantined immediately [${z}]`),{shouldFallback:!0,cooldownMs:0}}let H=Number(l);if(Number.isFinite(H)&&H>Date.now()?(q=!0,s=Math.min(H-Date.now(),g.fh),v=0):{shouldFallback:q,cooldownMs:s,newBackoffLevel:v}=(0,f.hk)(b,c,E),!q)return await (0,d.updateProviderConnection)(a,{[x]:null}),{shouldFallback:!1,cooldownMs:0};let I=p.has(z)||403===b||408===b||429===b||b>=500,J=z||(429===b?"rate_limited":403===b?"permission_denied":b>=500?"upstream_transient":null),K=u(J,b),L=I?null:(0,f.LV)(w,i),M=(0,f.S5)(L,s,w),N=new Date().toISOString(),O=new Date(Date.now()+s).toISOString();await (0,d.updateProviderConnection)(a,{...M,[x]:null,testStatus:"unavailable",lastError:K,errorCode:b,failureClass:J,providerErrorCode:F,upstreamRequestId:y.upstreamRequestId,failureResetAt:y.failureResetAt,authLifecycle:y.authLifecycle,modelLockReason:{model:L||"__all",providerErrorCode:F,reason:K,lockedAt:N,resetsAt:O},lastErrorAt:N,backoffLevel:v??E,consecutiveAuthFailures:0});let P=Object.keys(M)[0];if(k.warn("AUTH",`${G} locked ${P} for ${Math.round(s/1e3)}s [${b}]`),!z&&(401===b||403===b)){let e=("string"==typeof c?c:"").toLowerCase();if(!["quota","payment","billing","entitlement","subscription","insufficient_quota"].some(a=>e.includes(a))&&["token expired","token invalid","invalid token","revoked","unauthorized","invalid api key","invalid_api_key","banned","suspended","restricted","account disabled"].some(a=>e.includes(a))){let c=(D?.consecutiveAuthFailures||0)+1,f=["banned","suspended","restricted","account disabled"].some(a=>e.includes(a));if(c>=3){let e=new Date().toISOString(),g=f?u("policy_suspended",b):"Kiro rejected this credential three consecutive times.";await (0,d.updateProviderConnection)(a,{isActive:!1,quarantinedAt:e,quarantineReason:g,failureClass:f?"policy_suspended":"authentication",autoDisabledAt:e,autoDisabledReason:f?"policy_suspended":"token_expired",consecutiveAuthFailures:c}),k.warn("AUTH",`${G} quarantined after ${c} unstructured auth failures`)}else await (0,d.updateProviderConnection)(a,{consecutiveAuthFailures:c})}}return{shouldFallback:!0,cooldownMs:s}}async function D(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,g=(0,j.rs)(e.provider),h=(0,f.LV)(g,c),l=Date.now(),m=(0,f.UM)(c,g),n=!1,o=!1,p=(a,b=!1)=>{if(!a||b&&(a.quarantinedAt||e.quarantinedAt))return null;let d=(a,b)=>{if(!a.startsWith(b))return!1;let d=a.slice(b.length);return"__all"===d||!c||(0,f.LV)(g,d)===h};if(b&&Object.keys(a).some(b=>(d(b,"modelLock_")||d(b,"modelRecoveryProbe_"))&&a[b]!==e[b]&&Date.parse(a[b])>l))return n=!0,null;let i=Object.keys(a).filter(a=>a.startsWith("modelLock_"));if("unavailable"!==a.testStatus&&!a.lastError&&0===i.length)return null;let j=i.filter(d=>{if(b&&a[d]!==e[d])return!1;let i=d.slice(10);if(c&&(0,f.LV)(g,i)===h||c&&"modelLock___all"===d)return!0;let j=a[d];return j&&new Date(j).getTime()<=l});if(0===j.length&&"unavailable"!==a.testStatus&&!a.lastError)return null;let k=i.filter(b=>!j.includes(b)&&Date.parse(a[b])>l),o={...Object.fromEntries(j.map(a=>[a,null]))};return b&&a[m]!==e[m]||(o[m]=null),0===k.length&&Object.assign(o,{testStatus:"active",lastError:null,errorCode:null,providerErrorCode:null,..."kiro"===g?{failureClass:null,upstreamRequestId:null,failureResetAt:null,authLifecycle:null}:{},modelLockReason:null,lastErrorAt:null,backoffLevel:0,consecutiveAuthFailures:0}),o};if("kiro"===g){await (0,d.Op)(a,a=>p(a,!0)),n&&k.debug("AUTH",`Kiro success did not clear newer failure state for ${a.slice(0,8)}`);return}if("codebuddy"===g||"codebuddy-cn"===g){let b=(0,i.kt)(e);await (0,d.Iu)(a,a=>{if(a.quarantinedAt||(0,i.uF)(a))return null;let c=(0,i.kt)(a);if(c&&c!==b)return null;let d=p(a)||{};return(b&&(0,i.kt)(a)===b&&(d.providerSpecificData=(0,i.US)(a.providerSpecificData),d[(0,f.UM)(null,g)]=null,o=!0),0===Object.keys(d).length)?null:{connection:d,...o?{quotaUsage:null}:{}}});return}let q=p(e);q&&await (0,d.updateProviderConnection)(a,q)}function E(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function F(a){return!!a&&await (0,d.ek)(a)}},91254:(a,b,c)=>{c.d(b,{CG:()=>p,QN:()=>k,US:()=>o,hN:()=>j,kt:()=>i,pX:()=>q,r_:()=>n,uF:()=>m});let d="codebuddyRuntimeExhaustedAt",e="codebuddyRuntimeExhaustedCode",f="codebuddyRuntimeRejectedAt",g="codebuddyRuntimeRejectedCode";function h(a){return a?.provider==="codebuddy"||a?.provider==="codebuddy-cn"}function i(a){return h(a)&&a.providerSpecificData?.[d]||null}function j(a){return!!i(a)}function k(a,b){return{...a||{},[d]:b,[e]:14018}}function l(a){return a?.provider!=="codebuddy-cn"?null:a.providerSpecificData?.[f]||null}function m(a){return!!l(a)}function n(a,b,c=11140){return{...a||{},[f]:b,[g]:c}}function o(a){let b={...a||{}};return delete b[d],delete b[e],b}function p(a){let b=o(a);return delete b[f],delete b[g],b}function q(a,b){if(!h(b))return a;let c=l(b),d=i(b);if(!c&&!d)return a;let e=a?.billingQuotas||a?.quotas||{};if(c)return{...a||{},message:"CodeBuddy CN chat API rejected this credential (11140); billing package balance is nominal and does not prove chat access.",billingQuotas:e,runtimeStatus:"credential_rejected",chatUsable:!1,runtimeRejectedAt:c,runtimeRejectedCode:Number(b.providerSpecificData?.[g])||11140};let f=Object.fromEntries(Object.entries(e).map(([a,b])=>{let c=Number(b?.total);return[a,{...b||{},...Number.isFinite(c)?{used:c}:{},remaining:0,remainingPercentage:0}]}));return{...a||{},message:"CodeBuddy chat API reported exhausted credits (14018); billing package balance is nominal until a chat request succeeds.",billingQuotas:e,quotas:f,runtimeStatus:"exhausted",chatUsable:!1,runtimeExhausted:!0,runtimeExhaustedAt:d,runtimeExhaustedCode:14018}}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},93930:(a,b,c)=>{c.d(b,{Z:()=>e});let d=Object.freeze([["unsupported_model",(a,b)=>Array.isArray(a.supportedModels)&&a.supportedModels.length>0&&!a.supportedModels.includes(b.model)],["unsupported_operation",(a,b)=>Array.isArray(a.supportedOperations)&&a.supportedOperations.length>0&&!a.supportedOperations.includes(b.operation)],["unsupported_capability",(a,b)=>{let c=new Set(a.capabilities||[]);return c.size>0&&(b.requiredCapabilities||[]).some(a=>!c.has(a))}],["api_key_model_restricted",(a,b)=>Array.isArray(b.allowedModels)&&b.allowedModels.length>0&&!b.allowedModels.includes(b.model)],["api_key_provider_restricted",(a,b)=>Array.isArray(b.allowedProviders)&&b.allowedProviders.length>0&&!b.allowedProviders.includes(a.provider)],["connection_restricted",(a,b)=>Array.isArray(b.allowedConnectionIds)&&b.allowedConnectionIds.length>0&&!b.allowedConnectionIds.includes(a.id)],["explicit_pin_mismatch",(a,b)=>!!b.pinnedConnectionId&&b.pinnedConnectionId!==a.id],["inactive",a=>!0!==a.isActive],["quarantined",a=>!!a.quarantinedAt],["reauth_required",a=>!0===a.reauthRequired],["model_locked",a=>!0===a.modelLocked],["quota_exhausted",(a,b)=>{let c=a.quota;return!!c&&!0===c.exhausted&&("last_successful"!==c.provenance||!(Number(c.remaining)>0&&Number(c.validUntilMs)>Number(b.nowMs||Date.now())))}],["circuit_open",a=>Object.values(a.circuits||{}).some(a=>a?.state==="open"||a?.state==="half_open"&&a?.probeAcquired!==!0)],["missing_transport",a=>!1===a.transportAvailable],["outbound_rejected",a=>!1===a.outboundAllowed]]);function e(a={},b={}){let c=d.filter(([,c])=>c(a,b)).map(([a])=>a);return Object.freeze({eligible:0===c.length,reasons:Object.freeze(c)})}}};
|