@jsonstudio/rcc 0.89.333 → 0.89.548
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build-info.js +3 -3
- package/dist/build-info.js.map +1 -1
- package/dist/cli.js +110 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/token-daemon.d.ts +2 -0
- package/dist/commands/token-daemon.js +183 -0
- package/dist/commands/token-daemon.js.map +1 -0
- package/dist/index.js +20 -3
- package/dist/index.js.map +1 -1
- package/dist/modules/llmswitch/bridge.d.ts +1 -1
- package/dist/modules/llmswitch/bridge.js +3 -2
- package/dist/modules/llmswitch/bridge.js.map +1 -1
- package/dist/modules/pipeline/utils/colored-logger.js +3 -1
- package/dist/modules/pipeline/utils/colored-logger.js.map +1 -1
- package/dist/providers/auth/gemini-cli-userinfo-helper.js +12 -2
- package/dist/providers/auth/gemini-cli-userinfo-helper.js.map +1 -1
- package/dist/providers/auth/oauth-lifecycle.js +337 -25
- package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
- package/dist/providers/core/config/oauth-flows.d.ts +23 -0
- package/dist/providers/core/config/oauth-flows.js +92 -5
- package/dist/providers/core/config/oauth-flows.js.map +1 -1
- package/dist/providers/core/config/provider-oauth-configs.js +9 -3
- package/dist/providers/core/config/provider-oauth-configs.js.map +1 -1
- package/dist/providers/core/config/service-profiles.js +18 -10
- package/dist/providers/core/config/service-profiles.js.map +1 -1
- package/dist/providers/core/runtime/base-provider.d.ts +2 -0
- package/dist/providers/core/runtime/base-provider.js +35 -1
- package/dist/providers/core/runtime/base-provider.js.map +1 -1
- package/dist/providers/core/runtime/gemini-cli-http-provider.js +87 -20
- package/dist/providers/core/runtime/gemini-cli-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/http-request-executor.d.ts +1 -0
- package/dist/providers/core/runtime/http-request-executor.js +75 -1
- package/dist/providers/core/runtime/http-request-executor.js.map +1 -1
- package/dist/providers/core/runtime/http-transport-provider.d.ts +2 -0
- package/dist/providers/core/runtime/http-transport-provider.js +60 -2
- package/dist/providers/core/runtime/http-transport-provider.js.map +1 -1
- package/dist/providers/core/runtime/iflow-http-provider.d.ts +4 -0
- package/dist/providers/core/runtime/iflow-http-provider.js +28 -0
- package/dist/providers/core/runtime/iflow-http-provider.js.map +1 -1
- package/dist/providers/core/runtime/rate-limit-manager.d.ts +30 -0
- package/dist/providers/core/runtime/rate-limit-manager.js +136 -0
- package/dist/providers/core/runtime/rate-limit-manager.js.map +1 -0
- package/dist/providers/core/runtime/responses-provider.js +8 -3
- package/dist/providers/core/runtime/responses-provider.js.map +1 -1
- package/dist/providers/core/runtime/vision-debug-utils.d.ts +13 -0
- package/dist/providers/core/runtime/vision-debug-utils.js +114 -0
- package/dist/providers/core/runtime/vision-debug-utils.js.map +1 -0
- package/dist/providers/core/strategies/oauth-auth-code-flow.js +75 -26
- package/dist/providers/core/strategies/oauth-auth-code-flow.js.map +1 -1
- package/dist/providers/core/utils/http-client.js +2 -1
- package/dist/providers/core/utils/http-client.js.map +1 -1
- package/dist/providers/core/utils/provider-error-reporter.js +31 -5
- package/dist/providers/core/utils/provider-error-reporter.js.map +1 -1
- package/dist/providers/core/utils/provider-type-utils.js +1 -1
- package/dist/providers/core/utils/provider-type-utils.js.map +1 -1
- package/dist/providers/core/utils/snapshot-writer.d.ts +1 -1
- package/dist/providers/core/utils/snapshot-writer.js.map +1 -1
- package/dist/server/handlers/sse-dispatcher.js +22 -2
- package/dist/server/handlers/sse-dispatcher.js.map +1 -1
- package/dist/server/runtime/http-server/index.d.ts +9 -0
- package/dist/server/runtime/http-server/index.js +512 -144
- package/dist/server/runtime/http-server/index.js.map +1 -1
- package/dist/server/runtime/http-server/provider-utils.js +1 -1
- package/dist/server/runtime/http-server/provider-utils.js.map +1 -1
- package/dist/server/runtime/http-server/request-executor.d.ts +10 -0
- package/dist/server/runtime/http-server/request-executor.js +553 -159
- package/dist/server/runtime/http-server/request-executor.js.map +1 -1
- package/dist/server/runtime/http-server/routes.d.ts +5 -0
- package/dist/server/runtime/http-server/routes.js +29 -0
- package/dist/server/runtime/http-server/routes.js.map +1 -1
- package/dist/server/runtime/http-server/runtime-manager.js +33 -0
- package/dist/server/runtime/http-server/runtime-manager.js.map +1 -1
- package/dist/server/utils/utf8-chunk-buffer.d.ts +43 -0
- package/dist/server/utils/utf8-chunk-buffer.js +132 -0
- package/dist/server/utils/utf8-chunk-buffer.js.map +1 -0
- package/dist/token-daemon/history-store.d.ts +75 -0
- package/dist/token-daemon/history-store.js +207 -0
- package/dist/token-daemon/history-store.js.map +1 -0
- package/dist/token-daemon/index.d.ts +7 -0
- package/dist/token-daemon/index.js +336 -0
- package/dist/token-daemon/index.js.map +1 -0
- package/dist/token-daemon/server-utils.d.ts +33 -0
- package/dist/token-daemon/server-utils.js +155 -0
- package/dist/token-daemon/server-utils.js.map +1 -0
- package/dist/token-daemon/token-daemon.d.ts +23 -0
- package/dist/token-daemon/token-daemon.js +249 -0
- package/dist/token-daemon/token-daemon.js.map +1 -0
- package/dist/token-daemon/token-types.d.ts +44 -0
- package/dist/token-daemon/token-types.js +18 -0
- package/dist/token-daemon/token-types.js.map +1 -0
- package/dist/token-daemon/token-utils.d.ts +17 -0
- package/dist/token-daemon/token-utils.js +153 -0
- package/dist/token-daemon/token-utils.js.map +1 -0
- package/dist/token-portal/local-token-portal.d.ts +1 -0
- package/dist/token-portal/local-token-portal.js +89 -0
- package/dist/token-portal/local-token-portal.js.map +1 -0
- package/dist/token-portal/render.d.ts +10 -0
- package/dist/token-portal/render.js +56 -0
- package/dist/token-portal/render.js.map +1 -0
- package/dist/tools/semantic-replay.js +7 -6
- package/dist/tools/semantic-replay.js.map +1 -1
- package/dist/utils/error-handler-registry.d.ts +36 -0
- package/dist/utils/error-handler-registry.js +93 -7
- package/dist/utils/error-handler-registry.js.map +1 -1
- package/node_modules/@jsonstudio/llms/README.md +2 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/codecs/gemini-openai-codec.js +137 -5
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/gemini-web-search.d.ts +17 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/gemini-web-search.js +68 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-image-content.d.ts +2 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-image-content.js +83 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-vision-prompt.d.ts +11 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-vision-prompt.js +177 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-web-search.d.ts +2 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/glm-web-search.js +63 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/actions/universal-shape-filter.js +11 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-gemini.json +17 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-glm.json +190 -181
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-iflow.json +195 -195
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-lmstudio.json +43 -43
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/chat-qwen.json +20 -20
- package/node_modules/@jsonstudio/llms/dist/conversion/compat/profiles/responses-c4m.json +42 -42
- package/node_modules/@jsonstudio/llms/dist/conversion/config/sample-config.json +1 -1
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/compat/compat-pipeline-executor.js +24 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/compat/compat-types.d.ts +8 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/hub-pipeline.js +39 -4
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/pipeline/target-utils.js +6 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/process/chat-process.js +213 -1
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/response/provider-response.d.ts +34 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/response/provider-response.js +84 -24
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/response/server-side-tools.d.ts +26 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/response/server-side-tools.js +383 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/semantic-mappers/gemini-mapper.js +241 -14
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/semantic-mappers/responses-mapper.js +17 -1
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/standardized-bridge.js +14 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/hub/types/standardized.d.ts +1 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/responses/responses-openai-bridge.js +82 -3
- package/node_modules/@jsonstudio/llms/dist/conversion/shared/anthropic-message-utils.js +92 -3
- package/node_modules/@jsonstudio/llms/dist/conversion/shared/bridge-message-utils.js +137 -10
- package/node_modules/@jsonstudio/llms/dist/conversion/shared/responses-output-builder.js +43 -2
- package/node_modules/@jsonstudio/llms/dist/conversion/shared/snapshot-utils.js +17 -47
- package/node_modules/@jsonstudio/llms/dist/conversion/shared/tool-filter-pipeline.js +1 -0
- package/node_modules/@jsonstudio/llms/dist/conversion/shared/tool-mapping.js +25 -2
- package/node_modules/@jsonstudio/llms/dist/index.d.ts +1 -0
- package/node_modules/@jsonstudio/llms/dist/index.js +1 -0
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/bootstrap.js +308 -43
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/classifier.js +11 -17
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/context-advisor.d.ts +0 -2
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/context-advisor.js +0 -12
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/engine.d.ts +17 -2
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/engine.js +332 -95
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/features.js +1 -1
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/message-utils.js +36 -24
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/provider-registry.js +2 -1
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/token-counter.js +14 -3
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/types.d.ts +66 -2
- package/node_modules/@jsonstudio/llms/dist/router/virtual-router/types.js +2 -1
- package/node_modules/@jsonstudio/llms/dist/servertool/engine.d.ts +27 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/engine.js +60 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/flow-types.d.ts +40 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/flow-types.js +1 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/handlers/vision.d.ts +1 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/handlers/vision.js +194 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/handlers/web-search.d.ts +1 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/handlers/web-search.js +638 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/orchestration-types.d.ts +33 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/orchestration-types.js +1 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/registry.d.ts +18 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/registry.js +27 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/server-side-tools.d.ts +8 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/server-side-tools.js +208 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/types.d.ts +88 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/types.js +1 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/vision-tool.d.ts +2 -0
- package/node_modules/@jsonstudio/llms/dist/servertool/vision-tool.js +185 -0
- package/node_modules/@jsonstudio/llms/dist/sse/json-to-sse/event-generators/responses.js +15 -3
- package/node_modules/@jsonstudio/llms/dist/sse/sse-to-json/builders/response-builder.js +6 -3
- package/node_modules/@jsonstudio/llms/dist/sse/sse-to-json/gemini-sse-to-json-converter.js +27 -1
- package/node_modules/@jsonstudio/llms/dist/sse/types/gemini-types.d.ts +20 -1
- package/node_modules/@jsonstudio/llms/dist/sse/types/responses-types.js +1 -1
- package/node_modules/@jsonstudio/llms/dist/telemetry/stats-center.d.ts +73 -0
- package/node_modules/@jsonstudio/llms/dist/telemetry/stats-center.js +280 -0
- package/node_modules/@jsonstudio/llms/package.json +1 -1
- package/package.json +3 -2
- package/scripts/pack-mode.mjs +2 -1
- package/scripts/publish-rcc.mjs +20 -4
- package/scripts/test-iflow-web-search.mjs +141 -0
- package/scripts/test-iflow.mjs +93 -1
- package/scripts/tests/virtual-router-health.mjs +141 -6
- package/dist/tools/replay-request.d.ts +0 -0
- package/dist/tools/replay-request.js +0 -2
- package/dist/tools/replay-request.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-handler-registry.js","sourceRoot":"","sources":["../../src/utils/error-handler-registry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,yCAAyC;AACzC,kDAAkD;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AA4EpD;;;GAGG;AACH,MAAM,OAAO,oBAAoB;IACvB,MAAM,CAAC,QAAQ,CAAuB;IACtC,mBAAmB,CAAU;IAC7B,gBAAgB,GAAsC,IAAI,GAAG,EAAE,CAAC;IAChE,aAAa,GAAwC,IAAI,GAAG,EAAE,CAAC;IAC/D,WAAW,GAAY,KAAK,CAAC;IAErC;QACE,IAAI,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,EAAE,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;YACnC,oBAAoB,CAAC,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7D,CAAC;QACD,OAAO,oBAAoB,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU;QACrB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAO,IAAI,CAAC,mBAA2D,CAAC,UAAU,EAAE,CAAC;YACrF,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;YAC1C,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;YAE1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAExB,IAAI,CAAC,aAAa,CAAC,oCAAoC,EAAE;gBACvD,oBAAoB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI;gBAChD,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI;aACtC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5F,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,QAA8B;QACxD,kDAAkD;QAClD,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEnD,gFAAgF;QAChF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,0BAA0B,EAAE;gBAC7C,SAAS,EAAE,QAAQ,CAAC,IAAI;gBACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,yBAAyB,CAAC,MAA2B;QAC1D,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC;IACpC,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,YAAsC;QAChE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAE,CAAC;QAEjE,kEAAkE;QAClE,MAAM,oBAAoB,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC;QACjF,IAAI,oBAAoB,KAAK,CAAC,CAAC,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEpC,oDAAoD;QACpD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACrB,MAAM,SAAS,GAAI,CAAuC,CAAC,SAAS,IAAI,CAAC,CAAC;YAC1E,MAAM,SAAS,GAAI,CAAuC,CAAC,SAAS,IAAI,CAAC,CAAC;YAC1E,OAAO,SAAS,GAAG,SAAS,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,+CAA+C;QAC9C,YAAY,CAAC,OAA6C,CAAC,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC;QAE9F,gFAAgF;QAChF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,0BAA0B,EAAE;gBAC7C,SAAS,EAAE,YAAY,CAAC,SAAS;gBACjC,QAAQ,EAAE,YAAY,CAAC,QAAQ;gBAC/B,WAAW,EAAE,YAAY,CAAC,WAAW;aACtC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,WAAW,CACtB,KAAY,EACZ,OAAe,EACf,QAAgB,EAChB,iBAA2C;QAE3C,IAAI,CAAC;YACH,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAE9D,uBAAuB;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;YAC1D,MAAM,cAAc,GAA4B;gBAC9C,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC;gBAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,SAAS,EAAE,QAAQ,CAAC,IAAI;gBACxB,aAAa,EAAE,QAAQ,CAAC,QAAQ;gBAChC,gBAAgB,EAAE,QAAQ,CAAC,WAAW;gBACtC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC;YACF,MAAM,YAAY,GAAiB;gBACjC,KAAK,EAAE,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC;gBAC/C,MAAM,EAAE,GAAG,QAAQ,IAAI,OAAO,EAAE;gBAChC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,MAAM,EAAE,QAAQ;gBAChB,OAAO,EAAE,yBAAyB,CAAC,cAAc,EAAE,MAAM,CAAC;aAC3D,CAAC;YAEF,kDAAkD;YAClD,MAAO,IAAI,CAAC,mBAAwE,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAE/G,oCAAoC;YACpC,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAC;YAC9E,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAEO,kBAAkB,CACxB,iBAA2C;QAE3C,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,MAAM,GAAoF,EAAE,CAAC;QACnG,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;QAC9D,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE,CAAC;YAC3C,MAAM,CAAC,SAAS,GAAG,kBAAkB,CAAC;QACxC,CAAC;QACD,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,CAAC,QAAQ,GAAG,iBAAiB,CAAC;QACtC,CAAC;QACD,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE,CAAC;YAC7C,MAAM,CAAC,WAAW,GAAG,oBAAoB,CAAC;QAC5C,CAAC;QACD,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;QAChC,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,KAAY,EAAE,OAAe;QAC3D,qEAAqE;QACrE,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE7D,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEpD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,qCAAqC;YACrC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC3D,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACnF,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG;gBACT,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,QAAiB;gBAC3B,QAAQ,EAAE,SAAS;gBACnB,WAAW,EAAE,wBAAwB;gBACrC,QAAQ,EAAE,wCAAwC;aACnD,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,SAAiB,EAAE,OAAe;QAC1D,OAAO,GAAG,SAAS,CAAC,WAAW,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpF,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB,CAAC,SAAiB,EAAE,YAA0B;QAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEnD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO;QACT,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CACX,uCAAuC,SAAS,GAAG,EACnD,qBAAqB,CAAC,YAAY,CAAC,CACpC,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,4BAA4B;QACxC,MAAM,gBAAgB,GAA2B;YAC/C;gBACE,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,mDAAmD;gBAC5D,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,SAAS;gBACnB,WAAW,EAAE,8FAA8F;gBAC3G,QAAQ,EAAE,2EAA2E;aACtF;YACD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,2BAA2B;gBACpC,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,qCAAqC;aAChD;YACD;gBACE,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE,uBAAuB;gBAChC,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,UAAU;gBACpB,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,mCAAmC;aAC9C;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,yBAAyB;gBAClC,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,UAAU;gBACpB,WAAW,EAAE,+BAA+B;gBAC5C,QAAQ,EAAE,6CAA6C;aACxD;YACD;gBACE,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,4BAA4B;gBACrC,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,SAAS;gBACnB,WAAW,EAAE,uCAAuC;gBACpD,QAAQ,EAAE,oCAAoC;aAC/C;YACD;gBACE,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,iBAAiB;gBAC1B,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,aAAa;gBACvB,WAAW,EAAE,6BAA6B;gBAC1C,QAAQ,EAAE,sCAAsC;aACjD;YACD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,aAAa;gBACvB,WAAW,EAAE,kCAAkC;gBAC/C,QAAQ,EAAE,qCAAqC;aAChD;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,eAAe;gBACzB,WAAW,EAAE,kCAAkC;gBAC/C,QAAQ,EAAE,2CAA2C;aACtD;YACD;gBACE,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE,+BAA+B;gBACxC,QAAQ,EAAE,UAAU;gBACpB,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,uCAAuC;gBACpD,QAAQ,EAAE,gCAAgC;aAC3C;YACD;gBACE,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE,yBAAyB;gBAClC,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,aAAa;gBACvB,WAAW,EAAE,0CAA0C;gBACvD,QAAQ,EAAE,mDAAmD;aAC9D;SACF,CAAC;QAEF,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;YACxC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,4BAA4B;QACxC,oBAAoB;QACpB,IAAI,CAAC,oBAAoB,CAAC;YACxB,SAAS,EAAE,kBAAkB;YAC7B,OAAO,EAAE,KAAK,EAAE,OAAqB,EAAE,EAAE;gBACvC,OAAO,CAAC,IAAI,CAAC,uBAAuB,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,uBAAuB;SACrC,CAAC,CAAC;QAEH,wBAAwB;QACxB,IAAI,CAAC,oBAAoB,CAAC;YACxB,SAAS,EAAE,eAAe;YAC1B,OAAO,EAAE,KAAK,EAAE,OAAqB,EAAE,EAAE;gBACvC,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;gBACtE,6CAA6C;YAC/C,CAAC;YACD,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,oCAAoC;SAClD,CAAC,CAAC;QAEH,yBAAyB;QACzB,IAAI,CAAC,oBAAoB,CAAC;YACxB,SAAS,EAAE,gBAAgB;YAC3B,OAAO,EAAE,KAAK,EAAE,OAAqB,EAAE,EAAE;gBACvC,OAAO,CAAC,KAAK,CAAC,qBAAqB,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvE,+CAA+C;YACjD,CAAC;YACD,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,2BAA2B;SACzC,CAAC,CAAC;QAEH,yBAAyB;QACzB,IAAI,CAAC,oBAAoB,CAAC;YACxB,SAAS,EAAE,sBAAsB;YACjC,OAAO,EAAE,KAAK,EAAE,OAAqB,EAAE,EAAE;gBACvC,OAAO,CAAC,KAAK,CAAC,qBAAqB,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvE,6CAA6C;YAC/C,CAAC;YACD,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,+BAA+B;SAC7C,CAAC,CAAC;QAEH,8FAA8F;QAC9F,IAAI,CAAC,oBAAoB,CAAC;YACxB,SAAS,EAAE,kBAAkB;YAC7B,OAAO,EAAE,KAAK,EAAE,OAAqB,EAAE,EAAE;gBACvC,IAAI,CAAC;oBACH,MAAM,gBAAgB,GAAI,OAAO,CAAC,OAA+C,IAAI,EAAE,CAAC;oBACxF,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC3C,MAAM,QAAQ,GACZ,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM;wBAC1E,CAAC,CAAC,gBAAgB,CAAC,QAAQ;wBAC3B,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;oBAC5B,MAAM,SAAS,GAAa,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,oBAAoB,CAAC;wBAC9E,CAAC,CAAC,gBAAgB,CAAC,oBAAoB;wBACvC,CAAC,CAAC,EAAE,CAAC;oBACP,MAAM,QAAQ,GACZ,gBAAgB,CAAC,QAAQ,IAAI;wBAC3B,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;wBACjB,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;qBACjB,CAAC;oBAEJ,yCAAyC;oBACzC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,SAAS,CAAC,CAAC;oBAC3C,IAAI,UAAU,GAAkC,EAAE,CAAC;oBACnD,IAAI,CAAC;wBACH,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvF,CAAC;oBAAC,MAAM,CAAC;wBACP,UAAU,GAAG,EAAE,CAAC;oBAClB,CAAC;oBAED,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvD,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;4BACjG,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,mBAAmB;gCAC3C,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC;gCACjC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC;4BACnE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;4BACvB,OAAO;wBACT,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;4BACnB,OAAO;wBACT,CAAC;oBACH,CAAC;oBAED,oDAAoD;oBACpD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC9E,MAAM,QAAQ,GAAG,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC7F,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC,CAAC;wBACvF,OAAO;oBACT,CAAC;oBAED,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;wBAC7B,IAAI,CAAC;4BACH,wDAAwD;4BACxD,IAAI,CAAC;gCACH,MAAM,KAAK,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC;oCACrC,IAAI,EAAE,aAAa;oCACnB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;oCACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;oCAC/B,KAAK;oCACL,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS;iCACtD,CAAC,CAAC;4BACL,CAAC;4BAAC,MAAM,CAAC;gCACP,4BAA4B;4BAC9B,CAAC;4BACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,mBAAmB;gCAC3C,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC;gCACrC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC;4BACnE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;4BACvB,OAAO;wBACT,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAC;4BAC9F,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BACjH,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;4BACjC,MAAM,KAAK,GAAG,UAAU,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC;4BACpF,IAAI,CAAC,KAAK,EAAE,CAAC;gCACX,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gCACnB,OAAO;4BACT,CAAC;4BACD,2BAA2B;wBAC7B,CAAC;oBACH,CAAC;oBAED,YAAY;oBACZ,IAAI,CAAC;wBACH,MAAM,KAAK,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC;4BACrC,IAAI,EAAE,gBAAgB;4BACtB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;4BACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;4BAC/B,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS;4BACrD,OAAO,EAAE,OAAO,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;yBAC5E,CAAC,CAAC;oBACL,CAAC;oBAAC,MAAM,CAAC;wBACP,4BAA4B;oBAC9B,CAAC;oBACD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;gBACxE,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,8DAA8D;oBAC9D,IAAI,CAAC;wBACF,OAAO,CAAC,OAA+C,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;oBAClF,CAAC;oBAAC,MAAM,CAAC;wBACP,mCAAmC;oBACrC,CAAC;gBACH,CAAC;YACH,CAAC;YACD,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,yEAAyE;SACvF,CAAC,CAAC;IACL,CAAC;IAEO,aAAa,CAAC,WAAmB,EAAE,IAA6B;QACtE,IAAI,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IAED;;OAEG;IACI,qBAAqB;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,SAAiB;QAC5C,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IACjD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAO;QAClB,IAAI,CAAC;YACH,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAO,IAAI,CAAC,mBAAwD,CAAC,OAAO,EAAE,CAAC;YAC/E,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YAEzB,IAAI,CAAC,aAAa,CAAC,kCAAkC,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"error-handler-registry.js","sourceRoot":"","sources":["../../src/utils/error-handler-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
|
|
22
22
|
👉 **Hub Pipeline 是当前唯一入口。** 如果 Host 需要直接编排 Virtual Router,请参见 `docs/HUB_PIPELINE_USAGE.md`,了解如何通过 `bootstrapVirtualRouterConfig` + `HubPipeline` 完成初始化与热更新。
|
|
23
23
|
|
|
24
|
+
👉 **ServerTool 是所有 server-side 工具的唯一统一框架。** web_search / vision followup 等服务端工具均在 llmswitch-core 内部通过 ServerTool 执行,Host 只需提供 providerInvoker/reenterPipeline 即可。设计与接入方式详见 `docs/SERVERTOOL_DESIGN.md`。
|
|
25
|
+
|
|
24
26
|
## 总览
|
|
25
27
|
|
|
26
28
|
```
|
|
@@ -4,6 +4,7 @@ import { normalizeChatMessageContent } from '../shared/chat-output-normalizer.js
|
|
|
4
4
|
import { mapBridgeToolsToChat } from '../shared/tool-mapping.js';
|
|
5
5
|
import { prepareGeminiToolsForBridge } from '../shared/gemini-tool-utils.js';
|
|
6
6
|
import { registerResponsesReasoning, consumeResponsesReasoning, registerResponsesOutputTextMeta, consumeResponsesOutputTextMeta, consumeResponsesPayloadSnapshot, registerResponsesPayloadSnapshot, consumeResponsesPassthrough, registerResponsesPassthrough } from '../shared/responses-reasoning-registry.js';
|
|
7
|
+
const DUMMY_THOUGHT_SIGNATURE = 'skip_thought_signature_validator';
|
|
7
8
|
function isObject(v) {
|
|
8
9
|
return !!v && typeof v === 'object' && !Array.isArray(v);
|
|
9
10
|
}
|
|
@@ -54,6 +55,32 @@ function mapChatRoleToGemini(role) {
|
|
|
54
55
|
return 'tool';
|
|
55
56
|
return 'user';
|
|
56
57
|
}
|
|
58
|
+
function coerceThoughtSignature(value) {
|
|
59
|
+
if (typeof value === 'string' && value.trim().length) {
|
|
60
|
+
return value.trim();
|
|
61
|
+
}
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
function extractThoughtSignatureFromToolCall(tc) {
|
|
65
|
+
if (!tc || typeof tc !== 'object') {
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
const direct = coerceThoughtSignature(tc.thought_signature ?? tc.thoughtSignature);
|
|
69
|
+
if (direct) {
|
|
70
|
+
return direct;
|
|
71
|
+
}
|
|
72
|
+
const extraContent = tc.extra_content ?? tc.extraContent;
|
|
73
|
+
if (extraContent && typeof extraContent === 'object') {
|
|
74
|
+
const googleNode = extraContent.google ?? extraContent.Google;
|
|
75
|
+
if (googleNode && typeof googleNode === 'object') {
|
|
76
|
+
const googleSig = coerceThoughtSignature(googleNode.thought_signature ?? googleNode.thoughtSignature);
|
|
77
|
+
if (googleSig) {
|
|
78
|
+
return googleSig;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return undefined;
|
|
83
|
+
}
|
|
57
84
|
export function buildOpenAIChatFromGeminiRequest(payload) {
|
|
58
85
|
const messages = [];
|
|
59
86
|
// systemInstruction → Chat system 消息
|
|
@@ -156,16 +183,22 @@ export function buildOpenAIChatFromGeminiResponse(payload) {
|
|
|
156
183
|
const textParts = [];
|
|
157
184
|
const reasoningParts = [];
|
|
158
185
|
const toolCalls = [];
|
|
186
|
+
const toolResultTexts = [];
|
|
187
|
+
const toolOutputs = [];
|
|
188
|
+
// 为当前响应内生成稳定的工具调用 ID,避免下游 ServerTool 因缺少 id 而跳过。
|
|
189
|
+
let toolCallCounter = 0;
|
|
159
190
|
for (const part of parts) {
|
|
160
191
|
if (!part || typeof part !== 'object')
|
|
161
192
|
continue;
|
|
162
193
|
const pObj = part;
|
|
194
|
+
// 1. Text part
|
|
163
195
|
if (typeof pObj.text === 'string') {
|
|
164
196
|
const t = pObj.text;
|
|
165
197
|
if (t && t.trim().length)
|
|
166
198
|
textParts.push(t);
|
|
167
199
|
continue;
|
|
168
200
|
}
|
|
201
|
+
// 2. Content array (nested structure)
|
|
169
202
|
if (Array.isArray(pObj.content)) {
|
|
170
203
|
for (const inner of pObj.content) {
|
|
171
204
|
if (typeof inner === 'string') {
|
|
@@ -177,16 +210,26 @@ export function buildOpenAIChatFromGeminiResponse(payload) {
|
|
|
177
210
|
}
|
|
178
211
|
continue;
|
|
179
212
|
}
|
|
213
|
+
// 3. Reasoning part (channel mode)
|
|
180
214
|
if (typeof pObj.reasoning === 'string') {
|
|
181
215
|
reasoningParts.push(pObj.reasoning);
|
|
182
216
|
continue;
|
|
183
217
|
}
|
|
218
|
+
// 4. Thought part (thinking/extended thinking)
|
|
219
|
+
if (typeof pObj.thought === 'string') {
|
|
220
|
+
const thoughtText = pObj.thought.trim();
|
|
221
|
+
if (thoughtText.length) {
|
|
222
|
+
reasoningParts.push(thoughtText);
|
|
223
|
+
}
|
|
224
|
+
continue;
|
|
225
|
+
}
|
|
226
|
+
// 5. Function call (tool call)
|
|
184
227
|
if (pObj.functionCall && typeof pObj.functionCall === 'object') {
|
|
185
228
|
const fc = pObj.functionCall;
|
|
186
229
|
const name = typeof fc.name === 'string' ? String(fc.name) : undefined;
|
|
187
230
|
if (!name)
|
|
188
231
|
continue;
|
|
189
|
-
|
|
232
|
+
let id = typeof fc.id === 'string' && fc.id.trim().length ? String(fc.id).trim() : undefined;
|
|
190
233
|
const argsRaw = (fc.args ?? fc.arguments);
|
|
191
234
|
let argsStr;
|
|
192
235
|
if (typeof argsRaw === 'string') {
|
|
@@ -195,15 +238,91 @@ export function buildOpenAIChatFromGeminiResponse(payload) {
|
|
|
195
238
|
else {
|
|
196
239
|
argsStr = safeJson(argsRaw);
|
|
197
240
|
}
|
|
198
|
-
|
|
241
|
+
const thoughtSignature = coerceThoughtSignature(pObj.thoughtSignature);
|
|
242
|
+
// Gemini 某些响应中的 functionCall 不带 id,但下游 servertool 需要稳定的
|
|
243
|
+
// tool_call.id 才会识别为有效工具调用;此处在缺失时生成本响应内唯一的占位 ID。
|
|
244
|
+
if (!id) {
|
|
245
|
+
const suffix = toolCallCounter++;
|
|
246
|
+
id = `gemini_tool_${suffix}`;
|
|
247
|
+
}
|
|
248
|
+
const toolCall = {
|
|
199
249
|
id,
|
|
200
250
|
type: 'function',
|
|
201
251
|
function: { name, arguments: argsStr }
|
|
202
|
-
}
|
|
252
|
+
};
|
|
253
|
+
if (thoughtSignature) {
|
|
254
|
+
toolCall.thought_signature = thoughtSignature;
|
|
255
|
+
toolCall.extra_content = {
|
|
256
|
+
google: {
|
|
257
|
+
thought_signature: thoughtSignature
|
|
258
|
+
}
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
toolCalls.push(toolCall);
|
|
262
|
+
continue;
|
|
263
|
+
}
|
|
264
|
+
// 6. Function response (tool result)
|
|
265
|
+
if (pObj.functionResponse && typeof pObj.functionResponse === 'object') {
|
|
266
|
+
const fr = pObj.functionResponse;
|
|
267
|
+
const callId = typeof fr.id === 'string' && fr.id.trim().length ? String(fr.id) : undefined;
|
|
268
|
+
const name = typeof fr.name === 'string' && fr.name.trim().length ? String(fr.name) : undefined;
|
|
269
|
+
const resp = fr.response;
|
|
270
|
+
let contentStr = '';
|
|
271
|
+
if (typeof resp === 'string') {
|
|
272
|
+
contentStr = resp;
|
|
273
|
+
}
|
|
274
|
+
else if (resp != null) {
|
|
275
|
+
try {
|
|
276
|
+
contentStr = JSON.stringify(resp);
|
|
277
|
+
}
|
|
278
|
+
catch {
|
|
279
|
+
contentStr = String(resp);
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
if (contentStr && contentStr.trim().length) {
|
|
283
|
+
toolResultTexts.push(contentStr);
|
|
284
|
+
if (callId || name) {
|
|
285
|
+
const entry = {
|
|
286
|
+
tool_call_id: callId ?? undefined,
|
|
287
|
+
id: callId ?? undefined,
|
|
288
|
+
content: contentStr
|
|
289
|
+
};
|
|
290
|
+
if (name) {
|
|
291
|
+
entry.name = name;
|
|
292
|
+
}
|
|
293
|
+
toolOutputs.push(entry);
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
continue;
|
|
297
|
+
}
|
|
298
|
+
// 7. Executable code (code_interpreter)
|
|
299
|
+
if (pObj.executableCode && typeof pObj.executableCode === 'object') {
|
|
300
|
+
const code = pObj.executableCode;
|
|
301
|
+
const language = typeof code.language === 'string' ? code.language : 'python';
|
|
302
|
+
const codeText = typeof code.code === 'string' ? code.code : '';
|
|
303
|
+
if (codeText.trim().length) {
|
|
304
|
+
// Append as text with code block formatting
|
|
305
|
+
textParts.push(`\`\`\`${language}\n${codeText}\n\`\`\``);
|
|
306
|
+
}
|
|
307
|
+
continue;
|
|
308
|
+
}
|
|
309
|
+
// 8. Code execution result
|
|
310
|
+
if (pObj.codeExecutionResult && typeof pObj.codeExecutionResult === 'object') {
|
|
311
|
+
const result = pObj.codeExecutionResult;
|
|
312
|
+
const outcome = typeof result.outcome === 'string' ? result.outcome : '';
|
|
313
|
+
const output = typeof result.output === 'string' ? result.output : '';
|
|
314
|
+
if (output.trim().length) {
|
|
315
|
+
textParts.push(`[Code Output${outcome ? ` (${outcome})` : ''}]:\n${output}`);
|
|
316
|
+
}
|
|
203
317
|
continue;
|
|
204
318
|
}
|
|
205
319
|
}
|
|
320
|
+
const hasToolCalls = toolCalls.length > 0;
|
|
206
321
|
const finish_reason = (() => {
|
|
322
|
+
// If the model is emitting tool calls, treat this turn as a tool_calls
|
|
323
|
+
// completion so downstream tool governance can continue the loop.
|
|
324
|
+
if (hasToolCalls)
|
|
325
|
+
return 'tool_calls';
|
|
207
326
|
const fr = String(primary?.finishReason || '').toUpperCase();
|
|
208
327
|
if (fr === 'MAX_TOKENS')
|
|
209
328
|
return 'length';
|
|
@@ -228,9 +347,14 @@ export function buildOpenAIChatFromGeminiResponse(payload) {
|
|
|
228
347
|
usage.total_tokens = totalTokens;
|
|
229
348
|
const combinedText = textParts.join('\n');
|
|
230
349
|
const normalized = combinedText.length ? normalizeChatMessageContent(combinedText) : { contentText: undefined, reasoningText: undefined };
|
|
350
|
+
const baseContent = normalized.contentText ?? combinedText ?? '';
|
|
351
|
+
const toolResultBlock = toolResultTexts.length ? toolResultTexts.join('\n') : '';
|
|
352
|
+
const finalContent = toolResultBlock && baseContent
|
|
353
|
+
? `${baseContent}\n${toolResultBlock}`
|
|
354
|
+
: baseContent || toolResultBlock;
|
|
231
355
|
const chatMsg = {
|
|
232
356
|
role,
|
|
233
|
-
content:
|
|
357
|
+
content: finalContent
|
|
234
358
|
};
|
|
235
359
|
if (typeof normalized.reasoningText === 'string' && normalized.reasoningText.trim().length) {
|
|
236
360
|
reasoningParts.push(normalized.reasoningText.trim());
|
|
@@ -277,6 +401,9 @@ export function buildOpenAIChatFromGeminiResponse(payload) {
|
|
|
277
401
|
if (Object.keys(usage).length > 0) {
|
|
278
402
|
chatResp.usage = usage;
|
|
279
403
|
}
|
|
404
|
+
if (toolOutputs.length > 0) {
|
|
405
|
+
chatResp.tool_outputs = toolOutputs;
|
|
406
|
+
}
|
|
280
407
|
const preservedReasoning = consumeResponsesReasoning(chatResp.id);
|
|
281
408
|
if (preservedReasoning && preservedReasoning.length) {
|
|
282
409
|
chatResp.__responses_reasoning = preservedReasoning;
|
|
@@ -398,7 +525,12 @@ export function buildGeminiFromOpenAIChat(chatResp) {
|
|
|
398
525
|
const id = typeof tc.id === 'string' ? String(tc.id) : undefined;
|
|
399
526
|
if (id)
|
|
400
527
|
functionCall.id = id;
|
|
401
|
-
|
|
528
|
+
const thoughtSignature = extractThoughtSignatureFromToolCall(tc) ?? DUMMY_THOUGHT_SIGNATURE;
|
|
529
|
+
const partEntry = { functionCall };
|
|
530
|
+
if (thoughtSignature) {
|
|
531
|
+
partEntry.thoughtSignature = thoughtSignature;
|
|
532
|
+
}
|
|
533
|
+
parts.push(partEntry);
|
|
402
534
|
}
|
|
403
535
|
const candidate = {
|
|
404
536
|
content: {
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { JsonObject } from '../../hub/types/json.js';
|
|
2
|
+
import type { AdapterContext } from '../../hub/types/chat-envelope.js';
|
|
3
|
+
/**
|
|
4
|
+
* Gemini web_search 请求适配(作用于 Gemini 请求 payload,而不是 ChatEnvelope):
|
|
5
|
+
*
|
|
6
|
+
* - 仅在 routeId 以 `web_search` 开头时生效(来自 AdapterContext.routeId);
|
|
7
|
+
* - 针对 Gemini 请求中的 `tools` 字段进行清洗:
|
|
8
|
+
* - 保留 name === 'web_search' 的 functionDeclarations(如果存在);
|
|
9
|
+
* - 丢弃其它 Codex 自身工具(exec_command / MCP 等),避免 Cloud Code 报
|
|
10
|
+
* “Multiple tools are supported only when they are all search tools.”;
|
|
11
|
+
* - 如果清洗后没有任何工具,则删除 `tools` 字段。
|
|
12
|
+
*
|
|
13
|
+
* 注意:
|
|
14
|
+
* - 这里处理的是 llmswitch-core 为 gemini-chat 构造的中间 payload(buildGeminiRequestFromChat 输出);
|
|
15
|
+
* - 对于 Gemini CLI 后续在传输层添加的 googleSearch 工具,本适配不负责构造或修改。
|
|
16
|
+
*/
|
|
17
|
+
export declare function applyGeminiWebSearchCompat(payload: JsonObject, adapterContext?: AdapterContext): JsonObject;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
2
|
+
/**
|
|
3
|
+
* Gemini web_search 请求适配(作用于 Gemini 请求 payload,而不是 ChatEnvelope):
|
|
4
|
+
*
|
|
5
|
+
* - 仅在 routeId 以 `web_search` 开头时生效(来自 AdapterContext.routeId);
|
|
6
|
+
* - 针对 Gemini 请求中的 `tools` 字段进行清洗:
|
|
7
|
+
* - 保留 name === 'web_search' 的 functionDeclarations(如果存在);
|
|
8
|
+
* - 丢弃其它 Codex 自身工具(exec_command / MCP 等),避免 Cloud Code 报
|
|
9
|
+
* “Multiple tools are supported only when they are all search tools.”;
|
|
10
|
+
* - 如果清洗后没有任何工具,则删除 `tools` 字段。
|
|
11
|
+
*
|
|
12
|
+
* 注意:
|
|
13
|
+
* - 这里处理的是 llmswitch-core 为 gemini-chat 构造的中间 payload(buildGeminiRequestFromChat 输出);
|
|
14
|
+
* - 对于 Gemini CLI 后续在传输层添加的 googleSearch 工具,本适配不负责构造或修改。
|
|
15
|
+
*/
|
|
16
|
+
export function applyGeminiWebSearchCompat(payload, adapterContext) {
|
|
17
|
+
const routeId = typeof adapterContext?.routeId === 'string' ? adapterContext.routeId : '';
|
|
18
|
+
if (!routeId || !routeId.toLowerCase().startsWith('web_search')) {
|
|
19
|
+
return payload;
|
|
20
|
+
}
|
|
21
|
+
const cloned = { ...payload };
|
|
22
|
+
// 对于 Gemini Chat 后端,请求根节点不支持自定义 `web_search` 字段,
|
|
23
|
+
// 统一在 compat 层移除,避免触发
|
|
24
|
+
// "Unknown name \"web_search\" at 'request': Cannot find field." 错误。
|
|
25
|
+
if (cloned.web_search !== undefined) {
|
|
26
|
+
delete cloned.web_search;
|
|
27
|
+
}
|
|
28
|
+
const toolsRaw = cloned.tools;
|
|
29
|
+
// 当 web_search 路由下完全没有 tools 时,为 Gemini 搜索模型注入最小 googleSearch 工具,
|
|
30
|
+
// 保持与 gcli2api 类似的“搜索模型自动启用 Search 工具”行为。
|
|
31
|
+
if (!Array.isArray(toolsRaw)) {
|
|
32
|
+
cloned.tools = [{ googleSearch: {} }];
|
|
33
|
+
return cloned;
|
|
34
|
+
}
|
|
35
|
+
const nextTools = [];
|
|
36
|
+
for (const entry of toolsRaw) {
|
|
37
|
+
if (!isRecord(entry))
|
|
38
|
+
continue;
|
|
39
|
+
// 1) 保留 name === 'web_search' 的 functionDeclarations(单函数声明)。
|
|
40
|
+
const decls = Array.isArray(entry.functionDeclarations)
|
|
41
|
+
? entry.functionDeclarations
|
|
42
|
+
: [];
|
|
43
|
+
const webSearchDecls = decls.filter((fn) => {
|
|
44
|
+
if (!isRecord(fn))
|
|
45
|
+
return false;
|
|
46
|
+
const name = typeof fn.name === 'string' ? fn.name.trim().toLowerCase() : '';
|
|
47
|
+
return name === 'web_search';
|
|
48
|
+
});
|
|
49
|
+
if (webSearchDecls.length) {
|
|
50
|
+
nextTools.push({
|
|
51
|
+
functionDeclarations: webSearchDecls
|
|
52
|
+
});
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
// 2) 若上游已经构造了 googleSearch 工具,则保留。
|
|
56
|
+
if (isRecord(entry.googleSearch)) {
|
|
57
|
+
nextTools.push({ googleSearch: entry.googleSearch });
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (nextTools.length > 0) {
|
|
61
|
+
cloned.tools = nextTools;
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
// 3) 清洗后没有任何工具时,再次注入一个最小 googleSearch 工具,确保搜索模型仍然启用 Search。
|
|
65
|
+
cloned.tools = [{ googleSearch: {} }];
|
|
66
|
+
}
|
|
67
|
+
return cloned;
|
|
68
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
2
|
+
function normalizeImagePart(part) {
|
|
3
|
+
const rawType = typeof part.type === 'string' ? part.type.toLowerCase() : '';
|
|
4
|
+
if (rawType !== 'image' && rawType !== 'image_url') {
|
|
5
|
+
return null;
|
|
6
|
+
}
|
|
7
|
+
// Try multiple locations for the URL, since different inbound
|
|
8
|
+
// protocols may populate different keys.
|
|
9
|
+
const imageUrlBlock = isRecord(part.image_url)
|
|
10
|
+
? part.image_url
|
|
11
|
+
: undefined;
|
|
12
|
+
let url;
|
|
13
|
+
if (imageUrlBlock && typeof imageUrlBlock.url === 'string') {
|
|
14
|
+
url = imageUrlBlock.url;
|
|
15
|
+
}
|
|
16
|
+
else if (typeof part.image_url === 'string') {
|
|
17
|
+
url = part.image_url;
|
|
18
|
+
}
|
|
19
|
+
else if (typeof part.url === 'string') {
|
|
20
|
+
url = part.url;
|
|
21
|
+
}
|
|
22
|
+
else if (typeof part.uri === 'string') {
|
|
23
|
+
url = part.uri;
|
|
24
|
+
}
|
|
25
|
+
else if (typeof part.data === 'string') {
|
|
26
|
+
// If caller passed a raw base64/data URI string, forward as-is.
|
|
27
|
+
url = part.data;
|
|
28
|
+
}
|
|
29
|
+
if (!url || !url.trim().length) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
const normalized = {
|
|
33
|
+
type: 'image_url',
|
|
34
|
+
image_url: {
|
|
35
|
+
url: url.trim()
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
// Preserve a best-effort "detail" field when present.
|
|
39
|
+
const detailValue = (imageUrlBlock && imageUrlBlock.detail) ?? part.detail;
|
|
40
|
+
if (typeof detailValue === 'string' && detailValue.trim().length) {
|
|
41
|
+
normalized.image_url.detail = detailValue.trim();
|
|
42
|
+
}
|
|
43
|
+
return normalized;
|
|
44
|
+
}
|
|
45
|
+
export function applyGlmImageContentTransform(payload) {
|
|
46
|
+
const root = structuredClone(payload);
|
|
47
|
+
const messagesValue = root.messages;
|
|
48
|
+
if (!Array.isArray(messagesValue)) {
|
|
49
|
+
return root;
|
|
50
|
+
}
|
|
51
|
+
const messages = [];
|
|
52
|
+
for (const msg of messagesValue) {
|
|
53
|
+
if (!isRecord(msg)) {
|
|
54
|
+
messages.push(msg);
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
const contentValue = msg.content;
|
|
58
|
+
if (!Array.isArray(contentValue)) {
|
|
59
|
+
messages.push(msg);
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
const newContent = [];
|
|
63
|
+
for (const part of contentValue) {
|
|
64
|
+
if (!isRecord(part)) {
|
|
65
|
+
newContent.push(part);
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
const normalizedImage = normalizeImagePart(part);
|
|
69
|
+
if (normalizedImage) {
|
|
70
|
+
newContent.push(normalizedImage);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
newContent.push(part);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
messages.push({
|
|
77
|
+
...msg,
|
|
78
|
+
content: newContent
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
root.messages = messages;
|
|
82
|
+
return root;
|
|
83
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { JsonObject } from '../../hub/types/json.js';
|
|
2
|
+
/**
|
|
3
|
+
* GLM 4.6V 专用视觉提示裁剪:
|
|
4
|
+
* - 仅在 model 为 glm-4.6v 且存在携带图片的 user 消息时生效;
|
|
5
|
+
* - 丢弃原有 system 与历史对话,只保留一条新的 system + 一条 user;
|
|
6
|
+
* - system:要求模型以结构化 JSON 描述截图内容、标记(圈/箭头等)及其大致 bbox;
|
|
7
|
+
* - user:保留原始用户文字(如果有)+ 单一 image_url 块。
|
|
8
|
+
*
|
|
9
|
+
* 其他模型(包括 glm-4.7、Gemini 等)不受影响。
|
|
10
|
+
*/
|
|
11
|
+
export declare function applyGlmVisionPromptTransform(payload: JsonObject): JsonObject;
|