omniroute 1.0.2 → 1.0.4

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.
Files changed (722) hide show
  1. package/README.de.md +9 -4
  2. package/README.es.md +8 -4
  3. package/README.fr.md +8 -4
  4. package/README.it.md +9 -4
  5. package/README.md +22 -16
  6. package/README.pt-BR.md +8 -4
  7. package/README.ru.md +8 -4
  8. package/README.zh-CN.md +8 -4
  9. package/app/.next/BUILD_ID +1 -1
  10. package/app/.next/app-path-routes-manifest.json +28 -26
  11. package/app/.next/build-manifest.json +2 -2
  12. package/app/.next/prerender-manifest.json +27 -3
  13. package/app/.next/routes-manifest.json +12 -0
  14. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  15. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
  16. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  17. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  18. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  19. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  20. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  21. package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
  22. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js +2 -0
  23. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js.nft.json +1 -0
  24. package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -0
  25. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  26. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  27. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  28. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  29. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  30. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  31. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  32. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  33. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  34. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  35. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  36. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  37. package/app/.next/server/app/_global-error.html +2 -2
  38. package/app/.next/server/app/_global-error.rsc +1 -1
  39. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  40. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  41. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  42. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  43. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  44. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  45. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  46. package/app/.next/server/app/_not-found.html +1 -1
  47. package/app/.next/server/app/_not-found.rsc +3 -3
  48. package/app/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  49. package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  50. package/app/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  51. package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  52. package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  53. package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  54. package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  55. package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  56. package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  57. package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
  58. package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
  59. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  60. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  61. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +3 -3
  62. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  63. package/app/.next/server/app/api/cli-tools/backups/route.js +2 -2
  64. package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
  65. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
  66. package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  67. package/app/.next/server/app/api/cli-tools/cline-settings/route.js +1 -1
  68. package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  69. package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
  70. package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
  71. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +1 -1
  72. package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  73. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +1 -1
  74. package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  75. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
  76. package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  77. package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  78. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  79. package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  80. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
  81. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
  82. package/app/.next/server/app/api/cli-tools/status/route.js +2 -2
  83. package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
  84. package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
  85. package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
  86. package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
  87. package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
  88. package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  89. package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
  90. package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
  91. package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
  92. package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
  93. package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -1
  94. package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -1
  95. package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -1
  96. package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
  97. package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
  98. package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
  99. package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
  100. package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  101. package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  102. package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
  103. package/app/.next/server/app/api/logs/console/route.js +1 -0
  104. package/app/.next/server/app/api/logs/console/route.js.nft.json +1 -0
  105. package/app/.next/server/app/api/logs/console/route_client-reference-manifest.js +1 -0
  106. package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  107. package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  108. package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
  109. package/app/.next/server/app/api/models/route.js +2 -2
  110. package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  111. package/app/.next/server/app/api/monitoring/health/route.js +1 -1
  112. package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
  113. package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  114. package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  115. package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  116. package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  117. package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  118. package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  119. package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  120. package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
  121. package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
  122. package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
  123. package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  124. package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
  125. package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
  126. package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  127. package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  128. package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  129. package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  130. package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  131. package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  132. package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  133. package/app/.next/server/app/api/providers/route.js +1 -1
  134. package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  135. package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  136. package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  137. package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
  138. package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
  139. package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
  140. package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
  141. package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  142. package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  143. package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
  144. package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
  145. package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
  146. package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
  147. package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  148. package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  149. package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
  150. package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
  151. package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  152. package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
  153. package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
  154. package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
  155. package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
  156. package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
  157. package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
  158. package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
  159. package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
  160. package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  161. package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  162. package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  163. package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  164. package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  165. package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
  166. package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
  167. package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
  168. package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
  169. package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  170. package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  171. package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
  172. package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  173. package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  174. package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  175. package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  176. package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  177. package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
  178. package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  179. package/app/.next/server/app/api/v1/images/generations/route.js +1 -1
  180. package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  181. package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  182. package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  183. package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  184. package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
  185. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
  186. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js +1 -1
  187. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
  188. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js +1 -1
  189. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
  190. package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
  191. package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  192. package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
  193. package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  194. package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  195. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  196. package/app/.next/server/app/callback.html +1 -1
  197. package/app/.next/server/app/callback.rsc +3 -3
  198. package/app/.next/server/app/callback.segments/_full.segment.rsc +3 -3
  199. package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
  200. package/app/.next/server/app/callback.segments/_index.segment.rsc +3 -3
  201. package/app/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
  202. package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  203. package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
  204. package/app/.next/server/app/dashboard/analytics.html +2 -2
  205. package/app/.next/server/app/dashboard/analytics.rsc +5 -5
  206. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +2 -2
  207. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
  208. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  209. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  210. package/app/.next/server/app/dashboard/analytics.segments/_full.segment.rsc +5 -5
  211. package/app/.next/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
  212. package/app/.next/server/app/dashboard/analytics.segments/_index.segment.rsc +3 -3
  213. package/app/.next/server/app/dashboard/analytics.segments/_tree.segment.rsc +2 -2
  214. package/app/.next/server/app/dashboard/audit-log.html +1 -1
  215. package/app/.next/server/app/dashboard/audit-log.rsc +4 -4
  216. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk/dashboard/audit-log/__PAGE__.segment.rsc +1 -1
  217. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk/dashboard/audit-log.segment.rsc +1 -1
  218. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  219. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  220. package/app/.next/server/app/dashboard/audit-log.segments/_full.segment.rsc +4 -4
  221. package/app/.next/server/app/dashboard/audit-log.segments/_head.segment.rsc +1 -1
  222. package/app/.next/server/app/dashboard/audit-log.segments/_index.segment.rsc +3 -3
  223. package/app/.next/server/app/dashboard/audit-log.segments/_tree.segment.rsc +2 -2
  224. package/app/.next/server/app/dashboard/cli-tools.html +1 -1
  225. package/app/.next/server/app/dashboard/cli-tools.rsc +6 -6
  226. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  227. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  228. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  229. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  230. package/app/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  231. package/app/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  232. package/app/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  233. package/app/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  234. package/app/.next/server/app/dashboard/combos.html +1 -1
  235. package/app/.next/server/app/dashboard/combos.rsc +5 -5
  236. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  237. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  238. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  239. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  240. package/app/.next/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
  241. package/app/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  242. package/app/.next/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  243. package/app/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  244. package/app/.next/server/app/dashboard/costs.html +1 -1
  245. package/app/.next/server/app/dashboard/costs.rsc +5 -5
  246. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs/__PAGE__.segment.rsc +2 -2
  247. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs.segment.rsc +1 -1
  248. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  249. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  250. package/app/.next/server/app/dashboard/costs.segments/_full.segment.rsc +5 -5
  251. package/app/.next/server/app/dashboard/costs.segments/_head.segment.rsc +1 -1
  252. package/app/.next/server/app/dashboard/costs.segments/_index.segment.rsc +3 -3
  253. package/app/.next/server/app/dashboard/costs.segments/_tree.segment.rsc +2 -2
  254. package/app/.next/server/app/dashboard/endpoint.html +1 -1
  255. package/app/.next/server/app/dashboard/endpoint.rsc +6 -6
  256. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  257. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  258. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  259. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  260. package/app/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  261. package/app/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  262. package/app/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  263. package/app/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  264. package/app/.next/server/app/dashboard/health.html +1 -1
  265. package/app/.next/server/app/dashboard/health.rsc +5 -5
  266. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health/__PAGE__.segment.rsc +2 -2
  267. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health.segment.rsc +1 -1
  268. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  269. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  270. package/app/.next/server/app/dashboard/health.segments/_full.segment.rsc +5 -5
  271. package/app/.next/server/app/dashboard/health.segments/_head.segment.rsc +1 -1
  272. package/app/.next/server/app/dashboard/health.segments/_index.segment.rsc +3 -3
  273. package/app/.next/server/app/dashboard/health.segments/_tree.segment.rsc +2 -2
  274. package/app/.next/server/app/dashboard/limits.html +2 -2
  275. package/app/.next/server/app/dashboard/limits.rsc +5 -5
  276. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard/limits/__PAGE__.segment.rsc +2 -2
  277. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard/limits.segment.rsc +1 -1
  278. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  279. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  280. package/app/.next/server/app/dashboard/limits.segments/_full.segment.rsc +5 -5
  281. package/app/.next/server/app/dashboard/limits.segments/_head.segment.rsc +1 -1
  282. package/app/.next/server/app/dashboard/limits.segments/_index.segment.rsc +3 -3
  283. package/app/.next/server/app/dashboard/limits.segments/_tree.segment.rsc +2 -2
  284. package/app/.next/server/app/dashboard/logs.html +1 -0
  285. package/app/.next/server/app/dashboard/logs.meta +17 -0
  286. package/app/.next/server/app/dashboard/logs.rsc +25 -0
  287. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard/logs/__PAGE__.segment.rsc +9 -0
  288. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard/logs.segment.rsc +4 -0
  289. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +4 -0
  290. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk.segment.rsc +5 -0
  291. package/app/.next/server/app/dashboard/logs.segments/_full.segment.rsc +25 -0
  292. package/app/.next/server/app/dashboard/logs.segments/_head.segment.rsc +6 -0
  293. package/app/.next/server/app/dashboard/logs.segments/_index.segment.rsc +10 -0
  294. package/app/.next/server/app/dashboard/logs.segments/_tree.segment.rsc +5 -0
  295. package/app/.next/server/app/dashboard/onboarding.html +1 -1
  296. package/app/.next/server/app/dashboard/onboarding.rsc +4 -4
  297. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding/__PAGE__.segment.rsc +1 -1
  298. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding.segment.rsc +1 -1
  299. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  300. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  301. package/app/.next/server/app/dashboard/onboarding.segments/_full.segment.rsc +4 -4
  302. package/app/.next/server/app/dashboard/onboarding.segments/_head.segment.rsc +1 -1
  303. package/app/.next/server/app/dashboard/onboarding.segments/_index.segment.rsc +3 -3
  304. package/app/.next/server/app/dashboard/onboarding.segments/_tree.segment.rsc +2 -2
  305. package/app/.next/server/app/dashboard/profile.html +1 -1
  306. package/app/.next/server/app/dashboard/profile.rsc +4 -4
  307. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
  308. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  309. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  310. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  311. package/app/.next/server/app/dashboard/profile.segments/_full.segment.rsc +4 -4
  312. package/app/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  313. package/app/.next/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  314. package/app/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  315. package/app/.next/server/app/dashboard/providers/new.html +2 -2
  316. package/app/.next/server/app/dashboard/providers/new.rsc +5 -5
  317. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  318. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  319. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  320. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  321. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  322. package/app/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
  323. package/app/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  324. package/app/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  325. package/app/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  326. package/app/.next/server/app/dashboard/providers.html +2 -2
  327. package/app/.next/server/app/dashboard/providers.rsc +5 -5
  328. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  329. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  330. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  331. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  332. package/app/.next/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
  333. package/app/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  334. package/app/.next/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  335. package/app/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  336. package/app/.next/server/app/dashboard/settings/pricing.html +2 -2
  337. package/app/.next/server/app/dashboard/settings/pricing.rsc +4 -4
  338. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  339. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
  340. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
  341. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  342. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  343. package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  344. package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  345. package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  346. package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  347. package/app/.next/server/app/dashboard/settings.html +2 -2
  348. package/app/.next/server/app/dashboard/settings.rsc +5 -5
  349. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +2 -2
  350. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
  351. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  352. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  353. package/app/.next/server/app/dashboard/settings.segments/_full.segment.rsc +5 -5
  354. package/app/.next/server/app/dashboard/settings.segments/_head.segment.rsc +1 -1
  355. package/app/.next/server/app/dashboard/settings.segments/_index.segment.rsc +3 -3
  356. package/app/.next/server/app/dashboard/settings.segments/_tree.segment.rsc +2 -2
  357. package/app/.next/server/app/dashboard/translator.html +2 -2
  358. package/app/.next/server/app/dashboard/translator.rsc +5 -5
  359. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  360. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  361. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  362. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  363. package/app/.next/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
  364. package/app/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  365. package/app/.next/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  366. package/app/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  367. package/app/.next/server/app/dashboard/usage.html +1 -1
  368. package/app/.next/server/app/dashboard/usage.rsc +5 -5
  369. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  370. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  371. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  372. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  373. package/app/.next/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
  374. package/app/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  375. package/app/.next/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  376. package/app/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  377. package/app/.next/server/app/docs/page.js +1 -1
  378. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  379. package/app/.next/server/app/docs.html +1 -1
  380. package/app/.next/server/app/docs.rsc +3 -3
  381. package/app/.next/server/app/docs.segments/_full.segment.rsc +3 -3
  382. package/app/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  383. package/app/.next/server/app/docs.segments/_index.segment.rsc +3 -3
  384. package/app/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  385. package/app/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  386. package/app/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  387. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  388. package/app/.next/server/app/forbidden.html +1 -1
  389. package/app/.next/server/app/forbidden.rsc +3 -3
  390. package/app/.next/server/app/forbidden.segments/_full.segment.rsc +3 -3
  391. package/app/.next/server/app/forbidden.segments/_head.segment.rsc +1 -1
  392. package/app/.next/server/app/forbidden.segments/_index.segment.rsc +3 -3
  393. package/app/.next/server/app/forbidden.segments/_tree.segment.rsc +2 -2
  394. package/app/.next/server/app/forbidden.segments/forbidden/__PAGE__.segment.rsc +1 -1
  395. package/app/.next/server/app/forbidden.segments/forbidden.segment.rsc +1 -1
  396. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  397. package/app/.next/server/app/forgot-password.html +1 -1
  398. package/app/.next/server/app/forgot-password.rsc +4 -4
  399. package/app/.next/server/app/forgot-password.segments/_full.segment.rsc +4 -4
  400. package/app/.next/server/app/forgot-password.segments/_head.segment.rsc +1 -1
  401. package/app/.next/server/app/forgot-password.segments/_index.segment.rsc +3 -3
  402. package/app/.next/server/app/forgot-password.segments/_tree.segment.rsc +2 -2
  403. package/app/.next/server/app/forgot-password.segments/forgot-password/__PAGE__.segment.rsc +2 -2
  404. package/app/.next/server/app/forgot-password.segments/forgot-password.segment.rsc +1 -1
  405. package/app/.next/server/app/index.html +1 -1
  406. package/app/.next/server/app/index.rsc +3 -3
  407. package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  408. package/app/.next/server/app/index.segments/_full.segment.rsc +3 -3
  409. package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
  410. package/app/.next/server/app/index.segments/_index.segment.rsc +3 -3
  411. package/app/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  412. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  413. package/app/.next/server/app/landing.html +1 -1
  414. package/app/.next/server/app/landing.rsc +3 -3
  415. package/app/.next/server/app/landing.segments/_full.segment.rsc +3 -3
  416. package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
  417. package/app/.next/server/app/landing.segments/_index.segment.rsc +3 -3
  418. package/app/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
  419. package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  420. package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
  421. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  422. package/app/.next/server/app/login.html +1 -1
  423. package/app/.next/server/app/login.rsc +4 -4
  424. package/app/.next/server/app/login.segments/_full.segment.rsc +4 -4
  425. package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
  426. package/app/.next/server/app/login.segments/_index.segment.rsc +3 -3
  427. package/app/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  428. package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  429. package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
  430. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  431. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  432. package/app/.next/server/app/privacy.html +1 -1
  433. package/app/.next/server/app/privacy.rsc +3 -3
  434. package/app/.next/server/app/privacy.segments/_full.segment.rsc +3 -3
  435. package/app/.next/server/app/privacy.segments/_head.segment.rsc +1 -1
  436. package/app/.next/server/app/privacy.segments/_index.segment.rsc +3 -3
  437. package/app/.next/server/app/privacy.segments/_tree.segment.rsc +2 -2
  438. package/app/.next/server/app/privacy.segments/privacy/__PAGE__.segment.rsc +1 -1
  439. package/app/.next/server/app/privacy.segments/privacy.segment.rsc +1 -1
  440. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  441. package/app/.next/server/app/terms.html +1 -1
  442. package/app/.next/server/app/terms.rsc +3 -3
  443. package/app/.next/server/app/terms.segments/_full.segment.rsc +3 -3
  444. package/app/.next/server/app/terms.segments/_head.segment.rsc +1 -1
  445. package/app/.next/server/app/terms.segments/_index.segment.rsc +3 -3
  446. package/app/.next/server/app/terms.segments/_tree.segment.rsc +2 -2
  447. package/app/.next/server/app/terms.segments/terms/__PAGE__.segment.rsc +1 -1
  448. package/app/.next/server/app/terms.segments/terms.segment.rsc +1 -1
  449. package/app/.next/server/app-paths-manifest.json +28 -26
  450. package/app/.next/server/chunks/2180.js +258 -0
  451. package/app/.next/server/chunks/2767.js +1 -1
  452. package/app/.next/server/chunks/2852.js +2 -0
  453. package/app/.next/server/chunks/73.js +1 -1
  454. package/app/.next/server/chunks/9824.js +2 -2
  455. package/app/.next/server/chunks/9979.js +1 -1
  456. package/app/.next/server/instrumentation.js +1 -1
  457. package/app/.next/server/pages/404.html +1 -1
  458. package/app/.next/server/pages/500.html +2 -2
  459. package/app/.next/server/server-reference-manifest.js +1 -1
  460. package/app/.next/server/server-reference-manifest.json +1 -1
  461. package/app/.next/static/_E6bKOntID1KdXsXqP-0D/_buildManifest.js +1 -0
  462. package/app/.next/static/chunks/{5846-69e259486db2f6f8.js → 5846-637bc7d944d54c60.js} +1 -1
  463. package/app/.next/static/chunks/993-aedc5e4fb7d4a28b.js +21 -0
  464. package/app/.next/static/chunks/app/(dashboard)/dashboard/logs/page-88e667cb7ae99420.js +1 -0
  465. package/app/.next/static/chunks/app/{_global-error/page-2e6b2c37e502d893.js → (dashboard)/dashboard/profile/page-58a4e7114d200844.js} +1 -1
  466. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-e6c8321031b5bbef.js +1 -0
  467. package/app/.next/static/chunks/app/{_not-found/page-2e6b2c37e502d893.js → _global-error/page-58a4e7114d200844.js} +1 -1
  468. package/app/.next/static/chunks/app/{(dashboard)/dashboard/profile/page-2e6b2c37e502d893.js → _not-found/page-58a4e7114d200844.js} +1 -1
  469. package/app/.next/static/chunks/app/api/auth/login/{route-2e6b2c37e502d893.js → route-58a4e7114d200844.js} +1 -1
  470. package/app/.next/static/chunks/app/api/auth/logout/route-58a4e7114d200844.js +1 -0
  471. package/app/.next/static/chunks/app/api/auth/status/route-58a4e7114d200844.js +1 -0
  472. package/app/.next/static/chunks/app/api/cache/route-58a4e7114d200844.js +1 -0
  473. package/app/.next/static/chunks/app/api/cache/stats/route-58a4e7114d200844.js +1 -0
  474. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-58a4e7114d200844.js +1 -0
  475. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-58a4e7114d200844.js +1 -0
  476. package/app/.next/static/chunks/app/api/cli-tools/backups/route-58a4e7114d200844.js +1 -0
  477. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-58a4e7114d200844.js +1 -0
  478. package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-58a4e7114d200844.js +1 -0
  479. package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-58a4e7114d200844.js +1 -0
  480. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-58a4e7114d200844.js +1 -0
  481. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-58a4e7114d200844.js +1 -0
  482. package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-58a4e7114d200844.js +1 -0
  483. package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-58a4e7114d200844.js +1 -0
  484. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-58a4e7114d200844.js +1 -0
  485. package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-58a4e7114d200844.js +1 -0
  486. package/app/.next/static/chunks/app/api/cli-tools/status/route-58a4e7114d200844.js +1 -0
  487. package/app/.next/static/chunks/app/api/cloud/auth/route-58a4e7114d200844.js +1 -0
  488. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-58a4e7114d200844.js +1 -0
  489. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-58a4e7114d200844.js +1 -0
  490. package/app/.next/static/chunks/app/api/cloud/models/alias/route-58a4e7114d200844.js +1 -0
  491. package/app/.next/static/chunks/app/api/combos/[id]/route-58a4e7114d200844.js +1 -0
  492. package/app/.next/static/chunks/app/api/combos/metrics/route-58a4e7114d200844.js +1 -0
  493. package/app/.next/static/chunks/app/api/combos/route-58a4e7114d200844.js +1 -0
  494. package/app/.next/static/chunks/app/api/combos/test/route-58a4e7114d200844.js +1 -0
  495. package/app/.next/static/chunks/app/api/compliance/audit-log/route-58a4e7114d200844.js +1 -0
  496. package/app/.next/static/chunks/app/api/db-backups/export/route-58a4e7114d200844.js +1 -0
  497. package/app/.next/static/chunks/app/api/db-backups/exportAll/route-58a4e7114d200844.js +1 -0
  498. package/app/.next/static/chunks/app/api/db-backups/import/route-58a4e7114d200844.js +1 -0
  499. package/app/.next/static/chunks/app/api/db-backups/route-58a4e7114d200844.js +1 -0
  500. package/app/.next/static/chunks/app/api/evals/[suiteId]/route-58a4e7114d200844.js +1 -0
  501. package/app/.next/static/chunks/app/api/evals/route-58a4e7114d200844.js +1 -0
  502. package/app/.next/static/chunks/app/api/fallback/chains/route-58a4e7114d200844.js +1 -0
  503. package/app/.next/static/chunks/app/api/init/route-58a4e7114d200844.js +1 -0
  504. package/app/.next/static/chunks/app/api/keys/[id]/route-58a4e7114d200844.js +1 -0
  505. package/app/.next/static/chunks/app/api/keys/route-58a4e7114d200844.js +1 -0
  506. package/app/.next/static/chunks/app/api/logs/console/route-58a4e7114d200844.js +1 -0
  507. package/app/.next/static/chunks/app/api/models/alias/route-58a4e7114d200844.js +1 -0
  508. package/app/.next/static/chunks/app/api/models/availability/route-58a4e7114d200844.js +1 -0
  509. package/app/.next/static/chunks/app/api/models/catalog/route-58a4e7114d200844.js +1 -0
  510. package/app/.next/static/chunks/app/api/models/route-58a4e7114d200844.js +1 -0
  511. package/app/.next/static/chunks/app/api/monitoring/health/route-58a4e7114d200844.js +1 -0
  512. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-58a4e7114d200844.js +1 -0
  513. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-58a4e7114d200844.js +1 -0
  514. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-58a4e7114d200844.js +1 -0
  515. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-58a4e7114d200844.js +1 -0
  516. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-58a4e7114d200844.js +1 -0
  517. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-58a4e7114d200844.js +1 -0
  518. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-58a4e7114d200844.js +1 -0
  519. package/app/.next/static/chunks/app/api/policies/route-58a4e7114d200844.js +1 -0
  520. package/app/.next/static/chunks/app/api/pricing/defaults/route-58a4e7114d200844.js +1 -0
  521. package/app/.next/static/chunks/app/api/pricing/models/route-58a4e7114d200844.js +1 -0
  522. package/app/.next/static/chunks/app/api/pricing/route-58a4e7114d200844.js +1 -0
  523. package/app/.next/static/chunks/app/api/provider-metrics/route-58a4e7114d200844.js +1 -0
  524. package/app/.next/static/chunks/app/api/provider-models/route-58a4e7114d200844.js +1 -0
  525. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-58a4e7114d200844.js +1 -0
  526. package/app/.next/static/chunks/app/api/provider-nodes/route-58a4e7114d200844.js +1 -0
  527. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-58a4e7114d200844.js +1 -0
  528. package/app/.next/static/chunks/app/api/providers/[id]/models/route-58a4e7114d200844.js +1 -0
  529. package/app/.next/static/chunks/app/api/providers/[id]/route-58a4e7114d200844.js +1 -0
  530. package/app/.next/static/chunks/app/api/providers/[id]/test/route-58a4e7114d200844.js +1 -0
  531. package/app/.next/static/chunks/app/api/providers/client/route-58a4e7114d200844.js +1 -0
  532. package/app/.next/static/chunks/app/api/providers/route-58a4e7114d200844.js +1 -0
  533. package/app/.next/static/chunks/app/api/providers/test-batch/route-58a4e7114d200844.js +1 -0
  534. package/app/.next/static/chunks/app/api/providers/validate/route-58a4e7114d200844.js +1 -0
  535. package/app/.next/static/chunks/app/api/rate-limit/route-58a4e7114d200844.js +1 -0
  536. package/app/.next/static/chunks/app/api/rate-limits/route-58a4e7114d200844.js +1 -0
  537. package/app/.next/static/chunks/app/api/resilience/reset/route-58a4e7114d200844.js +1 -0
  538. package/app/.next/static/chunks/app/api/resilience/route-58a4e7114d200844.js +1 -0
  539. package/app/.next/static/chunks/app/api/restart/route-58a4e7114d200844.js +1 -0
  540. package/app/.next/static/chunks/app/api/sessions/route-58a4e7114d200844.js +1 -0
  541. package/app/.next/static/chunks/app/api/settings/combo-defaults/route-58a4e7114d200844.js +1 -0
  542. package/app/.next/static/chunks/app/api/settings/ip-filter/route-58a4e7114d200844.js +1 -0
  543. package/app/.next/static/chunks/app/api/settings/proxy/route-58a4e7114d200844.js +1 -0
  544. package/app/.next/static/chunks/app/api/settings/proxy/test/route-58a4e7114d200844.js +1 -0
  545. package/app/.next/static/chunks/app/api/settings/require-login/route-58a4e7114d200844.js +1 -0
  546. package/app/.next/static/chunks/app/api/settings/route-58a4e7114d200844.js +1 -0
  547. package/app/.next/static/chunks/app/api/settings/system-prompt/route-58a4e7114d200844.js +1 -0
  548. package/app/.next/static/chunks/app/api/settings/thinking-budget/route-58a4e7114d200844.js +1 -0
  549. package/app/.next/static/chunks/app/api/shutdown/route-58a4e7114d200844.js +1 -0
  550. package/app/.next/static/chunks/app/api/storage/health/route-58a4e7114d200844.js +1 -0
  551. package/app/.next/static/chunks/app/api/sync/cloud/route-58a4e7114d200844.js +1 -0
  552. package/app/.next/static/chunks/app/api/sync/initialize/route-58a4e7114d200844.js +1 -0
  553. package/app/.next/static/chunks/app/api/tags/route-58a4e7114d200844.js +1 -0
  554. package/app/.next/static/chunks/app/api/telemetry/summary/route-58a4e7114d200844.js +1 -0
  555. package/app/.next/static/chunks/app/api/token-health/route-58a4e7114d200844.js +1 -0
  556. package/app/.next/static/chunks/app/api/translator/detect/route-58a4e7114d200844.js +1 -0
  557. package/app/.next/static/chunks/app/api/translator/history/route-58a4e7114d200844.js +1 -0
  558. package/app/.next/static/chunks/app/api/translator/load/route-58a4e7114d200844.js +1 -0
  559. package/app/.next/static/chunks/app/api/translator/save/route-58a4e7114d200844.js +1 -0
  560. package/app/.next/static/chunks/app/api/translator/send/route-58a4e7114d200844.js +1 -0
  561. package/app/.next/static/chunks/app/api/translator/translate/route-58a4e7114d200844.js +1 -0
  562. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-58a4e7114d200844.js +1 -0
  563. package/app/.next/static/chunks/app/api/usage/analytics/route-58a4e7114d200844.js +1 -0
  564. package/app/.next/static/chunks/app/api/usage/budget/route-58a4e7114d200844.js +1 -0
  565. package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-58a4e7114d200844.js +1 -0
  566. package/app/.next/static/chunks/app/api/usage/call-logs/route-58a4e7114d200844.js +1 -0
  567. package/app/.next/static/chunks/app/api/usage/history/route-58a4e7114d200844.js +1 -0
  568. package/app/.next/static/chunks/app/api/usage/logs/route-58a4e7114d200844.js +1 -0
  569. package/app/.next/static/chunks/app/api/usage/proxy-logs/route-58a4e7114d200844.js +1 -0
  570. package/app/.next/static/chunks/app/api/usage/request-logs/route-58a4e7114d200844.js +1 -0
  571. package/app/.next/static/chunks/app/api/v1/api/chat/route-58a4e7114d200844.js +1 -0
  572. package/app/.next/static/chunks/app/api/v1/audio/speech/route-58a4e7114d200844.js +1 -0
  573. package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-58a4e7114d200844.js +1 -0
  574. package/app/.next/static/chunks/app/api/v1/chat/completions/route-58a4e7114d200844.js +1 -0
  575. package/app/.next/static/chunks/app/api/v1/embeddings/route-58a4e7114d200844.js +1 -0
  576. package/app/.next/static/chunks/app/api/v1/images/generations/route-58a4e7114d200844.js +1 -0
  577. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-58a4e7114d200844.js +1 -0
  578. package/app/.next/static/chunks/app/api/v1/messages/route-58a4e7114d200844.js +1 -0
  579. package/app/.next/static/chunks/app/api/v1/models/route-58a4e7114d200844.js +1 -0
  580. package/app/.next/static/chunks/app/api/v1/moderations/route-58a4e7114d200844.js +1 -0
  581. package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-58a4e7114d200844.js +1 -0
  582. package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-58a4e7114d200844.js +1 -0
  583. package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-58a4e7114d200844.js +1 -0
  584. package/app/.next/static/chunks/app/api/v1/rerank/route-58a4e7114d200844.js +1 -0
  585. package/app/.next/static/chunks/app/api/v1/responses/route-58a4e7114d200844.js +1 -0
  586. package/app/.next/static/chunks/app/api/v1/route-58a4e7114d200844.js +1 -0
  587. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-58a4e7114d200844.js +1 -0
  588. package/app/.next/static/chunks/app/api/v1beta/models/route-58a4e7114d200844.js +1 -0
  589. package/app/.next/static/chunks/app/page-58a4e7114d200844.js +1 -0
  590. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-58a4e7114d200844.js +1 -0
  591. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-58a4e7114d200844.js +1 -0
  592. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-58a4e7114d200844.js +1 -0
  593. package/app/.next/static/css/c5b80d2d58d2e417.css +1 -0
  594. package/app/package.json +1 -1
  595. package/package.json +1 -1
  596. package/app/.next/static/chunks/993-5102e3fd1db64935.js +0 -21
  597. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-98c6b97d0c195a2c.js +0 -1
  598. package/app/.next/static/chunks/app/api/auth/logout/route-2e6b2c37e502d893.js +0 -1
  599. package/app/.next/static/chunks/app/api/auth/status/route-2e6b2c37e502d893.js +0 -1
  600. package/app/.next/static/chunks/app/api/cache/route-2e6b2c37e502d893.js +0 -1
  601. package/app/.next/static/chunks/app/api/cache/stats/route-2e6b2c37e502d893.js +0 -1
  602. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-2e6b2c37e502d893.js +0 -1
  603. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-2e6b2c37e502d893.js +0 -1
  604. package/app/.next/static/chunks/app/api/cli-tools/backups/route-2e6b2c37e502d893.js +0 -1
  605. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-2e6b2c37e502d893.js +0 -1
  606. package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-2e6b2c37e502d893.js +0 -1
  607. package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-2e6b2c37e502d893.js +0 -1
  608. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-2e6b2c37e502d893.js +0 -1
  609. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-2e6b2c37e502d893.js +0 -1
  610. package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-2e6b2c37e502d893.js +0 -1
  611. package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-2e6b2c37e502d893.js +0 -1
  612. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-2e6b2c37e502d893.js +0 -1
  613. package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-2e6b2c37e502d893.js +0 -1
  614. package/app/.next/static/chunks/app/api/cli-tools/status/route-2e6b2c37e502d893.js +0 -1
  615. package/app/.next/static/chunks/app/api/cloud/auth/route-2e6b2c37e502d893.js +0 -1
  616. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-2e6b2c37e502d893.js +0 -1
  617. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-2e6b2c37e502d893.js +0 -1
  618. package/app/.next/static/chunks/app/api/cloud/models/alias/route-2e6b2c37e502d893.js +0 -1
  619. package/app/.next/static/chunks/app/api/combos/[id]/route-2e6b2c37e502d893.js +0 -1
  620. package/app/.next/static/chunks/app/api/combos/metrics/route-2e6b2c37e502d893.js +0 -1
  621. package/app/.next/static/chunks/app/api/combos/route-2e6b2c37e502d893.js +0 -1
  622. package/app/.next/static/chunks/app/api/combos/test/route-2e6b2c37e502d893.js +0 -1
  623. package/app/.next/static/chunks/app/api/compliance/audit-log/route-2e6b2c37e502d893.js +0 -1
  624. package/app/.next/static/chunks/app/api/db-backups/export/route-2e6b2c37e502d893.js +0 -1
  625. package/app/.next/static/chunks/app/api/db-backups/exportAll/route-2e6b2c37e502d893.js +0 -1
  626. package/app/.next/static/chunks/app/api/db-backups/import/route-2e6b2c37e502d893.js +0 -1
  627. package/app/.next/static/chunks/app/api/db-backups/route-2e6b2c37e502d893.js +0 -1
  628. package/app/.next/static/chunks/app/api/evals/[suiteId]/route-2e6b2c37e502d893.js +0 -1
  629. package/app/.next/static/chunks/app/api/evals/route-2e6b2c37e502d893.js +0 -1
  630. package/app/.next/static/chunks/app/api/fallback/chains/route-2e6b2c37e502d893.js +0 -1
  631. package/app/.next/static/chunks/app/api/init/route-2e6b2c37e502d893.js +0 -1
  632. package/app/.next/static/chunks/app/api/keys/[id]/route-2e6b2c37e502d893.js +0 -1
  633. package/app/.next/static/chunks/app/api/keys/route-2e6b2c37e502d893.js +0 -1
  634. package/app/.next/static/chunks/app/api/models/alias/route-2e6b2c37e502d893.js +0 -1
  635. package/app/.next/static/chunks/app/api/models/availability/route-2e6b2c37e502d893.js +0 -1
  636. package/app/.next/static/chunks/app/api/models/catalog/route-2e6b2c37e502d893.js +0 -1
  637. package/app/.next/static/chunks/app/api/models/route-2e6b2c37e502d893.js +0 -1
  638. package/app/.next/static/chunks/app/api/monitoring/health/route-2e6b2c37e502d893.js +0 -1
  639. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-2e6b2c37e502d893.js +0 -1
  640. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-2e6b2c37e502d893.js +0 -1
  641. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-2e6b2c37e502d893.js +0 -1
  642. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-2e6b2c37e502d893.js +0 -1
  643. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-2e6b2c37e502d893.js +0 -1
  644. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-2e6b2c37e502d893.js +0 -1
  645. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-2e6b2c37e502d893.js +0 -1
  646. package/app/.next/static/chunks/app/api/policies/route-2e6b2c37e502d893.js +0 -1
  647. package/app/.next/static/chunks/app/api/pricing/defaults/route-2e6b2c37e502d893.js +0 -1
  648. package/app/.next/static/chunks/app/api/pricing/models/route-2e6b2c37e502d893.js +0 -1
  649. package/app/.next/static/chunks/app/api/pricing/route-2e6b2c37e502d893.js +0 -1
  650. package/app/.next/static/chunks/app/api/provider-metrics/route-2e6b2c37e502d893.js +0 -1
  651. package/app/.next/static/chunks/app/api/provider-models/route-2e6b2c37e502d893.js +0 -1
  652. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-2e6b2c37e502d893.js +0 -1
  653. package/app/.next/static/chunks/app/api/provider-nodes/route-2e6b2c37e502d893.js +0 -1
  654. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-2e6b2c37e502d893.js +0 -1
  655. package/app/.next/static/chunks/app/api/providers/[id]/models/route-2e6b2c37e502d893.js +0 -1
  656. package/app/.next/static/chunks/app/api/providers/[id]/route-2e6b2c37e502d893.js +0 -1
  657. package/app/.next/static/chunks/app/api/providers/[id]/test/route-2e6b2c37e502d893.js +0 -1
  658. package/app/.next/static/chunks/app/api/providers/client/route-2e6b2c37e502d893.js +0 -1
  659. package/app/.next/static/chunks/app/api/providers/route-2e6b2c37e502d893.js +0 -1
  660. package/app/.next/static/chunks/app/api/providers/test-batch/route-2e6b2c37e502d893.js +0 -1
  661. package/app/.next/static/chunks/app/api/providers/validate/route-2e6b2c37e502d893.js +0 -1
  662. package/app/.next/static/chunks/app/api/rate-limit/route-2e6b2c37e502d893.js +0 -1
  663. package/app/.next/static/chunks/app/api/rate-limits/route-2e6b2c37e502d893.js +0 -1
  664. package/app/.next/static/chunks/app/api/resilience/reset/route-2e6b2c37e502d893.js +0 -1
  665. package/app/.next/static/chunks/app/api/resilience/route-2e6b2c37e502d893.js +0 -1
  666. package/app/.next/static/chunks/app/api/restart/route-2e6b2c37e502d893.js +0 -1
  667. package/app/.next/static/chunks/app/api/sessions/route-2e6b2c37e502d893.js +0 -1
  668. package/app/.next/static/chunks/app/api/settings/combo-defaults/route-2e6b2c37e502d893.js +0 -1
  669. package/app/.next/static/chunks/app/api/settings/ip-filter/route-2e6b2c37e502d893.js +0 -1
  670. package/app/.next/static/chunks/app/api/settings/proxy/route-2e6b2c37e502d893.js +0 -1
  671. package/app/.next/static/chunks/app/api/settings/proxy/test/route-2e6b2c37e502d893.js +0 -1
  672. package/app/.next/static/chunks/app/api/settings/require-login/route-2e6b2c37e502d893.js +0 -1
  673. package/app/.next/static/chunks/app/api/settings/route-2e6b2c37e502d893.js +0 -1
  674. package/app/.next/static/chunks/app/api/settings/system-prompt/route-2e6b2c37e502d893.js +0 -1
  675. package/app/.next/static/chunks/app/api/settings/thinking-budget/route-2e6b2c37e502d893.js +0 -1
  676. package/app/.next/static/chunks/app/api/shutdown/route-2e6b2c37e502d893.js +0 -1
  677. package/app/.next/static/chunks/app/api/storage/health/route-2e6b2c37e502d893.js +0 -1
  678. package/app/.next/static/chunks/app/api/sync/cloud/route-2e6b2c37e502d893.js +0 -1
  679. package/app/.next/static/chunks/app/api/sync/initialize/route-2e6b2c37e502d893.js +0 -1
  680. package/app/.next/static/chunks/app/api/tags/route-2e6b2c37e502d893.js +0 -1
  681. package/app/.next/static/chunks/app/api/telemetry/summary/route-2e6b2c37e502d893.js +0 -1
  682. package/app/.next/static/chunks/app/api/token-health/route-2e6b2c37e502d893.js +0 -1
  683. package/app/.next/static/chunks/app/api/translator/detect/route-2e6b2c37e502d893.js +0 -1
  684. package/app/.next/static/chunks/app/api/translator/history/route-2e6b2c37e502d893.js +0 -1
  685. package/app/.next/static/chunks/app/api/translator/load/route-2e6b2c37e502d893.js +0 -1
  686. package/app/.next/static/chunks/app/api/translator/save/route-2e6b2c37e502d893.js +0 -1
  687. package/app/.next/static/chunks/app/api/translator/send/route-2e6b2c37e502d893.js +0 -1
  688. package/app/.next/static/chunks/app/api/translator/translate/route-2e6b2c37e502d893.js +0 -1
  689. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-2e6b2c37e502d893.js +0 -1
  690. package/app/.next/static/chunks/app/api/usage/analytics/route-2e6b2c37e502d893.js +0 -1
  691. package/app/.next/static/chunks/app/api/usage/budget/route-2e6b2c37e502d893.js +0 -1
  692. package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-2e6b2c37e502d893.js +0 -1
  693. package/app/.next/static/chunks/app/api/usage/call-logs/route-2e6b2c37e502d893.js +0 -1
  694. package/app/.next/static/chunks/app/api/usage/history/route-2e6b2c37e502d893.js +0 -1
  695. package/app/.next/static/chunks/app/api/usage/logs/route-2e6b2c37e502d893.js +0 -1
  696. package/app/.next/static/chunks/app/api/usage/proxy-logs/route-2e6b2c37e502d893.js +0 -1
  697. package/app/.next/static/chunks/app/api/usage/request-logs/route-2e6b2c37e502d893.js +0 -1
  698. package/app/.next/static/chunks/app/api/v1/api/chat/route-2e6b2c37e502d893.js +0 -1
  699. package/app/.next/static/chunks/app/api/v1/audio/speech/route-2e6b2c37e502d893.js +0 -1
  700. package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-2e6b2c37e502d893.js +0 -1
  701. package/app/.next/static/chunks/app/api/v1/chat/completions/route-2e6b2c37e502d893.js +0 -1
  702. package/app/.next/static/chunks/app/api/v1/embeddings/route-2e6b2c37e502d893.js +0 -1
  703. package/app/.next/static/chunks/app/api/v1/images/generations/route-2e6b2c37e502d893.js +0 -1
  704. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-2e6b2c37e502d893.js +0 -1
  705. package/app/.next/static/chunks/app/api/v1/messages/route-2e6b2c37e502d893.js +0 -1
  706. package/app/.next/static/chunks/app/api/v1/models/route-2e6b2c37e502d893.js +0 -1
  707. package/app/.next/static/chunks/app/api/v1/moderations/route-2e6b2c37e502d893.js +0 -1
  708. package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-2e6b2c37e502d893.js +0 -1
  709. package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-2e6b2c37e502d893.js +0 -1
  710. package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-2e6b2c37e502d893.js +0 -1
  711. package/app/.next/static/chunks/app/api/v1/rerank/route-2e6b2c37e502d893.js +0 -1
  712. package/app/.next/static/chunks/app/api/v1/responses/route-2e6b2c37e502d893.js +0 -1
  713. package/app/.next/static/chunks/app/api/v1/route-2e6b2c37e502d893.js +0 -1
  714. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-2e6b2c37e502d893.js +0 -1
  715. package/app/.next/static/chunks/app/api/v1beta/models/route-2e6b2c37e502d893.js +0 -1
  716. package/app/.next/static/chunks/app/page-2e6b2c37e502d893.js +0 -1
  717. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-2e6b2c37e502d893.js +0 -1
  718. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-2e6b2c37e502d893.js +0 -1
  719. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2e6b2c37e502d893.js +0 -1
  720. package/app/.next/static/css/039e32048ea8e51e.css +0 -1
  721. package/app/.next/static/kMztjIo6CDmStqcKcXLeh/_buildManifest.js +0 -1
  722. /package/app/.next/static/{kMztjIo6CDmStqcKcXLeh → _E6bKOntID1KdXsXqP-0D}/_ssgManifest.js +0 -0
