@srouterhq/server 0.0.0-stage → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/client/dist/assets/am-TQ7Jmdqe.js +1 -0
- package/client/dist/assets/ar-Bf5a7yfC.js +1 -0
- package/client/dist/assets/az-CrosE1xH.js +1 -0
- package/client/dist/assets/bg-BvWnmcUz.js +1 -0
- package/client/dist/assets/bn-ams5TsJp.js +1 -0
- package/client/dist/assets/cs-Dh67CaJ_.js +1 -0
- package/client/dist/assets/da-9WlT8Iq7.js +1 -0
- package/client/dist/assets/de-lWhJJzz7.js +1 -0
- package/client/dist/assets/el-Cu7_GhNq.js +1 -0
- package/client/dist/assets/es-BZuzsBcP.js +1 -0
- package/client/dist/assets/fa-Dwdn-jKS.js +1 -0
- package/client/dist/assets/fi-BFrFyOTy.js +1 -0
- package/client/dist/assets/fr-XhbtmPpj.js +1 -0
- package/client/dist/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2 +0 -0
- package/client/dist/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2 +0 -0
- package/client/dist/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2 +0 -0
- package/client/dist/assets/geist-latin-wght-normal-BgDaEnEv.woff2 +0 -0
- package/client/dist/assets/geist-mono-cyrillic-ext-wght-normal-I4S5GZfc.woff2 +0 -0
- package/client/dist/assets/geist-mono-cyrillic-wght-normal-BmXc_FBt.woff2 +0 -0
- package/client/dist/assets/geist-mono-latin-ext-wght-normal-DrnZ1wKl.woff2 +0 -0
- package/client/dist/assets/geist-mono-latin-wght-normal-B_7UjwxQ.woff2 +0 -0
- package/client/dist/assets/geist-mono-symbols2-wght-normal-GZpp1pK2.woff2 +0 -0
- package/client/dist/assets/geist-mono-vietnamese-wght-normal-D8KDMBhC.woff2 +0 -0
- package/client/dist/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2 +0 -0
- package/client/dist/assets/gu-D0uhLUB8.js +1 -0
- package/client/dist/assets/ha-CVlm9pqp.js +1 -0
- package/client/dist/assets/he-CMIFeoWr.js +1 -0
- package/client/dist/assets/hi-ENTwhBpn.js +1 -0
- package/client/dist/assets/hr-fc03vMy_.js +1 -0
- package/client/dist/assets/hu-YBo2BIYt.js +1 -0
- package/client/dist/assets/id-BEWXYX69.js +1 -0
- package/client/dist/assets/ig-BKLZFKka.js +1 -0
- package/client/dist/assets/index-D9I4KtvR.js +145 -0
- package/client/dist/assets/index-txhEmCdb.css +2 -0
- package/client/dist/assets/it-Bzmei1Y2.js +1 -0
- package/client/dist/assets/ja-BfcpuqEl.js +1 -0
- package/client/dist/assets/ka-CnWjRgLo.js +1 -0
- package/client/dist/assets/km-BAjPR3Qj.js +1 -0
- package/client/dist/assets/kn-B15WKU5m.js +1 -0
- package/client/dist/assets/ko-C61fAB-w.js +1 -0
- package/client/dist/assets/lt-CYTr4_YW.js +1 -0
- package/client/dist/assets/ml-CtqxgyH3.js +1 -0
- package/client/dist/assets/mr-X5TMY7aR.js +1 -0
- package/client/dist/assets/ms-DSg8RqPS.js +1 -0
- package/client/dist/assets/my-D7RqR8uE.js +1 -0
- package/client/dist/assets/ne-DaflxkDj.js +1 -0
- package/client/dist/assets/nl-BOqqtsC8.js +1 -0
- package/client/dist/assets/no-BSHp_StB.js +1 -0
- package/client/dist/assets/or-BkLR9Vub.js +1 -0
- package/client/dist/assets/pa-CarJ2XgI.js +1 -0
- package/client/dist/assets/pl-C2n0V-0k.js +1 -0
- package/client/dist/assets/pt-BR-CqJdNhg2.js +1 -0
- package/client/dist/assets/pt-PT-C_HpMyKz.js +1 -0
- package/client/dist/assets/ro-DVRZqSAS.js +1 -0
- package/client/dist/assets/ru-DwAJG7VC.js +1 -0
- package/client/dist/assets/si-BxUezXm0.js +1 -0
- package/client/dist/assets/sk-eI1VcIfY.js +1 -0
- package/client/dist/assets/sr-CJF3auCr.js +1 -0
- package/client/dist/assets/srouter-logo-C6ZfjGIi.svg +14 -0
- package/client/dist/assets/sv-nqvwHAq_.js +1 -0
- package/client/dist/assets/sw-DWynE2pW.js +1 -0
- package/client/dist/assets/ta-BVM12knC.js +1 -0
- package/client/dist/assets/te-oyzEkF7_.js +1 -0
- package/client/dist/assets/th-COVeE0ZQ.js +1 -0
- package/client/dist/assets/tl-DsJANnQz.js +1 -0
- package/client/dist/assets/tr-B-Fl-urO.js +1 -0
- package/client/dist/assets/uk-C5qketAO.js +1 -0
- package/client/dist/assets/ur-QU9KugfV.js +1 -0
- package/client/dist/assets/uz-DL9cG_mY.js +1 -0
- package/client/dist/assets/vi-CQiVy3Pu.js +1 -0
- package/client/dist/assets/yo-DqazMdrZ.js +1 -0
- package/client/dist/assets/zh-CN-DnYL_Kio.js +1 -0
- package/client/dist/assets/zh-TW-5bdbosKj.js +1 -0
- package/client/dist/favicon.svg +14 -0
- package/client/dist/icons.svg +24 -0
- package/client/dist/index.html +37 -0
- package/dist/app.d.ts +4 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +372 -0
- package/dist/app.js.map +1 -0
- package/dist/db/index.d.ts +49 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +203 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/migrate/TEMPLATE.d.ts +4 -0
- package/dist/db/migrate/TEMPLATE.d.ts.map +1 -0
- package/dist/db/migrate/TEMPLATE.js +18 -0
- package/dist/db/migrate/TEMPLATE.js.map +1 -0
- package/dist/db/migrate/cli.d.ts +2 -0
- package/dist/db/migrate/cli.d.ts.map +1 -0
- package/dist/db/migrate/cli.js +177 -0
- package/dist/db/migrate/cli.js.map +1 -0
- package/dist/db/migrate/defaults.d.ts +52 -0
- package/dist/db/migrate/defaults.d.ts.map +1 -0
- package/dist/db/migrate/defaults.js +126 -0
- package/dist/db/migrate/defaults.js.map +1 -0
- package/dist/db/migrate/runner.d.ts +16 -0
- package/dist/db/migrate/runner.d.ts.map +1 -0
- package/dist/db/migrate/runner.js +178 -0
- package/dist/db/migrate/runner.js.map +1 -0
- package/dist/db/migrations/20260101_000000_legacy_baseline.d.ts +4 -0
- package/dist/db/migrations/20260101_000000_legacy_baseline.d.ts.map +1 -0
- package/dist/db/migrations/20260101_000000_legacy_baseline.js +2240 -0
- package/dist/db/migrations/20260101_000000_legacy_baseline.js.map +1 -0
- package/dist/db/migrations/20260627_000001_custom_provider_modalities.d.ts +4 -0
- package/dist/db/migrations/20260627_000001_custom_provider_modalities.d.ts.map +1 -0
- package/dist/db/migrations/20260627_000001_custom_provider_modalities.js +27 -0
- package/dist/db/migrations/20260627_000001_custom_provider_modalities.js.map +1 -0
- package/dist/db/migrations/20260627_000002_catalog_model_state.d.ts +4 -0
- package/dist/db/migrations/20260627_000002_catalog_model_state.d.ts.map +1 -0
- package/dist/db/migrations/20260627_000002_catalog_model_state.js +30 -0
- package/dist/db/migrations/20260627_000002_catalog_model_state.js.map +1 -0
- package/dist/db/migrations/20260628_120000_request_aggregates.d.ts +6 -0
- package/dist/db/migrations/20260628_120000_request_aggregates.d.ts.map +1 -0
- package/dist/db/migrations/20260628_120000_request_aggregates.js +104 -0
- package/dist/db/migrations/20260628_120000_request_aggregates.js.map +1 -0
- package/dist/db/migrations/20260630_000001_github_gpt41_context.d.ts +9 -0
- package/dist/db/migrations/20260630_000001_github_gpt41_context.d.ts.map +1 -0
- package/dist/db/migrations/20260630_000001_github_gpt41_context.js +22 -0
- package/dist/db/migrations/20260630_000001_github_gpt41_context.js.map +1 -0
- package/dist/db/migrations/20260706_000001_request_client_info.d.ts +4 -0
- package/dist/db/migrations/20260706_000001_request_client_info.d.ts.map +1 -0
- package/dist/db/migrations/20260706_000001_request_client_info.js +30 -0
- package/dist/db/migrations/20260706_000001_request_client_info.js.map +1 -0
- package/dist/db/migrations/20260706_000002_custom_model_tool_support.d.ts +17 -0
- package/dist/db/migrations/20260706_000002_custom_model_tool_support.d.ts.map +1 -0
- package/dist/db/migrations/20260706_000002_custom_model_tool_support.js +20 -0
- package/dist/db/migrations/20260706_000002_custom_model_tool_support.js.map +1 -0
- package/dist/db/migrations/20260714_000001_profile_chain_backfill.d.ts +12 -0
- package/dist/db/migrations/20260714_000001_profile_chain_backfill.d.ts.map +1 -0
- package/dist/db/migrations/20260714_000001_profile_chain_backfill.js +45 -0
- package/dist/db/migrations/20260714_000001_profile_chain_backfill.js.map +1 -0
- package/dist/db/migrations/20260720_000001_key_health_error.d.ts +5 -0
- package/dist/db/migrations/20260720_000001_key_health_error.d.ts.map +1 -0
- package/dist/db/migrations/20260720_000001_key_health_error.js +16 -0
- package/dist/db/migrations/20260720_000001_key_health_error.js.map +1 -0
- package/dist/db/migrations/20260726_000001_cooldown_probe_provenance.d.ts +4 -0
- package/dist/db/migrations/20260726_000001_cooldown_probe_provenance.d.ts.map +1 -0
- package/dist/db/migrations/20260726_000001_cooldown_probe_provenance.js +38 -0
- package/dist/db/migrations/20260726_000001_cooldown_probe_provenance.js.map +1 -0
- package/dist/db/migrations/20260726_000002_request_attempts.d.ts +4 -0
- package/dist/db/migrations/20260726_000002_request_attempts.d.ts.map +1 -0
- package/dist/db/migrations/20260726_000002_request_attempts.js +43 -0
- package/dist/db/migrations/20260726_000002_request_attempts.js.map +1 -0
- package/dist/db/migrations/20260726_000003_model_source_provenance.d.ts +4 -0
- package/dist/db/migrations/20260726_000003_model_source_provenance.d.ts.map +1 -0
- package/dist/db/migrations/20260726_000003_model_source_provenance.js +80 -0
- package/dist/db/migrations/20260726_000003_model_source_provenance.js.map +1 -0
- package/dist/db/migrations/20260726_000004_media_model_meta.d.ts +4 -0
- package/dist/db/migrations/20260726_000004_media_model_meta.d.ts.map +1 -0
- package/dist/db/migrations/20260726_000004_media_model_meta.js +34 -0
- package/dist/db/migrations/20260726_000004_media_model_meta.js.map +1 -0
- package/dist/db/migrations/20260726_000005_request_served_model.d.ts +4 -0
- package/dist/db/migrations/20260726_000005_request_served_model.d.ts.map +1 -0
- package/dist/db/migrations/20260726_000005_request_served_model.js +31 -0
- package/dist/db/migrations/20260726_000005_request_served_model.js.map +1 -0
- package/dist/db/migrations/20260726_000006_attempt_error_summary.d.ts +4 -0
- package/dist/db/migrations/20260726_000006_attempt_error_summary.d.ts.map +1 -0
- package/dist/db/migrations/20260726_000006_attempt_error_summary.js +29 -0
- package/dist/db/migrations/20260726_000006_attempt_error_summary.js.map +1 -0
- package/dist/db/migrations/20260727_000001_agent_compatibility.d.ts +4 -0
- package/dist/db/migrations/20260727_000001_agent_compatibility.d.ts.map +1 -0
- package/dist/db/migrations/20260727_000001_agent_compatibility.js +41 -0
- package/dist/db/migrations/20260727_000001_agent_compatibility.js.map +1 -0
- package/dist/db/migrations/20260728_000001_tombstone_provenance.d.ts +12 -0
- package/dist/db/migrations/20260728_000001_tombstone_provenance.d.ts.map +1 -0
- package/dist/db/migrations/20260728_000001_tombstone_provenance.js +37 -0
- package/dist/db/migrations/20260728_000001_tombstone_provenance.js.map +1 -0
- package/dist/db/migrations/20260729_000001_custom_model_endpoint_identity.d.ts +4 -0
- package/dist/db/migrations/20260729_000001_custom_model_endpoint_identity.d.ts.map +1 -0
- package/dist/db/migrations/20260729_000001_custom_model_endpoint_identity.js +145 -0
- package/dist/db/migrations/20260729_000001_custom_model_endpoint_identity.js.map +1 -0
- package/dist/db/migrations/20260802_000001_custom_endpoint_host_labels.d.ts +6 -0
- package/dist/db/migrations/20260802_000001_custom_endpoint_host_labels.d.ts.map +1 -0
- package/dist/db/migrations/20260802_000001_custom_endpoint_host_labels.js +52 -0
- package/dist/db/migrations/20260802_000001_custom_endpoint_host_labels.js.map +1 -0
- package/dist/db/migrations/20260805_000001_key_model_scope.d.ts +6 -0
- package/dist/db/migrations/20260805_000001_key_model_scope.d.ts.map +1 -0
- package/dist/db/migrations/20260805_000001_key_model_scope.js +17 -0
- package/dist/db/migrations/20260805_000001_key_model_scope.js.map +1 -0
- package/dist/db/migrations/20260805_000002_client_profiles.d.ts +4 -0
- package/dist/db/migrations/20260805_000002_client_profiles.d.ts.map +1 -0
- package/dist/db/migrations/20260805_000002_client_profiles.js +33 -0
- package/dist/db/migrations/20260805_000002_client_profiles.js.map +1 -0
- package/dist/db/migrations/20260810_000001_api_key_proxy.d.ts +4 -0
- package/dist/db/migrations/20260810_000001_api_key_proxy.d.ts.map +1 -0
- package/dist/db/migrations/20260810_000001_api_key_proxy.js +33 -0
- package/dist/db/migrations/20260810_000001_api_key_proxy.js.map +1 -0
- package/dist/db/migrations/20260819_000001_custom_model_tombstones.d.ts +4 -0
- package/dist/db/migrations/20260819_000001_custom_model_tombstones.d.ts.map +1 -0
- package/dist/db/migrations/20260819_000001_custom_model_tombstones.js +19 -0
- package/dist/db/migrations/20260819_000001_custom_model_tombstones.js.map +1 -0
- package/dist/db/migrations/20260820_000001_playground_conversations.d.ts +4 -0
- package/dist/db/migrations/20260820_000001_playground_conversations.d.ts.map +1 -0
- package/dist/db/migrations/20260820_000001_playground_conversations.js +47 -0
- package/dist/db/migrations/20260820_000001_playground_conversations.js.map +1 -0
- package/dist/db/migrations/20260823_000001_server_logs.d.ts +4 -0
- package/dist/db/migrations/20260823_000001_server_logs.d.ts.map +1 -0
- package/dist/db/migrations/20260823_000001_server_logs.js +53 -0
- package/dist/db/migrations/20260823_000001_server_logs.js.map +1 -0
- package/dist/db/migrations/20260823_000002_backups_table.d.ts +8 -0
- package/dist/db/migrations/20260823_000002_backups_table.d.ts.map +1 -0
- package/dist/db/migrations/20260823_000002_backups_table.js +22 -0
- package/dist/db/migrations/20260823_000002_backups_table.js.map +1 -0
- package/dist/db/migrations/20260823_000003_attempt_key_label.d.ts +19 -0
- package/dist/db/migrations/20260823_000003_attempt_key_label.d.ts.map +1 -0
- package/dist/db/migrations/20260823_000003_attempt_key_label.js +28 -0
- package/dist/db/migrations/20260823_000003_attempt_key_label.js.map +1 -0
- package/dist/db/migrations/20260823_000004_profile_auto_include.d.ts +14 -0
- package/dist/db/migrations/20260823_000004_profile_auto_include.d.ts.map +1 -0
- package/dist/db/migrations/20260823_000004_profile_auto_include.js +25 -0
- package/dist/db/migrations/20260823_000004_profile_auto_include.js.map +1 -0
- package/dist/db/migrations/20260901_000001_idempotency_claims.d.ts +4 -0
- package/dist/db/migrations/20260901_000001_idempotency_claims.d.ts.map +1 -0
- package/dist/db/migrations/20260901_000001_idempotency_claims.js +46 -0
- package/dist/db/migrations/20260901_000001_idempotency_claims.js.map +1 -0
- package/dist/db/migrations/20260901_000002_quota_observation_lookup.d.ts +4 -0
- package/dist/db/migrations/20260901_000002_quota_observation_lookup.d.ts.map +1 -0
- package/dist/db/migrations/20260901_000002_quota_observation_lookup.js +37 -0
- package/dist/db/migrations/20260901_000002_quota_observation_lookup.js.map +1 -0
- package/dist/db/migrations/20260901_000003_request_caller.d.ts +4 -0
- package/dist/db/migrations/20260901_000003_request_caller.d.ts.map +1 -0
- package/dist/db/migrations/20260901_000003_request_caller.js +27 -0
- package/dist/db/migrations/20260901_000003_request_caller.js.map +1 -0
- package/dist/db/migrations/20260902_000001_analytics_latency_percentile_index.d.ts +4 -0
- package/dist/db/migrations/20260902_000001_analytics_latency_percentile_index.d.ts.map +1 -0
- package/dist/db/migrations/20260902_000001_analytics_latency_percentile_index.js +35 -0
- package/dist/db/migrations/20260902_000001_analytics_latency_percentile_index.js.map +1 -0
- package/dist/db/migrations/20260903_000001_mcp_enabled_default.d.ts +4 -0
- package/dist/db/migrations/20260903_000001_mcp_enabled_default.d.ts.map +1 -0
- package/dist/db/migrations/20260903_000001_mcp_enabled_default.js +37 -0
- package/dist/db/migrations/20260903_000001_mcp_enabled_default.js.map +1 -0
- package/dist/db/migrations/20260903_000002_response_cache.d.ts +4 -0
- package/dist/db/migrations/20260903_000002_response_cache.d.ts.map +1 -0
- package/dist/db/migrations/20260903_000002_response_cache.js +53 -0
- package/dist/db/migrations/20260903_000002_response_cache.js.map +1 -0
- package/dist/db/migrations/20260904_000001_key_monthly_budget.d.ts +13 -0
- package/dist/db/migrations/20260904_000001_key_monthly_budget.d.ts.map +1 -0
- package/dist/db/migrations/20260904_000001_key_monthly_budget.js +35 -0
- package/dist/db/migrations/20260904_000001_key_monthly_budget.js.map +1 -0
- package/dist/db/migrations/20260913_000001_request_model_attribution.d.ts +4 -0
- package/dist/db/migrations/20260913_000001_request_model_attribution.d.ts.map +1 -0
- package/dist/db/migrations/20260913_000001_request_model_attribution.js +68 -0
- package/dist/db/migrations/20260913_000001_request_model_attribution.js.map +1 -0
- package/dist/db/migrations/20260914_000001_key_monthly_usage.d.ts +5 -0
- package/dist/db/migrations/20260914_000001_key_monthly_usage.d.ts.map +1 -0
- package/dist/db/migrations/20260914_000001_key_monthly_usage.js +37 -0
- package/dist/db/migrations/20260914_000001_key_monthly_usage.js.map +1 -0
- package/dist/db/migrations/20260915_000001_quota_snapshot_freshness.d.ts +4 -0
- package/dist/db/migrations/20260915_000001_quota_snapshot_freshness.d.ts.map +1 -0
- package/dist/db/migrations/20260915_000001_quota_snapshot_freshness.js +28 -0
- package/dist/db/migrations/20260915_000001_quota_snapshot_freshness.js.map +1 -0
- package/dist/db/migrations/20261004_000001_unified_key_sr_prefix.d.ts +4 -0
- package/dist/db/migrations/20261004_000001_unified_key_sr_prefix.d.ts.map +1 -0
- package/dist/db/migrations/20261004_000001_unified_key_sr_prefix.js +25 -0
- package/dist/db/migrations/20261004_000001_unified_key_sr_prefix.js.map +1 -0
- package/dist/db/migrations/20261005_000001_key_budget_period.d.ts +10 -0
- package/dist/db/migrations/20261005_000001_key_budget_period.d.ts.map +1 -0
- package/dist/db/migrations/20261005_000001_key_budget_period.js +78 -0
- package/dist/db/migrations/20261005_000001_key_budget_period.js.map +1 -0
- package/dist/db/migrations/20261005_000002_key_budget_period_auto.d.ts +21 -0
- package/dist/db/migrations/20261005_000002_key_budget_period_auto.d.ts.map +1 -0
- package/dist/db/migrations/20261005_000002_key_budget_period_auto.js +41 -0
- package/dist/db/migrations/20261005_000002_key_budget_period_auto.js.map +1 -0
- package/dist/db/model-pricing.d.ts +39 -0
- package/dist/db/model-pricing.d.ts.map +1 -0
- package/dist/db/model-pricing.js +274 -0
- package/dist/db/model-pricing.js.map +1 -0
- package/dist/db/node-sqlite.d.ts +9 -0
- package/dist/db/node-sqlite.d.ts.map +1 -0
- package/dist/db/node-sqlite.js +87 -0
- package/dist/db/node-sqlite.js.map +1 -0
- package/dist/db/types.d.ts +22 -0
- package/dist/db/types.d.ts.map +1 -0
- package/dist/db/types.js +2 -0
- package/dist/db/types.js.map +1 -0
- package/dist/docs/docs-page.d.ts +2 -0
- package/dist/docs/docs-page.d.ts.map +1 -0
- package/dist/docs/docs-page.js +319 -0
- package/dist/docs/docs-page.js.map +1 -0
- package/dist/docs/openapi.d.ts +1896 -0
- package/dist/docs/openapi.d.ts.map +1 -0
- package/dist/docs/openapi.js +1096 -0
- package/dist/docs/openapi.js.map +1 -0
- package/dist/env.d.ts +2 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +9 -0
- package/dist/env.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +144 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/anthropic-documents.d.ts +41 -0
- package/dist/lib/anthropic-documents.d.ts.map +1 -0
- package/dist/lib/anthropic-documents.js +132 -0
- package/dist/lib/anthropic-documents.js.map +1 -0
- package/dist/lib/app-version.d.ts +5 -0
- package/dist/lib/app-version.d.ts.map +1 -0
- package/dist/lib/app-version.js +61 -0
- package/dist/lib/app-version.js.map +1 -0
- package/dist/lib/attempt-trace.d.ts +23 -0
- package/dist/lib/attempt-trace.d.ts.map +1 -0
- package/dist/lib/attempt-trace.js +32 -0
- package/dist/lib/attempt-trace.js.map +1 -0
- package/dist/lib/budget.d.ts +6 -0
- package/dist/lib/budget.d.ts.map +1 -0
- package/dist/lib/budget.js +40 -0
- package/dist/lib/budget.js.map +1 -0
- package/dist/lib/client-classifier.d.ts +10 -0
- package/dist/lib/client-classifier.d.ts.map +1 -0
- package/dist/lib/client-classifier.js +126 -0
- package/dist/lib/client-classifier.js.map +1 -0
- package/dist/lib/client-context.d.ts +10 -0
- package/dist/lib/client-context.d.ts.map +1 -0
- package/dist/lib/client-context.js +39 -0
- package/dist/lib/client-context.js.map +1 -0
- package/dist/lib/config.d.ts +33 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +94 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/content.d.ts +33 -0
- package/dist/lib/content.d.ts.map +1 -0
- package/dist/lib/content.js +201 -0
- package/dist/lib/content.js.map +1 -0
- package/dist/lib/credential.d.ts +11 -0
- package/dist/lib/credential.d.ts.map +1 -0
- package/dist/lib/credential.js +18 -0
- package/dist/lib/credential.js.map +1 -0
- package/dist/lib/crypto.d.ts +31 -0
- package/dist/lib/crypto.d.ts.map +1 -0
- package/dist/lib/crypto.js +206 -0
- package/dist/lib/crypto.js.map +1 -0
- package/dist/lib/custom-provider-cleanup.d.ts +13 -0
- package/dist/lib/custom-provider-cleanup.d.ts.map +1 -0
- package/dist/lib/custom-provider-cleanup.js +43 -0
- package/dist/lib/custom-provider-cleanup.js.map +1 -0
- package/dist/lib/db-backup.d.ts +31 -0
- package/dist/lib/db-backup.d.ts.map +1 -0
- package/dist/lib/db-backup.js +255 -0
- package/dist/lib/db-backup.js.map +1 -0
- package/dist/lib/endpoint-scope.d.ts +42 -0
- package/dist/lib/endpoint-scope.d.ts.map +1 -0
- package/dist/lib/endpoint-scope.js +95 -0
- package/dist/lib/endpoint-scope.js.map +1 -0
- package/dist/lib/env-drift.d.ts +17 -0
- package/dist/lib/env-drift.d.ts.map +1 -0
- package/dist/lib/env-drift.js +108 -0
- package/dist/lib/env-drift.js.map +1 -0
- package/dist/lib/error-classify.d.ts +40 -0
- package/dist/lib/error-classify.d.ts.map +1 -0
- package/dist/lib/error-classify.js +687 -0
- package/dist/lib/error-classify.js.map +1 -0
- package/dist/lib/error-redaction.d.ts +8 -0
- package/dist/lib/error-redaction.d.ts.map +1 -0
- package/dist/lib/error-redaction.js +45 -0
- package/dist/lib/error-redaction.js.map +1 -0
- package/dist/lib/fallback-loop.d.ts +306 -0
- package/dist/lib/fallback-loop.d.ts.map +1 -0
- package/dist/lib/fallback-loop.js +1336 -0
- package/dist/lib/fallback-loop.js.map +1 -0
- package/dist/lib/file-permissions.d.ts +98 -0
- package/dist/lib/file-permissions.d.ts.map +1 -0
- package/dist/lib/file-permissions.js +159 -0
- package/dist/lib/file-permissions.js.map +1 -0
- package/dist/lib/gemini-wire.d.ts +76 -0
- package/dist/lib/gemini-wire.d.ts.map +1 -0
- package/dist/lib/gemini-wire.js +392 -0
- package/dist/lib/gemini-wire.js.map +1 -0
- package/dist/lib/guardrails.d.ts +37 -0
- package/dist/lib/guardrails.d.ts.map +1 -0
- package/dist/lib/guardrails.js +106 -0
- package/dist/lib/guardrails.js.map +1 -0
- package/dist/lib/header-value.d.ts +8 -0
- package/dist/lib/header-value.d.ts.map +1 -0
- package/dist/lib/header-value.js +55 -0
- package/dist/lib/header-value.js.map +1 -0
- package/dist/lib/image-normalize.d.ts +21 -0
- package/dist/lib/image-normalize.d.ts.map +1 -0
- package/dist/lib/image-normalize.js +218 -0
- package/dist/lib/image-normalize.js.map +1 -0
- package/dist/lib/inbound-chat.d.ts +48 -0
- package/dist/lib/inbound-chat.d.ts.map +1 -0
- package/dist/lib/inbound-chat.js +406 -0
- package/dist/lib/inbound-chat.js.map +1 -0
- package/dist/lib/key-parser.d.ts +79 -0
- package/dist/lib/key-parser.d.ts.map +1 -0
- package/dist/lib/key-parser.js +701 -0
- package/dist/lib/key-parser.js.map +1 -0
- package/dist/lib/key-proxy.d.ts +49 -0
- package/dist/lib/key-proxy.d.ts.map +1 -0
- package/dist/lib/key-proxy.js +92 -0
- package/dist/lib/key-proxy.js.map +1 -0
- package/dist/lib/log-redaction.d.ts +28 -0
- package/dist/lib/log-redaction.d.ts.map +1 -0
- package/dist/lib/log-redaction.js +166 -0
- package/dist/lib/log-redaction.js.map +1 -0
- package/dist/lib/model-scope.d.ts +9 -0
- package/dist/lib/model-scope.d.ts.map +1 -0
- package/dist/lib/model-scope.js +29 -0
- package/dist/lib/model-scope.js.map +1 -0
- package/dist/lib/one-time-code.d.ts +15 -0
- package/dist/lib/one-time-code.d.ts.map +1 -0
- package/dist/lib/one-time-code.js +41 -0
- package/dist/lib/one-time-code.js.map +1 -0
- package/dist/lib/output-cap.d.ts +24 -0
- package/dist/lib/output-cap.d.ts.map +1 -0
- package/dist/lib/output-cap.js +80 -0
- package/dist/lib/output-cap.js.map +1 -0
- package/dist/lib/password.d.ts +3 -0
- package/dist/lib/password.d.ts.map +1 -0
- package/dist/lib/password.js +27 -0
- package/dist/lib/password.js.map +1 -0
- package/dist/lib/process-safety-net.d.ts +32 -0
- package/dist/lib/process-safety-net.d.ts.map +1 -0
- package/dist/lib/process-safety-net.js +123 -0
- package/dist/lib/process-safety-net.js.map +1 -0
- package/dist/lib/provider-identity.d.ts +37 -0
- package/dist/lib/provider-identity.d.ts.map +1 -0
- package/dist/lib/provider-identity.js +110 -0
- package/dist/lib/provider-identity.js.map +1 -0
- package/dist/lib/provider-size-parser.d.ts +6 -0
- package/dist/lib/provider-size-parser.d.ts.map +1 -0
- package/dist/lib/provider-size-parser.js +72 -0
- package/dist/lib/provider-size-parser.js.map +1 -0
- package/dist/lib/provider-timeout.d.ts +17 -0
- package/dist/lib/provider-timeout.d.ts.map +1 -0
- package/dist/lib/provider-timeout.js +70 -0
- package/dist/lib/provider-timeout.js.map +1 -0
- package/dist/lib/proxy.d.ts +180 -0
- package/dist/lib/proxy.d.ts.map +1 -0
- package/dist/lib/proxy.js +1002 -0
- package/dist/lib/proxy.js.map +1 -0
- package/dist/lib/request-log.d.ts +4 -0
- package/dist/lib/request-log.d.ts.map +1 -0
- package/dist/lib/request-log.js +161 -0
- package/dist/lib/request-log.js.map +1 -0
- package/dist/lib/reset-code.d.ts +5 -0
- package/dist/lib/reset-code.d.ts.map +1 -0
- package/dist/lib/reset-code.js +39 -0
- package/dist/lib/reset-code.js.map +1 -0
- package/dist/lib/retry-hint.d.ts +14 -0
- package/dist/lib/retry-hint.d.ts.map +1 -0
- package/dist/lib/retry-hint.js +36 -0
- package/dist/lib/retry-hint.js.map +1 -0
- package/dist/lib/route-live.d.ts +29 -0
- package/dist/lib/route-live.d.ts.map +1 -0
- package/dist/lib/route-live.js +97 -0
- package/dist/lib/route-live.js.map +1 -0
- package/dist/lib/sampling-params.d.ts +183 -0
- package/dist/lib/sampling-params.d.ts.map +1 -0
- package/dist/lib/sampling-params.js +386 -0
- package/dist/lib/sampling-params.js.map +1 -0
- package/dist/lib/scheduler.d.ts +13 -0
- package/dist/lib/scheduler.d.ts.map +1 -0
- package/dist/lib/scheduler.js +11 -0
- package/dist/lib/scheduler.js.map +1 -0
- package/dist/lib/served-model.d.ts +16 -0
- package/dist/lib/served-model.d.ts.map +1 -0
- package/dist/lib/served-model.js +0 -0
- package/dist/lib/served-model.js.map +1 -0
- package/dist/lib/server-logs.d.ts +132 -0
- package/dist/lib/server-logs.d.ts.map +1 -0
- package/dist/lib/server-logs.js +473 -0
- package/dist/lib/server-logs.js.map +1 -0
- package/dist/lib/setup-code.d.ts +5 -0
- package/dist/lib/setup-code.d.ts.map +1 -0
- package/dist/lib/setup-code.js +35 -0
- package/dist/lib/setup-code.js.map +1 -0
- package/dist/lib/structured-output.d.ts +9 -0
- package/dist/lib/structured-output.d.ts.map +1 -0
- package/dist/lib/structured-output.js +72 -0
- package/dist/lib/structured-output.js.map +1 -0
- package/dist/lib/system-prompt.d.ts +30 -0
- package/dist/lib/system-prompt.d.ts.map +1 -0
- package/dist/lib/system-prompt.js +66 -0
- package/dist/lib/system-prompt.js.map +1 -0
- package/dist/lib/task-type.d.ts +18 -0
- package/dist/lib/task-type.d.ts.map +1 -0
- package/dist/lib/task-type.js +92 -0
- package/dist/lib/task-type.js.map +1 -0
- package/dist/lib/think-tags.d.ts +37 -0
- package/dist/lib/think-tags.d.ts.map +1 -0
- package/dist/lib/think-tags.js +203 -0
- package/dist/lib/think-tags.js.map +1 -0
- package/dist/lib/tool-args.d.ts +36 -0
- package/dist/lib/tool-args.d.ts.map +1 -0
- package/dist/lib/tool-args.js +190 -0
- package/dist/lib/tool-args.js.map +1 -0
- package/dist/lib/tool-call-rescue.d.ts +62 -0
- package/dist/lib/tool-call-rescue.d.ts.map +1 -0
- package/dist/lib/tool-call-rescue.js +258 -0
- package/dist/lib/tool-call-rescue.js.map +1 -0
- package/dist/lib/tool-capability.d.ts +13 -0
- package/dist/lib/tool-capability.d.ts.map +1 -0
- package/dist/lib/tool-capability.js +70 -0
- package/dist/lib/tool-capability.js.map +1 -0
- package/dist/lib/tool-validate.d.ts +44 -0
- package/dist/lib/tool-validate.d.ts.map +1 -0
- package/dist/lib/tool-validate.js +165 -0
- package/dist/lib/tool-validate.js.map +1 -0
- package/dist/lib/ttfb-budget.d.ts +13 -0
- package/dist/lib/ttfb-budget.d.ts.map +1 -0
- package/dist/lib/ttfb-budget.js +153 -0
- package/dist/lib/ttfb-budget.js.map +1 -0
- package/dist/lib/url-guard.d.ts +47 -0
- package/dist/lib/url-guard.d.ts.map +1 -0
- package/dist/lib/url-guard.js +229 -0
- package/dist/lib/url-guard.js.map +1 -0
- package/dist/lib/wake-detect.d.ts +12 -0
- package/dist/lib/wake-detect.d.ts.map +1 -0
- package/dist/lib/wake-detect.js +99 -0
- package/dist/lib/wake-detect.js.map +1 -0
- package/dist/middleware/errorHandler.d.ts +3 -0
- package/dist/middleware/errorHandler.d.ts.map +1 -0
- package/dist/middleware/errorHandler.js +45 -0
- package/dist/middleware/errorHandler.js.map +1 -0
- package/dist/middleware/rateLimit.d.ts +4 -0
- package/dist/middleware/rateLimit.d.ts.map +1 -0
- package/dist/middleware/rateLimit.js +125 -0
- package/dist/middleware/rateLimit.js.map +1 -0
- package/dist/middleware/requireAuth.d.ts +3 -0
- package/dist/middleware/requireAuth.d.ts.map +1 -0
- package/dist/middleware/requireAuth.js +17 -0
- package/dist/middleware/requireAuth.js.map +1 -0
- package/dist/providers/aclide.d.ts +18 -0
- package/dist/providers/aclide.d.ts.map +1 -0
- package/dist/providers/aclide.js +174 -0
- package/dist/providers/aclide.js.map +1 -0
- package/dist/providers/aihorde.d.ts +42 -0
- package/dist/providers/aihorde.d.ts.map +1 -0
- package/dist/providers/aihorde.js +192 -0
- package/dist/providers/aihorde.js.map +1 -0
- package/dist/providers/airforce.d.ts +11 -0
- package/dist/providers/airforce.d.ts.map +1 -0
- package/dist/providers/airforce.js +32 -0
- package/dist/providers/airforce.js.map +1 -0
- package/dist/providers/base.d.ts +177 -0
- package/dist/providers/base.d.ts.map +1 -0
- package/dist/providers/base.js +354 -0
- package/dist/providers/base.js.map +1 -0
- package/dist/providers/blaze.d.ts +11 -0
- package/dist/providers/blaze.d.ts.map +1 -0
- package/dist/providers/blaze.js +33 -0
- package/dist/providers/blaze.js.map +1 -0
- package/dist/providers/blockrun.d.ts +14 -0
- package/dist/providers/blockrun.d.ts.map +1 -0
- package/dist/providers/blockrun.js +36 -0
- package/dist/providers/blockrun.js.map +1 -0
- package/dist/providers/clod.d.ts +11 -0
- package/dist/providers/clod.d.ts.map +1 -0
- package/dist/providers/clod.js +39 -0
- package/dist/providers/clod.js.map +1 -0
- package/dist/providers/cloudflare.d.ts +15 -0
- package/dist/providers/cloudflare.d.ts.map +1 -0
- package/dist/providers/cloudflare.js +175 -0
- package/dist/providers/cloudflare.js.map +1 -0
- package/dist/providers/cohere.d.ts +11 -0
- package/dist/providers/cohere.d.ts.map +1 -0
- package/dist/providers/cohere.js +117 -0
- package/dist/providers/cohere.js.map +1 -0
- package/dist/providers/dreamprompting.d.ts +11 -0
- package/dist/providers/dreamprompting.d.ts.map +1 -0
- package/dist/providers/dreamprompting.js +41 -0
- package/dist/providers/dreamprompting.js.map +1 -0
- package/dist/providers/electronhub.d.ts +10 -0
- package/dist/providers/electronhub.d.ts.map +1 -0
- package/dist/providers/electronhub.js +56 -0
- package/dist/providers/electronhub.js.map +1 -0
- package/dist/providers/experiential.d.ts +10 -0
- package/dist/providers/experiential.d.ts.map +1 -0
- package/dist/providers/experiential.js +33 -0
- package/dist/providers/experiential.js.map +1 -0
- package/dist/providers/gizmo.d.ts +15 -0
- package/dist/providers/gizmo.d.ts.map +1 -0
- package/dist/providers/gizmo.js +54 -0
- package/dist/providers/gizmo.js.map +1 -0
- package/dist/providers/google.d.ts +30 -0
- package/dist/providers/google.d.ts.map +1 -0
- package/dist/providers/google.js +766 -0
- package/dist/providers/google.js.map +1 -0
- package/dist/providers/index.d.ts +13 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +561 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/llmtr.d.ts +15 -0
- package/dist/providers/llmtr.d.ts.map +1 -0
- package/dist/providers/llmtr.js +51 -0
- package/dist/providers/llmtr.js.map +1 -0
- package/dist/providers/logfare.d.ts +11 -0
- package/dist/providers/logfare.d.ts.map +1 -0
- package/dist/providers/logfare.js +33 -0
- package/dist/providers/logfare.js.map +1 -0
- package/dist/providers/lucidity.d.ts +11 -0
- package/dist/providers/lucidity.d.ts.map +1 -0
- package/dist/providers/lucidity.js +37 -0
- package/dist/providers/lucidity.js.map +1 -0
- package/dist/providers/modelscope.d.ts +50 -0
- package/dist/providers/modelscope.d.ts.map +1 -0
- package/dist/providers/modelscope.js +143 -0
- package/dist/providers/modelscope.js.map +1 -0
- package/dist/providers/moondream.d.ts +17 -0
- package/dist/providers/moondream.d.ts.map +1 -0
- package/dist/providers/moondream.js +140 -0
- package/dist/providers/moondream.js.map +1 -0
- package/dist/providers/openai-compat.d.ts +140 -0
- package/dist/providers/openai-compat.d.ts.map +1 -0
- package/dist/providers/openai-compat.js +537 -0
- package/dist/providers/openai-compat.js.map +1 -0
- package/dist/providers/opencode-free.d.ts +24 -0
- package/dist/providers/opencode-free.d.ts.map +1 -0
- package/dist/providers/opencode-free.js +262 -0
- package/dist/providers/opencode-free.js.map +1 -0
- package/dist/providers/pollinations.d.ts +32 -0
- package/dist/providers/pollinations.d.ts.map +1 -0
- package/dist/providers/pollinations.js +65 -0
- package/dist/providers/pollinations.js.map +1 -0
- package/dist/providers/router9.d.ts +16 -0
- package/dist/providers/router9.d.ts.map +1 -0
- package/dist/providers/router9.js +42 -0
- package/dist/providers/router9.js.map +1 -0
- package/dist/providers/sail.d.ts +44 -0
- package/dist/providers/sail.d.ts.map +1 -0
- package/dist/providers/sail.js +302 -0
- package/dist/providers/sail.js.map +1 -0
- package/dist/providers/septor.d.ts +10 -0
- package/dist/providers/septor.d.ts.map +1 -0
- package/dist/providers/septor.js +36 -0
- package/dist/providers/septor.js.map +1 -0
- package/dist/providers/speechify.d.ts +14 -0
- package/dist/providers/speechify.d.ts.map +1 -0
- package/dist/providers/speechify.js +28 -0
- package/dist/providers/speechify.js.map +1 -0
- package/dist/providers/speka.d.ts +12 -0
- package/dist/providers/speka.d.ts.map +1 -0
- package/dist/providers/speka.js +37 -0
- package/dist/providers/speka.js.map +1 -0
- package/dist/providers/waterfall.d.ts +11 -0
- package/dist/providers/waterfall.d.ts.map +1 -0
- package/dist/providers/waterfall.js +33 -0
- package/dist/providers/waterfall.js.map +1 -0
- package/dist/providers/xkiro.d.ts +71 -0
- package/dist/providers/xkiro.d.ts.map +1 -0
- package/dist/providers/xkiro.js +119 -0
- package/dist/providers/xkiro.js.map +1 -0
- package/dist/providers/zhipu.d.ts +43 -0
- package/dist/providers/zhipu.d.ts.map +1 -0
- package/dist/providers/zhipu.js +95 -0
- package/dist/providers/zhipu.js.map +1 -0
- package/dist/routes/analytics.d.ts +2 -0
- package/dist/routes/analytics.d.ts.map +1 -0
- package/dist/routes/analytics.js +738 -0
- package/dist/routes/analytics.js.map +1 -0
- package/dist/routes/anthropic.d.ts +7 -0
- package/dist/routes/anthropic.d.ts.map +1 -0
- package/dist/routes/anthropic.js +1076 -0
- package/dist/routes/anthropic.js.map +1 -0
- package/dist/routes/auth.d.ts +2 -0
- package/dist/routes/auth.d.ts.map +1 -0
- package/dist/routes/auth.js +310 -0
- package/dist/routes/auth.js.map +1 -0
- package/dist/routes/backups.d.ts +2 -0
- package/dist/routes/backups.d.ts.map +1 -0
- package/dist/routes/backups.js +127 -0
- package/dist/routes/backups.js.map +1 -0
- package/dist/routes/cache.d.ts +2 -0
- package/dist/routes/cache.d.ts.map +1 -0
- package/dist/routes/cache.js +40 -0
- package/dist/routes/cache.js.map +1 -0
- package/dist/routes/client-profiles.d.ts +2 -0
- package/dist/routes/client-profiles.d.ts.map +1 -0
- package/dist/routes/client-profiles.js +128 -0
- package/dist/routes/client-profiles.js.map +1 -0
- package/dist/routes/compression.d.ts +2 -0
- package/dist/routes/compression.d.ts.map +1 -0
- package/dist/routes/compression.js +82 -0
- package/dist/routes/compression.js.map +1 -0
- package/dist/routes/conversations.d.ts +3 -0
- package/dist/routes/conversations.d.ts.map +1 -0
- package/dist/routes/conversations.js +215 -0
- package/dist/routes/conversations.js.map +1 -0
- package/dist/routes/docs.d.ts +2 -0
- package/dist/routes/docs.d.ts.map +1 -0
- package/dist/routes/docs.js +21 -0
- package/dist/routes/docs.js.map +1 -0
- package/dist/routes/embeddings.d.ts +2 -0
- package/dist/routes/embeddings.d.ts.map +1 -0
- package/dist/routes/embeddings.js +255 -0
- package/dist/routes/embeddings.js.map +1 -0
- package/dist/routes/fallback.d.ts +2 -0
- package/dist/routes/fallback.d.ts.map +1 -0
- package/dist/routes/fallback.js +631 -0
- package/dist/routes/fallback.js.map +1 -0
- package/dist/routes/free-tier.d.ts +22 -0
- package/dist/routes/free-tier.d.ts.map +1 -0
- package/dist/routes/free-tier.js +175 -0
- package/dist/routes/free-tier.js.map +1 -0
- package/dist/routes/gemini.d.ts +2 -0
- package/dist/routes/gemini.d.ts.map +1 -0
- package/dist/routes/gemini.js +218 -0
- package/dist/routes/gemini.js.map +1 -0
- package/dist/routes/health.d.ts +2 -0
- package/dist/routes/health.d.ts.map +1 -0
- package/dist/routes/health.js +72 -0
- package/dist/routes/health.js.map +1 -0
- package/dist/routes/keys.d.ts +17 -0
- package/dist/routes/keys.d.ts.map +1 -0
- package/dist/routes/keys.js +1787 -0
- package/dist/routes/keys.js.map +1 -0
- package/dist/routes/logs.d.ts +2 -0
- package/dist/routes/logs.d.ts.map +1 -0
- package/dist/routes/logs.js +88 -0
- package/dist/routes/logs.js.map +1 -0
- package/dist/routes/mcp.d.ts +4 -0
- package/dist/routes/mcp.d.ts.map +1 -0
- package/dist/routes/mcp.js +563 -0
- package/dist/routes/mcp.js.map +1 -0
- package/dist/routes/media.d.ts +2 -0
- package/dist/routes/media.d.ts.map +1 -0
- package/dist/routes/media.js +180 -0
- package/dist/routes/media.js.map +1 -0
- package/dist/routes/models.d.ts +2 -0
- package/dist/routes/models.d.ts.map +1 -0
- package/dist/routes/models.js +439 -0
- package/dist/routes/models.js.map +1 -0
- package/dist/routes/ollama.d.ts +7 -0
- package/dist/routes/ollama.d.ts.map +1 -0
- package/dist/routes/ollama.js +595 -0
- package/dist/routes/ollama.js.map +1 -0
- package/dist/routes/profiles.d.ts +3 -0
- package/dist/routes/profiles.d.ts.map +1 -0
- package/dist/routes/profiles.js +431 -0
- package/dist/routes/profiles.js.map +1 -0
- package/dist/routes/proxy.d.ts +32 -0
- package/dist/routes/proxy.d.ts.map +1 -0
- package/dist/routes/proxy.js +2793 -0
- package/dist/routes/proxy.js.map +1 -0
- package/dist/routes/responses.d.ts +1161 -0
- package/dist/routes/responses.d.ts.map +1 -0
- package/dist/routes/responses.js +1521 -0
- package/dist/routes/responses.js.map +1 -0
- package/dist/routes/settings.d.ts +2 -0
- package/dist/routes/settings.d.ts.map +1 -0
- package/dist/routes/settings.js +549 -0
- package/dist/routes/settings.js.map +1 -0
- package/dist/routes/status.d.ts +3 -0
- package/dist/routes/status.d.ts.map +1 -0
- package/dist/routes/status.js +214 -0
- package/dist/routes/status.js.map +1 -0
- package/dist/routes/update.d.ts +31 -0
- package/dist/routes/update.d.ts.map +1 -0
- package/dist/routes/update.js +536 -0
- package/dist/routes/update.js.map +1 -0
- package/dist/routes/url-tokens.d.ts +2 -0
- package/dist/routes/url-tokens.d.ts.map +1 -0
- package/dist/routes/url-tokens.js +31 -0
- package/dist/routes/url-tokens.js.map +1 -0
- package/dist/scripts/export-catalog.d.ts +2 -0
- package/dist/scripts/export-catalog.d.ts.map +1 -0
- package/dist/scripts/export-catalog.js +114 -0
- package/dist/scripts/export-catalog.js.map +1 -0
- package/dist/scripts/rotate-encryption-key.d.ts +81 -0
- package/dist/scripts/rotate-encryption-key.d.ts.map +1 -0
- package/dist/scripts/rotate-encryption-key.js +232 -0
- package/dist/scripts/rotate-encryption-key.js.map +1 -0
- package/dist/scripts/routing-sim.d.ts +2 -0
- package/dist/scripts/routing-sim.d.ts.map +1 -0
- package/dist/scripts/routing-sim.js +130 -0
- package/dist/scripts/routing-sim.js.map +1 -0
- package/dist/scripts/test-all-models.d.ts +2 -0
- package/dist/scripts/test-all-models.d.ts.map +1 -0
- package/dist/scripts/test-all-models.js +56 -0
- package/dist/scripts/test-all-models.js.map +1 -0
- package/dist/services/anthropic-map.d.ts +39 -0
- package/dist/services/anthropic-map.d.ts.map +1 -0
- package/dist/services/anthropic-map.js +138 -0
- package/dist/services/anthropic-map.js.map +1 -0
- package/dist/services/auth.d.ts +30 -0
- package/dist/services/auth.d.ts.map +1 -0
- package/dist/services/auth.js +124 -0
- package/dist/services/auth.js.map +1 -0
- package/dist/services/auto-discover.d.ts +77 -0
- package/dist/services/auto-discover.d.ts.map +1 -0
- package/dist/services/auto-discover.js +1047 -0
- package/dist/services/auto-discover.js.map +1 -0
- package/dist/services/backups.d.ts +67 -0
- package/dist/services/backups.d.ts.map +1 -0
- package/dist/services/backups.js +444 -0
- package/dist/services/backups.js.map +1 -0
- package/dist/services/builtin-model-discovery.d.ts +107 -0
- package/dist/services/builtin-model-discovery.d.ts.map +1 -0
- package/dist/services/builtin-model-discovery.js +296 -0
- package/dist/services/builtin-model-discovery.js.map +1 -0
- package/dist/services/cache.d.ts +190 -0
- package/dist/services/cache.d.ts.map +1 -0
- package/dist/services/cache.js +617 -0
- package/dist/services/cache.js.map +1 -0
- package/dist/services/catalog-sync.d.ts +257 -0
- package/dist/services/catalog-sync.d.ts.map +1 -0
- package/dist/services/catalog-sync.js +1041 -0
- package/dist/services/catalog-sync.js.map +1 -0
- package/dist/services/compression/config.d.ts +33 -0
- package/dist/services/compression/config.d.ts.map +1 -0
- package/dist/services/compression/config.js +158 -0
- package/dist/services/compression/config.js.map +1 -0
- package/dist/services/compression/engines/aging.d.ts +2 -0
- package/dist/services/compression/engines/aging.d.ts.map +1 -0
- package/dist/services/compression/engines/aging.js +53 -0
- package/dist/services/compression/engines/aging.js.map +1 -0
- package/dist/services/compression/engines/custom-filters.d.ts +4 -0
- package/dist/services/compression/engines/custom-filters.d.ts.map +1 -0
- package/dist/services/compression/engines/custom-filters.js +49 -0
- package/dist/services/compression/engines/custom-filters.js.map +1 -0
- package/dist/services/compression/engines/dedup.d.ts +2 -0
- package/dist/services/compression/engines/dedup.d.ts.map +1 -0
- package/dist/services/compression/engines/dedup.js +61 -0
- package/dist/services/compression/engines/dedup.js.map +1 -0
- package/dist/services/compression/engines/filter-definitions.d.ts +75 -0
- package/dist/services/compression/engines/filter-definitions.d.ts.map +1 -0
- package/dist/services/compression/engines/filter-definitions.js +45 -0
- package/dist/services/compression/engines/filter-definitions.js.map +1 -0
- package/dist/services/compression/engines/hard-budget.d.ts +2 -0
- package/dist/services/compression/engines/hard-budget.d.ts.map +1 -0
- package/dist/services/compression/engines/hard-budget.js +52 -0
- package/dist/services/compression/engines/hard-budget.js.map +1 -0
- package/dist/services/compression/engines/index.d.ts +9 -0
- package/dist/services/compression/engines/index.d.ts.map +1 -0
- package/dist/services/compression/engines/index.js +9 -0
- package/dist/services/compression/engines/index.js.map +1 -0
- package/dist/services/compression/engines/jsoncompact.d.ts +3 -0
- package/dist/services/compression/engines/jsoncompact.d.ts.map +1 -0
- package/dist/services/compression/engines/jsoncompact.js +145 -0
- package/dist/services/compression/engines/jsoncompact.js.map +1 -0
- package/dist/services/compression/engines/lite.d.ts +2 -0
- package/dist/services/compression/engines/lite.d.ts.map +1 -0
- package/dist/services/compression/engines/lite.js +34 -0
- package/dist/services/compression/engines/lite.js.map +1 -0
- package/dist/services/compression/engines/read-lifecycle.d.ts +2 -0
- package/dist/services/compression/engines/read-lifecycle.d.ts.map +1 -0
- package/dist/services/compression/engines/read-lifecycle.js +70 -0
- package/dist/services/compression/engines/read-lifecycle.js.map +1 -0
- package/dist/services/compression/engines/relevance.d.ts +2 -0
- package/dist/services/compression/engines/relevance.d.ts.map +1 -0
- package/dist/services/compression/engines/relevance.js +74 -0
- package/dist/services/compression/engines/relevance.js.map +1 -0
- package/dist/services/compression/engines/toolfilter.d.ts +2 -0
- package/dist/services/compression/engines/toolfilter.d.ts.map +1 -0
- package/dist/services/compression/engines/toolfilter.js +195 -0
- package/dist/services/compression/engines/toolfilter.js.map +1 -0
- package/dist/services/compression/fidelity-gate.d.ts +12 -0
- package/dist/services/compression/fidelity-gate.d.ts.map +1 -0
- package/dist/services/compression/fidelity-gate.js +90 -0
- package/dist/services/compression/fidelity-gate.js.map +1 -0
- package/dist/services/compression/helpers.d.ts +9 -0
- package/dist/services/compression/helpers.d.ts.map +1 -0
- package/dist/services/compression/helpers.js +52 -0
- package/dist/services/compression/helpers.js.map +1 -0
- package/dist/services/compression/pipeline.d.ts +7 -0
- package/dist/services/compression/pipeline.d.ts.map +1 -0
- package/dist/services/compression/pipeline.js +245 -0
- package/dist/services/compression/pipeline.js.map +1 -0
- package/dist/services/compression/preservation.d.ts +27 -0
- package/dist/services/compression/preservation.d.ts.map +1 -0
- package/dist/services/compression/preservation.js +109 -0
- package/dist/services/compression/preservation.js.map +1 -0
- package/dist/services/compression/registry.d.ts +6 -0
- package/dist/services/compression/registry.d.ts.map +1 -0
- package/dist/services/compression/registry.js +16 -0
- package/dist/services/compression/registry.js.map +1 -0
- package/dist/services/compression/stats.d.ts +29 -0
- package/dist/services/compression/stats.d.ts.map +1 -0
- package/dist/services/compression/stats.js +55 -0
- package/dist/services/compression/stats.js.map +1 -0
- package/dist/services/compression/types.d.ts +90 -0
- package/dist/services/compression/types.d.ts.map +1 -0
- package/dist/services/compression/types.js +2 -0
- package/dist/services/compression/types.js.map +1 -0
- package/dist/services/context-handoff.d.ts +22 -0
- package/dist/services/context-handoff.d.ts.map +1 -0
- package/dist/services/context-handoff.js +164 -0
- package/dist/services/context-handoff.js.map +1 -0
- package/dist/services/cooldown-probe.d.ts +24 -0
- package/dist/services/cooldown-probe.d.ts.map +1 -0
- package/dist/services/cooldown-probe.js +181 -0
- package/dist/services/cooldown-probe.js.map +1 -0
- package/dist/services/custom-endpoint.d.ts +58 -0
- package/dist/services/custom-endpoint.d.ts.map +1 -0
- package/dist/services/custom-endpoint.js +167 -0
- package/dist/services/custom-endpoint.js.map +1 -0
- package/dist/services/custom-media-register.d.ts +22 -0
- package/dist/services/custom-media-register.d.ts.map +1 -0
- package/dist/services/custom-media-register.js +45 -0
- package/dist/services/custom-media-register.js.map +1 -0
- package/dist/services/custom-model-register.d.ts +50 -0
- package/dist/services/custom-model-register.d.ts.map +1 -0
- package/dist/services/custom-model-register.js +103 -0
- package/dist/services/custom-model-register.js.map +1 -0
- package/dist/services/custom-model-seed.d.ts +18 -0
- package/dist/services/custom-model-seed.d.ts.map +1 -0
- package/dist/services/custom-model-seed.js +42 -0
- package/dist/services/custom-model-seed.js.map +1 -0
- package/dist/services/custom-model-sync.d.ts +37 -0
- package/dist/services/custom-model-sync.d.ts.map +1 -0
- package/dist/services/custom-model-sync.js +118 -0
- package/dist/services/custom-model-sync.js.map +1 -0
- package/dist/services/custom-model-tombstone.d.ts +5 -0
- package/dist/services/custom-model-tombstone.d.ts.map +1 -0
- package/dist/services/custom-model-tombstone.js +30 -0
- package/dist/services/custom-model-tombstone.js.map +1 -0
- package/dist/services/declarative-config.d.ts +356 -0
- package/dist/services/declarative-config.d.ts.map +1 -0
- package/dist/services/declarative-config.js +427 -0
- package/dist/services/declarative-config.js.map +1 -0
- package/dist/services/degradation.d.ts +40 -0
- package/dist/services/degradation.d.ts.map +1 -0
- package/dist/services/degradation.js +119 -0
- package/dist/services/degradation.js.map +1 -0
- package/dist/services/embeddings.d.ts +76 -0
- package/dist/services/embeddings.d.ts.map +1 -0
- package/dist/services/embeddings.js +319 -0
- package/dist/services/embeddings.js.map +1 -0
- package/dist/services/fusion.d.ts +162 -0
- package/dist/services/fusion.d.ts.map +1 -0
- package/dist/services/fusion.js +789 -0
- package/dist/services/fusion.js.map +1 -0
- package/dist/services/gemini-map.d.ts +14 -0
- package/dist/services/gemini-map.d.ts.map +1 -0
- package/dist/services/gemini-map.js +78 -0
- package/dist/services/gemini-map.js.map +1 -0
- package/dist/services/health.d.ts +52 -0
- package/dist/services/health.d.ts.map +1 -0
- package/dist/services/health.js +352 -0
- package/dist/services/health.js.map +1 -0
- package/dist/services/idempotency.d.ts +49 -0
- package/dist/services/idempotency.d.ts.map +1 -0
- package/dist/services/idempotency.js +140 -0
- package/dist/services/idempotency.js.map +1 -0
- package/dist/services/key-budget.d.ts +74 -0
- package/dist/services/key-budget.d.ts.map +1 -0
- package/dist/services/key-budget.js +200 -0
- package/dist/services/key-budget.js.map +1 -0
- package/dist/services/media.d.ts +123 -0
- package/dist/services/media.d.ts.map +1 -0
- package/dist/services/media.js +954 -0
- package/dist/services/media.js.map +1 -0
- package/dist/services/model-discovery.d.ts +126 -0
- package/dist/services/model-discovery.d.ts.map +1 -0
- package/dist/services/model-discovery.js +662 -0
- package/dist/services/model-discovery.js.map +1 -0
- package/dist/services/model-groups.d.ts +149 -0
- package/dist/services/model-groups.d.ts.map +1 -0
- package/dist/services/model-groups.js +314 -0
- package/dist/services/model-groups.js.map +1 -0
- package/dist/services/model-listing.d.ts +18 -0
- package/dist/services/model-listing.d.ts.map +1 -0
- package/dist/services/model-listing.js +94 -0
- package/dist/services/model-listing.js.map +1 -0
- package/dist/services/model-retirement.d.ts +29 -0
- package/dist/services/model-retirement.d.ts.map +1 -0
- package/dist/services/model-retirement.js +86 -0
- package/dist/services/model-retirement.js.map +1 -0
- package/dist/services/model-state.d.ts +90 -0
- package/dist/services/model-state.d.ts.map +1 -0
- package/dist/services/model-state.js +342 -0
- package/dist/services/model-state.js.map +1 -0
- package/dist/services/model-weight-overrides.d.ts +48 -0
- package/dist/services/model-weight-overrides.d.ts.map +1 -0
- package/dist/services/model-weight-overrides.js +127 -0
- package/dist/services/model-weight-overrides.js.map +1 -0
- package/dist/services/notification-emitter.d.ts +50 -0
- package/dist/services/notification-emitter.d.ts.map +1 -0
- package/dist/services/notification-emitter.js +177 -0
- package/dist/services/notification-emitter.js.map +1 -0
- package/dist/services/opencode-free-sync.d.ts +29 -0
- package/dist/services/opencode-free-sync.d.ts.map +1 -0
- package/dist/services/opencode-free-sync.js +206 -0
- package/dist/services/opencode-free-sync.js.map +1 -0
- package/dist/services/penalty-inspector.d.ts +56 -0
- package/dist/services/penalty-inspector.d.ts.map +1 -0
- package/dist/services/penalty-inspector.js +167 -0
- package/dist/services/penalty-inspector.js.map +1 -0
- package/dist/services/profile-models.d.ts +5 -0
- package/dist/services/profile-models.d.ts.map +1 -0
- package/dist/services/profile-models.js +62 -0
- package/dist/services/profile-models.js.map +1 -0
- package/dist/services/provider-credential.d.ts +19 -0
- package/dist/services/provider-credential.d.ts.map +1 -0
- package/dist/services/provider-credential.js +51 -0
- package/dist/services/provider-credential.js.map +1 -0
- package/dist/services/provider-quota.d.ts +64 -0
- package/dist/services/provider-quota.d.ts.map +1 -0
- package/dist/services/provider-quota.js +563 -0
- package/dist/services/provider-quota.js.map +1 -0
- package/dist/services/quirks.d.ts +0 -0
- package/dist/services/quirks.d.ts.map +1 -0
- package/dist/services/quirks.js +0 -0
- package/dist/services/quirks.js.map +1 -0
- package/dist/services/quota-forecast.d.ts +50 -0
- package/dist/services/quota-forecast.d.ts.map +1 -0
- package/dist/services/quota-forecast.js +150 -0
- package/dist/services/quota-forecast.js.map +1 -0
- package/dist/services/quota-outlook.d.ts +4 -0
- package/dist/services/quota-outlook.d.ts.map +1 -0
- package/dist/services/quota-outlook.js +92 -0
- package/dist/services/quota-outlook.js.map +1 -0
- package/dist/services/ratelimit.d.ts +249 -0
- package/dist/services/ratelimit.d.ts.map +1 -0
- package/dist/services/ratelimit.js +1182 -0
- package/dist/services/ratelimit.js.map +1 -0
- package/dist/services/request-retention.d.ts +60 -0
- package/dist/services/request-retention.d.ts.map +1 -0
- package/dist/services/request-retention.js +229 -0
- package/dist/services/request-retention.js.map +1 -0
- package/dist/services/router.d.ts +384 -0
- package/dist/services/router.d.ts.map +1 -0
- package/dist/services/router.js +1986 -0
- package/dist/services/router.js.map +1 -0
- package/dist/services/scoring.d.ts +156 -0
- package/dist/services/scoring.d.ts.map +1 -0
- package/dist/services/scoring.js +435 -0
- package/dist/services/scoring.js.map +1 -0
- package/dist/services/url-tokens.d.ts +15 -0
- package/dist/services/url-tokens.d.ts.map +1 -0
- package/dist/services/url-tokens.js +55 -0
- package/dist/services/url-tokens.js.map +1 -0
- package/package.json +77 -4
- package/README.md +0 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/docs/openapi.ts"],"names":[],"mappings":"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"}
|
package/dist/env.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":""}
|
package/dist/env.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import dotenv from 'dotenv';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
5
|
+
// SROUTER_ENV_PATH lets embedders (e.g. the desktop app, where __dirname sits
|
|
6
|
+
// inside a bundle) point at an explicit .env — or at nothing: dotenv silently
|
|
7
|
+
// no-ops on a missing file either way.
|
|
8
|
+
dotenv.config({ path: process.env.SROUTER_ENV_PATH ?? path.resolve(__dirname, '../../.env') });
|
|
9
|
+
//# sourceMappingURL=env.js.map
|
package/dist/env.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,8EAA8E;AAC9E,8EAA8E;AAC9E,uCAAuC;AACvC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import './env.js';
|
|
2
|
+
import { createApp } from './app.js';
|
|
3
|
+
import { initDb, getDb } from './db/index.js';
|
|
4
|
+
import { startHealthChecker, checkAllKeys } from './services/health.js';
|
|
5
|
+
import { restoreProxySettings, flushProxyCache } from './lib/proxy.js';
|
|
6
|
+
import { startWakeDetect } from './lib/wake-detect.js';
|
|
7
|
+
import { startCatalogSync } from './services/catalog-sync.js';
|
|
8
|
+
import { startModelRefresh } from './services/auto-discover.js';
|
|
9
|
+
import { startCooldownProbe } from './services/cooldown-probe.js';
|
|
10
|
+
import { startCustomModelSync } from './services/custom-model-sync.js';
|
|
11
|
+
import { startOpenCodeFreeSync } from './services/opencode-free-sync.js';
|
|
12
|
+
import { startBuiltinModelDiscovery } from './services/builtin-model-discovery.js';
|
|
13
|
+
import { installProcessSafetyNet } from './lib/process-safety-net.js';
|
|
14
|
+
import { NodeScheduler } from './lib/scheduler.js';
|
|
15
|
+
import { loadConfig } from './lib/config.js';
|
|
16
|
+
import { applyDeclarativeConfigFromEnv } from './services/declarative-config.js';
|
|
17
|
+
import { restoreDbBackupIfNeeded, startDbBackupPump } from './lib/db-backup.js';
|
|
18
|
+
import { startBackupScheduler } from './services/backups.js';
|
|
19
|
+
import { userCount } from './services/auth.js';
|
|
20
|
+
import { generateSetupCode } from './lib/setup-code.js';
|
|
21
|
+
import { warnOnEnvDrift } from './lib/env-drift.js';
|
|
22
|
+
import { warnOnRoutingOverrideDrift } from './services/model-weight-overrides.js';
|
|
23
|
+
import { installLogRedaction } from './lib/log-redaction.js';
|
|
24
|
+
import { cleanupExpiredCooldowns } from './services/ratelimit.js';
|
|
25
|
+
import { loadCacheFromDb } from './services/cache.js';
|
|
26
|
+
// Before any other statement runs, so no provider key can reach stdout — users
|
|
27
|
+
// paste server output into bug reports. Module scope, not inside main(), so it
|
|
28
|
+
// is active for the whole process lifetime including startup logging.
|
|
29
|
+
installLogRedaction();
|
|
30
|
+
async function main() {
|
|
31
|
+
const config = loadConfig();
|
|
32
|
+
const { port: PORT, host: HOST } = config;
|
|
33
|
+
warnOnEnvDrift();
|
|
34
|
+
// Install first so a late provider socket reset (undici HTTP/2 error with no
|
|
35
|
+
// listener) can't take the proxy down. Genuine bugs still exit 1.
|
|
36
|
+
installProcessSafetyNet();
|
|
37
|
+
const scheduler = new NodeScheduler();
|
|
38
|
+
if (config.dbPath) {
|
|
39
|
+
await restoreDbBackupIfNeeded(config.dbPath);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
await restoreDbBackupIfNeeded();
|
|
43
|
+
}
|
|
44
|
+
initDb(config.dbPath ?? undefined);
|
|
45
|
+
applyDeclarativeConfigFromEnv();
|
|
46
|
+
// After initDb: the unknown-model half of this check reads the catalog.
|
|
47
|
+
warnOnRoutingOverrideDrift();
|
|
48
|
+
// Reload the persisted response cache into the in-memory LRU so entries
|
|
49
|
+
// survive a restart (the daily quota-reset re-run pattern). Best-effort:
|
|
50
|
+
// a DB failure leaves the cache empty (memory-only), exactly as before.
|
|
51
|
+
loadCacheFromDb();
|
|
52
|
+
// Cooldowns persist across restarts on purpose, but their expiry is collected
|
|
53
|
+
// lazily (isOnCooldown, per model+key). Rows for routes nothing asks about
|
|
54
|
+
// again — retired models, deleted keys, a shutdown taken while everything was
|
|
55
|
+
// benched — would otherwise stay in the table forever and weigh down every
|
|
56
|
+
// cooldown rollup. One sweep at boot, while the DB is quiet.
|
|
57
|
+
const expiredCooldowns = cleanupExpiredCooldowns();
|
|
58
|
+
if (expiredCooldowns > 0) {
|
|
59
|
+
console.log(`[ratelimit] cleared ${expiredCooldowns} expired cooldown${expiredCooldowns === 1 ? '' : 's'}`);
|
|
60
|
+
}
|
|
61
|
+
// First-run hardening: when the dashboard is still unclaimed, mint a one-time
|
|
62
|
+
// setup code and log it. A loopback browser can finish setup without it; a
|
|
63
|
+
// remote caller must supply it (see routes/auth.ts). Regenerated each boot.
|
|
64
|
+
if (userCount() === 0) {
|
|
65
|
+
generateSetupCode();
|
|
66
|
+
}
|
|
67
|
+
// Load the persisted proxy settings from the DB (env var wins if set).
|
|
68
|
+
// Must happen after initDb so the settings table is ready.
|
|
69
|
+
restoreProxySettings();
|
|
70
|
+
const app = createApp(config);
|
|
71
|
+
const onReady = (host) => () => {
|
|
72
|
+
const display = host.includes(':') ? `[${host}]` : host;
|
|
73
|
+
console.log(`Server running on http://${display}:${PORT}`);
|
|
74
|
+
console.log(`Proxy endpoint: http://${display}:${PORT}/v1/chat/completions`);
|
|
75
|
+
startHealthChecker(scheduler);
|
|
76
|
+
startCatalogSync(scheduler);
|
|
77
|
+
// Re-verify discovery-owned model rosters (e.g. xkiro) twice a day — a key
|
|
78
|
+
// health check never looks at the model list, so a model that went paid
|
|
79
|
+
// upstream would otherwise linger until a manual sync.
|
|
80
|
+
startModelRefresh(scheduler);
|
|
81
|
+
startCooldownProbe(scheduler);
|
|
82
|
+
startDbBackupPump(getDb(), scheduler, config.dbPath ?? undefined);
|
|
83
|
+
startBackupScheduler(scheduler);
|
|
84
|
+
startCustomModelSync(getDb(), scheduler);
|
|
85
|
+
startOpenCodeFreeSync(scheduler);
|
|
86
|
+
startBuiltinModelDiscovery(getDb(), scheduler);
|
|
87
|
+
// Post-sleep recovery: while the host was suspended (laptop lid, VM
|
|
88
|
+
// pause) timers and keep-alive sockets froze, so the first requests after
|
|
89
|
+
// wake used to hit dead pooled connections and pre-sleep key statuses
|
|
90
|
+
// until the 5-minute health cycle caught up. On a detected wake (>30s
|
|
91
|
+
// wall-clock drift, or SIGCONT/SIGUSR1/2), drop the proxy dispatcher's
|
|
92
|
+
// pooled sockets and re-probe every key immediately.
|
|
93
|
+
startWakeDetect({
|
|
94
|
+
async onWake(event) {
|
|
95
|
+
const idle = Math.round(event.idleMs / 1000);
|
|
96
|
+
console.log(`[wake] resumed after ~${idle}s (${event.reason}${event.signal ? `:${event.signal}` : ''}) — flushing stale sockets, re-probing keys`);
|
|
97
|
+
flushProxyCache();
|
|
98
|
+
try {
|
|
99
|
+
// Forced: every status predates the sleep, so the recency skip and
|
|
100
|
+
// provider spacing of a scheduled pass would only delay the picture.
|
|
101
|
+
await checkAllKeys({ force: true });
|
|
102
|
+
}
|
|
103
|
+
catch (err) {
|
|
104
|
+
console.error(`[wake] post-wake key re-probe failed: ${err?.message ?? err}`);
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
// Keep idle sockets open LONGER than any fronting reverse proxy keeps them
|
|
110
|
+
// in its pool. Node's default keepAliveTimeout is 5s while Caddy (and nginx)
|
|
111
|
+
// reuse idle upstream connections for 30-60s, so the proxy periodically
|
|
112
|
+
// writes a request into a socket this server just closed and surfaces it to
|
|
113
|
+
// the user as a 502 "connection reset by peer". 75s clears both defaults;
|
|
114
|
+
// headersTimeout must stay above keepAliveTimeout or Node times the
|
|
115
|
+
// keep-alive socket out while the next request's headers are in flight.
|
|
116
|
+
const tuneKeepAlive = (s) => {
|
|
117
|
+
s.keepAliveTimeout = 75_000;
|
|
118
|
+
s.headersTimeout = 76_000;
|
|
119
|
+
};
|
|
120
|
+
const server = app.listen(Number(PORT), HOST, onReady(HOST));
|
|
121
|
+
tuneKeepAlive(server);
|
|
122
|
+
server.on('error', (err) => {
|
|
123
|
+
// The default '::' bind fails where IPv6 is disabled (kernel
|
|
124
|
+
// ipv6.disable=1 and the like) — retry IPv4-only rather than dying.
|
|
125
|
+
// Anything else (EADDRINUSE, an explicit HOST that can't bind) keeps the
|
|
126
|
+
// fail-fast posture documented in main().catch below.
|
|
127
|
+
if (!process.env.HOST && (err.code === 'EAFNOSUPPORT' || err.code === 'EADDRNOTAVAIL')) {
|
|
128
|
+
console.warn('[server] IPv6 unavailable on this host — falling back to 0.0.0.0 (IPv4-only)');
|
|
129
|
+
tuneKeepAlive(app.listen(Number(PORT), '0.0.0.0', onReady('0.0.0.0')));
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
console.error('\n[server] Failed to start:\n ' + (err?.message ?? err) + '\n');
|
|
133
|
+
process.exit(1);
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
main().catch((err) => {
|
|
137
|
+
// A boot failure (e.g. a missing production ENCRYPTION_KEY) must exit
|
|
138
|
+
// non-zero rather than leaving a half-initialized process that never starts
|
|
139
|
+
// listening — that silent state is what surfaces in the client as
|
|
140
|
+
// "Can't reach the server".
|
|
141
|
+
console.error('\n[server] Failed to start:\n ' + (err?.message ?? err) + '\n');
|
|
142
|
+
process.exit(1);
|
|
143
|
+
});
|
|
144
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export interface DocumentBlockOk {
|
|
2
|
+
ok: true;
|
|
3
|
+
/** The text block body to substitute for the document block. */
|
|
4
|
+
text: string;
|
|
5
|
+
}
|
|
6
|
+
export interface DocumentBlockRejected {
|
|
7
|
+
ok: false;
|
|
8
|
+
/** Caller-facing reason, already phrased to slot into an error response. */
|
|
9
|
+
reason: string;
|
|
10
|
+
}
|
|
11
|
+
export type DocumentBlockResult = DocumentBlockOk | DocumentBlockRejected;
|
|
12
|
+
/**
|
|
13
|
+
* A fence tag derived from the CONTENT, as `document-<12 hex>`.
|
|
14
|
+
*
|
|
15
|
+
* Deliberately not random: these blocks can carry `cache_control`, and a
|
|
16
|
+
* per-request nonce would change the prompt prefix on every call and bust the
|
|
17
|
+
* provider's cache for no benefit.
|
|
18
|
+
*
|
|
19
|
+
* Deliberately not the client's title either. A title of `doc>\n</doc` closes
|
|
20
|
+
* the fence early, and everything after it reads to the model as instructions
|
|
21
|
+
* rather than as quoted document text.
|
|
22
|
+
*/
|
|
23
|
+
export declare function fenceTag(content: string): string;
|
|
24
|
+
/**
|
|
25
|
+
* A title safe to echo inside the fence: no control characters, no angle
|
|
26
|
+
* brackets or quotes (they break out of the tag), collapsed whitespace,
|
|
27
|
+
* bounded length.
|
|
28
|
+
*/
|
|
29
|
+
export declare function labelTitle(raw: unknown): string;
|
|
30
|
+
/**
|
|
31
|
+
* Convert one Anthropic `document` block into the text that stands in for it,
|
|
32
|
+
* or explain why it cannot be converted.
|
|
33
|
+
*/
|
|
34
|
+
export declare function convertDocumentBlock(block: unknown): DocumentBlockResult;
|
|
35
|
+
/**
|
|
36
|
+
* The error message for one or more unconvertible documents. Names what was
|
|
37
|
+
* wrong and then what to do instead — a caller that only learns "unsupported"
|
|
38
|
+
* has to guess at the fix.
|
|
39
|
+
*/
|
|
40
|
+
export declare function documentRejectionMessage(reasons: string[]): string;
|
|
41
|
+
//# sourceMappingURL=anthropic-documents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropic-documents.d.ts","sourceRoot":"","sources":["../../src/lib/anthropic-documents.ts"],"names":[],"mappings":"AAoCA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,IAAI,CAAC;IACT,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,KAAK,CAAC;IACV,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,mBAAmB,GAAG,eAAe,GAAG,qBAAqB,CAAC;AAE1E;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAShD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAU/C;AAgBD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CA4BxE;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAWlE"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import crypto from 'crypto';
|
|
2
|
+
/**
|
|
3
|
+
* Anthropic `document` content blocks on a surface whose providers are all
|
|
4
|
+
* text-and-image only.
|
|
5
|
+
*
|
|
6
|
+
* Today such a block passes the permissive envelope schema and is then dropped
|
|
7
|
+
* with every other unrecognised type, so a client that attaches a PDF gets a
|
|
8
|
+
* confident answer about a document the model never saw. That is the worst of
|
|
9
|
+
* the available behaviours: worse than refusing, because nothing tells the
|
|
10
|
+
* caller their attachment went nowhere.
|
|
11
|
+
*
|
|
12
|
+
* Anthropic defines four source kinds, and they split cleanly:
|
|
13
|
+
*
|
|
14
|
+
* text, content — the document IS text already. Converting it costs nothing
|
|
15
|
+
* and needs nothing installed, so we do it.
|
|
16
|
+
* base64, url — the bytes need a real converter (PDF, DOCX, XLSX…). No
|
|
17
|
+
* provider in the pool accepts them and nothing here can
|
|
18
|
+
* decode them, so these are refused with an actionable
|
|
19
|
+
* message instead of being silently discarded.
|
|
20
|
+
*
|
|
21
|
+
* Stringifying the block instead — which is what a naive passthrough does —
|
|
22
|
+
* would inject an entire base64 payload into the prompt. That is not a cheaper
|
|
23
|
+
* version of support; it is a way to burn a context window on nothing.
|
|
24
|
+
*/
|
|
25
|
+
/** Source kinds that are already text, so they need no converter. */
|
|
26
|
+
const TEXTUAL_SOURCE_TYPES = new Set(['text', 'content']);
|
|
27
|
+
/** Longest title we will echo into the prompt. */
|
|
28
|
+
const MAX_TITLE_LENGTH = 120;
|
|
29
|
+
/** C0 controls, DEL, and the C1 range — they can carry terminal escapes. */
|
|
30
|
+
// eslint-disable-next-line no-control-regex -- matching control chars is the point.
|
|
31
|
+
const CONTROL_CHARS = /[\u0000-\u001f\u007f-\u009f]/g;
|
|
32
|
+
/**
|
|
33
|
+
* A fence tag derived from the CONTENT, as `document-<12 hex>`.
|
|
34
|
+
*
|
|
35
|
+
* Deliberately not random: these blocks can carry `cache_control`, and a
|
|
36
|
+
* per-request nonce would change the prompt prefix on every call and bust the
|
|
37
|
+
* provider's cache for no benefit.
|
|
38
|
+
*
|
|
39
|
+
* Deliberately not the client's title either. A title of `doc>\n</doc` closes
|
|
40
|
+
* the fence early, and everything after it reads to the model as instructions
|
|
41
|
+
* rather than as quoted document text.
|
|
42
|
+
*/
|
|
43
|
+
export function fenceTag(content) {
|
|
44
|
+
const digest = crypto.createHash('sha256').update(content, 'utf8').digest('hex');
|
|
45
|
+
for (let offset = 0; offset + 12 <= digest.length; offset += 12) {
|
|
46
|
+
const candidate = `document-${digest.slice(offset, offset + 12)}`;
|
|
47
|
+
// A tag that already appears in the content would let the document close
|
|
48
|
+
// its own fence. Walk to the next slice rather than giving up.
|
|
49
|
+
if (!content.includes(candidate))
|
|
50
|
+
return candidate;
|
|
51
|
+
}
|
|
52
|
+
return `document-${digest.slice(0, 12)}`;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* A title safe to echo inside the fence: no control characters, no angle
|
|
56
|
+
* brackets or quotes (they break out of the tag), collapsed whitespace,
|
|
57
|
+
* bounded length.
|
|
58
|
+
*/
|
|
59
|
+
export function labelTitle(raw) {
|
|
60
|
+
if (typeof raw !== 'string')
|
|
61
|
+
return 'document';
|
|
62
|
+
const cleaned = raw
|
|
63
|
+
.replace(CONTROL_CHARS, ' ')
|
|
64
|
+
.replace(/[<>"]/g, '')
|
|
65
|
+
.replace(/\s+/g, ' ')
|
|
66
|
+
.trim()
|
|
67
|
+
.slice(0, MAX_TITLE_LENGTH)
|
|
68
|
+
.trim();
|
|
69
|
+
return cleaned.length > 0 ? cleaned : 'document';
|
|
70
|
+
}
|
|
71
|
+
/** The text carried by a `content` source: its text blocks, joined. */
|
|
72
|
+
function textFromContentSource(content) {
|
|
73
|
+
if (typeof content === 'string')
|
|
74
|
+
return content;
|
|
75
|
+
if (!Array.isArray(content))
|
|
76
|
+
return '';
|
|
77
|
+
return content
|
|
78
|
+
.map(block => {
|
|
79
|
+
if (typeof block === 'string')
|
|
80
|
+
return block;
|
|
81
|
+
if (block && typeof block === 'object' && typeof block.text === 'string')
|
|
82
|
+
return block.text;
|
|
83
|
+
return '';
|
|
84
|
+
})
|
|
85
|
+
.filter(Boolean)
|
|
86
|
+
.join('\n');
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Convert one Anthropic `document` block into the text that stands in for it,
|
|
90
|
+
* or explain why it cannot be converted.
|
|
91
|
+
*/
|
|
92
|
+
export function convertDocumentBlock(block) {
|
|
93
|
+
const source = block?.source;
|
|
94
|
+
if (!source || typeof source !== 'object') {
|
|
95
|
+
return { ok: false, reason: 'a document block without a `source`' };
|
|
96
|
+
}
|
|
97
|
+
const sourceType = typeof source.type === 'string' ? source.type : '';
|
|
98
|
+
if (!TEXTUAL_SOURCE_TYPES.has(sourceType)) {
|
|
99
|
+
const mediaType = typeof source.media_type === 'string' ? source.media_type : '';
|
|
100
|
+
if (sourceType === 'url')
|
|
101
|
+
return { ok: false, reason: 'a document block with a `url` source' };
|
|
102
|
+
return {
|
|
103
|
+
ok: false,
|
|
104
|
+
reason: `a document block of type ${mediaType || sourceType || 'unknown'}`,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
const body = sourceType === 'text'
|
|
108
|
+
? (typeof source.data === 'string' ? source.data : '')
|
|
109
|
+
: textFromContentSource(source.content);
|
|
110
|
+
if (body.trim().length === 0) {
|
|
111
|
+
return { ok: false, reason: 'a document block whose text source is empty' };
|
|
112
|
+
}
|
|
113
|
+
const tag = fenceTag(body);
|
|
114
|
+
const title = labelTitle(block?.title);
|
|
115
|
+
return { ok: true, text: `<${tag} title="${title}">\n${body}\n</${tag}>` };
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* The error message for one or more unconvertible documents. Names what was
|
|
119
|
+
* wrong and then what to do instead — a caller that only learns "unsupported"
|
|
120
|
+
* has to guess at the fix.
|
|
121
|
+
*/
|
|
122
|
+
export function documentRejectionMessage(reasons) {
|
|
123
|
+
const unique = [...new Set(reasons)];
|
|
124
|
+
const listed = unique.slice(0, 3).join(', ');
|
|
125
|
+
const extra = unique.length > 3 ? `, and ${unique.length - 3} more` : '';
|
|
126
|
+
return (`This request contains ${listed}${extra}. ` +
|
|
127
|
+
'Binary document attachments are not supported: no provider in the pool accepts them, ' +
|
|
128
|
+
'and forwarding the request anyway would silently drop the attachment from the prompt. ' +
|
|
129
|
+
'Send the text instead — either a `text` content block, or a document block with a ' +
|
|
130
|
+
'`text` or `content` source, both of which are passed through.');
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=anthropic-documents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropic-documents.js","sourceRoot":"","sources":["../../src/lib/anthropic-documents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** The released app version, or null when it cannot be established honestly. */
|
|
2
|
+
export declare function getAppVersion(): string | null;
|
|
3
|
+
/** Test seam — the resolver caches, and env changes must be able to take effect. */
|
|
4
|
+
export declare function resetAppVersionCache(): void;
|
|
5
|
+
//# sourceMappingURL=app-version.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-version.d.ts","sourceRoot":"","sources":["../../src/lib/app-version.ts"],"names":[],"mappings":"AAkDA,gFAAgF;AAChF,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAK7C;AAED,oFAAoF;AACpF,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
// Which RELEASE this install is, for the dashboard to display (#703).
|
|
5
|
+
//
|
|
6
|
+
// Deliberately not `server/package.json`: that version tracks the server
|
|
7
|
+
// workspace, and before version unification it sat stale across many releases
|
|
8
|
+
// (as did the OpenAPI spec's version). The number users know the app by lives
|
|
9
|
+
// in desktop/package.json — it is what the release recipe bumps and what the
|
|
10
|
+
// installers are named for.
|
|
11
|
+
//
|
|
12
|
+
// Order:
|
|
13
|
+
// 1. SROUTER_VERSION — the desktop shell sets it from app.getVersion(); a
|
|
14
|
+
// packaged/self-hosted deployment can set it too.
|
|
15
|
+
// 2. desktop/package.json, found by walking up from this module. Present in a
|
|
16
|
+
// source checkout, and the Docker runtime image copies it in for this.
|
|
17
|
+
// 3. null — say nothing rather than state a version that isn't the release.
|
|
18
|
+
// The dashboard omits the row entirely when this is null.
|
|
19
|
+
const MAX_WALK_UP = 6;
|
|
20
|
+
function readVersion(file) {
|
|
21
|
+
try {
|
|
22
|
+
const parsed = JSON.parse(readFileSync(file, 'utf8'));
|
|
23
|
+
return typeof parsed.version === 'string' && parsed.version.trim() ? parsed.version.trim() : null;
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function findDesktopVersion() {
|
|
30
|
+
let dir;
|
|
31
|
+
try {
|
|
32
|
+
dir = path.dirname(fileURLToPath(import.meta.url));
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
for (let i = 0; i < MAX_WALK_UP; i++) {
|
|
38
|
+
const found = readVersion(path.join(dir, 'desktop', 'package.json'));
|
|
39
|
+
if (found)
|
|
40
|
+
return found;
|
|
41
|
+
const parent = path.dirname(dir);
|
|
42
|
+
if (parent === dir)
|
|
43
|
+
break;
|
|
44
|
+
dir = parent;
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
let cached;
|
|
49
|
+
/** The released app version, or null when it cannot be established honestly. */
|
|
50
|
+
export function getAppVersion() {
|
|
51
|
+
if (cached !== undefined)
|
|
52
|
+
return cached;
|
|
53
|
+
const fromEnv = process.env.SROUTER_VERSION?.trim();
|
|
54
|
+
cached = fromEnv ? fromEnv : findDesktopVersion();
|
|
55
|
+
return cached;
|
|
56
|
+
}
|
|
57
|
+
/** Test seam — the resolver caches, and env changes must be able to take effect. */
|
|
58
|
+
export function resetAppVersionCache() {
|
|
59
|
+
cached = undefined;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=app-version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-version.js","sourceRoot":"","sources":["../../src/lib/app-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,sEAAsE;AACtE,EAAE;AACF,yEAAyE;AACzE,8EAA8E;AAC9E,8EAA8E;AAC9E,6EAA6E;AAC7E,4BAA4B;AAC5B,EAAE;AACF,SAAS;AACT,4EAA4E;AAC5E,uDAAuD;AACvD,gFAAgF;AAChF,4EAA4E;AAC5E,8EAA8E;AAC9E,+DAA+D;AAE/D,MAAM,WAAW,GAAG,CAAC,CAAC;AAEtB,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAA0B,CAAC;QAC/E,OAAO,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACpG,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB;IACzB,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;QACrE,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,IAAI,MAAiC,CAAC;AAEtC,gFAAgF;AAChF,MAAM,UAAU,aAAa;IAC3B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;IACpD,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAClD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,oBAAoB;IAClC,MAAM,GAAG,SAAS,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { AttemptErrorClass } from './fallback-loop.js';
|
|
2
|
+
export type AttemptOutcome = 'ok' | 'committed' | 'client_abort' | AttemptErrorClass;
|
|
3
|
+
export interface AttemptTraceRecord {
|
|
4
|
+
ordinal: number;
|
|
5
|
+
platform: string;
|
|
6
|
+
modelId: string;
|
|
7
|
+
keyOrdinal: number;
|
|
8
|
+
keyLabel: string | null;
|
|
9
|
+
outcome: AttemptOutcome;
|
|
10
|
+
startOffsetMs: number;
|
|
11
|
+
durationMs: number;
|
|
12
|
+
errorSummary: string | null;
|
|
13
|
+
}
|
|
14
|
+
export interface RequestTrace {
|
|
15
|
+
records: AttemptTraceRecord[];
|
|
16
|
+
lastRequestRowId: number | null;
|
|
17
|
+
}
|
|
18
|
+
export declare function newRequestTrace(): RequestTrace;
|
|
19
|
+
export declare function runWithRequestTrace<T>(trace: RequestTrace, fn: () => T): T;
|
|
20
|
+
export declare function getRequestTrace(): RequestTrace | undefined;
|
|
21
|
+
/** Called by logRequest() after inserting a `requests` row; no-op outside a trace. */
|
|
22
|
+
export declare function noteRequestRowId(id: number | bigint): void;
|
|
23
|
+
//# sourceMappingURL=attempt-trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attempt-trace.d.ts","sourceRoot":"","sources":["../../src/lib/attempt-trace.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAU5D,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,WAAW,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAErF,MAAM,WAAW,kBAAkB;IAEjC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAGhB,UAAU,EAAE,MAAM,CAAC;IAKnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IAExB,aAAa,EAAE,MAAM,CAAC;IAGtB,UAAU,EAAE,MAAM,CAAC;IAInB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAG9B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAID,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE1E;AAED,wBAAgB,eAAe,IAAI,YAAY,GAAG,SAAS,CAE1D;AAED,sFAAsF;AACtF,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG1D"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// Per-request attempt trace: the durable record of the failover ladder one
|
|
2
|
+
// proxied request walked (groq 429 → google timeout → cerebras ok). The
|
|
3
|
+
// fallback loop collects one AttemptTraceRecord per dispatched attempt —
|
|
4
|
+
// including the SUCCESSFUL final one — and request-log.ts persists the batch
|
|
5
|
+
// into `request_attempts`, keyed to the terminal `requests` row.
|
|
6
|
+
//
|
|
7
|
+
// The trace travels on AsyncLocalStorage (same pattern as client-context.ts)
|
|
8
|
+
// so logRequest() can report back the id of each `requests` row it writes
|
|
9
|
+
// without threading a parameter through every surface's dispatch closure.
|
|
10
|
+
// The LAST id noted during a loop run is the terminal row — the success row,
|
|
11
|
+
// a committed mid-stream error row, or the final per-attempt failure row —
|
|
12
|
+
// and that is the row the batch is keyed to. Calls to logRequest outside a
|
|
13
|
+
// fallback-loop run (fusion sub-calls, embeddings, media) see no trace and
|
|
14
|
+
// are unaffected.
|
|
15
|
+
import { AsyncLocalStorage } from 'async_hooks';
|
|
16
|
+
const storage = new AsyncLocalStorage();
|
|
17
|
+
export function newRequestTrace() {
|
|
18
|
+
return { records: [], lastRequestRowId: null };
|
|
19
|
+
}
|
|
20
|
+
export function runWithRequestTrace(trace, fn) {
|
|
21
|
+
return storage.run(trace, fn);
|
|
22
|
+
}
|
|
23
|
+
export function getRequestTrace() {
|
|
24
|
+
return storage.getStore();
|
|
25
|
+
}
|
|
26
|
+
/** Called by logRequest() after inserting a `requests` row; no-op outside a trace. */
|
|
27
|
+
export function noteRequestRowId(id) {
|
|
28
|
+
const trace = storage.getStore();
|
|
29
|
+
if (trace)
|
|
30
|
+
trace.lastRequestRowId = Number(id);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=attempt-trace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attempt-trace.js","sourceRoot":"","sources":["../../src/lib/attempt-trace.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,wEAAwE;AACxE,yEAAyE;AACzE,6EAA6E;AAC7E,iEAAiE;AACjE,EAAE;AACF,6EAA6E;AAC7E,0EAA0E;AAC1E,0EAA0E;AAC1E,6EAA6E;AAC7E,2EAA2E;AAC3E,2EAA2E;AAC3E,2EAA2E;AAC3E,kBAAkB;AAElB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA6ChD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAgB,CAAC;AAEtD,MAAM,UAAU,eAAe;IAC7B,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAI,KAAmB,EAAE,EAAW;IACrE,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,gBAAgB,CAAC,EAAmB;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,IAAI,KAAK;QAAE,KAAK,CAAC,gBAAgB,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;AACjD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../../src/lib/budget.ts"],"names":[],"mappings":"AAIA,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAc7C;AASD,wBAAgB,kBAAkB,CAAC,CAAC,EAAE;IAAE,oBAAoB,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,MAAM,CAMxG"}
|