@jsonstudio/rcc 0.89.1968 → 0.89.2195
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/README.md +22 -0
- package/config/file-line-limit-policy.json +21 -0
- package/configsamples/config.json +1 -1
- package/configsamples/config.v1.quickstart.sanitized.json +6 -6
- package/configsamples/provider/iflow/config.v1.json +1 -1
- package/dist/app/config-readers.d.ts +18 -0
- package/dist/app/config-readers.js +95 -0
- package/dist/app/config-readers.js.map +1 -0
- package/dist/app/index.d.ts +9 -0
- package/dist/app/index.js +8 -0
- package/dist/app/index.js.map +1 -0
- package/dist/app/shutdown.d.ts +32 -0
- package/dist/app/shutdown.js +41 -0
- package/dist/app/shutdown.js.map +1 -0
- package/dist/bootstrap/index.d.ts +7 -0
- package/dist/bootstrap/index.js +7 -0
- package/dist/bootstrap/index.js.map +1 -0
- package/dist/bootstrap/log-filter.d.ts +15 -0
- package/dist/bootstrap/log-filter.js +81 -0
- package/dist/bootstrap/log-filter.js.map +1 -0
- package/dist/build-info.js +2 -2
- package/dist/cli/commands/claude.js +6 -5
- package/dist/cli/commands/claude.js.map +1 -1
- package/dist/cli/commands/init/basic.d.ts +1 -7
- package/dist/cli/commands/init/basic.js +0 -79
- package/dist/cli/commands/init/basic.js.map +1 -1
- package/dist/cli/commands/init/prompt-utils.d.ts +7 -0
- package/dist/cli/commands/init/prompt-utils.js +80 -0
- package/dist/cli/commands/init/prompt-utils.js.map +1 -0
- package/dist/cli/commands/init/workflows.js +2 -1
- package/dist/cli/commands/init/workflows.js.map +1 -1
- package/dist/cli/commands/init.js +74 -2
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/launcher/index.d.ts +7 -0
- package/dist/cli/commands/launcher/index.js +7 -0
- package/dist/cli/commands/launcher/index.js.map +1 -0
- package/dist/cli/commands/launcher/types.d.ts +112 -0
- package/dist/cli/commands/launcher/types.js +7 -0
- package/dist/cli/commands/launcher/types.js.map +1 -0
- package/dist/cli/commands/launcher/utils.d.ts +114 -0
- package/dist/cli/commands/launcher/utils.js +378 -0
- package/dist/cli/commands/launcher/utils.js.map +1 -0
- package/dist/cli/commands/launcher-kernel.d.ts +2 -74
- package/dist/cli/commands/launcher-kernel.js +141 -143
- package/dist/cli/commands/launcher-kernel.js.map +1 -1
- package/dist/cli/commands/start-types.d.ts +67 -0
- package/dist/cli/commands/start-types.js +3 -0
- package/dist/cli/commands/start-types.js.map +1 -0
- package/dist/cli/commands/start-utils.d.ts +19 -0
- package/dist/cli/commands/start-utils.js +78 -0
- package/dist/cli/commands/start-utils.js.map +1 -0
- package/dist/cli/commands/start.d.ts +2 -67
- package/dist/cli/commands/start.js +131 -47
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/stop.js +13 -0
- package/dist/cli/commands/stop.js.map +1 -1
- package/dist/cli/commands/tmux-inject.js +1 -1
- package/dist/cli/commands/tmux-inject.js.map +1 -1
- package/dist/cli/config/init-config.js +60 -2
- package/dist/cli/config/init-config.js.map +1 -1
- package/dist/cli/config/init-provider-catalog.js +3 -1
- package/dist/cli/config/init-provider-catalog.js.map +1 -1
- package/dist/cli/config/precommand-default-script.d.ts +17 -0
- package/dist/cli/config/precommand-default-script.js +47 -0
- package/dist/cli/config/precommand-default-script.js.map +1 -0
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/client/gemini-cli/gemini-cli-protocol-client.js +55 -5
- package/dist/client/gemini-cli/gemini-cli-protocol-client.js.map +1 -1
- package/dist/commands/oauth.js +28 -4
- package/dist/commands/oauth.js.map +1 -1
- package/dist/commands/quota-daemon.js +12 -0
- package/dist/commands/quota-daemon.js.map +1 -1
- package/dist/configsamples/config.v1.quickstart.sanitized.json +6 -6
- package/dist/constants/index.d.ts +34 -0
- package/dist/constants/index.js +57 -0
- package/dist/constants/index.js.map +1 -1
- package/dist/docs/daemon-admin-ui.html +268 -11
- package/dist/error-handling/quiet-error-handling-center.js +19 -1
- package/dist/error-handling/quiet-error-handling-center.js.map +1 -1
- package/dist/index.js +233 -30
- package/dist/index.js.map +1 -1
- package/dist/manager/index.js +4 -4
- package/dist/manager/index.js.map +1 -1
- package/dist/manager/modules/quota/antigravity-quota-core.d.ts +26 -0
- package/dist/manager/modules/quota/antigravity-quota-core.js +23 -0
- package/dist/manager/modules/quota/antigravity-quota-core.js.map +1 -0
- package/dist/manager/modules/quota/antigravity-quota-helpers.d.ts +16 -0
- package/dist/manager/modules/quota/antigravity-quota-helpers.js +167 -0
- package/dist/manager/modules/quota/antigravity-quota-helpers.js.map +1 -0
- package/dist/manager/modules/quota/antigravity-quota-manager.d.ts +10 -39
- package/dist/manager/modules/quota/antigravity-quota-manager.js +167 -464
- package/dist/manager/modules/quota/antigravity-quota-manager.js.map +1 -1
- package/dist/manager/modules/quota/antigravity-quota-persistence.d.ts +20 -0
- package/dist/manager/modules/quota/antigravity-quota-persistence.js +139 -0
- package/dist/manager/modules/quota/antigravity-quota-persistence.js.map +1 -0
- package/dist/manager/modules/quota/antigravity-quota-runtime.d.ts +55 -0
- package/dist/manager/modules/quota/antigravity-quota-runtime.js +174 -0
- package/dist/manager/modules/quota/antigravity-quota-runtime.js.map +1 -0
- package/dist/manager/modules/quota/antigravity-quota-sync.d.ts +46 -0
- package/dist/manager/modules/quota/antigravity-quota-sync.js +162 -0
- package/dist/manager/modules/quota/antigravity-quota-sync.js.map +1 -0
- package/dist/manager/modules/quota/index.d.ts +1 -0
- package/dist/manager/modules/quota/provider-quota-daemon.error-helpers.d.ts +13 -0
- package/dist/manager/modules/quota/provider-quota-daemon.error-helpers.js +149 -0
- package/dist/manager/modules/quota/provider-quota-daemon.error-helpers.js.map +1 -0
- package/dist/manager/modules/quota/provider-quota-daemon.events.js +1 -148
- package/dist/manager/modules/quota/provider-quota-daemon.events.js.map +1 -1
- package/dist/manager/modules/quota/provider-quota-daemon.js.map +1 -1
- package/dist/manager/modules/quota/quota-adapter.d.ts +111 -0
- package/dist/manager/modules/quota/quota-adapter.js +325 -0
- package/dist/manager/modules/quota/quota-adapter.js.map +1 -0
- package/dist/manager/quota/provider-quota-center.d.ts +10 -0
- package/dist/manager/quota/provider-quota-center.js +15 -2
- package/dist/manager/quota/provider-quota-center.js.map +1 -1
- package/dist/modules/llmswitch/bridge/antigravity-signature.d.ts +28 -0
- package/dist/modules/llmswitch/bridge/antigravity-signature.js +180 -0
- package/dist/modules/llmswitch/bridge/antigravity-signature.js.map +1 -0
- package/dist/modules/llmswitch/bridge/index.d.ts +13 -0
- package/dist/modules/llmswitch/bridge/index.js +14 -0
- package/dist/modules/llmswitch/bridge/index.js.map +1 -0
- package/dist/modules/llmswitch/bridge/module-loader.d.ts +16 -0
- package/dist/modules/llmswitch/bridge/module-loader.js +59 -0
- package/dist/modules/llmswitch/bridge/module-loader.js.map +1 -0
- package/dist/modules/llmswitch/bridge/quota-manager.d.ts +8 -0
- package/dist/modules/llmswitch/bridge/quota-manager.js +37 -0
- package/dist/modules/llmswitch/bridge/quota-manager.js.map +1 -0
- package/dist/modules/llmswitch/bridge/response-converter.d.ts +11 -0
- package/dist/modules/llmswitch/bridge/response-converter.js +68 -0
- package/dist/modules/llmswitch/bridge/response-converter.js.map +1 -0
- package/dist/modules/llmswitch/bridge/routing-integrations.d.ts +12 -0
- package/dist/modules/llmswitch/bridge/routing-integrations.js +56 -0
- package/dist/modules/llmswitch/bridge/routing-integrations.js.map +1 -0
- package/dist/modules/llmswitch/bridge/runtime-integrations.d.ts +34 -0
- package/dist/modules/llmswitch/bridge/runtime-integrations.js +87 -0
- package/dist/modules/llmswitch/bridge/runtime-integrations.js.map +1 -0
- package/dist/modules/llmswitch/bridge/snapshot-recorder.d.ts +13 -0
- package/dist/modules/llmswitch/bridge/snapshot-recorder.js +484 -0
- package/dist/modules/llmswitch/bridge/snapshot-recorder.js.map +1 -0
- package/dist/modules/llmswitch/bridge/state-integrations.d.ts +59 -0
- package/dist/modules/llmswitch/bridge/state-integrations.js +264 -0
- package/dist/modules/llmswitch/bridge/state-integrations.js.map +1 -0
- package/dist/modules/llmswitch/bridge.d.ts +14 -131
- package/dist/modules/llmswitch/bridge.js +14 -834
- package/dist/modules/llmswitch/bridge.js.map +1 -1
- package/dist/modules/pipeline/types/provider-config-types.d.ts +240 -0
- package/dist/modules/pipeline/types/provider-config-types.js +2 -0
- package/dist/modules/pipeline/types/provider-config-types.js.map +1 -0
- package/dist/modules/pipeline/types/provider-types.d.ts +2 -239
- package/dist/modules/pipeline/types/provider-types.js +1 -1
- package/dist/modules/pipeline/types/provider-types.js.map +1 -1
- package/dist/modules/pipeline/utils/debug-logger.js +3 -5
- package/dist/modules/pipeline/utils/debug-logger.js.map +1 -1
- package/dist/providers/auth/apikey-auth.d.ts +57 -1
- package/dist/providers/auth/apikey-auth.js +131 -1
- package/dist/providers/auth/apikey-auth.js.map +1 -1
- package/dist/providers/auth/oauth-lifecycle/error-detection.d.ts +8 -0
- package/dist/providers/auth/oauth-lifecycle/error-detection.js +71 -0
- package/dist/providers/auth/oauth-lifecycle/error-detection.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle/index.d.ts +10 -0
- package/dist/providers/auth/oauth-lifecycle/index.js +11 -0
- package/dist/providers/auth/oauth-lifecycle/index.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle/path-resolver.d.ts +18 -0
- package/dist/providers/auth/oauth-lifecycle/path-resolver.js +121 -0
- package/dist/providers/auth/oauth-lifecycle/path-resolver.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle/throttle.d.ts +22 -0
- package/dist/providers/auth/oauth-lifecycle/throttle.js +37 -0
- package/dist/providers/auth/oauth-lifecycle/throttle.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle/token-helpers.d.ts +36 -0
- package/dist/providers/auth/oauth-lifecycle/token-helpers.js +127 -0
- package/dist/providers/auth/oauth-lifecycle/token-helpers.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle/token-io.d.ts +14 -0
- package/dist/providers/auth/oauth-lifecycle/token-io.js +151 -0
- package/dist/providers/auth/oauth-lifecycle/token-io.js.map +1 -0
- package/dist/providers/auth/oauth-lifecycle.js +70 -446
- package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
- package/dist/providers/auth/oauth-repair-cooldown.js +8 -3
- package/dist/providers/auth/oauth-repair-cooldown.js.map +1 -1
- package/dist/providers/auth/oauth-repair-env.js +5 -3
- package/dist/providers/auth/oauth-repair-env.js.map +1 -1
- package/dist/providers/auth/oauth-token-utils.d.ts +61 -0
- package/dist/providers/auth/oauth-token-utils.js +187 -0
- package/dist/providers/auth/oauth-token-utils.js.map +1 -0
- package/dist/providers/auth/oauth-utils/camoufox-helper.d.ts +21 -0
- package/dist/providers/auth/oauth-utils/camoufox-helper.js +82 -0
- package/dist/providers/auth/oauth-utils/camoufox-helper.js.map +1 -0
- package/dist/providers/auth/oauth-utils/error-extraction.d.ts +17 -0
- package/dist/providers/auth/oauth-utils/error-extraction.js +80 -0
- package/dist/providers/auth/oauth-utils/error-extraction.js.map +1 -0
- package/dist/providers/auth/oauth-utils/index.d.ts +7 -0
- package/dist/providers/auth/oauth-utils/index.js +8 -0
- package/dist/providers/auth/oauth-utils/index.js.map +1 -0
- package/dist/providers/auth/token-refresh/index.d.ts +6 -0
- package/dist/providers/auth/token-refresh/index.js +7 -0
- package/dist/providers/auth/token-refresh/index.js.map +1 -0
- package/dist/providers/auth/token-refresh/token-state.d.ts +17 -0
- package/dist/providers/auth/token-refresh/token-state.js +30 -0
- package/dist/providers/auth/token-refresh/token-state.js.map +1 -0
- package/dist/providers/auth/token-storage/index.d.ts +7 -0
- package/dist/providers/auth/token-storage/index.js +8 -0
- package/dist/providers/auth/token-storage/index.js.map +1 -0
- package/dist/providers/auth/token-storage/token-file-resolver.d.ts +12 -0
- package/dist/providers/auth/token-storage/token-file-resolver.js +117 -0
- package/dist/providers/auth/token-storage/token-file-resolver.js.map +1 -0
- package/dist/providers/auth/token-storage/token-persistence.d.ts +22 -0
- package/dist/providers/auth/token-storage/token-persistence.js +86 -0
- package/dist/providers/auth/token-storage/token-persistence.js.map +1 -0
- package/dist/providers/auth/tokenfile-auth.js +12 -9
- package/dist/providers/auth/tokenfile-auth.js.map +1 -1
- package/dist/providers/core/api/provider-config.d.ts +8 -0
- package/dist/providers/core/config/camoufox-launcher.d.ts +1 -0
- package/dist/providers/core/config/camoufox-launcher.js +40 -9
- package/dist/providers/core/config/camoufox-launcher.js.map +1 -1
- package/dist/providers/core/config/oauth-flows.js +7 -2
- package/dist/providers/core/config/oauth-flows.js.map +1 -1
- package/dist/providers/core/config/provider-debug-hooks.d.ts +0 -12
- package/dist/providers/core/config/provider-debug-hooks.js +16 -56
- package/dist/providers/core/config/provider-debug-hooks.js.map +1 -1
- package/dist/providers/core/config/provider-debug-output-utils.d.ts +38 -0
- package/dist/providers/core/config/provider-debug-output-utils.js +46 -0
- package/dist/providers/core/config/provider-debug-output-utils.js.map +1 -0
- package/dist/providers/core/config/provider-oauth-configs.js +13 -9
- package/dist/providers/core/config/provider-oauth-configs.js.map +1 -1
- package/dist/providers/core/runtime/antigravity-request-type.d.ts +2 -0
- package/dist/providers/core/runtime/antigravity-request-type.js +126 -0
- package/dist/providers/core/runtime/antigravity-request-type.js.map +1 -0
- package/dist/providers/core/runtime/base-provider-runtime-helpers.d.ts +27 -0
- package/dist/providers/core/runtime/base-provider-runtime-helpers.js +105 -0
- package/dist/providers/core/runtime/base-provider-runtime-helpers.js.map +1 -0
- package/dist/providers/core/runtime/base-provider-series-cooldown.d.ts +19 -0
- package/dist/providers/core/runtime/base-provider-series-cooldown.js +363 -0
- package/dist/providers/core/runtime/base-provider-series-cooldown.js.map +1 -0
- package/dist/providers/core/runtime/base-provider.d.ts +4 -35
- package/dist/providers/core/runtime/base-provider.js +20 -501
- package/dist/providers/core/runtime/base-provider.js.map +1 -1
- package/dist/providers/core/runtime/deepseek-http-provider-helpers.d.ts +32 -0
- package/dist/providers/core/runtime/deepseek-http-provider-helpers.js +301 -0
- package/dist/providers/core/runtime/deepseek-http-provider-helpers.js.map +1 -0
- package/dist/providers/core/runtime/deepseek-http-provider.d.ts +0 -3
- package/dist/providers/core/runtime/deepseek-http-provider.js +5 -127
- package/dist/providers/core/runtime/deepseek-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/deepseek-session-pow-helpers.d.ts +21 -0
- package/dist/providers/core/runtime/deepseek-session-pow-helpers.js +99 -0
- package/dist/providers/core/runtime/deepseek-session-pow-helpers.js.map +1 -0
- package/dist/providers/core/runtime/deepseek-session-pow.js +13 -108
- package/dist/providers/core/runtime/deepseek-session-pow.js.map +1 -1
- package/dist/providers/core/runtime/gemini-cli-http-provider.d.ts +0 -15
- package/dist/providers/core/runtime/gemini-cli-http-provider.js +13 -303
- package/dist/providers/core/runtime/gemini-cli-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/gemini-cli-response-postprocessor.d.ts +9 -0
- package/dist/providers/core/runtime/gemini-cli-response-postprocessor.js +85 -0
- package/dist/providers/core/runtime/gemini-cli-response-postprocessor.js.map +1 -0
- package/dist/providers/core/runtime/gemini-http-provider.js +2 -2
- package/dist/providers/core/runtime/gemini-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/gemini-sse-normalizer.d.ts +25 -0
- package/dist/providers/core/runtime/gemini-sse-normalizer.js +159 -0
- package/dist/providers/core/runtime/gemini-sse-normalizer.js.map +1 -0
- package/dist/providers/core/runtime/http-request-executor.js +1 -48
- package/dist/providers/core/runtime/http-request-executor.js.map +1 -1
- package/dist/providers/core/runtime/http-transport-provider.d.ts +2 -48
- package/dist/providers/core/runtime/http-transport-provider.js +158 -1273
- package/dist/providers/core/runtime/http-transport-provider.js.map +1 -1
- package/dist/providers/core/runtime/provider-bootstrap-utils.d.ts +20 -0
- package/dist/providers/core/runtime/provider-bootstrap-utils.js +78 -0
- package/dist/providers/core/runtime/provider-bootstrap-utils.js.map +1 -0
- package/dist/providers/core/runtime/provider-factory-helpers.d.ts +19 -0
- package/dist/providers/core/runtime/provider-factory-helpers.js +203 -0
- package/dist/providers/core/runtime/provider-factory-helpers.js.map +1 -0
- package/dist/providers/core/runtime/provider-factory.d.ts +9 -7
- package/dist/providers/core/runtime/provider-factory.js +57 -214
- package/dist/providers/core/runtime/provider-factory.js.map +1 -1
- package/dist/providers/core/runtime/provider-family-profile-utils.d.ts +23 -0
- package/dist/providers/core/runtime/provider-family-profile-utils.js +57 -0
- package/dist/providers/core/runtime/provider-family-profile-utils.js.map +1 -0
- package/dist/providers/core/runtime/provider-http-executor-utils.d.ts +32 -0
- package/dist/providers/core/runtime/provider-http-executor-utils.js +92 -0
- package/dist/providers/core/runtime/provider-http-executor-utils.js.map +1 -0
- package/dist/providers/core/runtime/provider-iflow-business-error-utils.d.ts +15 -0
- package/dist/providers/core/runtime/provider-iflow-business-error-utils.js +49 -0
- package/dist/providers/core/runtime/provider-iflow-business-error-utils.js.map +1 -0
- package/dist/providers/core/runtime/provider-request-executor-deps-factory.d.ts +29 -0
- package/dist/providers/core/runtime/provider-request-executor-deps-factory.js +41 -0
- package/dist/providers/core/runtime/provider-request-executor-deps-factory.js.map +1 -0
- package/dist/providers/core/runtime/provider-request-header-orchestrator.d.ts +30 -0
- package/dist/providers/core/runtime/provider-request-header-orchestrator.js +91 -0
- package/dist/providers/core/runtime/provider-request-header-orchestrator.js.map +1 -0
- package/dist/providers/core/runtime/provider-request-preprocessor.d.ts +5 -0
- package/dist/providers/core/runtime/provider-request-preprocessor.js +39 -0
- package/dist/providers/core/runtime/provider-request-preprocessor.js.map +1 -0
- package/dist/providers/core/runtime/provider-request-shaping-utils.d.ts +37 -0
- package/dist/providers/core/runtime/provider-request-shaping-utils.js +65 -0
- package/dist/providers/core/runtime/provider-request-shaping-utils.js.map +1 -0
- package/dist/providers/core/runtime/provider-response-postprocessor.d.ts +7 -0
- package/dist/providers/core/runtime/provider-response-postprocessor.js +28 -0
- package/dist/providers/core/runtime/provider-response-postprocessor.js.map +1 -0
- package/dist/providers/core/runtime/provider-runtime-utils.d.ts +16 -0
- package/dist/providers/core/runtime/provider-runtime-utils.js +51 -0
- package/dist/providers/core/runtime/provider-runtime-utils.js.map +1 -0
- package/dist/providers/core/runtime/responses-provider-helpers.d.ts +37 -0
- package/dist/providers/core/runtime/responses-provider-helpers.js +212 -0
- package/dist/providers/core/runtime/responses-provider-helpers.js.map +1 -0
- package/dist/providers/core/runtime/responses-provider.d.ts +0 -10
- package/dist/providers/core/runtime/responses-provider.js +14 -224
- package/dist/providers/core/runtime/responses-provider.js.map +1 -1
- package/dist/providers/core/runtime/runtime-endpoint-resolver.d.ts +21 -0
- package/dist/providers/core/runtime/runtime-endpoint-resolver.js +64 -0
- package/dist/providers/core/runtime/runtime-endpoint-resolver.js.map +1 -0
- package/dist/providers/core/runtime/service-profile-resolver.d.ts +29 -0
- package/dist/providers/core/runtime/service-profile-resolver.js +88 -0
- package/dist/providers/core/runtime/service-profile-resolver.js.map +1 -0
- package/dist/providers/core/runtime/transport/auth-mode-utils.d.ts +13 -0
- package/dist/providers/core/runtime/transport/auth-mode-utils.js +43 -0
- package/dist/providers/core/runtime/transport/auth-mode-utils.js.map +1 -0
- package/dist/providers/core/runtime/transport/auth-provider-factory.d.ts +37 -0
- package/dist/providers/core/runtime/transport/auth-provider-factory.js +131 -0
- package/dist/providers/core/runtime/transport/auth-provider-factory.js.map +1 -0
- package/dist/providers/core/runtime/transport/header-utils.d.ts +15 -0
- package/dist/providers/core/runtime/transport/header-utils.js +85 -0
- package/dist/providers/core/runtime/transport/header-utils.js.map +1 -0
- package/dist/providers/core/runtime/transport/iflow-signer.d.ts +12 -0
- package/dist/providers/core/runtime/transport/iflow-signer.js +63 -0
- package/dist/providers/core/runtime/transport/iflow-signer.js.map +1 -0
- package/dist/providers/core/runtime/transport/index.d.ts +15 -0
- package/dist/providers/core/runtime/transport/index.js +16 -0
- package/dist/providers/core/runtime/transport/index.js.map +1 -0
- package/dist/providers/core/runtime/transport/oauth-header-preflight.d.ts +12 -0
- package/dist/providers/core/runtime/transport/oauth-header-preflight.js +56 -0
- package/dist/providers/core/runtime/transport/oauth-header-preflight.js.map +1 -0
- package/dist/providers/core/runtime/transport/oauth-recovery-handler.d.ts +34 -0
- package/dist/providers/core/runtime/transport/oauth-recovery-handler.js +126 -0
- package/dist/providers/core/runtime/transport/oauth-recovery-handler.js.map +1 -0
- package/dist/providers/core/runtime/transport/provider-payload-utils.d.ts +21 -0
- package/dist/providers/core/runtime/transport/provider-payload-utils.js +88 -0
- package/dist/providers/core/runtime/transport/provider-payload-utils.js.map +1 -0
- package/dist/providers/core/runtime/transport/request-header-builder.d.ts +24 -0
- package/dist/providers/core/runtime/transport/request-header-builder.js +90 -0
- package/dist/providers/core/runtime/transport/request-header-builder.js.map +1 -0
- package/dist/providers/core/runtime/transport/runtime-detector.d.ts +22 -0
- package/dist/providers/core/runtime/transport/runtime-detector.js +63 -0
- package/dist/providers/core/runtime/transport/runtime-detector.js.map +1 -0
- package/dist/providers/core/runtime/transport/session-header-utils.d.ts +8 -0
- package/dist/providers/core/runtime/transport/session-header-utils.js +72 -0
- package/dist/providers/core/runtime/transport/session-header-utils.js.map +1 -0
- package/dist/providers/core/runtime/vision-debug-utils.d.ts +2 -0
- package/dist/providers/core/runtime/vision-debug-utils.js +31 -0
- package/dist/providers/core/runtime/vision-debug-utils.js.map +1 -1
- package/dist/providers/core/strategies/oauth-auth-code-flow.d.ts +13 -0
- package/dist/providers/core/strategies/oauth-auth-code-flow.js +272 -55
- package/dist/providers/core/strategies/oauth-auth-code-flow.js.map +1 -1
- package/dist/providers/core/utils/snapshot-writer-buffer.d.ts +13 -0
- package/dist/providers/core/utils/snapshot-writer-buffer.js +39 -0
- package/dist/providers/core/utils/snapshot-writer-buffer.js.map +1 -0
- package/dist/providers/core/utils/snapshot-writer.js +75 -54
- package/dist/providers/core/utils/snapshot-writer.js.map +1 -1
- package/dist/providers/profile/families/antigravity-profile.js +2 -10
- package/dist/providers/profile/families/antigravity-profile.js.map +1 -1
- package/dist/providers/profile/families/deepseek-profile.d.ts +2 -0
- package/dist/providers/profile/families/deepseek-profile.js +110 -0
- package/dist/providers/profile/families/deepseek-profile.js.map +1 -0
- package/dist/providers/profile/families/iflow-profile.js +89 -10
- package/dist/providers/profile/families/iflow-profile.js.map +1 -1
- package/dist/providers/profile/provider-profile-loader.d.ts +5 -0
- package/dist/providers/profile/provider-profile-loader.js +35 -0
- package/dist/providers/profile/provider-profile-loader.js.map +1 -1
- package/dist/providers/profile/provider-profile.d.ts +16 -1
- package/dist/runtime/runtime-flags.js +1 -1
- package/dist/runtime/runtime-flags.js.map +1 -1
- package/dist/runtime/wasm-runtime/index.d.ts +56 -0
- package/dist/runtime/wasm-runtime/index.js +69 -0
- package/dist/runtime/wasm-runtime/index.js.map +1 -0
- package/dist/scripts/camoufox/launch-auth.mjs +158 -10
- package/dist/server/handlers/handler-response-utils.d.ts +13 -0
- package/dist/server/handlers/handler-response-utils.js +427 -0
- package/dist/server/handlers/handler-response-utils.js.map +1 -0
- package/dist/server/handlers/handler-utils.d.ts +2 -11
- package/dist/server/handlers/handler-utils.js +21 -421
- package/dist/server/handlers/handler-utils.js.map +1 -1
- package/dist/server/runtime/http-server/clock-client-reaper.d.ts +23 -0
- package/dist/server/runtime/http-server/clock-client-reaper.js +159 -0
- package/dist/server/runtime/http-server/clock-client-reaper.js.map +1 -0
- package/dist/server/runtime/http-server/clock-client-registry-utils.d.ts +87 -0
- package/dist/server/runtime/http-server/clock-client-registry-utils.js +276 -0
- package/dist/server/runtime/http-server/clock-client-registry-utils.js.map +1 -0
- package/dist/server/runtime/http-server/clock-client-registry.d.ts +5 -50
- package/dist/server/runtime/http-server/clock-client-registry.js +74 -320
- package/dist/server/runtime/http-server/clock-client-registry.js.map +1 -1
- package/dist/server/runtime/http-server/clock-client-route-utils.d.ts +12 -0
- package/dist/server/runtime/http-server/clock-client-route-utils.js +210 -0
- package/dist/server/runtime/http-server/clock-client-route-utils.js.map +1 -0
- package/dist/server/runtime/http-server/clock-client-routes.js +27 -201
- package/dist/server/runtime/http-server/clock-client-routes.js.map +1 -1
- package/dist/server/runtime/http-server/clock-daemon-log-throttle.d.ts +12 -0
- package/dist/server/runtime/http-server/clock-daemon-log-throttle.js +56 -0
- package/dist/server/runtime/http-server/clock-daemon-log-throttle.js.map +1 -0
- package/dist/server/runtime/http-server/daemon-admin/control-handler.js +143 -14
- package/dist/server/runtime/http-server/daemon-admin/control-handler.js.map +1 -1
- package/dist/server/runtime/http-server/daemon-admin/credentials-handler-utils.d.ts +19 -0
- package/dist/server/runtime/http-server/daemon-admin/credentials-handler-utils.js +107 -0
- package/dist/server/runtime/http-server/daemon-admin/credentials-handler-utils.js.map +1 -0
- package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js +2 -104
- package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js.map +1 -1
- package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.d.ts +28 -0
- package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.js +298 -0
- package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.js.map +1 -0
- package/dist/server/runtime/http-server/daemon-admin/providers-handler-utils.d.ts +22 -0
- package/dist/server/runtime/http-server/daemon-admin/providers-handler-utils.js +211 -0
- package/dist/server/runtime/http-server/daemon-admin/providers-handler-utils.js.map +1 -0
- package/dist/server/runtime/http-server/daemon-admin/providers-handler.js +25 -454
- package/dist/server/runtime/http-server/daemon-admin/providers-handler.js.map +1 -1
- package/dist/server/runtime/http-server/daemon-admin/quota-handler.js +81 -32
- package/dist/server/runtime/http-server/daemon-admin/quota-handler.js.map +1 -1
- package/dist/server/runtime/http-server/daemon-admin/routecodex-x7e-gate.d.ts +22 -0
- package/dist/server/runtime/http-server/daemon-admin/routecodex-x7e-gate.js +70 -0
- package/dist/server/runtime/http-server/daemon-admin/routecodex-x7e-gate.js.map +1 -0
- package/dist/server/runtime/http-server/executor/antigravity-detector.d.ts +34 -0
- package/dist/server/runtime/http-server/executor/antigravity-detector.js +118 -0
- package/dist/server/runtime/http-server/executor/antigravity-detector.js.map +1 -0
- package/dist/server/runtime/http-server/executor/env-config.d.ts +13 -0
- package/dist/server/runtime/http-server/executor/env-config.js +20 -0
- package/dist/server/runtime/http-server/executor/env-config.js.map +1 -0
- package/dist/server/runtime/http-server/executor/index.d.ts +11 -0
- package/dist/server/runtime/http-server/executor/index.js +18 -0
- package/dist/server/runtime/http-server/executor/index.js.map +1 -0
- package/dist/server/runtime/http-server/executor/provider-request-context.d.ts +20 -0
- package/dist/server/runtime/http-server/executor/provider-request-context.js +38 -0
- package/dist/server/runtime/http-server/executor/provider-request-context.js.map +1 -0
- package/dist/server/runtime/http-server/executor/provider-response-converter.d.ts +23 -0
- package/dist/server/runtime/http-server/executor/provider-response-converter.js +337 -0
- package/dist/server/runtime/http-server/executor/provider-response-converter.js.map +1 -0
- package/dist/server/runtime/http-server/executor/provider-response-utils.d.ts +8 -0
- package/dist/server/runtime/http-server/executor/provider-response-utils.js +93 -0
- package/dist/server/runtime/http-server/executor/provider-response-utils.js.map +1 -0
- package/dist/server/runtime/http-server/executor/provider-runtime-resolver.d.ts +23 -0
- package/dist/server/runtime/http-server/executor/provider-runtime-resolver.js +85 -0
- package/dist/server/runtime/http-server/executor/provider-runtime-resolver.js.map +1 -0
- package/dist/server/runtime/http-server/executor/request-executor-core-utils.d.ts +7 -0
- package/dist/server/runtime/http-server/executor/request-executor-core-utils.js +39 -0
- package/dist/server/runtime/http-server/executor/request-executor-core-utils.js.map +1 -0
- package/dist/server/runtime/http-server/executor/request-retry-helpers.d.ts +16 -0
- package/dist/server/runtime/http-server/executor/request-retry-helpers.js +218 -0
- package/dist/server/runtime/http-server/executor/request-retry-helpers.js.map +1 -0
- package/dist/server/runtime/http-server/executor/retry-engine.d.ts +21 -0
- package/dist/server/runtime/http-server/executor/retry-engine.js +73 -0
- package/dist/server/runtime/http-server/executor/retry-engine.js.map +1 -0
- package/dist/server/runtime/http-server/executor/sse-error-handler.d.ts +14 -0
- package/dist/server/runtime/http-server/executor/sse-error-handler.js +127 -0
- package/dist/server/runtime/http-server/executor/sse-error-handler.js.map +1 -0
- package/dist/server/runtime/http-server/executor/usage-aggregator.d.ts +39 -0
- package/dist/server/runtime/http-server/executor/usage-aggregator.js +177 -0
- package/dist/server/runtime/http-server/executor/usage-aggregator.js.map +1 -0
- package/dist/server/runtime/http-server/executor/usage-logger.d.ts +7 -0
- package/dist/server/runtime/http-server/executor/usage-logger.js +13 -0
- package/dist/server/runtime/http-server/executor/usage-logger.js.map +1 -0
- package/dist/server/runtime/http-server/executor/utils.d.ts +21 -0
- package/dist/server/runtime/http-server/executor/utils.js +62 -0
- package/dist/server/runtime/http-server/executor/utils.js.map +1 -0
- package/dist/server/runtime/http-server/executor-metadata.js +83 -2
- package/dist/server/runtime/http-server/executor-metadata.js.map +1 -1
- package/dist/server/runtime/http-server/executor-response.js +17 -9
- package/dist/server/runtime/http-server/executor-response.js.map +1 -1
- package/dist/server/runtime/http-server/http-server-bootstrap.d.ts +31 -0
- package/dist/server/runtime/http-server/http-server-bootstrap.js +367 -0
- package/dist/server/runtime/http-server/http-server-bootstrap.js.map +1 -0
- package/dist/server/runtime/http-server/http-server-clock-daemon.d.ts +5 -0
- package/dist/server/runtime/http-server/http-server-clock-daemon.js +242 -0
- package/dist/server/runtime/http-server/http-server-clock-daemon.js.map +1 -0
- package/dist/server/runtime/http-server/http-server-legacy-pipeline.d.ts +2 -0
- package/dist/server/runtime/http-server/http-server-legacy-pipeline.js +65 -0
- package/dist/server/runtime/http-server/http-server-legacy-pipeline.js.map +1 -0
- package/dist/server/runtime/http-server/http-server-lifecycle.d.ts +27 -0
- package/dist/server/runtime/http-server/http-server-lifecycle.js +285 -0
- package/dist/server/runtime/http-server/http-server-lifecycle.js.map +1 -0
- package/dist/server/runtime/http-server/http-server-runtime-providers.d.ts +10 -0
- package/dist/server/runtime/http-server/http-server-runtime-providers.js +415 -0
- package/dist/server/runtime/http-server/http-server-runtime-providers.js.map +1 -0
- package/dist/server/runtime/http-server/http-server-runtime-setup.d.ts +2 -0
- package/dist/server/runtime/http-server/http-server-runtime-setup.js +93 -0
- package/dist/server/runtime/http-server/http-server-runtime-setup.js.map +1 -0
- package/dist/server/runtime/http-server/index.d.ts +2 -46
- package/dist/server/runtime/http-server/index.js +96 -2615
- package/dist/server/runtime/http-server/index.js.map +1 -1
- package/dist/server/runtime/http-server/request-executor.d.ts +8 -21
- package/dist/server/runtime/http-server/request-executor.js +94 -956
- package/dist/server/runtime/http-server/request-executor.js.map +1 -1
- package/dist/server/runtime/http-server/routes.js +2 -2
- package/dist/server/runtime/http-server/routes.js.map +1 -1
- package/dist/server/runtime/http-server/servertool-admin-state.d.ts +42 -0
- package/dist/server/runtime/http-server/servertool-admin-state.js +210 -0
- package/dist/server/runtime/http-server/servertool-admin-state.js.map +1 -0
- package/dist/server/runtime/http-server/stats-manager-internals.d.ts +96 -0
- package/dist/server/runtime/http-server/stats-manager-internals.js +311 -0
- package/dist/server/runtime/http-server/stats-manager-internals.js.map +1 -0
- package/dist/server/runtime/http-server/stats-manager-table.d.ts +6 -0
- package/dist/server/runtime/http-server/stats-manager-table.js +135 -0
- package/dist/server/runtime/http-server/stats-manager-table.js.map +1 -0
- package/dist/server/runtime/http-server/stats-manager.d.ts +0 -23
- package/dist/server/runtime/http-server/stats-manager.js +95 -483
- package/dist/server/runtime/http-server/stats-manager.js.map +1 -1
- package/dist/server/utils/client-connection-state.js +61 -0
- package/dist/server/utils/client-connection-state.js.map +1 -1
- package/dist/server/utils/request-id-manager.d.ts +6 -0
- package/dist/server/utils/request-id-manager.js +105 -15
- package/dist/server/utils/request-id-manager.js.map +1 -1
- package/dist/server/utils/stage-logger.js +14 -4
- package/dist/server/utils/stage-logger.js.map +1 -1
- package/dist/server-lifecycle/index.d.ts +6 -0
- package/dist/server-lifecycle/index.js +7 -0
- package/dist/server-lifecycle/index.js.map +1 -0
- package/dist/server-lifecycle/port-utils.d.ts +18 -0
- package/dist/server-lifecycle/port-utils.js +204 -0
- package/dist/server-lifecycle/port-utils.js.map +1 -0
- package/dist/sharedmodule/process-snapshot.d.ts +26 -0
- package/dist/sharedmodule/process-snapshot.js +141 -0
- package/dist/sharedmodule/process-snapshot.js.map +1 -0
- package/dist/token-daemon/index.js +10 -3
- package/dist/token-daemon/index.js.map +1 -1
- package/dist/token-daemon/token-daemon.js +9 -11
- package/dist/token-daemon/token-daemon.js.map +1 -1
- package/dist/token-daemon/token-utils.d.ts +1 -1
- package/dist/token-daemon/token-utils.js +19 -3
- package/dist/token-daemon/token-utils.js.map +1 -1
- package/dist/tools/semantic-replay-snapshot-loader.d.ts +4 -0
- package/dist/tools/semantic-replay-snapshot-loader.js +396 -0
- package/dist/tools/semantic-replay-snapshot-loader.js.map +1 -0
- package/dist/tools/semantic-replay.js +2 -393
- package/dist/tools/semantic-replay.js.map +1 -1
- package/dist/utils/daemon-stop-intent.d.ts +17 -0
- package/dist/utils/daemon-stop-intent.js +104 -0
- package/dist/utils/daemon-stop-intent.js.map +1 -0
- package/dist/utils/key-429-tracker.js +6 -5
- package/dist/utils/key-429-tracker.js.map +1 -1
- package/dist/utils/pipeline-health-manager.js +7 -6
- package/dist/utils/pipeline-health-manager.js.map +1 -1
- package/dist/utils/process-lifecycle-logger.js +45 -1
- package/dist/utils/process-lifecycle-logger.js.map +1 -1
- package/dist/utils/runtime-exit-forensics.d.ts +2 -2
- package/dist/utils/runtime-exit-forensics.js +10 -5
- package/dist/utils/runtime-exit-forensics.js.map +1 -1
- package/dist/utils/snapshot-writer.js +3 -3
- package/dist/utils/snapshot-writer.js.map +1 -1
- package/docs/QUOTA_MANAGER_V3.md +3 -0
- package/docs/VIRTUAL_ROUTER_PRIORITY_AND_HEALTH.md +114 -0
- package/docs/daemon-admin-ui.html +268 -11
- package/docs/file-line-limit-gate.md +30 -0
- package/docs/refactoring/host-164.3-responsibility-migration.md +62 -0
- package/docs/release-iflow-400-gate.md +58 -0
- package/docs/replay-evidence-iflow-400.txt +33 -0
- package/docs/stop-message-auto.md +4 -3
- package/package.json +4 -3
- package/scripts/auth-iflow-manual.mjs +13 -23
- package/scripts/camoufox/launch-auth.mjs +158 -10
- package/scripts/ci/check-file-line-limit.mjs +149 -0
- package/scripts/copy-compat-assets.mjs +26 -0
- package/scripts/tests/ci-jest.mjs +4 -0
- package/scripts/verify-codex-error-samples.mjs +27 -6
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executor Module Exports
|
|
3
|
+
*
|
|
4
|
+
* Unified exports for all executor submodules.
|
|
5
|
+
*/
|
|
6
|
+
// Utilities
|
|
7
|
+
export { firstNonEmptyString, firstFiniteNumber, extractStatusCodeFromError, resolveBoolFromEnv } from './utils.js';
|
|
8
|
+
// Retry engine
|
|
9
|
+
export { describeRetryReason, shouldRetryProviderError, waitBeforeRetry, RETRYABLE_SSE_ERROR_CODE_HINTS, RETRYABLE_SSE_MESSAGE_HINTS, isRetryableSseWrapperError, resolveMaxProviderAttempts, resolveAntigravityMaxProviderAttempts } from './retry-engine.js';
|
|
10
|
+
// SSE error handling
|
|
11
|
+
export { extractSseWrapperError } from './sse-error-handler.js';
|
|
12
|
+
// Antigravity detection
|
|
13
|
+
export { isAntigravityProviderKey, isGoogleAccountVerificationRequiredError, isAntigravityReauthRequired403, extractRetryErrorSignature, shouldRotateAntigravityAliasOnRetry, injectAntigravityRetrySignal } from './antigravity-detector.js';
|
|
14
|
+
// Usage aggregation
|
|
15
|
+
export { extractUsageFromResult, normalizeUsage, extractEstimatedInputTokens, reconcileUsageWithEstimate, patchUsageCandidate, mergeUsageMetrics, buildUsageLogText } from './usage-aggregator.js';
|
|
16
|
+
// Environment configuration
|
|
17
|
+
export { isUsageLoggingEnabled, isVerboseErrorLoggingEnabled } from './env-config.js';
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/server/runtime/http-server/executor/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY;AACZ,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,eAAe;AACf,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,8BAA8B,EAC9B,2BAA2B,EAC3B,0BAA0B,EAC1B,0BAA0B,EAC1B,qCAAqC,EACtC,MAAM,mBAAmB,CAAC;AAE3B,qBAAqB;AACrB,OAAO,EAEL,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAEhC,wBAAwB;AACxB,OAAO,EACL,wBAAwB,EACxB,wCAAwC,EACxC,8BAA8B,EAC9B,0BAA0B,EAC1B,mCAAmC,EACnC,4BAA4B,EAC7B,MAAM,2BAA2B,CAAC;AAEnC,oBAAoB;AACpB,OAAO,EAEL,sBAAsB,EACtB,cAAc,EACd,2BAA2B,EAC3B,0BAA0B,EAC1B,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAE/B,4BAA4B;AAC5B,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC7B,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ProviderHandle, ProviderProtocol } from '../types.js';
|
|
2
|
+
type ProviderTargetLike = {
|
|
3
|
+
providerKey: string;
|
|
4
|
+
outboundProfile?: ProviderProtocol;
|
|
5
|
+
};
|
|
6
|
+
export declare function resolveProviderRequestContext(options: {
|
|
7
|
+
providerRequestId: string;
|
|
8
|
+
entryEndpoint: string;
|
|
9
|
+
target: ProviderTargetLike;
|
|
10
|
+
handle: ProviderHandle;
|
|
11
|
+
runtimeKey: string;
|
|
12
|
+
providerPayload: unknown;
|
|
13
|
+
mergedMetadata?: Record<string, unknown>;
|
|
14
|
+
}): {
|
|
15
|
+
requestId: string;
|
|
16
|
+
providerProtocol: ProviderProtocol;
|
|
17
|
+
providerModel?: string;
|
|
18
|
+
providerLabel?: string;
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { enhanceProviderRequestId } from '../../../utils/request-id-manager.js';
|
|
2
|
+
import { buildProviderLabel, extractProviderModel } from './provider-response-utils.js';
|
|
3
|
+
export function resolveProviderRequestContext(options) {
|
|
4
|
+
const { providerRequestId, entryEndpoint, target, handle, runtimeKey, providerPayload, mergedMetadata } = options;
|
|
5
|
+
const providerProtocol = target.outboundProfile || handle.providerProtocol;
|
|
6
|
+
const metadataModel = mergedMetadata?.target && typeof mergedMetadata.target === 'object'
|
|
7
|
+
? mergedMetadata.target.clientModelId
|
|
8
|
+
: undefined;
|
|
9
|
+
const payloadRecord = providerPayload && typeof providerPayload === 'object'
|
|
10
|
+
? providerPayload
|
|
11
|
+
: undefined;
|
|
12
|
+
const rawModel = extractProviderModel(payloadRecord) ||
|
|
13
|
+
(typeof metadataModel === 'string' ? metadataModel : undefined);
|
|
14
|
+
const providerAlias = typeof target.providerKey === 'string' && target.providerKey.includes('.')
|
|
15
|
+
? target.providerKey.split('.').slice(0, 2).join('.')
|
|
16
|
+
: target.providerKey;
|
|
17
|
+
const providerIdToken = providerAlias || handle.providerId || runtimeKey;
|
|
18
|
+
if (!providerIdToken) {
|
|
19
|
+
throw Object.assign(new Error('Provider identifier missing for request'), {
|
|
20
|
+
code: 'ERR_PROVIDER_ID_MISSING',
|
|
21
|
+
requestId: providerRequestId
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
const enhancedRequestId = enhanceProviderRequestId(providerRequestId, {
|
|
25
|
+
entryEndpoint,
|
|
26
|
+
providerId: providerIdToken,
|
|
27
|
+
model: rawModel
|
|
28
|
+
});
|
|
29
|
+
const providerModel = rawModel;
|
|
30
|
+
const providerLabel = buildProviderLabel(target.providerKey, providerModel);
|
|
31
|
+
return {
|
|
32
|
+
requestId: enhancedRequestId,
|
|
33
|
+
providerProtocol,
|
|
34
|
+
providerModel,
|
|
35
|
+
providerLabel
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=provider-request-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-request-context.js","sourceRoot":"","sources":["../../../../../src/server/runtime/http-server/executor/provider-request-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAOxF,MAAM,UAAU,6BAA6B,CAAC,OAQ7C;IAMC,MAAM,EACJ,iBAAiB,EACjB,aAAa,EACb,MAAM,EACN,MAAM,EACN,UAAU,EACV,eAAe,EACf,cAAc,EACf,GAAG,OAAO,CAAC;IACZ,MAAM,gBAAgB,GAAI,MAAM,CAAC,eAAoC,IAAI,MAAM,CAAC,gBAAgB,CAAC;IACjG,MAAM,aAAa,GACjB,cAAc,EAAE,MAAM,IAAI,OAAO,cAAc,CAAC,MAAM,KAAK,QAAQ;QACjE,CAAC,CAAE,cAAc,CAAC,MAAkC,CAAC,aAAa;QAClE,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,aAAa,GACjB,eAAe,IAAI,OAAO,eAAe,KAAK,QAAQ;QACpD,CAAC,CAAE,eAA2C;QAC9C,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,QAAQ,GACZ,oBAAoB,CAAC,aAAa,CAAC;QACnC,CAAC,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,aAAa,GACjB,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;QACxE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACrD,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;IACzB,MAAM,eAAe,GAAG,aAAa,IAAI,MAAM,CAAC,UAAU,IAAI,UAAU,CAAC;IACzE,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,yCAAyC,CAAC,EAAE;YACxE,IAAI,EAAE,yBAAyB;YAC/B,SAAS,EAAE,iBAAiB;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,iBAAiB,EAAE;QACpE,aAAa;QACb,UAAU,EAAE,eAAe;QAC3B,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,QAAQ,CAAC;IAC/B,MAAM,aAAa,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAE5E,OAAO;QACL,SAAS,EAAE,iBAAiB;QAC5B,gBAAgB;QAChB,aAAa;QACb,aAAa;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PipelineExecutionInput, PipelineExecutionResult } from '../../../handlers/types.js';
|
|
2
|
+
import type { ProviderHandle } from '../types.js';
|
|
3
|
+
export type ConvertProviderResponseOptions = {
|
|
4
|
+
entryEndpoint?: string;
|
|
5
|
+
providerProtocol: string;
|
|
6
|
+
providerType?: string;
|
|
7
|
+
requestId: string;
|
|
8
|
+
serverToolsEnabled?: boolean;
|
|
9
|
+
wantsStream: boolean;
|
|
10
|
+
originalRequest?: Record<string, unknown> | undefined;
|
|
11
|
+
requestSemantics?: Record<string, unknown> | undefined;
|
|
12
|
+
processMode?: string;
|
|
13
|
+
response: PipelineExecutionResult;
|
|
14
|
+
pipelineMetadata?: Record<string, unknown>;
|
|
15
|
+
};
|
|
16
|
+
export type ConvertProviderResponseDeps = {
|
|
17
|
+
runtimeManager: {
|
|
18
|
+
resolveRuntimeKey(providerKey?: string, fallback?: string): string | undefined;
|
|
19
|
+
getHandleByRuntimeKey(runtimeKey?: string): ProviderHandle | undefined;
|
|
20
|
+
};
|
|
21
|
+
executeNested(input: PipelineExecutionInput): Promise<PipelineExecutionResult>;
|
|
22
|
+
};
|
|
23
|
+
export declare function convertProviderResponseIfNeeded(options: ConvertProviderResponseOptions, deps: ConvertProviderResponseDeps): Promise<PipelineExecutionResult>;
|
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
import { asRecord } from '../provider-utils.js';
|
|
2
|
+
import { convertProviderResponse as bridgeConvertProviderResponse, createSnapshotRecorder as bridgeCreateSnapshotRecorder } from '../../../../modules/llmswitch/bridge.js';
|
|
3
|
+
import { applyClientConnectionStateToContext } from '../../../utils/client-connection-state.js';
|
|
4
|
+
import { injectClockClientPrompt } from '../clock-client-registry.js';
|
|
5
|
+
import { bindClockConversationSession } from './request-retry-helpers.js';
|
|
6
|
+
import { extractClientModelId, normalizeProviderResponse } from './provider-response-utils.js';
|
|
7
|
+
import { isVerboseErrorLoggingEnabled } from './env-config.js';
|
|
8
|
+
import { extractSseWrapperError } from './sse-error-handler.js';
|
|
9
|
+
import { isRateLimitLikeError } from './request-retry-helpers.js';
|
|
10
|
+
const FOLLOWUP_SESSION_HEADER_KEYS = new Set([
|
|
11
|
+
'sessionid',
|
|
12
|
+
'conversationid',
|
|
13
|
+
'xsessionid',
|
|
14
|
+
'xconversationid',
|
|
15
|
+
'anthropicsessionid',
|
|
16
|
+
'anthropicconversationid',
|
|
17
|
+
'xroutecodexsessionid',
|
|
18
|
+
'xroutecodexconversationid'
|
|
19
|
+
]);
|
|
20
|
+
function canonicalizeHeaderName(headerName) {
|
|
21
|
+
return headerName.toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
22
|
+
}
|
|
23
|
+
function extractFollowupSessionHeaders(headers) {
|
|
24
|
+
if (!headers || typeof headers !== 'object' || Array.isArray(headers)) {
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
const source = headers;
|
|
28
|
+
const preserved = {};
|
|
29
|
+
for (const [headerName, headerValue] of Object.entries(source)) {
|
|
30
|
+
if (!FOLLOWUP_SESSION_HEADER_KEYS.has(canonicalizeHeaderName(headerName))) {
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
if (typeof headerValue !== 'string') {
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
const normalizedValue = headerValue.trim();
|
|
37
|
+
if (!normalizedValue) {
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
preserved[headerName] = normalizedValue;
|
|
41
|
+
}
|
|
42
|
+
return Object.keys(preserved).length ? preserved : undefined;
|
|
43
|
+
}
|
|
44
|
+
function extractPreservedSessionToken(headers, field) {
|
|
45
|
+
if (!headers) {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
for (const [headerName, headerValue] of Object.entries(headers)) {
|
|
49
|
+
const normalizedName = canonicalizeHeaderName(headerName);
|
|
50
|
+
if (field === 'session' && normalizedName.endsWith('sessionid')) {
|
|
51
|
+
return headerValue;
|
|
52
|
+
}
|
|
53
|
+
if (field === 'conversation' && normalizedName.endsWith('conversationid')) {
|
|
54
|
+
return headerValue;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
export async function convertProviderResponseIfNeeded(options, deps) {
|
|
60
|
+
const body = options.response.body;
|
|
61
|
+
if (body && typeof body === 'object') {
|
|
62
|
+
const wrapperError = extractSseWrapperError(body);
|
|
63
|
+
if (wrapperError) {
|
|
64
|
+
const codeSuffix = wrapperError.errorCode ? ` [${wrapperError.errorCode}]` : '';
|
|
65
|
+
const error = new Error(`Upstream SSE error event${codeSuffix}: ${wrapperError.message}`);
|
|
66
|
+
error.code = 'SSE_DECODE_ERROR';
|
|
67
|
+
if (wrapperError.errorCode) {
|
|
68
|
+
error.upstreamCode = wrapperError.errorCode;
|
|
69
|
+
}
|
|
70
|
+
error.retryable = wrapperError.retryable;
|
|
71
|
+
if (isRateLimitLikeError(wrapperError.message, wrapperError.errorCode)) {
|
|
72
|
+
error.code = 'HTTP_429';
|
|
73
|
+
error.status = 429;
|
|
74
|
+
error.statusCode = 429;
|
|
75
|
+
error.retryable = true;
|
|
76
|
+
}
|
|
77
|
+
else if (wrapperError.retryable) {
|
|
78
|
+
error.status = 503;
|
|
79
|
+
error.statusCode = 503;
|
|
80
|
+
}
|
|
81
|
+
throw error;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
if (options.processMode === 'passthrough' && !options.wantsStream) {
|
|
85
|
+
return options.response;
|
|
86
|
+
}
|
|
87
|
+
const entry = (options.entryEndpoint || '').toLowerCase();
|
|
88
|
+
const needsAnthropicConversion = entry.includes('/v1/messages');
|
|
89
|
+
const needsResponsesConversion = entry.includes('/v1/responses');
|
|
90
|
+
const needsChatConversion = entry.includes('/v1/chat/completions');
|
|
91
|
+
if (!needsAnthropicConversion && !needsResponsesConversion && !needsChatConversion) {
|
|
92
|
+
return options.response;
|
|
93
|
+
}
|
|
94
|
+
if (!body || typeof body !== 'object') {
|
|
95
|
+
return options.response;
|
|
96
|
+
}
|
|
97
|
+
try {
|
|
98
|
+
const metadataBag = asRecord(options.pipelineMetadata);
|
|
99
|
+
const originalModelId = extractClientModelId(metadataBag, options.originalRequest);
|
|
100
|
+
const assignedModelId = typeof metadataBag?.assignedModelId === 'string'
|
|
101
|
+
? String(metadataBag.assignedModelId)
|
|
102
|
+
: metadataBag &&
|
|
103
|
+
typeof metadataBag === 'object' &&
|
|
104
|
+
metadataBag.target &&
|
|
105
|
+
typeof metadataBag.target === 'object' &&
|
|
106
|
+
typeof metadataBag.target.modelId === 'string'
|
|
107
|
+
? metadataBag.target.modelId
|
|
108
|
+
: typeof metadataBag?.modelId === 'string'
|
|
109
|
+
? String(metadataBag.modelId)
|
|
110
|
+
: undefined;
|
|
111
|
+
const baseContext = {
|
|
112
|
+
...(metadataBag ?? {})
|
|
113
|
+
};
|
|
114
|
+
if (baseContext.capturedChatRequest === undefined &&
|
|
115
|
+
options.originalRequest &&
|
|
116
|
+
typeof options.originalRequest === 'object' &&
|
|
117
|
+
!Array.isArray(options.originalRequest)) {
|
|
118
|
+
baseContext.capturedChatRequest = options.originalRequest;
|
|
119
|
+
}
|
|
120
|
+
if (typeof metadataBag?.routeName === 'string') {
|
|
121
|
+
baseContext.routeId = metadataBag.routeName;
|
|
122
|
+
}
|
|
123
|
+
baseContext.requestId = options.requestId;
|
|
124
|
+
baseContext.entryEndpoint = options.entryEndpoint || entry;
|
|
125
|
+
baseContext.providerProtocol = options.providerProtocol;
|
|
126
|
+
baseContext.originalModelId = originalModelId;
|
|
127
|
+
if (assignedModelId && assignedModelId.trim()) {
|
|
128
|
+
baseContext.modelId = assignedModelId.trim();
|
|
129
|
+
}
|
|
130
|
+
applyClientConnectionStateToContext(metadataBag, baseContext);
|
|
131
|
+
const adapterContext = baseContext;
|
|
132
|
+
const hasTargetMetadata = metadataBag &&
|
|
133
|
+
typeof metadataBag === 'object' &&
|
|
134
|
+
metadataBag.target &&
|
|
135
|
+
typeof metadataBag.target === 'object';
|
|
136
|
+
const targetCompatProfile = hasTargetMetadata &&
|
|
137
|
+
typeof metadataBag.target.compatibilityProfile === 'string'
|
|
138
|
+
? metadataBag.target.compatibilityProfile
|
|
139
|
+
: undefined;
|
|
140
|
+
const metadataCompatProfile = typeof metadataBag?.compatibilityProfile === 'string'
|
|
141
|
+
? String(metadataBag.compatibilityProfile)
|
|
142
|
+
: undefined;
|
|
143
|
+
const compatProfile = hasTargetMetadata ? targetCompatProfile : metadataCompatProfile;
|
|
144
|
+
if (compatProfile && compatProfile.trim()) {
|
|
145
|
+
adapterContext.compatibilityProfile = compatProfile.trim();
|
|
146
|
+
}
|
|
147
|
+
const serverToolsEnabled = options.serverToolsEnabled !== false;
|
|
148
|
+
adapterContext.serverToolsEnabled = serverToolsEnabled;
|
|
149
|
+
if (!serverToolsEnabled) {
|
|
150
|
+
adapterContext.serverToolsDisabled = true;
|
|
151
|
+
}
|
|
152
|
+
const stageRecorder = await bridgeCreateSnapshotRecorder(adapterContext, typeof adapterContext.entryEndpoint === 'string'
|
|
153
|
+
? adapterContext.entryEndpoint
|
|
154
|
+
: options.entryEndpoint || entry);
|
|
155
|
+
const providerInvoker = async (invokeOptions) => {
|
|
156
|
+
if (invokeOptions.routeHint) {
|
|
157
|
+
const carrier = invokeOptions.payload;
|
|
158
|
+
const existingMeta = carrier.metadata && typeof carrier.metadata === 'object'
|
|
159
|
+
? carrier.metadata
|
|
160
|
+
: {};
|
|
161
|
+
carrier.metadata = {
|
|
162
|
+
...existingMeta,
|
|
163
|
+
routeHint: existingMeta.routeHint ?? invokeOptions.routeHint
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
const runtimeKey = deps.runtimeManager.resolveRuntimeKey(invokeOptions.providerKey);
|
|
167
|
+
if (!runtimeKey) {
|
|
168
|
+
throw new Error(`Runtime for provider ${invokeOptions.providerKey} not initialized`);
|
|
169
|
+
}
|
|
170
|
+
const handle = deps.runtimeManager.getHandleByRuntimeKey(runtimeKey);
|
|
171
|
+
if (!handle) {
|
|
172
|
+
throw new Error(`Provider runtime ${runtimeKey} not found`);
|
|
173
|
+
}
|
|
174
|
+
const providerResponse = await handle.instance.processIncoming(invokeOptions.payload);
|
|
175
|
+
const normalized = normalizeProviderResponse(providerResponse);
|
|
176
|
+
const bodyPayload = normalized.body && typeof normalized.body === 'object'
|
|
177
|
+
? normalized.body
|
|
178
|
+
: normalized;
|
|
179
|
+
return { providerResponse: bodyPayload };
|
|
180
|
+
};
|
|
181
|
+
const reenterPipeline = async (reenterOpts) => {
|
|
182
|
+
const nestedEntry = reenterOpts.entryEndpoint || options.entryEndpoint || entry;
|
|
183
|
+
const nestedExtra = asRecord(reenterOpts.metadata) ?? {};
|
|
184
|
+
const nestedMetadata = {
|
|
185
|
+
...(metadataBag ?? {}),
|
|
186
|
+
...nestedExtra,
|
|
187
|
+
entryEndpoint: nestedEntry,
|
|
188
|
+
direction: 'request',
|
|
189
|
+
stage: 'inbound'
|
|
190
|
+
};
|
|
191
|
+
try {
|
|
192
|
+
const baseRt = asRecord(metadataBag?.__rt) ?? {};
|
|
193
|
+
const extraRt = asRecord(nestedExtra?.__rt) ?? {};
|
|
194
|
+
if (Object.keys(baseRt).length || Object.keys(extraRt).length) {
|
|
195
|
+
nestedMetadata.__rt = { ...baseRt, ...extraRt };
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
catch {
|
|
199
|
+
// best-effort
|
|
200
|
+
}
|
|
201
|
+
if (asRecord(nestedMetadata.__rt)?.serverToolFollowup === true) {
|
|
202
|
+
const preservedClientHeaders = extractFollowupSessionHeaders(nestedMetadata.clientHeaders);
|
|
203
|
+
if (preservedClientHeaders) {
|
|
204
|
+
nestedMetadata.clientHeaders = preservedClientHeaders;
|
|
205
|
+
if (typeof nestedMetadata.sessionId !== 'string' || !nestedMetadata.sessionId.trim()) {
|
|
206
|
+
const sessionId = extractPreservedSessionToken(preservedClientHeaders, 'session');
|
|
207
|
+
if (sessionId) {
|
|
208
|
+
nestedMetadata.sessionId = sessionId;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
if (typeof nestedMetadata.conversationId !== 'string' || !nestedMetadata.conversationId.trim()) {
|
|
212
|
+
const conversationId = extractPreservedSessionToken(preservedClientHeaders, 'conversation');
|
|
213
|
+
if (conversationId) {
|
|
214
|
+
nestedMetadata.conversationId = conversationId;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
delete nestedMetadata.clientHeaders;
|
|
220
|
+
}
|
|
221
|
+
delete nestedMetadata.clientRequestId;
|
|
222
|
+
}
|
|
223
|
+
bindClockConversationSession(nestedMetadata);
|
|
224
|
+
const nestedInput = {
|
|
225
|
+
entryEndpoint: nestedEntry,
|
|
226
|
+
method: 'POST',
|
|
227
|
+
requestId: reenterOpts.requestId,
|
|
228
|
+
headers: {},
|
|
229
|
+
query: {},
|
|
230
|
+
body: reenterOpts.body,
|
|
231
|
+
metadata: nestedMetadata
|
|
232
|
+
};
|
|
233
|
+
try {
|
|
234
|
+
const requestBody = reenterOpts.body;
|
|
235
|
+
const messages = Array.isArray(requestBody.messages) ? requestBody.messages : [];
|
|
236
|
+
const lastUser = [...messages]
|
|
237
|
+
.reverse()
|
|
238
|
+
.find((entry) => entry && typeof entry === 'object' && entry.role === 'user');
|
|
239
|
+
const text = typeof lastUser?.content === 'string' ? String(lastUser.content) : '';
|
|
240
|
+
if (text.includes('<**clock:{') && text.includes('}**>')) {
|
|
241
|
+
await injectClockClientPrompt({
|
|
242
|
+
tmuxSessionId: typeof nestedMetadata.tmuxSessionId === 'string' ? nestedMetadata.tmuxSessionId : undefined,
|
|
243
|
+
sessionId: typeof nestedMetadata.sessionId === 'string' ? nestedMetadata.sessionId : undefined,
|
|
244
|
+
workdir: typeof nestedMetadata.workdir === 'string' ? nestedMetadata.workdir : undefined,
|
|
245
|
+
text,
|
|
246
|
+
requestId: reenterOpts.requestId,
|
|
247
|
+
source: 'servertool.reenter'
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
catch {
|
|
252
|
+
// best-effort only
|
|
253
|
+
}
|
|
254
|
+
const nestedResult = await deps.executeNested(nestedInput);
|
|
255
|
+
const nestedBody = nestedResult.body && typeof nestedResult.body === 'object'
|
|
256
|
+
? nestedResult.body
|
|
257
|
+
: undefined;
|
|
258
|
+
return { body: nestedBody };
|
|
259
|
+
};
|
|
260
|
+
const converted = await bridgeConvertProviderResponse({
|
|
261
|
+
providerProtocol: options.providerProtocol,
|
|
262
|
+
providerResponse: body,
|
|
263
|
+
context: adapterContext,
|
|
264
|
+
entryEndpoint: options.entryEndpoint || entry,
|
|
265
|
+
wantsStream: options.wantsStream,
|
|
266
|
+
requestSemantics: options.requestSemantics,
|
|
267
|
+
providerInvoker: serverToolsEnabled ? providerInvoker : undefined,
|
|
268
|
+
stageRecorder,
|
|
269
|
+
reenterPipeline: serverToolsEnabled ? reenterPipeline : undefined
|
|
270
|
+
});
|
|
271
|
+
if (converted.__sse_responses) {
|
|
272
|
+
return {
|
|
273
|
+
...options.response,
|
|
274
|
+
body: { __sse_responses: converted.__sse_responses }
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
return {
|
|
278
|
+
...options.response,
|
|
279
|
+
body: converted.body ?? body
|
|
280
|
+
};
|
|
281
|
+
}
|
|
282
|
+
catch (error) {
|
|
283
|
+
const err = error;
|
|
284
|
+
const message = err instanceof Error ? err.message : String(err ?? 'Unknown error');
|
|
285
|
+
const errRecord = err;
|
|
286
|
+
const errCode = typeof errRecord.code === 'string' ? errRecord.code : undefined;
|
|
287
|
+
const upstreamCode = typeof errRecord.upstreamCode === 'string' ? errRecord.upstreamCode : undefined;
|
|
288
|
+
const errName = typeof errRecord.name === 'string' ? errRecord.name : undefined;
|
|
289
|
+
const detailRecord = asRecord(errRecord.details);
|
|
290
|
+
const detailUpstreamCode = typeof detailRecord?.upstreamCode === 'string'
|
|
291
|
+
? String(detailRecord.upstreamCode)
|
|
292
|
+
: undefined;
|
|
293
|
+
const detailReason = typeof detailRecord?.reason === 'string'
|
|
294
|
+
? String(detailRecord.reason)
|
|
295
|
+
: undefined;
|
|
296
|
+
const isSseDecodeError = errCode === 'SSE_DECODE_ERROR' ||
|
|
297
|
+
(errName === 'ProviderProtocolError' && message.toLowerCase().includes('sse'));
|
|
298
|
+
const isServerToolFollowupError = errCode === 'SERVERTOOL_FOLLOWUP_FAILED' ||
|
|
299
|
+
errCode === 'SERVERTOOL_EMPTY_FOLLOWUP' ||
|
|
300
|
+
(typeof errCode === 'string' && errCode.startsWith('SERVERTOOL_'));
|
|
301
|
+
const normalizedUpstreamCode = (upstreamCode || detailUpstreamCode || '').trim().toLowerCase();
|
|
302
|
+
const normalizedMessage = message.toLowerCase();
|
|
303
|
+
const isContextLengthExceeded = normalizedUpstreamCode.includes('context_length_exceeded') ||
|
|
304
|
+
normalizedMessage.includes('context_length_exceeded') ||
|
|
305
|
+
normalizedMessage.includes('达到对话长度上限') ||
|
|
306
|
+
normalizedMessage.includes('对话长度上限') ||
|
|
307
|
+
(detailReason || '').toLowerCase() === 'context_length_exceeded';
|
|
308
|
+
if (isSseDecodeError || isServerToolFollowupError) {
|
|
309
|
+
if (isSseDecodeError && isContextLengthExceeded) {
|
|
310
|
+
errRecord.status = 400;
|
|
311
|
+
errRecord.statusCode = 400;
|
|
312
|
+
errRecord.retryable = false;
|
|
313
|
+
errRecord.code = 'CONTEXT_LENGTH_EXCEEDED';
|
|
314
|
+
if (typeof errRecord.upstreamCode !== 'string' || !String(errRecord.upstreamCode).trim()) {
|
|
315
|
+
errRecord.upstreamCode = upstreamCode || detailUpstreamCode || 'context_length_exceeded';
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
else if (isSseDecodeError && isRateLimitLikeError(message, errCode, upstreamCode || detailUpstreamCode)) {
|
|
319
|
+
errRecord.status = 429;
|
|
320
|
+
errRecord.statusCode = 429;
|
|
321
|
+
errRecord.retryable = true;
|
|
322
|
+
if (typeof errRecord.code !== 'string' || !String(errRecord.code).trim()) {
|
|
323
|
+
errRecord.code = 'HTTP_429';
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
if (isVerboseErrorLoggingEnabled()) {
|
|
327
|
+
console.error('[RequestExecutor] Fatal conversion error, bubbling as HTTP error', error);
|
|
328
|
+
}
|
|
329
|
+
throw error;
|
|
330
|
+
}
|
|
331
|
+
if (isVerboseErrorLoggingEnabled()) {
|
|
332
|
+
console.error('[RequestExecutor] Failed to convert provider response via llmswitch-core', error);
|
|
333
|
+
}
|
|
334
|
+
return options.response;
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
//# sourceMappingURL=provider-response-converter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-response-converter.js","sourceRoot":"","sources":["../../../../../src/server/runtime/http-server/executor/provider-response-converter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { PipelineExecutionResult } from '../../../handlers/types.js';
|
|
2
|
+
export declare function extractResponseStatus(response: unknown): number | undefined;
|
|
3
|
+
export declare function normalizeProviderResponse(response: unknown): PipelineExecutionResult;
|
|
4
|
+
export declare function extractClientModelId(metadata: Record<string, unknown>, originalRequest?: Record<string, unknown>): string | undefined;
|
|
5
|
+
export declare function cloneRequestPayload(payload: unknown): Record<string, unknown> | undefined;
|
|
6
|
+
export declare function extractProviderModel(payload?: Record<string, unknown>): string | undefined;
|
|
7
|
+
export declare function buildProviderLabel(providerKey?: string, model?: string): string | undefined;
|
|
8
|
+
export declare function resolveRequestSemantics(processed?: Record<string, unknown>, standardized?: Record<string, unknown>): Record<string, unknown> | undefined;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
export function extractResponseStatus(response) {
|
|
2
|
+
if (!response || typeof response !== 'object') {
|
|
3
|
+
return undefined;
|
|
4
|
+
}
|
|
5
|
+
const candidate = response.status;
|
|
6
|
+
return typeof candidate === 'number' ? candidate : undefined;
|
|
7
|
+
}
|
|
8
|
+
export function normalizeProviderResponse(response) {
|
|
9
|
+
const status = extractResponseStatus(response);
|
|
10
|
+
const headers = normalizeProviderResponseHeaders(response && typeof response === 'object' ? response.headers : undefined);
|
|
11
|
+
const body = response && typeof response === 'object' && 'data' in response
|
|
12
|
+
? response.data
|
|
13
|
+
: response;
|
|
14
|
+
return { status, headers, body };
|
|
15
|
+
}
|
|
16
|
+
function normalizeProviderResponseHeaders(headers) {
|
|
17
|
+
if (!headers || typeof headers !== 'object') {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
const normalized = {};
|
|
21
|
+
for (const [key, value] of Object.entries(headers)) {
|
|
22
|
+
if (typeof value === 'string') {
|
|
23
|
+
normalized[key.toLowerCase()] = value;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return Object.keys(normalized).length ? normalized : undefined;
|
|
27
|
+
}
|
|
28
|
+
export function extractClientModelId(metadata, originalRequest) {
|
|
29
|
+
const candidates = [
|
|
30
|
+
metadata.clientModelId,
|
|
31
|
+
metadata.originalModelId,
|
|
32
|
+
(metadata.target && typeof metadata.target === 'object'
|
|
33
|
+
? metadata.target.clientModelId
|
|
34
|
+
: undefined),
|
|
35
|
+
originalRequest && typeof originalRequest === 'object'
|
|
36
|
+
? originalRequest.model
|
|
37
|
+
: undefined,
|
|
38
|
+
originalRequest && typeof originalRequest === 'object'
|
|
39
|
+
? originalRequest.originalModelId
|
|
40
|
+
: undefined
|
|
41
|
+
];
|
|
42
|
+
for (const candidate of candidates) {
|
|
43
|
+
if (typeof candidate === 'string' && candidate.trim()) {
|
|
44
|
+
return candidate.trim();
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
export function cloneRequestPayload(payload) {
|
|
50
|
+
if (!payload || typeof payload !== 'object') {
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
return JSON.parse(JSON.stringify(payload));
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
export function extractProviderModel(payload) {
|
|
61
|
+
if (!payload) {
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
const source = payload.data && typeof payload.data === 'object'
|
|
65
|
+
? payload.data
|
|
66
|
+
: payload;
|
|
67
|
+
const raw = source.model;
|
|
68
|
+
if (typeof raw === 'string' && raw.trim()) {
|
|
69
|
+
return raw.trim();
|
|
70
|
+
}
|
|
71
|
+
return undefined;
|
|
72
|
+
}
|
|
73
|
+
export function buildProviderLabel(providerKey, model) {
|
|
74
|
+
const key = typeof providerKey === 'string' && providerKey.trim() ? providerKey.trim() : undefined;
|
|
75
|
+
const modelId = typeof model === 'string' && model.trim() ? model.trim() : undefined;
|
|
76
|
+
if (!key && !modelId) {
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
if (key && modelId) {
|
|
80
|
+
return `${key}.${modelId}`;
|
|
81
|
+
}
|
|
82
|
+
return key || modelId;
|
|
83
|
+
}
|
|
84
|
+
export function resolveRequestSemantics(processed, standardized) {
|
|
85
|
+
if (processed && typeof processed.semantics === 'object' && processed.semantics) {
|
|
86
|
+
return processed.semantics;
|
|
87
|
+
}
|
|
88
|
+
if (standardized && typeof standardized.semantics === 'object' && standardized.semantics) {
|
|
89
|
+
return standardized.semantics;
|
|
90
|
+
}
|
|
91
|
+
return undefined;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=provider-response-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-response-utils.js","sourceRoot":"","sources":["../../../../../src/server/runtime/http-server/executor/provider-response-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ProviderHandle } from '../types.js';
|
|
2
|
+
import type { ModuleDependencies } from '../../../../modules/pipeline/interfaces/pipeline-interfaces.js';
|
|
3
|
+
type RuntimeManager = {
|
|
4
|
+
resolveRuntimeKey(providerKey?: string, fallback?: string): string | undefined;
|
|
5
|
+
getHandleByRuntimeKey(runtimeKey?: string): ProviderHandle | undefined;
|
|
6
|
+
};
|
|
7
|
+
type RuntimeResolveTarget = {
|
|
8
|
+
providerKey: string;
|
|
9
|
+
outboundProfile?: string;
|
|
10
|
+
providerType?: string;
|
|
11
|
+
};
|
|
12
|
+
export declare function resolveProviderRuntimeOrThrow(options: {
|
|
13
|
+
requestId: string;
|
|
14
|
+
target: RuntimeResolveTarget;
|
|
15
|
+
routeName?: string;
|
|
16
|
+
runtimeKeyHint?: string;
|
|
17
|
+
runtimeManager: RuntimeManager;
|
|
18
|
+
dependencies: ModuleDependencies;
|
|
19
|
+
}): Promise<{
|
|
20
|
+
runtimeKey: string;
|
|
21
|
+
handle: ProviderHandle;
|
|
22
|
+
}>;
|
|
23
|
+
export {};
|