@@ -1,5 +1,5 @@
1
1
  "use strict";exports.id=2767,exports.ids=[2767],exports.modules={1308:(a,b,c)=>{c.d(b,{$E:()=>n,Kr:()=>t,UE:()=>u,YO:()=>p,getAllRateLimitStatus:()=>v,mg:()=>m,rh:()=>l});var d=c(57217),e=c.n(d);c(74163);var f=c(83596),g=c(60293);let h=new Map,i=new Set,j=!1,k={maxConcurrent:10,minTime:0,reservoir:null,reservoirRefreshAmount:null,reservoirRefreshInterval:null};async function l(){if(!j){j=!0;try{let{getProviderConnections:a}=await Promise.resolve().then(c.bind(c,40287)),b=await a(),d=0,j=0;for(let a of b)if(a.rateLimitProtection)i.add(a.id),d++;else if(a.provider&&"apikey"===(0,f.oQ)(a.provider)&&a.isActive){i.add(a.id),j++;let b=`${a.provider}:${a.id}`;h.has(b)||h.set(b,new(e())({maxConcurrent:g.DEFAULT_API_LIMITS.concurrentRequests,minTime:g.DEFAULT_API_LIMITS.minTimeBetweenRequests,reservoir:g.DEFAULT_API_LIMITS.requestsPerMinute,reservoirRefreshAmount:g.DEFAULT_API_LIMITS.requestsPerMinute,reservoirRefreshInterval:6e4,id:b}))}(d>0||j>0)&&console.log(`🛡️ [RATE-LIMIT] Loaded ${d} explicit + ${j} auto-enabled (API key) protection(s)`)}catch(a){console.error("[RATE-LIMIT] Failed to load settings:",a.message)}}}function m(a){i.add(a)}function n(a){for(let[b]of(i.delete(a),h))if(b.includes(a)){let a=h.get(b);a?.disconnect(),h.delete(b)}}function o(a,b,c=null){let d=c?`${a}:${b}:${c}`:`${a}:${b}`;if(!h.has(d)){let a=new(e())({...k,id:d});a.on("queued",()=>{let b=a.counts();b.QUEUED>0&&console.log(`⏳ [RATE-LIMIT] ${d} — ${b.QUEUED} request(s) queued, ${b.RUNNING} running`)}),h.set(d,a)}return h.get(d)}async function p(a,b,c,d){return i.has(b)?o(a,b,null).schedule(d):d()}let q={limit:"x-ratelimit-limit-requests",remaining:"x-ratelimit-remaining-requests",reset:"x-ratelimit-reset-requests",limitTokens:"x-ratelimit-limit-tokens",remainingTokens:"x-ratelimit-remaining-tokens",resetTokens:"x-ratelimit-reset-tokens",retryAfter:"retry-after",overLimit:"x-ratelimit-over-limit"},r={limit:"anthropic-ratelimit-requests-limit",remaining:"anthropic-ratelimit-requests-remaining",reset:"anthropic-ratelimit-requests-reset",limitTokens:"anthropic-ratelimit-input-tokens-limit",remainingTokens:"anthropic-ratelimit-input-tokens-remaining",resetTokens:"anthropic-ratelimit-input-tokens-reset",retryAfter:"retry-after"};function s(a){if(!a)return null;let b=a.match(/^(?:(\d+)h)?(?:(\d+)m(?!s))?(?:(\d+)s)?(?:(\d+)ms)?$/);if(b){let[,a,c,d,e]=b;return(3600*parseInt(a||0)+60*parseInt(c||0)+parseInt(d||0))*1e3+parseInt(e||0)}let c=parseFloat(a);if(!isNaN(c)&&c>0)return c>17e8?Math.max(0,1e3*c-Date.now()):1e3*c;try{let b=new Date(a);if(!isNaN(b.getTime()))return Math.max(0,b.getTime()-Date.now())}catch{}return null}function t(a,b,c,d,e=null){if(!i.has(b)||!c)return;let f=o(a,b,null),g="claude"===a||"anthropic"===a?r:q,h=a=>"function"==typeof c.get?c.get(a):c[a]||null,j=parseInt(h(g.limit)),k=parseInt(h(g.remaining)),l=h(g.reset),m=h(g.retryAfter),n=h(q.overLimit);if(429===d){let c=s(m)||6e4;console.log(`🚫 [RATE-LIMIT] ${a}:${b.slice(0,8)} — 429 received, pausing for ${Math.ceil(c/1e3)}s`),f.updateSettings({reservoir:0,reservoirRefreshAmount:j||60,reservoirRefreshInterval:c});return}if("yes"===n){console.log(`⚠️ [RATE-LIMIT] ${a}:${b.slice(0,8)} — near capacity, slowing down`),f.updateSettings({minTime:200});return}if(!isNaN(j)&&j>0){let c=s(l)||6e4,d={minTime:Math.max(0,Math.floor(6e4/j)-10)};!isNaN(k)&&(k<.1*j?(d.reservoir=k,d.reservoirRefreshAmount=j,d.reservoirRefreshInterval=c,console.log(`⚠️ [RATE-LIMIT] ${a}:${b.slice(0,8)} — ${k}/${j} remaining, throttling`)):k>.5*j&&(d.minTime=0,d.reservoir=null,d.reservoirRefreshAmount=null,d.reservoirRefreshInterval=null)),f.updateSettings(d)}}function u(a,b){let c=`${a}:${b}`,d=h.get(c);if(!d)return{enabled:i.has(b),active:!1,queued:0,running:0};let e=d.counts();return{enabled:i.has(b),active:!0,queued:e.QUEUED||0,running:e.RUNNING||0,executing:e.EXECUTING||0,done:e.DONE||0}}function v(){let a={};for(let[b,c]of h){let d=c.counts();a[b]={queued:d.QUEUED||0,running:d.RUNNING||0,executing:d.EXECUTING||0}}return a}},6327:(a,b,c)=>{function d({onDisconnect:a,log:b,provider:c,model:e}={}){let f=new AbortController,g=Date.now(),h=!1,i=null,j=a=>{let b=Date.now()-g,d=c?.toUpperCase()||"UNKNOWN";console.log(`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 🌊 [STREAM] ${d} | ${e||"unknown"} | ${b}ms | ${a}`)};return{signal:f.signal,startTime:g,isConnected:()=>!h,handleDisconnect:(b="client_closed")=>{h||(h=!0,j(`disconnect: ${b}`),i=setTimeout(()=>{f.abort()},500),a?.({reason:b,duration:Date.now()-g}))},handleComplete:()=>{!h&&(h=!0,j("complete"),i&&(clearTimeout(i),i=null))},handleError:a=>{(i&&(clearTimeout(i),i=null),"AbortError"===a.name)?j("aborted"):j(`error: ${a.message}`)},abort:()=>f.abort()}}function e(a,b,c){var d;let e,f;return d={readable:a.body.pipeThrough(b),writable:{getWriter:()=>({abort:()=>{}})}},e=d.readable.getReader(),f=d.writable.getWriter(),new ReadableStream({async pull(a){if(!c.isConnected())return void a.close();try{let{done:b,value:d}=await e.read();if(b){c.handleComplete(),a.close();return}a.enqueue(d)}catch(b){c.handleError(b),a.error(b)}},cancel(a){c.handleDisconnect(a||"cancelled"),e.cancel(),f.abort()}})}c.d(b,{Jb:()=>e,jd:()=>d})},8550:(a,b,c)=>{c.d(b,{M:()=>d});function d(a,b){if(!a||"object"!=typeof a)return null;if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return{prompt_tokens:a.usage.prompt_tokens||0,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens};let c=a.response?.usage||a.usage;return c&&"object"==typeof c&&(void 0!==c.input_tokens||void 0!==c.output_tokens)?{prompt_tokens:c.input_tokens||0,completion_tokens:c.output_tokens||0,cached_tokens:c.cache_read_input_tokens,cache_creation_input_tokens:c.cache_creation_input_tokens,reasoning_tokens:c.reasoning_tokens||c.output_tokens_details?.reasoning_tokens}:a.usage&&"object"==typeof a.usage&&(void 0!==a.usage.input_tokens||void 0!==a.usage.output_tokens)?{prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,cache_read_input_tokens:a.usage.cache_read_input_tokens,cache_creation_input_tokens:a.usage.cache_creation_input_tokens}:a.usageMetadata&&"object"==typeof a.usageMetadata?{prompt_tokens:a.usageMetadata.promptTokenCount||0,completion_tokens:a.usageMetadata.candidatesTokenCount||0,reasoning_tokens:a.usageMetadata.thoughtsTokenCount}:null}},9315:(a,b,c)=>{let d;c.d(b,{Cb:()=>l,IL:()=>o,QS:()=>p,RE:()=>n,TZ:()=>q,gR:()=>k,yv:()=>m});var e=c(77598),f=c.n(e),g=c(44594),h=c(42910);let i={hits:0,misses:0,tokensSaved:0};function j(){return d||(d=new g.q({maxSize:parseInt(process.env.SEMANTIC_CACHE_MAX_SIZE||"500",10),defaultTTL:parseInt(process.env.SEMANTIC_CACHE_TTL_MS||"3600000",10)})),d}function k(a,b,c=0,d=1){var e;let g=JSON.stringify({model:a,messages:Array.isArray(e=b)?e.map(a=>({role:a.role||"user",content:"string"==typeof a.content?a.content:JSON.stringify(a.content)})):[],temperature:c,top_p:d});return f().createHash("sha256").update(g).digest("hex")}function l(a){let b=j().get(a);if(b)return i.hits++,i.tokensSaved+=b.tokensSaved||0,b.response;try{let b=(0,h.sm)(),c=b.prepare("SELECT response, tokens_saved FROM semantic_cache WHERE signature = ? AND expires_at > datetime('now')").get(a);if(c){let d=JSON.parse(c.response);return j().set(a,{response:d,tokensSaved:c.tokens_saved}),b.prepare("UPDATE semantic_cache SET hit_count = hit_count + 1 WHERE signature = ?").run(a),i.hits++,i.tokensSaved+=c.tokens_saved||0,d}}catch{}return i.misses++,null}function m(a,b,c,d=0,e=36e5){let g=parseInt(process.env.SEMANTIC_CACHE_TTL_MS||String(e),10);j().set(a,{response:c,tokensSaved:d},g);try{let e=(0,h.sm)(),i=f().randomUUID(),j=a.slice(0,16),k=new Date().toISOString(),l=new Date(Date.now()+g).toISOString();e.prepare(`INSERT OR REPLACE INTO semantic_cache (id, signature, model, prompt_hash, response, tokens_saved, hit_count, created_at, expires_at)
2
- VALUES (?, ?, ?, ?, ?, ?, 0, ?, ?)`).run(i,a,b,j,JSON.stringify(c),d,k,l)}catch{}}function n(){try{return(0,h.sm)().prepare("DELETE FROM semantic_cache WHERE expires_at <= datetime('now')").run().changes}catch{return 0}}function o(){j().clear();try{(0,h.sm)().prepare("DELETE FROM semantic_cache").run()}catch{}i={hits:0,misses:0,tokensSaved:0}}function p(){let a=j().getStats(),b=0;try{let a=(0,h.sm)().prepare("SELECT COUNT(*) as count FROM semantic_cache WHERE expires_at > datetime('now')").get();b=a?.count||0}catch{}let c=i.hits+i.misses;return{memoryEntries:a.size,dbEntries:b,hits:i.hits,misses:i.misses,hitRate:c>0?(i.hits/c*100).toFixed(1):"0.0",tokensSaved:i.tokensSaved}}function q(a,b){return b?.get?.("x-omniroute-no-cache")!=="true"&&!1===a.stream&&(a.temperature??0)===0}},9686:(a,b,c)=>{c.d(b,{eU:()=>i,vN:()=>h});var d=c(54194),e=c(40287),f=c(87068);let g=f.oD;async function h(a,b){try{let c={};b.accessToken&&(c.accessToken=b.accessToken),b.refreshToken&&(c.refreshToken=b.refreshToken),b.expiresIn&&(c.expiresAt=new Date(Date.now()+1e3*b.expiresIn).toISOString(),c.expiresIn=b.expiresIn),b.providerSpecificData&&(c.providerSpecificData=b.providerSpecificData);let f=await (0,e.rj)(a,c);return d.info("TOKEN_REFRESH","Credentials updated in localDb",{connectionId:a,success:!!f}),!!f}catch(b){return d.error("TOKEN_REFRESH","Error updating credentials in localDb",{connectionId:a,error:b.message}),!1}}async function i(a,b){let c={...b};if(c.expiresAt){let b=new Date(c.expiresAt).getTime(),e=Date.now();if(b-e<g){let g;d.info("TOKEN_REFRESH","Token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round((b-e)/1e3)});let i=await (g=c,(0,f.iD)(a,g,d));i&&i.accessToken&&(await h(c.connectionId,i),c={...c,accessToken:i.accessToken,refreshToken:i.refreshToken||c.refreshToken,expiresAt:i.expiresIn?new Date(Date.now()+1e3*i.expiresIn).toISOString():c.expiresAt})}}if("github"===a&&c.providerSpecificData?.copilotTokenExpiresAt){let b=1e3*c.providerSpecificData.copilotTokenExpiresAt,e=Date.now();if(b-e<g){let g;d.info("TOKEN_REFRESH","Copilot token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round((b-e)/1e3)});let i=await (g=c.accessToken,(0,f.jR)(g,d));i&&(await h(c.connectionId,{providerSpecificData:{...c.providerSpecificData,copilotToken:i.token,copilotTokenExpiresAt:i.expiresAt}}),c.providerSpecificData={...c.providerSpecificData,copilotToken:i.token,copilotTokenExpiresAt:i.expiresAt})}}return c}},12767:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{P:()=>A});var e=c(21020),f=c(13961),g=c(99939),h=c(32113),i=c(69590),j=c(71861),k=c(17669),l=c(60293),m=c(23969),n=c(76340),o=c(54194),p=c(9686),q=c(40287),r=c(34493),s=c(26510),t=c(77458),u=c(12620),v=c(20864),w=c(44057),x=c(59545),y=c(78790),z=a([i]);async function A(a,b=null){let c,d=(0,x.KZ)(),h=new w.TT(d);try{h.startPhase("parse"),c=await a.json(),h.endPhase()}catch{return o.warn("CHAT","Invalid JSON body"),(0,j.yj)(l.gx.BAD_REQUEST,"Invalid JSON body")}h.startPhase("validate");let i=(0,t.Jh)(c,o);if(i.blocked)return o.warn("SANITIZER","Request blocked due to prompt injection",{detections:i.detections}),(0,j.yj)(l.gx.BAD_REQUEST,"Request rejected: suspicious content detected");i.modified&&i.sanitizedBody&&(c=i.sanitizedBody),h.endPhase(),b||(b={endpoint:new URL(a.url).pathname,body:c,headers:Object.fromEntries(a.headers.entries())});let m=new URL(a.url),n=c.model,p=c.messages?.length||c.input?.length||0,r=c.tools?.length||0,s=c.reasoning_effort||c.reasoning?.effort||null;o.request("POST",`${m.pathname} | ${n} | ${p} msgs${r?` | ${r} tools`:""}${s?` | effort=${s}`:""}`);let u=a.headers.get("Authorization"),z=(0,e.Tr)(a),C=null;if(u&&z){let a=o.maskKey(z);o.debug("AUTH",`API Key: ${a}`);try{C=await (0,q.v9)(z)}catch{C=null}}else o.debug("AUTH","No API key provided (local mode)");if("true"===process.env.REQUIRE_API_KEY){if(!z)return o.warn("AUTH","Missing API key while REQUIRE_API_KEY=true"),(0,j.yj)(l.gx.UNAUTHORIZED,"Missing API key");if(!await (0,e.kI)(z))return o.warn("AUTH","Invalid API key while REQUIRE_API_KEY=true"),(0,j.yj)(l.gx.UNAUTHORIZED,"Invalid API key")}if(!n)return o.warn("CHAT","Missing model"),(0,j.yj)(l.gx.BAD_REQUEST,"Missing model");if(h.startPhase("policy"),C?.id)try{let a=(0,y.Ik)(C.id);if(!a.allowed)return o.warn("BUDGET",`API key ${C.id} exceeded budget: ${a.reason}`),(0,j.yj)(429,a.reason||"Budget limit exceeded")}catch{}h.endPhase(),h.startPhase("resolve");let D=await (0,f.$m)(n);if(D){o.info("CHAT",`Combo "${n}" [${D.strategy||"priority"}] with ${D.models.length} models`);let d=async a=>{let b=(0,g.Xh)(a),c=b.provider;if(!c)return!0;if(!(0,v.fj)(c,b.model||a))return o.debug("AVAILABILITY",`${c}/${b.model} in cooldown, skipping`),!1;let d=await (0,e.c1)(c);return!!d&&!d.allRateLimited},[f,i]=await Promise.all([(0,q.mt)().catch(()=>({})),(0,q.Uv)().catch(()=>[])]);h.endPhase();let j=await (0,k.Pr)({body:c,combo:D,handleSingleModel:(c,d)=>B(c,d,b,a,D.name,C,h),isModelAvailable:d,log:o,settings:f,allCombos:i});return(0,w.N3)(h),j}h.endPhase();let E=await B(c,n,b,a,null,C,h);return(0,w.N3)(h),E}async function B(a,b,c=null,d=null,f=null,g=null,h=null){var i,k;let m=await C(b,a);if(m.error)return m.error;let{provider:n,model:q,sourceFormat:t,targetFormat:w}=m,x=(i=n,k=q,(0,v.fj)(i,k)?(0,u.getCircuitBreaker)(i,{failureThreshold:5,resetTimeout:3e4,onStateChange:(a,b,c)=>o.info("CIRCUIT",`${a}: ${b} → ${c}`)}).canExecute()?null:(o.warn("CIRCUIT",`Circuit breaker OPEN for ${i}, rejecting request`),(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Provider ${i} circuit breaker is open`,30)):(o.warn("AVAILABILITY",`${i}/${k} is in cooldown, rejecting request`),(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Model ${i}/${k} is temporarily unavailable (cooldown)`,30)));if(x)return x;let z=(0,u.getCircuitBreaker)(n,{failureThreshold:5,resetTimeout:3e4,onStateChange:(a,b,c)=>o.info("CIRCUIT",`${a}: ${b} → ${c}`)}),A=d?.headers?.get("user-agent")||"",F=null,G=null,H=null;for(;;){let b=await (0,e.c1)(n,F);if(!b||b.allRateLimited)return function(a,b,c,d,e,f){if(a?.allRateLimited){let b=e||a.lastError||"Unavailable",g=f||Number(a.lastErrorCode)||l.gx.SERVICE_UNAVAILABLE;return o.warn("CHAT",`[${c}/${d}] ${b} (${a.retryAfterHuman})`),(0,j.wO)(g,`[${c}/${d}] ${b}`,a.retryAfter,a.retryAfterHuman)}return b?(o.warn("CHAT","No more accounts available",{provider:c}),(0,j.yj)(f||l.gx.SERVICE_UNAVAILABLE,e||"All accounts unavailable")):(o.error("AUTH",`No credentials for provider: ${c}`),(0,j.yj)(l.gx.BAD_REQUEST,`No credentials for provider: ${c}`))}(b,F,n,q,G,H);let d=b.connectionId.slice(0,8);o.info("AUTH",`Using ${n} account: ${d}...`);let i=await (0,p.eU)(n,b),k=await E(b.connectionId),m=Date.now();h&&h.startPhase("connect");let{result:u,tlsFingerprintUsed:x}=await D({breaker:z,body:a,provider:n,model:q,refreshedCredentials:i,proxyInfo:k,log:o,clientRawRequest:c,credentials:b,apiKeyInfo:g,userAgent:A,comboName:f});h&&h.endPhase();let B=Date.now()-m;if(function({result:a,proxyInfo:b,proxyLatency:c,provider:d,model:e,sourceFormat:f,targetFormat:g,credentials:h,comboName:i,clientRawRequest:j,tlsFingerprintUsed:k=!1}){try{(0,r.pq)({status:a.success?"success":408===a.status||504===a.status?"timeout":"error",proxy:b?.proxy||null,level:b?.level||"direct",levelId:b?.levelId||null,provider:d,targetUrl:`${d}/${e}`,latencyMs:c,error:a.success?null:a.error||null,connectionId:h.connectionId,comboId:i||null,account:h.connectionId?.slice(0,8)||null,tlsFingerprint:k})}catch{}try{(0,s.MR)({provider:d,model:e,sourceFormat:f,targetFormat:g,status:a.success?"success":"error",statusCode:a.success?200:a.status||500,latency:c,endpoint:j?.endpoint||"/v1/chat/completions",connectionId:h.connectionId||null,comboName:i||null})}catch{}}({result:u,proxyInfo:k,proxyLatency:B,provider:n,model:q,sourceFormat:t,targetFormat:w,credentials:b,comboName:f,clientRawRequest:c,tlsFingerprintUsed:x}),u.success)return function(a,b){if(a?.id)try{let c=b.usage||{},d=((c.prompt_tokens||0)+(c.completion_tokens||0))*1e-6;d>0&&(0,y.n5)(a.id,d)}catch{}}(g,u),h&&h.startPhase("finalize"),h&&h.endPhase(),u.response;(429===u.status||503===u.status)&&((0,v.gC)(n,q,6e4,`HTTP ${u.status}`),o.info("AVAILABILITY",`${n}/${q} marked unavailable for 60s (HTTP ${u.status})`));let{shouldFallback:C}=await (0,e.vk)(b.connectionId,u.status,u.error,n);if(C){o.warn("AUTH",`Account ${d}... unavailable (${u.status}), trying fallback`),F=b.connectionId,G=u.error,H=u.status;continue}return u.response}}async function C(a,b){let c=await (0,f.mA)(a);if(!c.provider){if("ambiguous_model"===c.errorType){let b=c.errorMessage||`Ambiguous model '${a}'. Use provider/model prefix (ex: gh/${a} or cc/${a}).`;return o.warn("CHAT",b,{model:a,candidates:c.candidateAliases||c.candidateProviders||[]}),{error:(0,j.yj)(l.gx.BAD_REQUEST,b)}}return o.warn("CHAT","Invalid model format",{model:a}),{error:(0,j.yj)(l.gx.BAD_REQUEST,"Invalid model format")}}let{provider:d,model:e}=c,g=(0,h.Tz)(b),i=m.PROVIDER_ID_TO_ALIAS[d]||d,k=(0,m.ux)(i,e)||(0,h.jJ)(d);return a!==`${d}/${e}`?o.info("ROUTING",`${a} → ${d}/${e}`):o.info("ROUTING",`Provider: ${d}, Model: ${e}`),{provider:d,model:e,sourceFormat:g,targetFormat:k}}async function D({breaker:a,body:b,provider:c,model:d,refreshedCredentials:f,proxyInfo:g,log:h,clientRawRequest:k,credentials:m,apiKeyInfo:q,userAgent:r,comboName:s}){try{let j=()=>(0,n.jf)(g?.proxy||null,()=>(0,i.w)({body:{...b,model:`${c}/${d}`},modelInfo:{provider:c,model:d},credentials:f,log:h,clientRawRequest:k,connectionId:m.connectionId,apiKeyInfo:q,userAgent:r,comboName:s,onCredentialsRefreshed:async a=>{await (0,p.vN)(m.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,e.Pt)(m.connectionId,m)}}));if(!g?.proxy&&(0,n.Wk)()){let b=await a.execute(async()=>(0,n.qT)(j));return{result:b.result,tlsFingerprintUsed:b.tlsFingerprintUsed}}return{result:await a.execute(j),tlsFingerprintUsed:!1}}catch(a){if(a instanceof u.ez)return o.warn("CIRCUIT",`${c} circuit open during retry: ${a.message}`),{result:{success:!1,response:(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Provider ${c} circuit breaker is open`,Math.ceil(a.retryAfterMs/1e3)),status:l.gx.SERVICE_UNAVAILABLE},tlsFingerprintUsed:!1};throw a}}async function E(a){try{return await (0,q.YD)(a)}catch(a){return o.debug("PROXY",`Failed to resolve proxy: ${a.message}`),null}}i=(z.then?(await z)():z)[0],d()}catch(a){d(a)}})},13961:(a,b,c)=>{c.d(b,{$m:()=>g,mA:()=>f});var d=c(40287),e=c(99939);async function f(a){let b=(0,e.Xh)(a);if(!b.isAlias){if(b.provider===b.providerAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===b.providerAlias);if(a)return{provider:a.id,model:b.model};let c=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===b.providerAlias);if(c)return{provider:c.id,model:b.model}}return(0,e.js)(a,null)}return(0,e.js)(a,d.OM)}async function g(a){let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b:null}},20864:(a,b,c)=>{c.d(b,{DQ:()=>h,GX:()=>j,Wj:()=>i,fj:()=>f,gC:()=>g});let d=new Map;function e(a,b){return`${a}::${b}`}function f(a,b){let c=e(a,b),f=d.get(c);return!f||Date.now()-f.unavailableSince>=f.cooldownMs&&(d.delete(c),!0)}function g(a,b,c=6e4,f){let h=e(a,b);d.set(h,{provider:a,model:b,unavailableSince:Date.now(),cooldownMs:c,reason:f||"unknown"})}function h(a,b){return d.delete(e(a,b))}function i(){let a=Date.now(),b=[];for(let[c,e]of d.entries()){let f=a-e.unavailableSince;if(f>=e.cooldownMs){d.delete(c);continue}b.push({provider:e.provider,model:e.model,reason:e.reason||"unknown",remainingMs:e.cooldownMs-f,unavailableSince:new Date(e.unavailableSince).toISOString()})}return b}function j(){return i(),d.size}},26510:(a,b,c)=>{function d(){return globalThis.__translatorEvents||(globalThis.__translatorEvents=[]),globalThis.__translatorEvents}function e(a){if(!a||"object"!=typeof a)return;let b=d();b.unshift({id:`evt_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,timestamp:new Date().toISOString(),...a}),b.length>200&&(b.length=200)}function f(a=50){let b=Number(a),c=Number.isFinite(b)&&b>0?Math.min(Math.floor(b),200):50,e=d();return{events:e.slice(0,c),total:e.length}}c.d(b,{MR:()=>e,zS:()=>f})},26695:(a,b,c)=>{c.d(b,{lm:()=>g.lm,l2:()=>q,i5:()=>p,v8:()=>j});var d=c(89575),e=c(55120),f=c(27230),g=c(50101);function h(a){if(!a)return null;let b=a.trimStart();if(!b||100!==b.charCodeAt(0))return null;let c=b.slice(5).trim();if("[DONE]"===c)return{done:!0};try{return JSON.parse(c)}catch(a){return c.length>0&&console.log(`[WARN] Failed to parse SSE line (${c.length} chars): ${c.substring(0,200)}...`),null}}function i(a,b){if(b===e.h.OPENAI&&a.choices?.[0]?.delta){let b=a.choices[0].delta;return b.content&&""!==b.content||b.reasoning_content&&""!==b.reasoning_content||b.tool_calls&&b.tool_calls.length>0||a.choices[0].finish_reason||b.role}if(b===e.h.CLAUDE){let b="content_block_delta"===a.type,c=a.delta?.text&&""!==a.delta.text,d=a.delta?.thinking&&""!==a.delta.thinking,e=a.delta?.partial_json&&""!==a.delta.partial_json;return!b||!!c||!!d||!!e}if(b===e.h.GEMINI&&a.candidates?.[0]){let b=a.candidates[0];if(b.finishReason)return!0;let c=b.content?.parts;return!!c&&0!==c.length&&c.some(a=>a.text&&""!==a.text||a.functionCall||a.executableCode)}return!0}function j(a,b){return null==a?"data: null\n\n":a&&a.done?"data: [DONE]\n\n":a&&a.event&&a.data?`event: ${a.event}
2
+ VALUES (?, ?, ?, ?, ?, ?, 0, ?, ?)`).run(i,a,b,j,JSON.stringify(c),d,k,l)}catch{}}function n(){try{return(0,h.sm)().prepare("DELETE FROM semantic_cache WHERE expires_at <= datetime('now')").run().changes}catch{return 0}}function o(){j().clear();try{(0,h.sm)().prepare("DELETE FROM semantic_cache").run()}catch{}i={hits:0,misses:0,tokensSaved:0}}function p(){let a=j().getStats(),b=0;try{let a=(0,h.sm)().prepare("SELECT COUNT(*) as count FROM semantic_cache WHERE expires_at > datetime('now')").get();b=a?.count||0}catch{}let c=i.hits+i.misses;return{memoryEntries:a.size,dbEntries:b,hits:i.hits,misses:i.misses,hitRate:c>0?(i.hits/c*100).toFixed(1):"0.0",tokensSaved:i.tokensSaved}}function q(a,b){return b?.get?.("x-omniroute-no-cache")!=="true"&&!1===a.stream&&(a.temperature??0)===0}},9686:(a,b,c)=>{c.d(b,{eU:()=>i,vN:()=>h});var d=c(83779),e=c(40287),f=c(87068);let g=f.oD;async function h(a,b){try{let c={};b.accessToken&&(c.accessToken=b.accessToken),b.refreshToken&&(c.refreshToken=b.refreshToken),b.expiresIn&&(c.expiresAt=new Date(Date.now()+1e3*b.expiresIn).toISOString(),c.expiresIn=b.expiresIn),b.providerSpecificData&&(c.providerSpecificData=b.providerSpecificData);let f=await (0,e.rj)(a,c);return d.info("TOKEN_REFRESH","Credentials updated in localDb",{connectionId:a,success:!!f}),!!f}catch(b){return d.error("TOKEN_REFRESH","Error updating credentials in localDb",{connectionId:a,error:b.message}),!1}}async function i(a,b){let c={...b};if(c.expiresAt){let b=new Date(c.expiresAt).getTime(),e=Date.now();if(b-e<g){let g;d.info("TOKEN_REFRESH","Token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round((b-e)/1e3)});let i=await (g=c,(0,f.iD)(a,g,d));i&&i.accessToken&&(await h(c.connectionId,i),c={...c,accessToken:i.accessToken,refreshToken:i.refreshToken||c.refreshToken,expiresAt:i.expiresIn?new Date(Date.now()+1e3*i.expiresIn).toISOString():c.expiresAt})}}if("github"===a&&c.providerSpecificData?.copilotTokenExpiresAt){let b=1e3*c.providerSpecificData.copilotTokenExpiresAt,e=Date.now();if(b-e<g){let g;d.info("TOKEN_REFRESH","Copilot token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round((b-e)/1e3)});let i=await (g=c.accessToken,(0,f.jR)(g,d));i&&(await h(c.connectionId,{providerSpecificData:{...c.providerSpecificData,copilotToken:i.token,copilotTokenExpiresAt:i.expiresAt}}),c.providerSpecificData={...c.providerSpecificData,copilotToken:i.token,copilotTokenExpiresAt:i.expiresAt})}}return c}},12767:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{P:()=>A});var e=c(21020),f=c(13961),g=c(99939),h=c(32113),i=c(69590),j=c(71861),k=c(17669),l=c(60293),m=c(23969),n=c(76340),o=c(83779),p=c(9686),q=c(40287),r=c(34493),s=c(26510),t=c(77458),u=c(12620),v=c(20864),w=c(44057),x=c(59545),y=c(78790),z=a([i]);async function A(a,b=null){let c,d=(0,x.KZ)(),h=new w.TT(d);try{h.startPhase("parse"),c=await a.json(),h.endPhase()}catch{return o.warn("CHAT","Invalid JSON body"),(0,j.yj)(l.gx.BAD_REQUEST,"Invalid JSON body")}h.startPhase("validate");let i=(0,t.Jh)(c,o);if(i.blocked)return o.warn("SANITIZER","Request blocked due to prompt injection",{detections:i.detections}),(0,j.yj)(l.gx.BAD_REQUEST,"Request rejected: suspicious content detected");i.modified&&i.sanitizedBody&&(c=i.sanitizedBody),h.endPhase(),b||(b={endpoint:new URL(a.url).pathname,body:c,headers:Object.fromEntries(a.headers.entries())});let m=new URL(a.url),n=c.model,p=c.messages?.length||c.input?.length||0,r=c.tools?.length||0,s=c.reasoning_effort||c.reasoning?.effort||null;o.request("POST",`${m.pathname} | ${n} | ${p} msgs${r?` | ${r} tools`:""}${s?` | effort=${s}`:""}`);let u=a.headers.get("Authorization"),z=(0,e.Tr)(a),C=null;if(u&&z){let a=o.maskKey(z);o.debug("AUTH",`API Key: ${a}`);try{C=await (0,q.v9)(z)}catch{C=null}}else o.debug("AUTH","No API key provided (local mode)");if("true"===process.env.REQUIRE_API_KEY){if(!z)return o.warn("AUTH","Missing API key while REQUIRE_API_KEY=true"),(0,j.yj)(l.gx.UNAUTHORIZED,"Missing API key");if(!await (0,e.kI)(z))return o.warn("AUTH","Invalid API key while REQUIRE_API_KEY=true"),(0,j.yj)(l.gx.UNAUTHORIZED,"Invalid API key")}if(!n)return o.warn("CHAT","Missing model"),(0,j.yj)(l.gx.BAD_REQUEST,"Missing model");if(h.startPhase("policy"),C?.id)try{let a=(0,y.Ik)(C.id);if(!a.allowed)return o.warn("BUDGET",`API key ${C.id} exceeded budget: ${a.reason}`),(0,j.yj)(429,a.reason||"Budget limit exceeded")}catch{}h.endPhase(),h.startPhase("resolve");let D=await (0,f.$m)(n);if(D){o.info("CHAT",`Combo "${n}" [${D.strategy||"priority"}] with ${D.models.length} models`);let d=async a=>{let b=(0,g.Xh)(a),c=b.provider;if(!c)return!0;if(!(0,v.fj)(c,b.model||a))return o.debug("AVAILABILITY",`${c}/${b.model} in cooldown, skipping`),!1;let d=await (0,e.c1)(c);return!!d&&!d.allRateLimited},[f,i]=await Promise.all([(0,q.mt)().catch(()=>({})),(0,q.Uv)().catch(()=>[])]);h.endPhase();let j=await (0,k.Pr)({body:c,combo:D,handleSingleModel:(c,d)=>B(c,d,b,a,D.name,C,h),isModelAvailable:d,log:o,settings:f,allCombos:i});return(0,w.N3)(h),j}h.endPhase();let E=await B(c,n,b,a,null,C,h);return(0,w.N3)(h),E}async function B(a,b,c=null,d=null,f=null,g=null,h=null){var i,k;let m=await C(b,a);if(m.error)return m.error;let{provider:n,model:q,sourceFormat:t,targetFormat:w}=m,x=(i=n,k=q,(0,v.fj)(i,k)?(0,u.getCircuitBreaker)(i,{failureThreshold:5,resetTimeout:3e4,onStateChange:(a,b,c)=>o.info("CIRCUIT",`${a}: ${b} → ${c}`)}).canExecute()?null:(o.warn("CIRCUIT",`Circuit breaker OPEN for ${i}, rejecting request`),(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Provider ${i} circuit breaker is open`,30)):(o.warn("AVAILABILITY",`${i}/${k} is in cooldown, rejecting request`),(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Model ${i}/${k} is temporarily unavailable (cooldown)`,30)));if(x)return x;let z=(0,u.getCircuitBreaker)(n,{failureThreshold:5,resetTimeout:3e4,onStateChange:(a,b,c)=>o.info("CIRCUIT",`${a}: ${b} → ${c}`)}),A=d?.headers?.get("user-agent")||"",F=null,G=null,H=null;for(;;){let b=await (0,e.c1)(n,F);if(!b||b.allRateLimited)return function(a,b,c,d,e,f){if(a?.allRateLimited){let b=e||a.lastError||"Unavailable",g=f||Number(a.lastErrorCode)||l.gx.SERVICE_UNAVAILABLE;return o.warn("CHAT",`[${c}/${d}] ${b} (${a.retryAfterHuman})`),(0,j.wO)(g,`[${c}/${d}] ${b}`,a.retryAfter,a.retryAfterHuman)}return b?(o.warn("CHAT","No more accounts available",{provider:c}),(0,j.yj)(f||l.gx.SERVICE_UNAVAILABLE,e||"All accounts unavailable")):(o.error("AUTH",`No credentials for provider: ${c}`),(0,j.yj)(l.gx.BAD_REQUEST,`No credentials for provider: ${c}`))}(b,F,n,q,G,H);let d=b.connectionId.slice(0,8);o.info("AUTH",`Using ${n} account: ${d}...`);let i=await (0,p.eU)(n,b),k=await E(b.connectionId),m=Date.now();h&&h.startPhase("connect");let{result:u,tlsFingerprintUsed:x}=await D({breaker:z,body:a,provider:n,model:q,refreshedCredentials:i,proxyInfo:k,log:o,clientRawRequest:c,credentials:b,apiKeyInfo:g,userAgent:A,comboName:f});h&&h.endPhase();let B=Date.now()-m;if(function({result:a,proxyInfo:b,proxyLatency:c,provider:d,model:e,sourceFormat:f,targetFormat:g,credentials:h,comboName:i,clientRawRequest:j,tlsFingerprintUsed:k=!1}){try{(0,r.pq)({status:a.success?"success":408===a.status||504===a.status?"timeout":"error",proxy:b?.proxy||null,level:b?.level||"direct",levelId:b?.levelId||null,provider:d,targetUrl:`${d}/${e}`,latencyMs:c,error:a.success?null:a.error||null,connectionId:h.connectionId,comboId:i||null,account:h.connectionId?.slice(0,8)||null,tlsFingerprint:k})}catch{}try{(0,s.MR)({provider:d,model:e,sourceFormat:f,targetFormat:g,status:a.success?"success":"error",statusCode:a.success?200:a.status||500,latency:c,endpoint:j?.endpoint||"/v1/chat/completions",connectionId:h.connectionId||null,comboName:i||null})}catch{}}({result:u,proxyInfo:k,proxyLatency:B,provider:n,model:q,sourceFormat:t,targetFormat:w,credentials:b,comboName:f,clientRawRequest:c,tlsFingerprintUsed:x}),u.success)return function(a,b){if(a?.id)try{let c=b.usage||{},d=((c.prompt_tokens||0)+(c.completion_tokens||0))*1e-6;d>0&&(0,y.n5)(a.id,d)}catch{}}(g,u),h&&h.startPhase("finalize"),h&&h.endPhase(),u.response;(429===u.status||503===u.status)&&((0,v.gC)(n,q,6e4,`HTTP ${u.status}`),o.info("AVAILABILITY",`${n}/${q} marked unavailable for 60s (HTTP ${u.status})`));let{shouldFallback:C}=await (0,e.vk)(b.connectionId,u.status,u.error,n);if(C){o.warn("AUTH",`Account ${d}... unavailable (${u.status}), trying fallback`),F=b.connectionId,G=u.error,H=u.status;continue}return u.response}}async function C(a,b){let c=await (0,f.mA)(a);if(!c.provider){if("ambiguous_model"===c.errorType){let b=c.errorMessage||`Ambiguous model '${a}'. Use provider/model prefix (ex: gh/${a} or cc/${a}).`;return o.warn("CHAT",b,{model:a,candidates:c.candidateAliases||c.candidateProviders||[]}),{error:(0,j.yj)(l.gx.BAD_REQUEST,b)}}return o.warn("CHAT","Invalid model format",{model:a}),{error:(0,j.yj)(l.gx.BAD_REQUEST,"Invalid model format")}}let{provider:d,model:e}=c,g=(0,h.Tz)(b),i=m.PROVIDER_ID_TO_ALIAS[d]||d,k=(0,m.ux)(i,e)||(0,h.jJ)(d);return a!==`${d}/${e}`?o.info("ROUTING",`${a} → ${d}/${e}`):o.info("ROUTING",`Provider: ${d}, Model: ${e}`),{provider:d,model:e,sourceFormat:g,targetFormat:k}}async function D({breaker:a,body:b,provider:c,model:d,refreshedCredentials:f,proxyInfo:g,log:h,clientRawRequest:k,credentials:m,apiKeyInfo:q,userAgent:r,comboName:s}){try{let j=()=>(0,n.jf)(g?.proxy||null,()=>(0,i.w)({body:{...b,model:`${c}/${d}`},modelInfo:{provider:c,model:d},credentials:f,log:h,clientRawRequest:k,connectionId:m.connectionId,apiKeyInfo:q,userAgent:r,comboName:s,onCredentialsRefreshed:async a=>{await (0,p.vN)(m.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,e.Pt)(m.connectionId,m)}}));if(!g?.proxy&&(0,n.Wk)()){let b=await a.execute(async()=>(0,n.qT)(j));return{result:b.result,tlsFingerprintUsed:b.tlsFingerprintUsed}}return{result:await a.execute(j),tlsFingerprintUsed:!1}}catch(a){if(a instanceof u.ez)return o.warn("CIRCUIT",`${c} circuit open during retry: ${a.message}`),{result:{success:!1,response:(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Provider ${c} circuit breaker is open`,Math.ceil(a.retryAfterMs/1e3)),status:l.gx.SERVICE_UNAVAILABLE},tlsFingerprintUsed:!1};throw a}}async function E(a){try{return await (0,q.YD)(a)}catch(a){return o.debug("PROXY",`Failed to resolve proxy: ${a.message}`),null}}i=(z.then?(await z)():z)[0],d()}catch(a){d(a)}})},13961:(a,b,c)=>{c.d(b,{$m:()=>g,mA:()=>f});var d=c(40287),e=c(99939);async function f(a){let b=(0,e.Xh)(a);if(!b.isAlias){if(b.provider===b.providerAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===b.providerAlias);if(a)return{provider:a.id,model:b.model};let c=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===b.providerAlias);if(c)return{provider:c.id,model:b.model}}return(0,e.js)(a,null)}return(0,e.js)(a,d.OM)}async function g(a){let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b:null}},20864:(a,b,c)=>{c.d(b,{DQ:()=>h,GX:()=>j,Wj:()=>i,fj:()=>f,gC:()=>g});let d=new Map;function e(a,b){return`${a}::${b}`}function f(a,b){let c=e(a,b),f=d.get(c);return!f||Date.now()-f.unavailableSince>=f.cooldownMs&&(d.delete(c),!0)}function g(a,b,c=6e4,f){let h=e(a,b);d.set(h,{provider:a,model:b,unavailableSince:Date.now(),cooldownMs:c,reason:f||"unknown"})}function h(a,b){return d.delete(e(a,b))}function i(){let a=Date.now(),b=[];for(let[c,e]of d.entries()){let f=a-e.unavailableSince;if(f>=e.cooldownMs){d.delete(c);continue}b.push({provider:e.provider,model:e.model,reason:e.reason||"unknown",remainingMs:e.cooldownMs-f,unavailableSince:new Date(e.unavailableSince).toISOString()})}return b}function j(){return i(),d.size}},26510:(a,b,c)=>{function d(){return globalThis.__translatorEvents||(globalThis.__translatorEvents=[]),globalThis.__translatorEvents}function e(a){if(!a||"object"!=typeof a)return;let b=d();b.unshift({id:`evt_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,timestamp:new Date().toISOString(),...a}),b.length>200&&(b.length=200)}function f(a=50){let b=Number(a),c=Number.isFinite(b)&&b>0?Math.min(Math.floor(b),200):50,e=d();return{events:e.slice(0,c),total:e.length}}c.d(b,{MR:()=>e,zS:()=>f})},26695:(a,b,c)=>{c.d(b,{lm:()=>g.lm,l2:()=>q,i5:()=>p,v8:()=>j});var d=c(89575),e=c(55120),f=c(27230),g=c(50101);function h(a){if(!a)return null;let b=a.trimStart();if(!b||100!==b.charCodeAt(0))return null;let c=b.slice(5).trim();if("[DONE]"===c)return{done:!0};try{return JSON.parse(c)}catch(a){return c.length>0&&console.log(`[WARN] Failed to parse SSE line (${c.length} chars): ${c.substring(0,200)}...`),null}}function i(a,b){if(b===e.h.OPENAI&&a.choices?.[0]?.delta){let b=a.choices[0].delta;return b.content&&""!==b.content||b.reasoning_content&&""!==b.reasoning_content||b.tool_calls&&b.tool_calls.length>0||a.choices[0].finish_reason||b.role}if(b===e.h.CLAUDE){let b="content_block_delta"===a.type,c=a.delta?.text&&""!==a.delta.text,d=a.delta?.thinking&&""!==a.delta.thinking,e=a.delta?.partial_json&&""!==a.delta.partial_json;return!b||!!c||!!d||!!e}if(b===e.h.GEMINI&&a.candidates?.[0]){let b=a.candidates[0];if(b.finishReason)return!0;let c=b.content?.parts;return!!c&&0!==c.length&&c.some(a=>a.text&&""!==a.text||a.functionCall||a.executableCode)}return!0}function j(a,b){return null==a?"data: null\n\n":a&&a.done?"data: [DONE]\n\n":a&&a.event&&a.data?`event: ${a.event}
3
3
  data: ${JSON.stringify(a.data)}
4
4
 
5
5
  `:(a=function(a){if(a?.usage&&"object"==typeof a.usage&&null===a.usage.perf_metrics){let{perf_metrics:b,...c}=a.usage;return{...a,usage:c}}return a}(a),b===e.h.CLAUDE&&a&&a.type)?`event: ${a.type}
@@ -0,0 +1,2 @@
1
+ "use strict";exports.id=2852,exports.ids=[2852],exports.modules={12852:(a,b,c)=>{c.d(b,{initConsoleInterceptor:()=>j});var d=c(29021),e=c(33873);let f="false"!==process.env.LOG_TO_FILE,g=(0,e.resolve)(process.env.LOG_FILE_PATH||"logs/application/app.log"),h=!1,i={debug:"debug",log:"info",info:"info",warn:"warn",error:"error"};function j(){if(!f||h)return;try{let a;a=(0,e.dirname)(g),(0,d.existsSync)(a)||(0,d.mkdirSync)(a,{recursive:!0})}catch{return}h=!0;let a={log:console.log.bind(console),info:console.info.bind(console),warn:console.warn.bind(console),error:console.error.bind(console),debug:console.debug.bind(console)};for(let[b,c]of Object.entries(i)){let e=a[b];e&&(console[b]=(...a)=>{e(...a);try{let b,e=a.map(a=>{if(a instanceof Error)return`${a.message}
2
+ ${a.stack||""}`;if("object"==typeof a&&null!==a)try{return JSON.stringify(a)}catch{}return String(a)}).join(" "),f={timestamp:new Date().toISOString(),level:c,component:(b=e.match(/^\[([^\]]+)\]/))?b[1]:"app",message:e};(0,d.appendFileSync)(g,JSON.stringify(f)+"\n")}catch{}})}}}};
@@ -1 +1 @@
1
- "use strict";exports.id=73,exports.ids=[73],exports.modules={21020:(a,b,c)=>{c.d(b,{Pt:()=>k,Tr:()=>l,c1:()=>i,kI:()=>m,vk:()=>j});var d=c(40287),e=c(74163),f=c(54194);let g=Promise.resolve(),h=new Map;async function i(a,b=null){let c,h=g;g=new Promise(a=>{c=a});try{let c;await h;let g=await (0,d.getProviderConnections)({provider:a,isActive:!0});if(f.debug("AUTH",`${a} | total connections: ${g.length}, excludeId: ${b||"none"}`),0===g.length){let b=await (0,d.getProviderConnections)({provider:a});if(f.debug("AUTH",`${a} | all connections (incl inactive): ${b.length}`),b.length>0){let c=(0,e.UY)(b);if(c)return f.warn("AUTH",`${a} | all ${b.length} accounts rate limited (${(0,e.Qo)(c)})`),{allRateLimited:!0,retryAfter:c,retryAfterHuman:(0,e.Qo)(c)};f.warn("AUTH",`${a} | ${b.length} accounts found but none active`),b.forEach(a=>{f.debug("AUTH",` → ${a.id?.slice(0,8)} | isActive=${a.isActive} | rateLimitedUntil=${a.rateLimitedUntil||"none"} | testStatus=${a.testStatus}`)})}return f.warn("AUTH",`No credentials for ${a}`),null}let i=g.filter(a=>!(b&&a.id===b||(0,e.AO)(a.rateLimitedUntil)));if(f.debug("AUTH",`${a} | available: ${i.length}/${g.length}`),g.forEach(a=>{let c=b&&a.id===b,d=(0,e.AO)(a.rateLimitedUntil);(c||d)&&f.debug("AUTH",` → ${a.id?.slice(0,8)} | ${c?"excluded":""} ${d?`rateLimited until ${a.rateLimitedUntil}`:""}`)}),0===i.length){let b=(0,e.UY)(g);if(b){let c=g.filter(a=>a.rateLimitedUntil&&new Date(a.rateLimitedUntil).getTime()>Date.now()).sort((a,b)=>new Date(a.rateLimitedUntil).getTime()-new Date(b.rateLimitedUntil).getTime())[0];return f.warn("AUTH",`${a} | all ${g.length} active accounts rate limited (${(0,e.Qo)(b)}) | lastErrorCode=${c?.errorCode}, lastError=${c?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:b,retryAfterHuman:(0,e.Qo)(b),lastError:c?.lastError||null,lastErrorCode:c?.errorCode||null}}return f.warn("AUTH",`${a} | all ${g.length} accounts unavailable`),null}let j=await (0,d.mt)(),k=j.fallbackStrategy||"fill-first";if("round-robin"===k){let a=j.stickyRoundRobinLimit||3,b=[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt).getTime()-new Date(a.lastUsedAt).getTime():-1:1:(a.priority||999)-(b.priority||999))[0],e=b?.consecutiveUseCount||0;b&&b.lastUsedAt&&e<a?(c=b,await (0,d.rj)(c.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(c.consecutiveUseCount||0)+1})):(c=[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt).getTime()-new Date(b.lastUsedAt).getTime():1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.rj)(c.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else if("p2c"===k)if(i.length<=2)c=i[0];else{let a=Math.floor(Math.random()*i.length),b=Math.floor(Math.random()*(i.length-1));b>=a&&b++;let d=i[a],e=i[b],f=(d.consecutiveUseCount||0)+10*!!d.lastError,g=(e.consecutiveUseCount||0)+10*!!e.lastError;c=f<=g?d:e}else if("random"===k){let a=Math.floor(Math.random()*i.length);c=i[a]}else c="least-used"===k?[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt).getTime()-new Date(b.lastUsedAt).getTime():1:-1:(a.priority||999)-(b.priority||999))[0]:"cost-optimized"===k?[...i].sort((a,b)=>(a.priority||999)-(b.priority||999))[0]:i[0];return{apiKey:c.apiKey,accessToken:c.accessToken,refreshToken:c.refreshToken,expiresAt:c.tokenExpiresAt||c.expiresAt||null,projectId:c.projectId,copilotToken:c.providerSpecificData?.copilotToken,providerSpecificData:c.providerSpecificData,connectionId:c.id,testStatus:c.testStatus,lastError:c.lastError,rateLimitedUntil:c.rateLimitedUntil}}finally{c&&c()}}async function j(a,b,c,g=null,i=null){let k,l=h.get(a)||Promise.resolve();h.set(a,new Promise(a=>{k=a}));try{await l;let h=(await (0,d.getProviderConnections)({provider:g})).find(b=>b.id===a),j=h?.backoffLevel||0;if(h?.rateLimitedUntil&&new Date(h.rateLimitedUntil).getTime()>Date.now())return f.info("AUTH",`${a.slice(0,8)} already marked unavailable (until ${h.rateLimitedUntil}), skipping duplicate mark`),{shouldFallback:!0,cooldownMs:new Date(h.rateLimitedUntil).getTime()-Date.now()};let{shouldFallback:k,cooldownMs:m,newBackoffLevel:n,reason:o}=(0,e.hk)(b,c,j,i,g);if(!k)return{shouldFallback:!1,cooldownMs:0};let p=(0,e.vp)(m),q="string"==typeof c?c.slice(0,100):"Provider error";return await (0,d.rj)(a,{rateLimitedUntil:p,testStatus:"unavailable",lastError:q,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:n??j}),g&&i&&m>0&&(0,e.R7)(g,a,i,o||"unknown",m),g&&b&&q&&console.error(`❌ ${g} [${b}]: ${q}`),{shouldFallback:!0,cooldownMs:m}}finally{k&&k(),h.delete(a)}}async function k(a,b){("unavailable"===b.testStatus||b.lastError||b.rateLimitedUntil)&&(await (0,d.rj)(a,{testStatus:"active",lastError:null,lastErrorAt:null,rateLimitedUntil:null,backoffLevel:0}),f.info("AUTH",`Account ${a.slice(0,8)} error cleared`))}function l(a){let b=a.headers.get("Authorization");return b?.startsWith("Bearer ")?b.slice(7):null}async function m(a){return!!a&&await (0,d.ek)(a)}},54194:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>i,error:()=>l,info:()=>j,maskKey:()=>g,request:()=>m,response:()=>n,stream:()=>o,warn:()=>k});var d=c(74552),e=c.n(d);let f={level:process.env.LOG_LEVEL||"info",base:{service:"omniroute"},timestamp:e().stdTimeFunctions.isoTime,formatters:{level:a=>({level:a})}};function g(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}let h=e()({...f}).child({module:"sse"});function i(a,b,c){h.debug({tag:a,...p(c)},b)}function j(a,b,c){h.info({tag:a,...p(c)},b)}function k(a,b,c){h.warn({tag:a,...p(c)},b)}function l(a,b,c){h.error({tag:a,...p(c)},b)}function m(a,b,c){h.info({tag:"HTTP",method:a,path:b,...p(c)},`📥 ${a} ${b}`)}function n(a,b,c){h[a<400?"info":"error"]({tag:"HTTP",status:a,duration:b,...p(c)},`📤 ${a} (${b}ms)`)}function o(a,b){h.debug({tag:"STREAM",event:a,...p(b)},`🌊 ${a}`)}function p(a){return a?"string"==typeof a?{detail:a}:"object"==typeof a?a:{detail:String(a)}:{}}},92556:(a,b,c)=>{c.d(b,{$N:()=>e,J5:()=>d});let d=process.env.CORS_ORIGIN||"*",e={"Access-Control-Allow-Origin":d,"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-api-key, anthropic-version"}}};
1
+ "use strict";exports.id=73,exports.ids=[73],exports.modules={21020:(a,b,c)=>{c.d(b,{Pt:()=>k,Tr:()=>l,c1:()=>i,kI:()=>m,vk:()=>j});var d=c(40287),e=c(74163),f=c(83779);let g=Promise.resolve(),h=new Map;async function i(a,b=null){let c,h=g;g=new Promise(a=>{c=a});try{let c;await h;let g=await (0,d.getProviderConnections)({provider:a,isActive:!0});if(f.debug("AUTH",`${a} | total connections: ${g.length}, excludeId: ${b||"none"}`),0===g.length){let b=await (0,d.getProviderConnections)({provider:a});if(f.debug("AUTH",`${a} | all connections (incl inactive): ${b.length}`),b.length>0){let c=(0,e.UY)(b);if(c)return f.warn("AUTH",`${a} | all ${b.length} accounts rate limited (${(0,e.Qo)(c)})`),{allRateLimited:!0,retryAfter:c,retryAfterHuman:(0,e.Qo)(c)};f.warn("AUTH",`${a} | ${b.length} accounts found but none active`),b.forEach(a=>{f.debug("AUTH",` → ${a.id?.slice(0,8)} | isActive=${a.isActive} | rateLimitedUntil=${a.rateLimitedUntil||"none"} | testStatus=${a.testStatus}`)})}return f.warn("AUTH",`No credentials for ${a}`),null}let i=g.filter(a=>!(b&&a.id===b||(0,e.AO)(a.rateLimitedUntil)));if(f.debug("AUTH",`${a} | available: ${i.length}/${g.length}`),g.forEach(a=>{let c=b&&a.id===b,d=(0,e.AO)(a.rateLimitedUntil);(c||d)&&f.debug("AUTH",` → ${a.id?.slice(0,8)} | ${c?"excluded":""} ${d?`rateLimited until ${a.rateLimitedUntil}`:""}`)}),0===i.length){let b=(0,e.UY)(g);if(b){let c=g.filter(a=>a.rateLimitedUntil&&new Date(a.rateLimitedUntil).getTime()>Date.now()).sort((a,b)=>new Date(a.rateLimitedUntil).getTime()-new Date(b.rateLimitedUntil).getTime())[0];return f.warn("AUTH",`${a} | all ${g.length} active accounts rate limited (${(0,e.Qo)(b)}) | lastErrorCode=${c?.errorCode}, lastError=${c?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:b,retryAfterHuman:(0,e.Qo)(b),lastError:c?.lastError||null,lastErrorCode:c?.errorCode||null}}return f.warn("AUTH",`${a} | all ${g.length} accounts unavailable`),null}let j=await (0,d.mt)(),k=j.fallbackStrategy||"fill-first";if("round-robin"===k){let a=j.stickyRoundRobinLimit||3,b=[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt).getTime()-new Date(a.lastUsedAt).getTime():-1:1:(a.priority||999)-(b.priority||999))[0],e=b?.consecutiveUseCount||0;b&&b.lastUsedAt&&e<a?(c=b,await (0,d.rj)(c.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(c.consecutiveUseCount||0)+1})):(c=[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt).getTime()-new Date(b.lastUsedAt).getTime():1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.rj)(c.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else if("p2c"===k)if(i.length<=2)c=i[0];else{let a=Math.floor(Math.random()*i.length),b=Math.floor(Math.random()*(i.length-1));b>=a&&b++;let d=i[a],e=i[b],f=(d.consecutiveUseCount||0)+10*!!d.lastError,g=(e.consecutiveUseCount||0)+10*!!e.lastError;c=f<=g?d:e}else if("random"===k){let a=Math.floor(Math.random()*i.length);c=i[a]}else c="least-used"===k?[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt).getTime()-new Date(b.lastUsedAt).getTime():1:-1:(a.priority||999)-(b.priority||999))[0]:"cost-optimized"===k?[...i].sort((a,b)=>(a.priority||999)-(b.priority||999))[0]:i[0];return{apiKey:c.apiKey,accessToken:c.accessToken,refreshToken:c.refreshToken,expiresAt:c.tokenExpiresAt||c.expiresAt||null,projectId:c.projectId,copilotToken:c.providerSpecificData?.copilotToken,providerSpecificData:c.providerSpecificData,connectionId:c.id,testStatus:c.testStatus,lastError:c.lastError,rateLimitedUntil:c.rateLimitedUntil}}finally{c&&c()}}async function j(a,b,c,g=null,i=null){let k,l=h.get(a)||Promise.resolve();h.set(a,new Promise(a=>{k=a}));try{await l;let h=(await (0,d.getProviderConnections)({provider:g})).find(b=>b.id===a),j=h?.backoffLevel||0;if(h?.rateLimitedUntil&&new Date(h.rateLimitedUntil).getTime()>Date.now())return f.info("AUTH",`${a.slice(0,8)} already marked unavailable (until ${h.rateLimitedUntil}), skipping duplicate mark`),{shouldFallback:!0,cooldownMs:new Date(h.rateLimitedUntil).getTime()-Date.now()};let{shouldFallback:k,cooldownMs:m,newBackoffLevel:n,reason:o}=(0,e.hk)(b,c,j,i,g);if(!k)return{shouldFallback:!1,cooldownMs:0};let p=(0,e.vp)(m),q="string"==typeof c?c.slice(0,100):"Provider error";return await (0,d.rj)(a,{rateLimitedUntil:p,testStatus:"unavailable",lastError:q,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:n??j}),g&&i&&m>0&&(0,e.R7)(g,a,i,o||"unknown",m),g&&b&&q&&console.error(`❌ ${g} [${b}]: ${q}`),{shouldFallback:!0,cooldownMs:m}}finally{k&&k(),h.delete(a)}}async function k(a,b){("unavailable"===b.testStatus||b.lastError||b.rateLimitedUntil)&&(await (0,d.rj)(a,{testStatus:"active",lastError:null,lastErrorAt:null,rateLimitedUntil:null,backoffLevel:0}),f.info("AUTH",`Account ${a.slice(0,8)} error cleared`))}function l(a){let b=a.headers.get("Authorization");return b?.startsWith("Bearer ")?b.slice(7):null}async function m(a){return!!a&&await (0,d.ek)(a)}},83779:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>l,error:()=>o,info:()=>m,maskKey:()=>j,request:()=>p,response:()=>q,stream:()=>r,warn:()=>n});var d=c(74552),e=c.n(d),f=c(33873),g=c(29021);function h(){let a="false"!==process.env.LOG_TO_FILE,b=process.env.LOG_FILE_PATH||(0,f.join)(process.cwd(),"logs/application/app.log");return{logToFile:a,logFilePath:b,maxFileSize:function(a){if(!a)return 0x3200000;let b=a.match(/^(\d+)\s*(k|m|g|kb|mb|gb)?$/i);if(!b)return 0x3200000;let c=parseInt(b[1],10);switch((b[2]||"").toLowerCase()){case"k":case"kb":return 1024*c;case"m":case"mb":return 1024*c*1024;case"g":case"gb":return 1024*c*1048576;default:return c}}(process.env.LOG_MAX_FILE_SIZE),retentionDays:parseInt(process.env.LOG_RETENTION_DAYS||String(7),10)}}let i={level:process.env.LOG_LEVEL||"info",base:{service:"omniroute"},timestamp:e().stdTimeFunctions.isoTime,formatters:{level:a=>({level:a})}};function j(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}let k=(function(){let a=h(),b=i.level||"info";if(a.logToFile)try{let d=h();if(d.logToFile){var c;let a;c=d.logFilePath,a=(0,f.dirname)(c),(0,g.existsSync)(a)||(0,g.mkdirSync)(a,{recursive:!0}),function(a,b){try{if(!(0,g.existsSync)(a)||(0,g.statSync)(a).size<b)return;let c=(0,f.dirname)(a),d=(0,f.extname)(a),e=(0,f.basename)(a,d),h=new Date,i=`${h.getFullYear()}-${String(h.getMonth()+1).padStart(2,"0")}-${String(h.getDate()).padStart(2,"0")}_${String(h.getHours()).padStart(2,"0")}${String(h.getMinutes()).padStart(2,"0")}${String(h.getSeconds()).padStart(2,"0")}`,j=(0,f.join)(c,`${e}.${i}${d}`);(0,g.renameSync)(a,j)}catch{}}(d.logFilePath,d.maxFileSize),function(a,b){try{let c=(0,f.dirname)(a);if(!(0,g.existsSync)(c))return;let d=(0,f.extname)(a),e=(0,f.basename)(a,d),h=(0,g.readdirSync)(c),i=Date.now()-24*b*36e5;for(let b of h)if(b.startsWith(e+".")&&b.endsWith(d)&&b!==(0,f.basename)(a)){let a=(0,f.join)(c,b);try{(0,g.statSync)(a).mtimeMs<i&&(0,g.unlinkSync)(a)}catch{}}}catch{}}(d.logFilePath,d.retentionDays)}let j=(0,f.resolve)(a.logFilePath);return e()({...i,transport:{targets:[{target:"pino/file",options:{destination:1},level:b},{target:"pino/file",options:{destination:j,mkdir:!0},level:b}]}})}catch{console.warn("[logger] Failed to set up file transport, falling back to console only")}return e()(i)})().child({module:"sse"});function l(a,b,c){k.debug({tag:a,...s(c)},b)}function m(a,b,c){k.info({tag:a,...s(c)},b)}function n(a,b,c){k.warn({tag:a,...s(c)},b)}function o(a,b,c){k.error({tag:a,...s(c)},b)}function p(a,b,c){k.info({tag:"HTTP",method:a,path:b,...s(c)},`📥 ${a} ${b}`)}function q(a,b,c){k[a<400?"info":"error"]({tag:"HTTP",status:a,duration:b,...s(c)},`📤 ${a} (${b}ms)`)}function r(a,b){k.debug({tag:"STREAM",event:a,...s(b)},`🌊 ${a}`)}function s(a){return a?"string"==typeof a?{detail:a}:"object"==typeof a?a:{detail:String(a)}:{}}},92556:(a,b,c)=>{c.d(b,{$N:()=>e,J5:()=>d});let d=process.env.CORS_ORIGIN||"*",e={"Access-Control-Allow-Origin":d,"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-api-key, anthropic-version"}}};