@jsonstudio/rcc 0.90.352 → 0.90.367

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1071) hide show
  1. package/dist/build-info.js +2 -2
  2. package/dist/cli/commands/codex.js +37 -7
  3. package/dist/cli/commands/codex.js.map +1 -1
  4. package/dist/cli/commands/launcher/types.d.ts +1 -0
  5. package/dist/cli/commands/launcher-kernel.js +69 -90
  6. package/dist/cli/commands/launcher-kernel.js.map +1 -1
  7. package/dist/modules/llmswitch/bridge/module-loader.js +2 -2
  8. package/dist/modules/llmswitch/bridge/module-loader.js.map +1 -1
  9. package/dist/modules/llmswitch/bridge/quota-manager.js +1 -1
  10. package/dist/modules/llmswitch/bridge/quota-manager.js.map +1 -1
  11. package/dist/modules/llmswitch/bridge/runtime-integrations.d.ts +1 -1
  12. package/dist/modules/llmswitch/bridge/runtime-integrations.js.map +1 -1
  13. package/dist/modules/llmswitch/bridge.d.ts +5 -5
  14. package/dist/modules/llmswitch/bridge.js.map +1 -1
  15. package/dist/modules/llmswitch/core-loader.js +35 -24
  16. package/dist/modules/llmswitch/core-loader.js.map +1 -1
  17. package/dist/server/runtime/http-server/executor/provider-response-converter.js +133 -2
  18. package/dist/server/runtime/http-server/executor/provider-response-converter.js.map +1 -1
  19. package/dist/server/runtime/http-server/executor-response.js +62 -1
  20. package/dist/server/runtime/http-server/executor-response.js.map +1 -1
  21. package/dist/server/runtime/http-server/session-client-route-utils.js +38 -5
  22. package/dist/server/runtime/http-server/session-client-route-utils.js.map +1 -1
  23. package/package.json +7 -8
  24. package/scripts/analyze-thinking-keywords.mjs +1 -1
  25. package/scripts/ensure-llmswitch-mode.mjs +5 -63
  26. package/scripts/install-global.sh +0 -46
  27. package/scripts/install-release.sh +4 -38
  28. package/scripts/install-verify.mjs +6 -25
  29. package/scripts/pack-mode.mjs +16 -39
  30. package/scripts/pack-rcc.mjs +4 -63
  31. package/scripts/publish-rcc.mjs +4 -59
  32. package/scripts/snapshot-inspect.mjs +24 -5
  33. package/scripts/tests/blackbox-rcc-vs-routecodex-antigravity.mjs +2 -2
  34. package/scripts/vendor-core.mjs +30 -9
  35. package/vendor/llmswitch-core/README.md +271 -0
  36. package/vendor/llmswitch-core/dist/bridge/routecodex-adapter.d.ts +74 -0
  37. package/vendor/llmswitch-core/dist/bridge/routecodex-adapter.js +229 -0
  38. package/vendor/llmswitch-core/dist/config-unified/enhanced-path-resolver.d.ts +5 -0
  39. package/vendor/llmswitch-core/dist/config-unified/enhanced-path-resolver.js +46 -0
  40. package/vendor/llmswitch-core/dist/config-unified/unified-config.d.ts +26 -0
  41. package/vendor/llmswitch-core/dist/config-unified/unified-config.js +231 -0
  42. package/vendor/llmswitch-core/dist/conversion/args-mapping.d.ts +18 -0
  43. package/vendor/llmswitch-core/dist/conversion/args-mapping.js +8 -0
  44. package/vendor/llmswitch-core/dist/conversion/bridge-actions.d.ts +39 -0
  45. package/vendor/llmswitch-core/dist/conversion/bridge-actions.js +82 -0
  46. package/vendor/llmswitch-core/dist/conversion/bridge-id-utils.d.ts +9 -0
  47. package/vendor/llmswitch-core/dist/conversion/bridge-id-utils.js +13 -0
  48. package/vendor/llmswitch-core/dist/conversion/bridge-instructions.d.ts +1 -0
  49. package/vendor/llmswitch-core/dist/conversion/bridge-instructions.js +17 -0
  50. package/vendor/llmswitch-core/dist/conversion/bridge-message-utils.d.ts +23 -0
  51. package/vendor/llmswitch-core/dist/conversion/bridge-message-utils.js +45 -0
  52. package/vendor/llmswitch-core/dist/conversion/bridge-metadata.d.ts +2 -0
  53. package/vendor/llmswitch-core/dist/conversion/bridge-metadata.js +5 -0
  54. package/vendor/llmswitch-core/dist/conversion/bridge-policies.d.ts +18 -0
  55. package/vendor/llmswitch-core/dist/conversion/bridge-policies.js +11 -0
  56. package/vendor/llmswitch-core/dist/conversion/codec-registry.d.ts +10 -0
  57. package/vendor/llmswitch-core/dist/conversion/codec-registry.js +37 -0
  58. package/vendor/llmswitch-core/dist/conversion/codecs/anthropic-openai-codec.d.ts +22 -0
  59. package/vendor/llmswitch-core/dist/conversion/codecs/anthropic-openai-codec.js +52 -0
  60. package/vendor/llmswitch-core/dist/conversion/codecs/gemini-openai-codec.d.ts +17 -0
  61. package/vendor/llmswitch-core/dist/conversion/codecs/gemini-openai-codec.js +85 -0
  62. package/vendor/llmswitch-core/dist/conversion/codecs/openai-openai-codec.d.ts +12 -0
  63. package/vendor/llmswitch-core/dist/conversion/codecs/openai-openai-codec.js +54 -0
  64. package/vendor/llmswitch-core/dist/conversion/codecs/responses-openai-codec.d.ts +12 -0
  65. package/vendor/llmswitch-core/dist/conversion/codecs/responses-openai-codec.js +66 -0
  66. package/vendor/llmswitch-core/dist/conversion/compaction-detect.d.ts +2 -0
  67. package/vendor/llmswitch-core/dist/conversion/compaction-detect.js +4 -0
  68. package/vendor/llmswitch-core/dist/conversion/compat/actions/anthropic-claude-code-system-prompt.d.ts +4 -0
  69. package/vendor/llmswitch-core/dist/conversion/compat/actions/anthropic-claude-code-system-prompt.js +42 -0
  70. package/vendor/llmswitch-core/dist/conversion/compat/actions/anthropic-claude-code-user-id.d.ts +3 -0
  71. package/vendor/llmswitch-core/dist/conversion/compat/actions/anthropic-claude-code-user-id.js +30 -0
  72. package/vendor/llmswitch-core/dist/conversion/compat/actions/antigravity-thought-signature-cache.d.ts +3 -0
  73. package/vendor/llmswitch-core/dist/conversion/compat/actions/antigravity-thought-signature-cache.js +8 -0
  74. package/vendor/llmswitch-core/dist/conversion/compat/actions/antigravity-thought-signature-prepare.d.ts +3 -0
  75. package/vendor/llmswitch-core/dist/conversion/compat/actions/antigravity-thought-signature-prepare.js +26 -0
  76. package/vendor/llmswitch-core/dist/conversion/compat/actions/apply-patch-fixer.d.ts +1 -0
  77. package/vendor/llmswitch-core/dist/conversion/compat/actions/apply-patch-fixer.js +30 -0
  78. package/vendor/llmswitch-core/dist/conversion/compat/actions/auto-thinking.d.ts +6 -0
  79. package/vendor/llmswitch-core/dist/conversion/compat/actions/auto-thinking.js +26 -0
  80. package/vendor/llmswitch-core/dist/conversion/compat/actions/claude-thinking-tools.d.ts +2 -0
  81. package/vendor/llmswitch-core/dist/conversion/compat/actions/claude-thinking-tools.js +4 -0
  82. package/vendor/llmswitch-core/dist/conversion/compat/actions/deepseek-web-request.d.ts +3 -0
  83. package/vendor/llmswitch-core/dist/conversion/compat/actions/deepseek-web-request.js +62 -0
  84. package/vendor/llmswitch-core/dist/conversion/compat/actions/deepseek-web-response.d.ts +12 -0
  85. package/vendor/llmswitch-core/dist/conversion/compat/actions/deepseek-web-response.js +114 -0
  86. package/vendor/llmswitch-core/dist/conversion/compat/actions/field-mapping.d.ts +14 -0
  87. package/vendor/llmswitch-core/dist/conversion/compat/actions/field-mapping.js +155 -0
  88. package/vendor/llmswitch-core/dist/conversion/compat/actions/gemini-cli-request.d.ts +5 -0
  89. package/vendor/llmswitch-core/dist/conversion/compat/actions/gemini-cli-request.js +27 -0
  90. package/vendor/llmswitch-core/dist/conversion/compat/actions/gemini-web-search.d.ts +3 -0
  91. package/vendor/llmswitch-core/dist/conversion/compat/actions/gemini-web-search.js +24 -0
  92. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-history-image-trim.d.ts +2 -0
  93. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-history-image-trim.js +54 -0
  94. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-image-content.d.ts +2 -0
  95. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-image-content.js +54 -0
  96. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-native-compat.d.ts +6 -0
  97. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-native-compat.js +34 -0
  98. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-tool-extraction.d.ts +3 -0
  99. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-tool-extraction.js +35 -0
  100. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-vision-prompt.d.ts +11 -0
  101. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-vision-prompt.js +104 -0
  102. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-web-search.d.ts +2 -0
  103. package/vendor/llmswitch-core/dist/conversion/compat/actions/glm-web-search.js +30 -0
  104. package/vendor/llmswitch-core/dist/conversion/compat/actions/harvest-tool-calls-from-text.d.ts +15 -0
  105. package/vendor/llmswitch-core/dist/conversion/compat/actions/harvest-tool-calls-from-text.js +124 -0
  106. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-kimi-cli-defaults.d.ts +10 -0
  107. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-kimi-cli-defaults.js +31 -0
  108. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-kimi-history-media-placeholder.d.ts +7 -0
  109. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-kimi-history-media-placeholder.js +25 -0
  110. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-kimi-thinking-reasoning-fill.d.ts +12 -0
  111. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-kimi-thinking-reasoning-fill.js +46 -0
  112. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-native-compat.d.ts +6 -0
  113. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-native-compat.js +36 -0
  114. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-response-body-unwrap.d.ts +9 -0
  115. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-response-body-unwrap.js +25 -0
  116. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-tool-text-fallback.d.ts +5 -0
  117. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-tool-text-fallback.js +29 -0
  118. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-web-search.d.ts +18 -0
  119. package/vendor/llmswitch-core/dist/conversion/compat/actions/iflow-web-search.js +49 -0
  120. package/vendor/llmswitch-core/dist/conversion/compat/actions/index.d.ts +2 -0
  121. package/vendor/llmswitch-core/dist/conversion/compat/actions/index.js +2 -0
  122. package/vendor/llmswitch-core/dist/conversion/compat/actions/lmstudio-responses-fc-ids.d.ts +2 -0
  123. package/vendor/llmswitch-core/dist/conversion/compat/actions/lmstudio-responses-fc-ids.js +4 -0
  124. package/vendor/llmswitch-core/dist/conversion/compat/actions/lmstudio-responses-input-stringify.d.ts +14 -0
  125. package/vendor/llmswitch-core/dist/conversion/compat/actions/lmstudio-responses-input-stringify.js +125 -0
  126. package/vendor/llmswitch-core/dist/conversion/compat/actions/normalize-tool-call-ids.d.ts +2 -0
  127. package/vendor/llmswitch-core/dist/conversion/compat/actions/normalize-tool-call-ids.js +10 -0
  128. package/vendor/llmswitch-core/dist/conversion/compat/actions/qwen-transform.d.ts +4 -0
  129. package/vendor/llmswitch-core/dist/conversion/compat/actions/qwen-transform.js +40 -0
  130. package/vendor/llmswitch-core/dist/conversion/compat/actions/request-rules.d.ts +24 -0
  131. package/vendor/llmswitch-core/dist/conversion/compat/actions/request-rules.js +4 -0
  132. package/vendor/llmswitch-core/dist/conversion/compat/actions/response-blacklist.d.ts +10 -0
  133. package/vendor/llmswitch-core/dist/conversion/compat/actions/response-blacklist.js +10 -0
  134. package/vendor/llmswitch-core/dist/conversion/compat/actions/response-normalize.d.ts +5 -0
  135. package/vendor/llmswitch-core/dist/conversion/compat/actions/response-normalize.js +4 -0
  136. package/vendor/llmswitch-core/dist/conversion/compat/actions/response-validate.d.ts +5 -0
  137. package/vendor/llmswitch-core/dist/conversion/compat/actions/response-validate.js +4 -0
  138. package/vendor/llmswitch-core/dist/conversion/compat/actions/snapshot.d.ts +8 -0
  139. package/vendor/llmswitch-core/dist/conversion/compat/actions/snapshot.js +21 -0
  140. package/vendor/llmswitch-core/dist/conversion/compat/actions/strip-orphan-function-calls-tag.d.ts +2 -0
  141. package/vendor/llmswitch-core/dist/conversion/compat/actions/strip-orphan-function-calls-tag.js +4 -0
  142. package/vendor/llmswitch-core/dist/conversion/compat/actions/tool-schema.d.ts +6 -0
  143. package/vendor/llmswitch-core/dist/conversion/compat/actions/tool-schema.js +91 -0
  144. package/vendor/llmswitch-core/dist/conversion/compat/actions/tool-text-request-guidance.d.ts +9 -0
  145. package/vendor/llmswitch-core/dist/conversion/compat/actions/tool-text-request-guidance.js +7 -0
  146. package/vendor/llmswitch-core/dist/conversion/compat/actions/universal-shape-filter.d.ts +57 -0
  147. package/vendor/llmswitch-core/dist/conversion/compat/actions/universal-shape-filter.js +14 -0
  148. package/vendor/llmswitch-core/dist/conversion/compat/antigravity-session-signature.d.ts +86 -0
  149. package/vendor/llmswitch-core/dist/conversion/compat/antigravity-session-signature.js +1143 -0
  150. package/vendor/llmswitch-core/dist/conversion/compat/profiles/anthropic-claude-code.json +17 -0
  151. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-claude-code.json +18 -0
  152. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-deepseek-web.json +47 -0
  153. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-gemini-cli.json +23 -0
  154. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-gemini.json +31 -0
  155. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-glm.json +405 -0
  156. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-iflow.json +353 -0
  157. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-lmstudio.json +80 -0
  158. package/vendor/llmswitch-core/dist/conversion/compat/profiles/chat-qwen.json +22 -0
  159. package/vendor/llmswitch-core/dist/conversion/compat/profiles/responses-c4m.json +45 -0
  160. package/vendor/llmswitch-core/dist/conversion/compat/profiles/responses-crs.json +15 -0
  161. package/vendor/llmswitch-core/dist/conversion/compat/profiles/responses-output2choices-test.json +12 -0
  162. package/vendor/llmswitch-core/dist/conversion/config/config-manager.d.ts +212 -0
  163. package/vendor/llmswitch-core/dist/conversion/config/config-manager.js +310 -0
  164. package/vendor/llmswitch-core/dist/conversion/config/sample-config.json +314 -0
  165. package/vendor/llmswitch-core/dist/conversion/config/version-switch.json +150 -0
  166. package/vendor/llmswitch-core/dist/conversion/hub/config/types.d.ts +26 -0
  167. package/vendor/llmswitch-core/dist/conversion/hub/config/types.js +1 -0
  168. package/vendor/llmswitch-core/dist/conversion/hub/core/detour-registry.d.ts +11 -0
  169. package/vendor/llmswitch-core/dist/conversion/hub/core/detour-registry.js +23 -0
  170. package/vendor/llmswitch-core/dist/conversion/hub/core/hub-context.d.ts +23 -0
  171. package/vendor/llmswitch-core/dist/conversion/hub/core/hub-context.js +1 -0
  172. package/vendor/llmswitch-core/dist/conversion/hub/core/index.d.ts +4 -0
  173. package/vendor/llmswitch-core/dist/conversion/hub/core/index.js +3 -0
  174. package/vendor/llmswitch-core/dist/conversion/hub/core/stage-driver.d.ts +30 -0
  175. package/vendor/llmswitch-core/dist/conversion/hub/core/stage-driver.js +33 -0
  176. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/anthropic-format-adapter.d.ts +16 -0
  177. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/anthropic-format-adapter.js +42 -0
  178. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/chat-format-adapter.d.ts +17 -0
  179. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/chat-format-adapter.js +42 -0
  180. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/gemini-format-adapter.d.ts +16 -0
  181. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/gemini-format-adapter.js +42 -0
  182. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/index.d.ts +21 -0
  183. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/index.js +4 -0
  184. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/responses-format-adapter.d.ts +19 -0
  185. package/vendor/llmswitch-core/dist/conversion/hub/format-adapters/responses-format-adapter.js +42 -0
  186. package/vendor/llmswitch-core/dist/conversion/hub/hub-feature.d.ts +1 -0
  187. package/vendor/llmswitch-core/dist/conversion/hub/hub-feature.js +26 -0
  188. package/vendor/llmswitch-core/dist/conversion/hub/node-support.d.ts +19 -0
  189. package/vendor/llmswitch-core/dist/conversion/hub/node-support.js +136 -0
  190. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/operation-table-runner.d.ts +18 -0
  191. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/operation-table-runner.js +162 -0
  192. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/anthropic-mapper.d.ts +8 -0
  193. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/anthropic-mapper.js +503 -0
  194. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/archive/chat-mapper.archive.d.ts +8 -0
  195. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/archive/chat-mapper.archive.js +409 -0
  196. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/chat-mapper.d.ts +8 -0
  197. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/chat-mapper.js +350 -0
  198. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/gemini-mapper.d.ts +7 -0
  199. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/gemini-mapper.js +1540 -0
  200. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/responses-mapper.d.ts +21 -0
  201. package/vendor/llmswitch-core/dist/conversion/hub/operation-table/semantic-mappers/responses-mapper.js +491 -0
  202. package/vendor/llmswitch-core/dist/conversion/hub/ops/operations.d.ts +19 -0
  203. package/vendor/llmswitch-core/dist/conversion/hub/ops/operations.js +7 -0
  204. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-engine.d.ts +9 -0
  205. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-engine.js +13 -0
  206. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-pipeline-executor.d.ts +9 -0
  207. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-pipeline-executor.js +46 -0
  208. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-profile-resolver.d.ts +2 -0
  209. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-profile-resolver.js +14 -0
  210. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-profile-store.d.ts +2 -0
  211. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-profile-store.js +94 -0
  212. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-types.d.ts +175 -0
  213. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/compat-types.js +1 -0
  214. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/native-adapter-context.d.ts +3 -0
  215. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/compat/native-adapter-context.js +40 -0
  216. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/hub-pipeline.d.ts +111 -0
  217. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/hub-pipeline.js +1927 -0
  218. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/hub-stage-timing.d.ts +8 -0
  219. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/hub-stage-timing.js +211 -0
  220. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/session-identifiers.d.ts +9 -0
  221. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/session-identifiers.js +16 -0
  222. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage1_format_parse/index.d.ts +10 -0
  223. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage1_format_parse/index.js +236 -0
  224. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/index.d.ts +24 -0
  225. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/index.js +132 -0
  226. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/semantic-lift.d.ts +14 -0
  227. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage2_semantic_map/semantic-lift.js +24 -0
  228. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/archive/shell-like-tool-call-normalization-fallback.d.ts +2 -0
  229. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/archive/shell-like-tool-call-normalization-fallback.js +157 -0
  230. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-capture-orchestration.d.ts +16 -0
  231. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-capture-orchestration.js +29 -0
  232. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-factories.d.ts +5 -0
  233. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/context-factories.js +19 -0
  234. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/index.d.ts +6 -0
  235. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/index.js +22 -0
  236. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/responses-context-snapshot.d.ts +8 -0
  237. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/responses-context-snapshot.js +28 -0
  238. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-diagnostics.d.ts +2 -0
  239. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-diagnostics.js +4 -0
  240. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-snapshot.d.ts +10 -0
  241. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_inbound/req_inbound_stage3_context_capture/tool-output-snapshot.js +12 -0
  242. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/context-merge.d.ts +3 -0
  243. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/context-merge.js +30 -0
  244. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/index.d.ts +18 -0
  245. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage1_semantic_map/index.js +84 -0
  246. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage2_format_build/index.d.ts +8 -0
  247. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage2_format_build/index.js +12 -0
  248. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage3_compat/index.d.ts +14 -0
  249. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_outbound/req_outbound_stage3_compat/index.js +45 -0
  250. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_process/req_process_stage1_tool_governance/index.d.ts +16 -0
  251. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_process/req_process_stage1_tool_governance/index.js +62 -0
  252. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_process/req_process_stage2_route_select/index.d.ts +17 -0
  253. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/req_process/req_process_stage2_route_select/index.js +35 -0
  254. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/index.d.ts +17 -0
  255. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/index.js +243 -0
  256. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/stream-json-sniffer.d.ts +3 -0
  257. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage1_sse_decode/stream-json-sniffer.js +81 -0
  258. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage2_format_parse/index.d.ts +10 -0
  259. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage2_format_parse/index.js +50 -0
  260. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage3_semantic_map/index.d.ts +13 -0
  261. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_inbound/resp_inbound_stage3_semantic_map/index.js +25 -0
  262. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/chat-process-semantics-bridge.d.ts +6 -0
  263. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/chat-process-semantics-bridge.js +17 -0
  264. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/client-remap-protocol-switch.d.ts +9 -0
  265. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/client-remap-protocol-switch.js +103 -0
  266. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/index.d.ts +13 -0
  267. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage1_client_remap/index.js +30 -0
  268. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage2_sse_stream/index.d.ts +17 -0
  269. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_outbound/resp_outbound_stage2_sse_stream/index.js +35 -0
  270. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage1_tool_governance/index.d.ts +16 -0
  271. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage1_tool_governance/index.js +52 -0
  272. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage2_finalize/index.d.ts +19 -0
  273. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage2_finalize/index.js +40 -0
  274. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage3_servertool_orchestration/index.d.ts +44 -0
  275. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/resp_process/resp_process_stage3_servertool_orchestration/index.js +88 -0
  276. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/utils.d.ts +2 -0
  277. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/stages/utils.js +27 -0
  278. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/target-utils.d.ts +5 -0
  279. package/vendor/llmswitch-core/dist/conversion/hub/pipeline/target-utils.js +26 -0
  280. package/vendor/llmswitch-core/dist/conversion/hub/pipelines/inbound.d.ts +22 -0
  281. package/vendor/llmswitch-core/dist/conversion/hub/pipelines/inbound.js +66 -0
  282. package/vendor/llmswitch-core/dist/conversion/hub/pipelines/outbound.d.ts +22 -0
  283. package/vendor/llmswitch-core/dist/conversion/hub/pipelines/outbound.js +59 -0
  284. package/vendor/llmswitch-core/dist/conversion/hub/policy/policy-engine.d.ts +48 -0
  285. package/vendor/llmswitch-core/dist/conversion/hub/policy/policy-engine.js +269 -0
  286. package/vendor/llmswitch-core/dist/conversion/hub/policy/protocol-spec.d.ts +75 -0
  287. package/vendor/llmswitch-core/dist/conversion/hub/policy/protocol-spec.js +27 -0
  288. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-anthropic-alias.d.ts +2 -0
  289. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-anthropic-alias.js +36 -0
  290. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-directive-parser.d.ts +5 -0
  291. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-directive-parser.js +56 -0
  292. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-directives.d.ts +24 -0
  293. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-directives.js +98 -0
  294. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-directives.d.ts +8 -0
  295. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-directives.js +42 -0
  296. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-finalize.d.ts +14 -0
  297. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-finalize.js +10 -0
  298. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-messages.d.ts +5 -0
  299. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-messages.js +10 -0
  300. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-orchestration.d.ts +30 -0
  301. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-orchestration.js +68 -0
  302. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-time-tag.d.ts +9 -0
  303. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminder-time-tag.js +18 -0
  304. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminders.d.ts +2 -0
  305. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-reminders.js +104 -0
  306. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-tool-schemas.d.ts +3 -0
  307. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-tool-schemas.js +280 -0
  308. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-tools.d.ts +6 -0
  309. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-clock-tools.js +41 -0
  310. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-continue-execution.d.ts +11 -0
  311. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-continue-execution.js +83 -0
  312. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governance-context.d.ts +15 -0
  313. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governance-context.js +7 -0
  314. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governance-finalize.d.ts +16 -0
  315. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governance-finalize.js +11 -0
  316. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governance-orchestration.d.ts +9 -0
  317. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governance-orchestration.js +49 -0
  318. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governed-control-ops.d.ts +8 -0
  319. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governed-control-ops.js +5 -0
  320. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governed-filter-call.d.ts +12 -0
  321. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governed-filter-call.js +18 -0
  322. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governed-merge.d.ts +8 -0
  323. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-governed-merge.js +11 -0
  324. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-media.d.ts +5 -0
  325. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-media.js +108 -0
  326. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-node-result.d.ts +23 -0
  327. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-node-result.js +24 -0
  328. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-pending-tool-sync.d.ts +14 -0
  329. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-pending-tool-sync.js +52 -0
  330. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-post-governed-normalization.d.ts +8 -0
  331. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-post-governed-normalization.js +16 -0
  332. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-review.d.ts +2 -0
  333. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-review.js +8 -0
  334. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-servertool-orchestration.d.ts +8 -0
  335. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-servertool-orchestration.js +22 -0
  336. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-session-usage.d.ts +7 -0
  337. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-session-usage.js +147 -0
  338. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-tool-normalization.d.ts +2 -0
  339. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-tool-normalization.js +4 -0
  340. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-web-search-intent.d.ts +12 -0
  341. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-web-search-intent.js +13 -0
  342. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-web-search-tool-schema.d.ts +3 -0
  343. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-web-search-tool-schema.js +4 -0
  344. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-web-search.d.ts +8 -0
  345. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process-web-search.js +26 -0
  346. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process.d.ts +15 -0
  347. package/vendor/llmswitch-core/dist/conversion/hub/process/chat-process.js +27 -0
  348. package/vendor/llmswitch-core/dist/conversion/hub/process/client-inject-readiness.d.ts +1 -0
  349. package/vendor/llmswitch-core/dist/conversion/hub/process/client-inject-readiness.js +4 -0
  350. package/vendor/llmswitch-core/dist/conversion/hub/registry.d.ts +28 -0
  351. package/vendor/llmswitch-core/dist/conversion/hub/registry.js +101 -0
  352. package/vendor/llmswitch-core/dist/conversion/hub/response/chat-response-utils.d.ts +6 -0
  353. package/vendor/llmswitch-core/dist/conversion/hub/response/chat-response-utils.js +8 -0
  354. package/vendor/llmswitch-core/dist/conversion/hub/response/provider-response.d.ts +51 -0
  355. package/vendor/llmswitch-core/dist/conversion/hub/response/provider-response.js +529 -0
  356. package/vendor/llmswitch-core/dist/conversion/hub/response/response-mappers.d.ts +24 -0
  357. package/vendor/llmswitch-core/dist/conversion/hub/response/response-mappers.js +73 -0
  358. package/vendor/llmswitch-core/dist/conversion/hub/response/response-runtime.d.ts +9 -0
  359. package/vendor/llmswitch-core/dist/conversion/hub/response/response-runtime.js +758 -0
  360. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/anthropic-mapper.d.ts +2 -0
  361. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/anthropic-mapper.js +2 -0
  362. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/chat-mapper.d.ts +2 -0
  363. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/chat-mapper.js +2 -0
  364. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/gemini-mapper.d.ts +2 -0
  365. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/gemini-mapper.js +2 -0
  366. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/index.d.ts +4 -0
  367. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/index.js +4 -0
  368. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/responses-mapper.d.ts +2 -0
  369. package/vendor/llmswitch-core/dist/conversion/hub/semantic-mappers/responses-mapper.js +2 -0
  370. package/vendor/llmswitch-core/dist/conversion/hub/snapshot-recorder.d.ts +13 -0
  371. package/vendor/llmswitch-core/dist/conversion/hub/snapshot-recorder.js +38 -0
  372. package/vendor/llmswitch-core/dist/conversion/hub/standardized-bridge.d.ts +12 -0
  373. package/vendor/llmswitch-core/dist/conversion/hub/standardized-bridge.js +16 -0
  374. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/engine.d.ts +24 -0
  375. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/engine.js +118 -0
  376. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/index.d.ts +3 -0
  377. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/index.js +2 -0
  378. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/rules.d.ts +2 -0
  379. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/rules.js +80 -0
  380. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/types.d.ts +38 -0
  381. package/vendor/llmswitch-core/dist/conversion/hub/tool-governance/types.js +1 -0
  382. package/vendor/llmswitch-core/dist/conversion/hub/tool-session-compat.d.ts +26 -0
  383. package/vendor/llmswitch-core/dist/conversion/hub/tool-session-compat.js +86 -0
  384. package/vendor/llmswitch-core/dist/conversion/hub/tool-surface/tool-surface-engine.d.ts +18 -0
  385. package/vendor/llmswitch-core/dist/conversion/hub/tool-surface/tool-surface-engine.js +574 -0
  386. package/vendor/llmswitch-core/dist/conversion/hub/types/chat-envelope.d.ts +79 -0
  387. package/vendor/llmswitch-core/dist/conversion/hub/types/chat-envelope.js +1 -0
  388. package/vendor/llmswitch-core/dist/conversion/hub/types/chat-schema.d.ts +112 -0
  389. package/vendor/llmswitch-core/dist/conversion/hub/types/chat-schema.js +1 -0
  390. package/vendor/llmswitch-core/dist/conversion/hub/types/errors.d.ts +5 -0
  391. package/vendor/llmswitch-core/dist/conversion/hub/types/errors.js +13 -0
  392. package/vendor/llmswitch-core/dist/conversion/hub/types/format-envelope.d.ts +7 -0
  393. package/vendor/llmswitch-core/dist/conversion/hub/types/format-envelope.js +1 -0
  394. package/vendor/llmswitch-core/dist/conversion/hub/types/index.d.ts +6 -0
  395. package/vendor/llmswitch-core/dist/conversion/hub/types/index.js +6 -0
  396. package/vendor/llmswitch-core/dist/conversion/hub/types/json.d.ts +9 -0
  397. package/vendor/llmswitch-core/dist/conversion/hub/types/json.js +9 -0
  398. package/vendor/llmswitch-core/dist/conversion/hub/types/node.d.ts +31 -0
  399. package/vendor/llmswitch-core/dist/conversion/hub/types/node.js +1 -0
  400. package/vendor/llmswitch-core/dist/conversion/hub/types/standardized.d.ts +99 -0
  401. package/vendor/llmswitch-core/dist/conversion/hub/types/standardized.js +1 -0
  402. package/vendor/llmswitch-core/dist/conversion/index.d.ts +33 -0
  403. package/vendor/llmswitch-core/dist/conversion/index.js +33 -0
  404. package/vendor/llmswitch-core/dist/conversion/jsonish.d.ts +3 -0
  405. package/vendor/llmswitch-core/dist/conversion/jsonish.js +20 -0
  406. package/vendor/llmswitch-core/dist/conversion/mcp-injection.d.ts +2 -0
  407. package/vendor/llmswitch-core/dist/conversion/mcp-injection.js +7 -0
  408. package/vendor/llmswitch-core/dist/conversion/media.d.ts +1 -0
  409. package/vendor/llmswitch-core/dist/conversion/media.js +4 -0
  410. package/vendor/llmswitch-core/dist/conversion/metadata-passthrough.d.ts +11 -0
  411. package/vendor/llmswitch-core/dist/conversion/metadata-passthrough.js +20 -0
  412. package/vendor/llmswitch-core/dist/conversion/payload-budget.d.ts +13 -0
  413. package/vendor/llmswitch-core/dist/conversion/payload-budget.js +47 -0
  414. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/anthropic-openai-pipeline.d.ts +11 -0
  415. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/anthropic-openai-pipeline.js +104 -0
  416. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/openai-openai-pipeline.d.ts +15 -0
  417. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/openai-openai-pipeline.js +176 -0
  418. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/responses-openai-pipeline.d.ts +12 -0
  419. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/responses-openai-pipeline.js +212 -0
  420. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/shared/openai-chat-helpers.d.ts +13 -0
  421. package/vendor/llmswitch-core/dist/conversion/pipeline/codecs/v2/shared/openai-chat-helpers.js +34 -0
  422. package/vendor/llmswitch-core/dist/conversion/pipeline/hooks/adapter-context.d.ts +7 -0
  423. package/vendor/llmswitch-core/dist/conversion/pipeline/hooks/adapter-context.js +18 -0
  424. package/vendor/llmswitch-core/dist/conversion/pipeline/hooks/protocol-hooks.d.ts +67 -0
  425. package/vendor/llmswitch-core/dist/conversion/pipeline/hooks/protocol-hooks.js +1 -0
  426. package/vendor/llmswitch-core/dist/conversion/pipeline/index.d.ts +35 -0
  427. package/vendor/llmswitch-core/dist/conversion/pipeline/index.js +103 -0
  428. package/vendor/llmswitch-core/dist/conversion/pipeline/meta/meta-bag.d.ts +20 -0
  429. package/vendor/llmswitch-core/dist/conversion/pipeline/meta/meta-bag.js +81 -0
  430. package/vendor/llmswitch-core/dist/conversion/pipeline/schema/canonical-chat.d.ts +18 -0
  431. package/vendor/llmswitch-core/dist/conversion/pipeline/schema/canonical-chat.js +1 -0
  432. package/vendor/llmswitch-core/dist/conversion/pipeline/schema/index.d.ts +1 -0
  433. package/vendor/llmswitch-core/dist/conversion/pipeline/schema/index.js +1 -0
  434. package/vendor/llmswitch-core/dist/conversion/protocol-field-allowlists.d.ts +7 -0
  435. package/vendor/llmswitch-core/dist/conversion/protocol-field-allowlists.js +9 -0
  436. package/vendor/llmswitch-core/dist/conversion/protocol-state.d.ts +4 -0
  437. package/vendor/llmswitch-core/dist/conversion/protocol-state.js +27 -0
  438. package/vendor/llmswitch-core/dist/conversion/provider-protocol-error.d.ts +17 -0
  439. package/vendor/llmswitch-core/dist/conversion/provider-protocol-error.js +25 -0
  440. package/vendor/llmswitch-core/dist/conversion/responses/responses-host-policy.d.ts +6 -0
  441. package/vendor/llmswitch-core/dist/conversion/responses/responses-host-policy.js +4 -0
  442. package/vendor/llmswitch-core/dist/conversion/responses/responses-openai-bridge/response-payload.d.ts +3 -0
  443. package/vendor/llmswitch-core/dist/conversion/responses/responses-openai-bridge/response-payload.js +190 -0
  444. package/vendor/llmswitch-core/dist/conversion/responses/responses-openai-bridge/types.d.ts +35 -0
  445. package/vendor/llmswitch-core/dist/conversion/responses/responses-openai-bridge/types.js +1 -0
  446. package/vendor/llmswitch-core/dist/conversion/responses/responses-openai-bridge.d.ts +15 -0
  447. package/vendor/llmswitch-core/dist/conversion/responses/responses-openai-bridge.js +475 -0
  448. package/vendor/llmswitch-core/dist/conversion/runtime-metadata.d.ts +7 -0
  449. package/vendor/llmswitch-core/dist/conversion/runtime-metadata.js +31 -0
  450. package/vendor/llmswitch-core/dist/conversion/schema-validator.d.ts +7 -0
  451. package/vendor/llmswitch-core/dist/conversion/schema-validator.js +67 -0
  452. package/vendor/llmswitch-core/dist/conversion/shared/anthropic-message-utils.d.ts +22 -0
  453. package/vendor/llmswitch-core/dist/conversion/shared/anthropic-message-utils.js +1416 -0
  454. package/vendor/llmswitch-core/dist/conversion/shared/chat-envelope-validator.d.ts +8 -0
  455. package/vendor/llmswitch-core/dist/conversion/shared/chat-envelope-validator.js +4 -0
  456. package/vendor/llmswitch-core/dist/conversion/shared/chat-output-normalizer.d.ts +4 -0
  457. package/vendor/llmswitch-core/dist/conversion/shared/chat-output-normalizer.js +10 -0
  458. package/vendor/llmswitch-core/dist/conversion/shared/chat-request-filters.d.ts +8 -0
  459. package/vendor/llmswitch-core/dist/conversion/shared/chat-request-filters.js +63 -0
  460. package/vendor/llmswitch-core/dist/conversion/shared/gemini-tool-utils.d.ts +7 -0
  461. package/vendor/llmswitch-core/dist/conversion/shared/gemini-tool-utils.js +20 -0
  462. package/vendor/llmswitch-core/dist/conversion/shared/openai-finalizer.d.ts +8 -0
  463. package/vendor/llmswitch-core/dist/conversion/shared/openai-finalizer.js +22 -0
  464. package/vendor/llmswitch-core/dist/conversion/shared/openai-message-normalize.d.ts +1 -0
  465. package/vendor/llmswitch-core/dist/conversion/shared/openai-message-normalize.js +151 -0
  466. package/vendor/llmswitch-core/dist/conversion/shared/output-content-normalizer.d.ts +12 -0
  467. package/vendor/llmswitch-core/dist/conversion/shared/output-content-normalizer.js +26 -0
  468. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-mapping.d.ts +5 -0
  469. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-mapping.js +7 -0
  470. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-normalizer.d.ts +25 -0
  471. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-normalizer.js +114 -0
  472. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-tool-normalizer.d.ts +12 -0
  473. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-tool-normalizer.js +22 -0
  474. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-tool-parser.d.ts +10 -0
  475. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-tool-parser.js +11 -0
  476. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-utils.d.ts +2 -0
  477. package/vendor/llmswitch-core/dist/conversion/shared/reasoning-utils.js +19 -0
  478. package/vendor/llmswitch-core/dist/conversion/shared/responses-conversation-store.d.ts +35 -0
  479. package/vendor/llmswitch-core/dist/conversion/shared/responses-conversation-store.js +195 -0
  480. package/vendor/llmswitch-core/dist/conversion/shared/responses-output-builder.d.ts +13 -0
  481. package/vendor/llmswitch-core/dist/conversion/shared/responses-output-builder.js +32 -0
  482. package/vendor/llmswitch-core/dist/conversion/shared/responses-reasoning-registry.d.ts +24 -0
  483. package/vendor/llmswitch-core/dist/conversion/shared/responses-reasoning-registry.js +185 -0
  484. package/vendor/llmswitch-core/dist/conversion/shared/responses-request-adapter.d.ts +7 -0
  485. package/vendor/llmswitch-core/dist/conversion/shared/responses-request-adapter.js +14 -0
  486. package/vendor/llmswitch-core/dist/conversion/shared/responses-response-utils.d.ts +3 -0
  487. package/vendor/llmswitch-core/dist/conversion/shared/responses-response-utils.js +254 -0
  488. package/vendor/llmswitch-core/dist/conversion/shared/responses-tool-utils.d.ts +14 -0
  489. package/vendor/llmswitch-core/dist/conversion/shared/responses-tool-utils.js +102 -0
  490. package/vendor/llmswitch-core/dist/conversion/shared/streaming-text-extractor.d.ts +19 -0
  491. package/vendor/llmswitch-core/dist/conversion/shared/streaming-text-extractor.js +39 -0
  492. package/vendor/llmswitch-core/dist/conversion/shared/text-markup-normalizer/normalize.d.ts +2 -0
  493. package/vendor/llmswitch-core/dist/conversion/shared/text-markup-normalizer/normalize.js +116 -0
  494. package/vendor/llmswitch-core/dist/conversion/shared/text-markup-normalizer.d.ts +4 -0
  495. package/vendor/llmswitch-core/dist/conversion/shared/text-markup-normalizer.js +3 -0
  496. package/vendor/llmswitch-core/dist/conversion/shared/thought-signature-validator.d.ts +52 -0
  497. package/vendor/llmswitch-core/dist/conversion/shared/thought-signature-validator.js +58 -0
  498. package/vendor/llmswitch-core/dist/conversion/shared/tool-argument-repairer.d.ts +39 -0
  499. package/vendor/llmswitch-core/dist/conversion/shared/tool-argument-repairer.js +53 -0
  500. package/vendor/llmswitch-core/dist/conversion/shared/tool-call-id-manager.d.ts +109 -0
  501. package/vendor/llmswitch-core/dist/conversion/shared/tool-call-id-manager.js +202 -0
  502. package/vendor/llmswitch-core/dist/conversion/shared/tool-call-utils.d.ts +11 -0
  503. package/vendor/llmswitch-core/dist/conversion/shared/tool-call-utils.js +14 -0
  504. package/vendor/llmswitch-core/dist/conversion/shared/tool-filter-pipeline.d.ts +21 -0
  505. package/vendor/llmswitch-core/dist/conversion/shared/tool-filter-pipeline.js +171 -0
  506. package/vendor/llmswitch-core/dist/conversion/shared/tool-governor.d.ts +29 -0
  507. package/vendor/llmswitch-core/dist/conversion/shared/tool-governor.js +694 -0
  508. package/vendor/llmswitch-core/dist/conversion/shared/tool-harvester.d.ts +31 -0
  509. package/vendor/llmswitch-core/dist/conversion/shared/tool-harvester.js +23 -0
  510. package/vendor/llmswitch-core/dist/conversion/shared/tool-mapping.d.ts +19 -0
  511. package/vendor/llmswitch-core/dist/conversion/shared/tool-mapping.js +65 -0
  512. package/vendor/llmswitch-core/dist/conversion/shared/tooling.d.ts +29 -0
  513. package/vendor/llmswitch-core/dist/conversion/shared/tooling.js +57 -0
  514. package/vendor/llmswitch-core/dist/conversion/snapshot-utils.d.ts +31 -0
  515. package/vendor/llmswitch-core/dist/conversion/snapshot-utils.js +49 -0
  516. package/vendor/llmswitch-core/dist/conversion/types/bridge-message-types.d.ts +41 -0
  517. package/vendor/llmswitch-core/dist/conversion/types/bridge-message-types.js +1 -0
  518. package/vendor/llmswitch-core/dist/conversion/types/text-markup-normalizer.d.ts +13 -0
  519. package/vendor/llmswitch-core/dist/conversion/types/text-markup-normalizer.js +1 -0
  520. package/vendor/llmswitch-core/dist/conversion/types.d.ts +33 -0
  521. package/vendor/llmswitch-core/dist/conversion/types.js +1 -0
  522. package/vendor/llmswitch-core/dist/filters/builtin/add-fields-filter.d.ts +8 -0
  523. package/vendor/llmswitch-core/dist/filters/builtin/add-fields-filter.js +16 -0
  524. package/vendor/llmswitch-core/dist/filters/builtin/blacklist-filter.d.ts +8 -0
  525. package/vendor/llmswitch-core/dist/filters/builtin/blacklist-filter.js +19 -0
  526. package/vendor/llmswitch-core/dist/filters/builtin/whitelist-filter.d.ts +8 -0
  527. package/vendor/llmswitch-core/dist/filters/builtin/whitelist-filter.js +19 -0
  528. package/vendor/llmswitch-core/dist/filters/config/openai-openai.fieldmap.json +18 -0
  529. package/vendor/llmswitch-core/dist/filters/engine.d.ts +16 -0
  530. package/vendor/llmswitch-core/dist/filters/engine.js +167 -0
  531. package/vendor/llmswitch-core/dist/filters/index.d.ts +18 -0
  532. package/vendor/llmswitch-core/dist/filters/index.js +22 -0
  533. package/vendor/llmswitch-core/dist/filters/special/request-tool-choice-policy.d.ts +11 -0
  534. package/vendor/llmswitch-core/dist/filters/special/request-tool-choice-policy.js +29 -0
  535. package/vendor/llmswitch-core/dist/filters/special/request-tool-list-filter.d.ts +11 -0
  536. package/vendor/llmswitch-core/dist/filters/special/request-tool-list-filter.js +322 -0
  537. package/vendor/llmswitch-core/dist/filters/special/request-toolcalls-stringify.d.ts +13 -0
  538. package/vendor/llmswitch-core/dist/filters/special/request-toolcalls-stringify.js +94 -0
  539. package/vendor/llmswitch-core/dist/filters/special/request-tools-normalize.d.ts +11 -0
  540. package/vendor/llmswitch-core/dist/filters/special/request-tools-normalize.js +114 -0
  541. package/vendor/llmswitch-core/dist/filters/special/response-finish-invariants.d.ts +11 -0
  542. package/vendor/llmswitch-core/dist/filters/special/response-finish-invariants.js +30 -0
  543. package/vendor/llmswitch-core/dist/filters/special/response-openai-to-responses-bridge.d.ts +13 -0
  544. package/vendor/llmswitch-core/dist/filters/special/response-openai-to-responses-bridge.js +24 -0
  545. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-blacklist.d.ts +12 -0
  546. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-blacklist.js +63 -0
  547. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-schema-converge.d.ts +13 -0
  548. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-schema-converge.js +63 -0
  549. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-stringify.d.ts +9 -0
  550. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-stringify.js +132 -0
  551. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-whitelist.d.ts +11 -0
  552. package/vendor/llmswitch-core/dist/filters/special/response-tool-arguments-whitelist.js +56 -0
  553. package/vendor/llmswitch-core/dist/filters/special/response-tool-text-canonicalize.d.ts +13 -0
  554. package/vendor/llmswitch-core/dist/filters/special/response-tool-text-canonicalize.js +16 -0
  555. package/vendor/llmswitch-core/dist/filters/special/tool-filter-hooks.d.ts +19 -0
  556. package/vendor/llmswitch-core/dist/filters/special/tool-filter-hooks.js +394 -0
  557. package/vendor/llmswitch-core/dist/filters/special/tool-post-constraints.d.ts +31 -0
  558. package/vendor/llmswitch-core/dist/filters/special/tool-post-constraints.js +120 -0
  559. package/vendor/llmswitch-core/dist/filters/types.d.ts +68 -0
  560. package/vendor/llmswitch-core/dist/filters/types.js +3 -0
  561. package/vendor/llmswitch-core/dist/filters/utils/fieldmap-loader.d.ts +2 -0
  562. package/vendor/llmswitch-core/dist/filters/utils/fieldmap-loader.js +16 -0
  563. package/vendor/llmswitch-core/dist/filters/utils/snapshot-writer.d.ts +10 -0
  564. package/vendor/llmswitch-core/dist/filters/utils/snapshot-writer.js +85 -0
  565. package/vendor/llmswitch-core/dist/guidance/index.d.ts +3 -0
  566. package/vendor/llmswitch-core/dist/guidance/index.js +299 -0
  567. package/vendor/llmswitch-core/dist/http/sse-response.d.ts +22 -0
  568. package/vendor/llmswitch-core/dist/http/sse-response.js +103 -0
  569. package/vendor/llmswitch-core/dist/index.d.ts +11 -0
  570. package/vendor/llmswitch-core/dist/index.js +11 -0
  571. package/vendor/llmswitch-core/dist/native/router_hotpath_napi.node +0 -0
  572. package/vendor/llmswitch-core/dist/quota/apikey-reset.d.ts +17 -0
  573. package/vendor/llmswitch-core/dist/quota/apikey-reset.js +43 -0
  574. package/vendor/llmswitch-core/dist/quota/index.d.ts +2 -0
  575. package/vendor/llmswitch-core/dist/quota/index.js +1 -0
  576. package/vendor/llmswitch-core/dist/quota/quota-manager.d.ts +44 -0
  577. package/vendor/llmswitch-core/dist/quota/quota-manager.js +463 -0
  578. package/vendor/llmswitch-core/dist/quota/quota-state.d.ts +6 -0
  579. package/vendor/llmswitch-core/dist/quota/quota-state.js +191 -0
  580. package/vendor/llmswitch-core/dist/quota/types.d.ts +62 -0
  581. package/vendor/llmswitch-core/dist/quota/types.js +1 -0
  582. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/auth-utils.d.ts +6 -0
  583. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/auth-utils.js +288 -0
  584. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/claude-code-helpers.d.ts +11 -0
  585. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/claude-code-helpers.js +18 -0
  586. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/config-defaults.d.ts +5 -0
  587. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/config-defaults.js +13 -0
  588. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/config-normalizers.d.ts +4 -0
  589. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/config-normalizers.js +106 -0
  590. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/profile-builder.d.ts +8 -0
  591. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/profile-builder.js +87 -0
  592. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/provider-normalization.d.ts +44 -0
  593. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/provider-normalization.js +272 -0
  594. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/responses-helpers.d.ts +15 -0
  595. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/responses-helpers.js +65 -0
  596. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/routing-config.d.ts +24 -0
  597. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/routing-config.js +346 -0
  598. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/streaming-helpers.d.ts +19 -0
  599. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/streaming-helpers.js +172 -0
  600. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/utils.d.ts +5 -0
  601. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/utils.js +41 -0
  602. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/web-search-config.d.ts +4 -0
  603. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap/web-search-config.js +156 -0
  604. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap.d.ts +2 -0
  605. package/vendor/llmswitch-core/dist/router/virtual-router/bootstrap.js +329 -0
  606. package/vendor/llmswitch-core/dist/router/virtual-router/classifier.d.ts +10 -0
  607. package/vendor/llmswitch-core/dist/router/virtual-router/classifier.js +187 -0
  608. package/vendor/llmswitch-core/dist/router/virtual-router/context-advisor.d.ts +23 -0
  609. package/vendor/llmswitch-core/dist/router/virtual-router/context-advisor.js +67 -0
  610. package/vendor/llmswitch-core/dist/router/virtual-router/context-weighted.d.ts +31 -0
  611. package/vendor/llmswitch-core/dist/router/virtual-router/context-weighted.js +54 -0
  612. package/vendor/llmswitch-core/dist/router/virtual-router/default-thinking-keywords.d.ts +1 -0
  613. package/vendor/llmswitch-core/dist/router/virtual-router/default-thinking-keywords.js +13 -0
  614. package/vendor/llmswitch-core/dist/router/virtual-router/engine/antigravity/alias-lease.d.ts +33 -0
  615. package/vendor/llmswitch-core/dist/router/virtual-router/engine/antigravity/alias-lease.js +257 -0
  616. package/vendor/llmswitch-core/dist/router/virtual-router/engine/cooldown-manager.d.ts +34 -0
  617. package/vendor/llmswitch-core/dist/router/virtual-router/engine/cooldown-manager.js +118 -0
  618. package/vendor/llmswitch-core/dist/router/virtual-router/engine/health/index.d.ts +23 -0
  619. package/vendor/llmswitch-core/dist/router/virtual-router/engine/health/index.js +724 -0
  620. package/vendor/llmswitch-core/dist/router/virtual-router/engine/provider-key/parse.d.ts +1 -0
  621. package/vendor/llmswitch-core/dist/router/virtual-router/engine/provider-key/parse.js +1 -0
  622. package/vendor/llmswitch-core/dist/router/virtual-router/engine/route-analytics.d.ts +28 -0
  623. package/vendor/llmswitch-core/dist/router/virtual-router/engine/route-analytics.js +44 -0
  624. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-pools/index.d.ts +13 -0
  625. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-pools/index.js +386 -0
  626. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-state/keys.d.ts +3 -0
  627. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-state/keys.js +30 -0
  628. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-state/metadata.d.ts +6 -0
  629. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-state/metadata.js +132 -0
  630. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-state/store.d.ts +10 -0
  631. package/vendor/llmswitch-core/dist/router/virtual-router/engine/routing-state/store.js +156 -0
  632. package/vendor/llmswitch-core/dist/router/virtual-router/engine/sticky-session-manager.d.ts +29 -0
  633. package/vendor/llmswitch-core/dist/router/virtual-router/engine/sticky-session-manager.js +55 -0
  634. package/vendor/llmswitch-core/dist/router/virtual-router/engine-health.d.ts +1 -0
  635. package/vendor/llmswitch-core/dist/router/virtual-router/engine-health.js +1 -0
  636. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/config.d.ts +11 -0
  637. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/config.js +108 -0
  638. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/direct-model.d.ts +10 -0
  639. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/direct-model.js +38 -0
  640. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/health.d.ts +13 -0
  641. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/health.js +104 -0
  642. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/helpers.d.ts +16 -0
  643. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/helpers.js +226 -0
  644. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/route-utils.d.ts +19 -0
  645. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/route-utils.js +212 -0
  646. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/selection-core.d.ts +28 -0
  647. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/selection-core.js +112 -0
  648. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/selection-state.d.ts +16 -0
  649. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/selection-state.js +187 -0
  650. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/state-accessors.d.ts +21 -0
  651. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy/state-accessors.js +118 -0
  652. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy.d.ts +123 -0
  653. package/vendor/llmswitch-core/dist/router/virtual-router/engine-legacy.js +245 -0
  654. package/vendor/llmswitch-core/dist/router/virtual-router/engine-logging.d.ts +67 -0
  655. package/vendor/llmswitch-core/dist/router/virtual-router/engine-logging.js +356 -0
  656. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/alias-selection.d.ts +15 -0
  657. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/alias-selection.js +118 -0
  658. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/context-weight-multipliers.d.ts +11 -0
  659. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/context-weight-multipliers.js +23 -0
  660. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/direct-provider-model.d.ts +9 -0
  661. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/direct-provider-model.js +49 -0
  662. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/instruction-target.d.ts +6 -0
  663. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/instruction-target.js +54 -0
  664. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/key-parsing.d.ts +8 -0
  665. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/key-parsing.js +47 -0
  666. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/multimodal-capability.d.ts +3 -0
  667. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/multimodal-capability.js +26 -0
  668. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-directive-parser.d.ts +24 -0
  669. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-directive-parser.js +209 -0
  670. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-directives.d.ts +7 -0
  671. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-directives.js +121 -0
  672. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-orchestration-semantics.d.ts +10 -0
  673. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-orchestration-semantics.js +110 -0
  674. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-semantics.d.ts +8 -0
  675. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-semantics.js +281 -0
  676. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-time-tag-semantics.d.ts +1 -0
  677. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminder-time-tag-semantics.js +25 -0
  678. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminders-semantics.d.ts +4 -0
  679. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-reminders-semantics.js +44 -0
  680. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-tool-schema-semantics.d.ts +2 -0
  681. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-clock-tool-schema-semantics.js +62 -0
  682. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-governance-semantics.d.ts +49 -0
  683. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-governance-semantics.js +552 -0
  684. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-governed-filter-semantics.d.ts +9 -0
  685. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-governed-filter-semantics.js +64 -0
  686. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-node-result-semantics.d.ts +5 -0
  687. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-node-result-semantics.js +163 -0
  688. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-post-governed-normalization-semantics.d.ts +1 -0
  689. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-post-governed-normalization-semantics.js +49 -0
  690. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-servertool-orchestration-semantics.d.ts +30 -0
  691. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-servertool-orchestration-semantics.js +446 -0
  692. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-web-search-intent-semantics.d.ts +1 -0
  693. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-process-web-search-intent-semantics.js +49 -0
  694. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-request-filter-semantics.d.ts +1 -0
  695. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-chat-request-filter-semantics.js +54 -0
  696. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-compat-action-semantics.d.ts +22 -0
  697. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-compat-action-semantics.js +559 -0
  698. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-deepseek-web-compat.d.ts +17 -0
  699. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-deepseek-web-compat.js +26 -0
  700. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-bridge-action-semantics.d.ts +276 -0
  701. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-bridge-action-semantics.js +1291 -0
  702. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-bridge-policy-semantics.d.ts +72 -0
  703. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-bridge-policy-semantics.js +405 -0
  704. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-edge-stage-semantics.d.ts +18 -0
  705. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-edge-stage-semantics.js +333 -0
  706. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-governance-semantics.d.ts +30 -0
  707. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-governance-semantics.js +202 -0
  708. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-inbound-outbound-semantics.d.ts +22 -0
  709. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-inbound-outbound-semantics.js +426 -0
  710. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-orchestration-semantics.d.ts +57 -0
  711. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-orchestration-semantics.js +705 -0
  712. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-inbound-semantics.d.ts +53 -0
  713. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-inbound-semantics.js +598 -0
  714. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-outbound-semantics.d.ts +147 -0
  715. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-outbound-semantics.js +570 -0
  716. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-process-semantics.d.ts +26 -0
  717. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-req-process-semantics.js +148 -0
  718. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-resp-semantics.d.ts +46 -0
  719. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-resp-semantics.js +755 -0
  720. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-semantic-mappers.d.ts +2 -0
  721. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-semantic-mappers.js +83 -0
  722. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-session-identifiers-semantics.d.ts +11 -0
  723. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-session-identifiers-semantics.js +207 -0
  724. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-target-semantics.d.ts +3 -0
  725. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-hub-pipeline-target-semantics.js +128 -0
  726. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-analysis.d.ts +57 -0
  727. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-analysis.js +217 -0
  728. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-loader.d.ts +5 -0
  729. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-loader.js +464 -0
  730. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-policy.d.ts +5 -0
  731. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-policy.js +18 -0
  732. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-quota-buckets.d.ts +25 -0
  733. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath-quota-buckets.js +85 -0
  734. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath.d.ts +59 -0
  735. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-router-hotpath.js +117 -0
  736. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-shared-conversion-semantics.d.ts +243 -0
  737. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-shared-conversion-semantics.js +2594 -0
  738. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-snapshot-hooks.d.ts +3 -0
  739. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-snapshot-hooks.js +109 -0
  740. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-alias-selection-semantics.d.ts +16 -0
  741. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-alias-selection-semantics.js +96 -0
  742. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-engine-proxy.d.ts +16 -0
  743. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-engine-proxy.js +14 -0
  744. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-routing-instructions-semantics.d.ts +3 -0
  745. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-routing-instructions-semantics.js +123 -0
  746. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-actions-semantics.d.ts +6 -0
  747. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-actions-semantics.js +85 -0
  748. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-semantics.d.ts +9 -0
  749. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-semantics.js +70 -0
  750. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-state-semantics.d.ts +2 -0
  751. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/native-virtual-router-stop-message-state-semantics.js +76 -0
  752. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/route-utils.d.ts +15 -0
  753. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/route-utils.js +248 -0
  754. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/routing-state-filter.d.ts +4 -0
  755. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/routing-state-filter.js +50 -0
  756. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/selection-deps.d.ts +58 -0
  757. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/selection-deps.js +1 -0
  758. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/sticky-pool.d.ts +11 -0
  759. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/sticky-pool.js +109 -0
  760. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-load-balancing.d.ts +16 -0
  761. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-load-balancing.js +120 -0
  762. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-priority.d.ts +11 -0
  763. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-priority.js +55 -0
  764. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-antigravity-session-lease.d.ts +10 -0
  765. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-antigravity-session-lease.js +231 -0
  766. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-antigravity-target-split.d.ts +4 -0
  767. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-antigravity-target-split.js +43 -0
  768. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-quota-integration.d.ts +29 -0
  769. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-quota-integration.js +194 -0
  770. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-select.d.ts +22 -0
  771. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection-select.js +352 -0
  772. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection.d.ts +3 -0
  773. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection/tier-selection.js +309 -0
  774. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection.d.ts +1 -0
  775. package/vendor/llmswitch-core/dist/router/virtual-router/engine-selection.js +1 -0
  776. package/vendor/llmswitch-core/dist/router/virtual-router/engine.d.ts +43 -0
  777. package/vendor/llmswitch-core/dist/router/virtual-router/engine.js +360 -0
  778. package/vendor/llmswitch-core/dist/router/virtual-router/error-center.d.ts +10 -0
  779. package/vendor/llmswitch-core/dist/router/virtual-router/error-center.js +39 -0
  780. package/vendor/llmswitch-core/dist/router/virtual-router/features.d.ts +3 -0
  781. package/vendor/llmswitch-core/dist/router/virtual-router/features.js +124 -0
  782. package/vendor/llmswitch-core/dist/router/virtual-router/health-manager.d.ts +23 -0
  783. package/vendor/llmswitch-core/dist/router/virtual-router/health-manager.js +107 -0
  784. package/vendor/llmswitch-core/dist/router/virtual-router/health-weighted.d.ts +25 -0
  785. package/vendor/llmswitch-core/dist/router/virtual-router/health-weighted.js +63 -0
  786. package/vendor/llmswitch-core/dist/router/virtual-router/load-balancer.d.ts +28 -0
  787. package/vendor/llmswitch-core/dist/router/virtual-router/load-balancer.js +160 -0
  788. package/vendor/llmswitch-core/dist/router/virtual-router/message-utils.d.ts +15 -0
  789. package/vendor/llmswitch-core/dist/router/virtual-router/message-utils.js +235 -0
  790. package/vendor/llmswitch-core/dist/router/virtual-router/pre-command-file-resolver.d.ts +2 -0
  791. package/vendor/llmswitch-core/dist/router/virtual-router/pre-command-file-resolver.js +117 -0
  792. package/vendor/llmswitch-core/dist/router/virtual-router/provider-registry.d.ts +17 -0
  793. package/vendor/llmswitch-core/dist/router/virtual-router/provider-registry.js +145 -0
  794. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/clean.d.ts +3 -0
  795. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/clean.js +34 -0
  796. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/parse.d.ts +6 -0
  797. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/parse.js +24 -0
  798. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/state.d.ts +4 -0
  799. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/state.js +284 -0
  800. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/types.d.ts +74 -0
  801. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions/types.js +2 -0
  802. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions.d.ts +5 -0
  803. package/vendor/llmswitch-core/dist/router/virtual-router/routing-instructions.js +4 -0
  804. package/vendor/llmswitch-core/dist/router/virtual-router/routing-pre-command-actions.d.ts +3 -0
  805. package/vendor/llmswitch-core/dist/router/virtual-router/routing-pre-command-actions.js +26 -0
  806. package/vendor/llmswitch-core/dist/router/virtual-router/routing-pre-command-parser.d.ts +2 -0
  807. package/vendor/llmswitch-core/dist/router/virtual-router/routing-pre-command-parser.js +85 -0
  808. package/vendor/llmswitch-core/dist/router/virtual-router/routing-pre-command-state-codec.d.ts +3 -0
  809. package/vendor/llmswitch-core/dist/router/virtual-router/routing-pre-command-state-codec.js +24 -0
  810. package/vendor/llmswitch-core/dist/router/virtual-router/routing-stop-message-actions.d.ts +2 -0
  811. package/vendor/llmswitch-core/dist/router/virtual-router/routing-stop-message-actions.js +99 -0
  812. package/vendor/llmswitch-core/dist/router/virtual-router/routing-stop-message-parser.d.ts +3 -0
  813. package/vendor/llmswitch-core/dist/router/virtual-router/routing-stop-message-parser.js +19 -0
  814. package/vendor/llmswitch-core/dist/router/virtual-router/routing-stop-message-state-codec.d.ts +7 -0
  815. package/vendor/llmswitch-core/dist/router/virtual-router/routing-stop-message-state-codec.js +121 -0
  816. package/vendor/llmswitch-core/dist/router/virtual-router/sticky-session-store.d.ts +8 -0
  817. package/vendor/llmswitch-core/dist/router/virtual-router/sticky-session-store.js +296 -0
  818. package/vendor/llmswitch-core/dist/router/virtual-router/stop-message-file-resolver.d.ts +2 -0
  819. package/vendor/llmswitch-core/dist/router/virtual-router/stop-message-file-resolver.js +76 -0
  820. package/vendor/llmswitch-core/dist/router/virtual-router/stop-message-stage-template-files.d.ts +12 -0
  821. package/vendor/llmswitch-core/dist/router/virtual-router/stop-message-stage-template-files.js +67 -0
  822. package/vendor/llmswitch-core/dist/router/virtual-router/stop-message-state-sync.d.ts +17 -0
  823. package/vendor/llmswitch-core/dist/router/virtual-router/stop-message-state-sync.js +82 -0
  824. package/vendor/llmswitch-core/dist/router/virtual-router/success-center.d.ts +10 -0
  825. package/vendor/llmswitch-core/dist/router/virtual-router/success-center.js +32 -0
  826. package/vendor/llmswitch-core/dist/router/virtual-router/token-counter.d.ts +2 -0
  827. package/vendor/llmswitch-core/dist/router/virtual-router/token-counter.js +148 -0
  828. package/vendor/llmswitch-core/dist/router/virtual-router/token-estimator.d.ts +2 -0
  829. package/vendor/llmswitch-core/dist/router/virtual-router/token-estimator.js +16 -0
  830. package/vendor/llmswitch-core/dist/router/virtual-router/token-file-scanner.d.ts +24 -0
  831. package/vendor/llmswitch-core/dist/router/virtual-router/token-file-scanner.js +117 -0
  832. package/vendor/llmswitch-core/dist/router/virtual-router/tool-signals.d.ts +19 -0
  833. package/vendor/llmswitch-core/dist/router/virtual-router/tool-signals.js +647 -0
  834. package/vendor/llmswitch-core/dist/router/virtual-router/types.d.ts +681 -0
  835. package/vendor/llmswitch-core/dist/router/virtual-router/types.js +34 -0
  836. package/vendor/llmswitch-core/dist/runtime/user-data-paths.d.ts +5 -0
  837. package/vendor/llmswitch-core/dist/runtime/user-data-paths.js +43 -0
  838. package/vendor/llmswitch-core/dist/servertool/clock/config.d.ts +17 -0
  839. package/vendor/llmswitch-core/dist/servertool/clock/config.js +48 -0
  840. package/vendor/llmswitch-core/dist/servertool/clock/daemon.d.ts +24 -0
  841. package/vendor/llmswitch-core/dist/servertool/clock/daemon.js +207 -0
  842. package/vendor/llmswitch-core/dist/servertool/clock/io.d.ts +2 -0
  843. package/vendor/llmswitch-core/dist/servertool/clock/io.js +14 -0
  844. package/vendor/llmswitch-core/dist/servertool/clock/log.d.ts +3 -0
  845. package/vendor/llmswitch-core/dist/servertool/clock/log.js +13 -0
  846. package/vendor/llmswitch-core/dist/servertool/clock/ntp.d.ts +18 -0
  847. package/vendor/llmswitch-core/dist/servertool/clock/ntp.js +318 -0
  848. package/vendor/llmswitch-core/dist/servertool/clock/paths.d.ts +5 -0
  849. package/vendor/llmswitch-core/dist/servertool/clock/paths.js +28 -0
  850. package/vendor/llmswitch-core/dist/servertool/clock/recurrence.d.ts +7 -0
  851. package/vendor/llmswitch-core/dist/servertool/clock/recurrence.js +248 -0
  852. package/vendor/llmswitch-core/dist/servertool/clock/session-scope.d.ts +3 -0
  853. package/vendor/llmswitch-core/dist/servertool/clock/session-scope.js +41 -0
  854. package/vendor/llmswitch-core/dist/servertool/clock/session-store.d.ts +3 -0
  855. package/vendor/llmswitch-core/dist/servertool/clock/session-store.js +63 -0
  856. package/vendor/llmswitch-core/dist/servertool/clock/state.d.ts +9 -0
  857. package/vendor/llmswitch-core/dist/servertool/clock/state.js +135 -0
  858. package/vendor/llmswitch-core/dist/servertool/clock/task-store.d.ts +5 -0
  859. package/vendor/llmswitch-core/dist/servertool/clock/task-store.js +4 -0
  860. package/vendor/llmswitch-core/dist/servertool/clock/tasks.d.ts +24 -0
  861. package/vendor/llmswitch-core/dist/servertool/clock/tasks.js +595 -0
  862. package/vendor/llmswitch-core/dist/servertool/clock/types.d.ts +98 -0
  863. package/vendor/llmswitch-core/dist/servertool/clock/types.js +1 -0
  864. package/vendor/llmswitch-core/dist/servertool/continue-execution/log.d.ts +3 -0
  865. package/vendor/llmswitch-core/dist/servertool/continue-execution/log.js +13 -0
  866. package/vendor/llmswitch-core/dist/servertool/engine.d.ts +38 -0
  867. package/vendor/llmswitch-core/dist/servertool/engine.js +1660 -0
  868. package/vendor/llmswitch-core/dist/servertool/followup-shadow.d.ts +16 -0
  869. package/vendor/llmswitch-core/dist/servertool/followup-shadow.js +145 -0
  870. package/vendor/llmswitch-core/dist/servertool/handlers/antigravity-thought-signature-bootstrap.d.ts +1 -0
  871. package/vendor/llmswitch-core/dist/servertool/handlers/antigravity-thought-signature-bootstrap.js +225 -0
  872. package/vendor/llmswitch-core/dist/servertool/handlers/apply-patch-guard.d.ts +1 -0
  873. package/vendor/llmswitch-core/dist/servertool/handlers/apply-patch-guard.js +5 -0
  874. package/vendor/llmswitch-core/dist/servertool/handlers/clock-auto.d.ts +1 -0
  875. package/vendor/llmswitch-core/dist/servertool/handlers/clock-auto.js +177 -0
  876. package/vendor/llmswitch-core/dist/servertool/handlers/clock.d.ts +1 -0
  877. package/vendor/llmswitch-core/dist/servertool/handlers/clock.js +544 -0
  878. package/vendor/llmswitch-core/dist/servertool/handlers/compaction-detect.d.ts +1 -0
  879. package/vendor/llmswitch-core/dist/servertool/handlers/compaction-detect.js +1 -0
  880. package/vendor/llmswitch-core/dist/servertool/handlers/continue-execution.d.ts +1 -0
  881. package/vendor/llmswitch-core/dist/servertool/handlers/continue-execution.js +110 -0
  882. package/vendor/llmswitch-core/dist/servertool/handlers/exec-command-guard.d.ts +1 -0
  883. package/vendor/llmswitch-core/dist/servertool/handlers/exec-command-guard.js +10 -0
  884. package/vendor/llmswitch-core/dist/servertool/handlers/followup-message-trimmer.d.ts +16 -0
  885. package/vendor/llmswitch-core/dist/servertool/handlers/followup-message-trimmer.js +198 -0
  886. package/vendor/llmswitch-core/dist/servertool/handlers/followup-request-builder.d.ts +25 -0
  887. package/vendor/llmswitch-core/dist/servertool/handlers/followup-request-builder.js +515 -0
  888. package/vendor/llmswitch-core/dist/servertool/handlers/followup-sanitize.d.ts +2 -0
  889. package/vendor/llmswitch-core/dist/servertool/handlers/followup-sanitize.js +7 -0
  890. package/vendor/llmswitch-core/dist/servertool/handlers/gemini-empty-reply-continue.d.ts +1 -0
  891. package/vendor/llmswitch-core/dist/servertool/handlers/gemini-empty-reply-continue.js +3 -0
  892. package/vendor/llmswitch-core/dist/servertool/handlers/iflow-model-error-retry.d.ts +1 -0
  893. package/vendor/llmswitch-core/dist/servertool/handlers/iflow-model-error-retry.js +92 -0
  894. package/vendor/llmswitch-core/dist/servertool/handlers/recursive-detection-guard.d.ts +1 -0
  895. package/vendor/llmswitch-core/dist/servertool/handlers/recursive-detection-guard.js +374 -0
  896. package/vendor/llmswitch-core/dist/servertool/handlers/review.d.ts +1 -0
  897. package/vendor/llmswitch-core/dist/servertool/handlers/review.js +181 -0
  898. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/blocked-report.d.ts +16 -0
  899. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/blocked-report.js +407 -0
  900. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/iflow-followup.d.ts +44 -0
  901. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/iflow-followup.js +816 -0
  902. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/routing-state.d.ts +28 -0
  903. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/routing-state.js +123 -0
  904. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/runtime-utils.d.ts +81 -0
  905. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto/runtime-utils.js +355 -0
  906. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto.d.ts +1 -0
  907. package/vendor/llmswitch-core/dist/servertool/handlers/stop-message-auto.js +553 -0
  908. package/vendor/llmswitch-core/dist/servertool/handlers/vision.d.ts +7 -0
  909. package/vendor/llmswitch-core/dist/servertool/handlers/vision.js +240 -0
  910. package/vendor/llmswitch-core/dist/servertool/handlers/web-search.d.ts +7 -0
  911. package/vendor/llmswitch-core/dist/servertool/handlers/web-search.js +926 -0
  912. package/vendor/llmswitch-core/dist/servertool/log/progress-file.d.ts +14 -0
  913. package/vendor/llmswitch-core/dist/servertool/log/progress-file.js +88 -0
  914. package/vendor/llmswitch-core/dist/servertool/pending-session.d.ts +19 -0
  915. package/vendor/llmswitch-core/dist/servertool/pending-session.js +99 -0
  916. package/vendor/llmswitch-core/dist/servertool/pre-command-hooks.d.ts +17 -0
  917. package/vendor/llmswitch-core/dist/servertool/pre-command-hooks.js +491 -0
  918. package/vendor/llmswitch-core/dist/servertool/reenter-backend.d.ts +23 -0
  919. package/vendor/llmswitch-core/dist/servertool/reenter-backend.js +20 -0
  920. package/vendor/llmswitch-core/dist/servertool/registry.d.ts +35 -0
  921. package/vendor/llmswitch-core/dist/servertool/registry.js +92 -0
  922. package/vendor/llmswitch-core/dist/servertool/server-side-tools.d.ts +15 -0
  923. package/vendor/llmswitch-core/dist/servertool/server-side-tools.js +898 -0
  924. package/vendor/llmswitch-core/dist/servertool/stop-gateway-context.d.ts +14 -0
  925. package/vendor/llmswitch-core/dist/servertool/stop-gateway-context.js +167 -0
  926. package/vendor/llmswitch-core/dist/servertool/stop-message-compare-context.d.ts +24 -0
  927. package/vendor/llmswitch-core/dist/servertool/stop-message-compare-context.js +133 -0
  928. package/vendor/llmswitch-core/dist/servertool/strip-servertool-calls.d.ts +2 -0
  929. package/vendor/llmswitch-core/dist/servertool/strip-servertool-calls.js +75 -0
  930. package/vendor/llmswitch-core/dist/servertool/types.d.ts +235 -0
  931. package/vendor/llmswitch-core/dist/servertool/types.js +1 -0
  932. package/vendor/llmswitch-core/dist/sse/index.d.ts +176 -0
  933. package/vendor/llmswitch-core/dist/sse/index.js +142 -0
  934. package/vendor/llmswitch-core/dist/sse/json-to-sse/anthropic-json-to-sse-converter.d.ts +15 -0
  935. package/vendor/llmswitch-core/dist/sse/json-to-sse/anthropic-json-to-sse-converter.js +112 -0
  936. package/vendor/llmswitch-core/dist/sse/json-to-sse/chat-json-to-sse-converter.d.ts +80 -0
  937. package/vendor/llmswitch-core/dist/sse/json-to-sse/chat-json-to-sse-converter.js +300 -0
  938. package/vendor/llmswitch-core/dist/sse/json-to-sse/event-generators/chat.d.ts +55 -0
  939. package/vendor/llmswitch-core/dist/sse/json-to-sse/event-generators/chat.js +233 -0
  940. package/vendor/llmswitch-core/dist/sse/json-to-sse/event-generators/responses.d.ts +103 -0
  941. package/vendor/llmswitch-core/dist/sse/json-to-sse/event-generators/responses.js +703 -0
  942. package/vendor/llmswitch-core/dist/sse/json-to-sse/gemini-json-to-sse-converter.d.ts +15 -0
  943. package/vendor/llmswitch-core/dist/sse/json-to-sse/gemini-json-to-sse-converter.js +99 -0
  944. package/vendor/llmswitch-core/dist/sse/json-to-sse/index.d.ts +7 -0
  945. package/vendor/llmswitch-core/dist/sse/json-to-sse/index.js +9 -0
  946. package/vendor/llmswitch-core/dist/sse/json-to-sse/responses-json-to-sse-converter.d.ts +80 -0
  947. package/vendor/llmswitch-core/dist/sse/json-to-sse/responses-json-to-sse-converter.js +322 -0
  948. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/anthropic-sequencer.d.ts +13 -0
  949. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/anthropic-sequencer.js +162 -0
  950. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/chat-sequencer.d.ts +39 -0
  951. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/chat-sequencer.js +264 -0
  952. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/gemini-sequencer.d.ts +10 -0
  953. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/gemini-sequencer.js +95 -0
  954. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/responses-sequencer.d.ts +40 -0
  955. package/vendor/llmswitch-core/dist/sse/json-to-sse/sequencers/responses-sequencer.js +293 -0
  956. package/vendor/llmswitch-core/dist/sse/registry/sse-codec-registry.d.ts +32 -0
  957. package/vendor/llmswitch-core/dist/sse/registry/sse-codec-registry.js +135 -0
  958. package/vendor/llmswitch-core/dist/sse/shared/chat-serializer.d.ts +4 -0
  959. package/vendor/llmswitch-core/dist/sse/shared/chat-serializer.js +40 -0
  960. package/vendor/llmswitch-core/dist/sse/shared/constants.d.ts +272 -0
  961. package/vendor/llmswitch-core/dist/sse/shared/constants.js +321 -0
  962. package/vendor/llmswitch-core/dist/sse/shared/reasoning-dispatcher.d.ts +10 -0
  963. package/vendor/llmswitch-core/dist/sse/shared/reasoning-dispatcher.js +25 -0
  964. package/vendor/llmswitch-core/dist/sse/shared/responses-output-normalizer.d.ts +13 -0
  965. package/vendor/llmswitch-core/dist/sse/shared/responses-output-normalizer.js +47 -0
  966. package/vendor/llmswitch-core/dist/sse/shared/serializers/anthropic-event-serializer.d.ts +2 -0
  967. package/vendor/llmswitch-core/dist/sse/shared/serializers/anthropic-event-serializer.js +9 -0
  968. package/vendor/llmswitch-core/dist/sse/shared/serializers/base-serializer.d.ts +158 -0
  969. package/vendor/llmswitch-core/dist/sse/shared/serializers/base-serializer.js +210 -0
  970. package/vendor/llmswitch-core/dist/sse/shared/serializers/chat-event-serializer.d.ts +82 -0
  971. package/vendor/llmswitch-core/dist/sse/shared/serializers/chat-event-serializer.js +275 -0
  972. package/vendor/llmswitch-core/dist/sse/shared/serializers/gemini-event-serializer.d.ts +2 -0
  973. package/vendor/llmswitch-core/dist/sse/shared/serializers/gemini-event-serializer.js +5 -0
  974. package/vendor/llmswitch-core/dist/sse/shared/serializers/index.d.ts +42 -0
  975. package/vendor/llmswitch-core/dist/sse/shared/serializers/index.js +56 -0
  976. package/vendor/llmswitch-core/dist/sse/shared/serializers/responses-event-serializer.d.ts +131 -0
  977. package/vendor/llmswitch-core/dist/sse/shared/serializers/responses-event-serializer.js +375 -0
  978. package/vendor/llmswitch-core/dist/sse/shared/serializers/types.d.ts +51 -0
  979. package/vendor/llmswitch-core/dist/sse/shared/serializers/types.js +4 -0
  980. package/vendor/llmswitch-core/dist/sse/shared/utils.d.ts +254 -0
  981. package/vendor/llmswitch-core/dist/sse/shared/utils.js +543 -0
  982. package/vendor/llmswitch-core/dist/sse/shared/writer.d.ts +127 -0
  983. package/vendor/llmswitch-core/dist/sse/shared/writer.js +321 -0
  984. package/vendor/llmswitch-core/dist/sse/sse-to-json/anthropic-sse-to-json-converter.d.ts +20 -0
  985. package/vendor/llmswitch-core/dist/sse/sse-to-json/anthropic-sse-to-json-converter.js +204 -0
  986. package/vendor/llmswitch-core/dist/sse/sse-to-json/builders/anthropic-response-builder.d.ts +16 -0
  987. package/vendor/llmswitch-core/dist/sse/sse-to-json/builders/anthropic-response-builder.js +258 -0
  988. package/vendor/llmswitch-core/dist/sse/sse-to-json/builders/response-builder.d.ts +177 -0
  989. package/vendor/llmswitch-core/dist/sse/sse-to-json/builders/response-builder.js +1135 -0
  990. package/vendor/llmswitch-core/dist/sse/sse-to-json/chat-sse-to-json-converter.d.ts +119 -0
  991. package/vendor/llmswitch-core/dist/sse/sse-to-json/chat-sse-to-json-converter.js +850 -0
  992. package/vendor/llmswitch-core/dist/sse/sse-to-json/gemini-sse-to-json-converter.d.ts +14 -0
  993. package/vendor/llmswitch-core/dist/sse/sse-to-json/gemini-sse-to-json-converter.js +186 -0
  994. package/vendor/llmswitch-core/dist/sse/sse-to-json/index.d.ts +7 -0
  995. package/vendor/llmswitch-core/dist/sse/sse-to-json/index.js +9 -0
  996. package/vendor/llmswitch-core/dist/sse/sse-to-json/parsers/sse-parser.d.ts +73 -0
  997. package/vendor/llmswitch-core/dist/sse/sse-to-json/parsers/sse-parser.js +434 -0
  998. package/vendor/llmswitch-core/dist/sse/sse-to-json/responses-sse-to-json-converter.d.ts +61 -0
  999. package/vendor/llmswitch-core/dist/sse/sse-to-json/responses-sse-to-json-converter.js +306 -0
  1000. package/vendor/llmswitch-core/dist/sse/types/anthropic-types.d.ts +194 -0
  1001. package/vendor/llmswitch-core/dist/sse/types/anthropic-types.js +8 -0
  1002. package/vendor/llmswitch-core/dist/sse/types/chat-types.d.ts +321 -0
  1003. package/vendor/llmswitch-core/dist/sse/types/chat-types.js +33 -0
  1004. package/vendor/llmswitch-core/dist/sse/types/conversion-context.d.ts +214 -0
  1005. package/vendor/llmswitch-core/dist/sse/types/conversion-context.js +20 -0
  1006. package/vendor/llmswitch-core/dist/sse/types/core-interfaces.d.ts +94 -0
  1007. package/vendor/llmswitch-core/dist/sse/types/core-interfaces.js +5 -0
  1008. package/vendor/llmswitch-core/dist/sse/types/gemini-types.d.ts +135 -0
  1009. package/vendor/llmswitch-core/dist/sse/types/gemini-types.js +5 -0
  1010. package/vendor/llmswitch-core/dist/sse/types/index.d.ts +17 -0
  1011. package/vendor/llmswitch-core/dist/sse/types/index.js +9 -0
  1012. package/vendor/llmswitch-core/dist/sse/types/responses-types.d.ts +334 -0
  1013. package/vendor/llmswitch-core/dist/sse/types/responses-types.js +38 -0
  1014. package/vendor/llmswitch-core/dist/sse/types/sse-events.d.ts +181 -0
  1015. package/vendor/llmswitch-core/dist/sse/types/sse-events.js +150 -0
  1016. package/vendor/llmswitch-core/dist/sse/types/stream-state.d.ts +199 -0
  1017. package/vendor/llmswitch-core/dist/sse/types/stream-state.js +44 -0
  1018. package/vendor/llmswitch-core/dist/sse/types/utility-types.d.ts +234 -0
  1019. package/vendor/llmswitch-core/dist/sse/types/utility-types.js +46 -0
  1020. package/vendor/llmswitch-core/dist/telemetry/stats-center.d.ts +82 -0
  1021. package/vendor/llmswitch-core/dist/telemetry/stats-center.js +308 -0
  1022. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/default-actions.d.ts +2 -0
  1023. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/default-actions.js +12 -0
  1024. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/extract-patch.d.ts +2 -0
  1025. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/extract-patch.js +15 -0
  1026. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/index.d.ts +2 -0
  1027. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/index.js +164 -0
  1028. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/structured-builders.d.ts +7 -0
  1029. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/structured-builders.js +85 -0
  1030. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/types.d.ts +54 -0
  1031. package/vendor/llmswitch-core/dist/tools/apply-patch/args-normalizer/types.js +1 -0
  1032. package/vendor/llmswitch-core/dist/tools/apply-patch/execution-capturer.d.ts +13 -0
  1033. package/vendor/llmswitch-core/dist/tools/apply-patch/execution-capturer.js +181 -0
  1034. package/vendor/llmswitch-core/dist/tools/apply-patch/json/parse-loose.d.ts +3 -0
  1035. package/vendor/llmswitch-core/dist/tools/apply-patch/json/parse-loose.js +139 -0
  1036. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/context-diff.d.ts +1 -0
  1037. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/context-diff.js +173 -0
  1038. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/git-diff.d.ts +1 -0
  1039. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/git-diff.js +138 -0
  1040. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/looks-like-patch.d.ts +1 -0
  1041. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/looks-like-patch.js +11 -0
  1042. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/normalize.d.ts +3 -0
  1043. package/vendor/llmswitch-core/dist/tools/apply-patch/patch-text/normalize.js +383 -0
  1044. package/vendor/llmswitch-core/dist/tools/apply-patch/regression-capturer.d.ts +13 -0
  1045. package/vendor/llmswitch-core/dist/tools/apply-patch/regression-capturer.js +113 -0
  1046. package/vendor/llmswitch-core/dist/tools/apply-patch/structured/coercion.d.ts +3 -0
  1047. package/vendor/llmswitch-core/dist/tools/apply-patch/structured/coercion.js +103 -0
  1048. package/vendor/llmswitch-core/dist/tools/apply-patch/structured.d.ts +20 -0
  1049. package/vendor/llmswitch-core/dist/tools/apply-patch/structured.js +537 -0
  1050. package/vendor/llmswitch-core/dist/tools/apply-patch/validation/shared.d.ts +3 -0
  1051. package/vendor/llmswitch-core/dist/tools/apply-patch/validation/shared.js +6 -0
  1052. package/vendor/llmswitch-core/dist/tools/apply-patch/validator.d.ts +8 -0
  1053. package/vendor/llmswitch-core/dist/tools/apply-patch/validator.js +21 -0
  1054. package/vendor/llmswitch-core/dist/tools/apply-patch-structured.d.ts +1 -0
  1055. package/vendor/llmswitch-core/dist/tools/apply-patch-structured.js +1 -0
  1056. package/vendor/llmswitch-core/dist/tools/args-json.d.ts +1 -0
  1057. package/vendor/llmswitch-core/dist/tools/args-json.js +204 -0
  1058. package/vendor/llmswitch-core/dist/tools/exec-command/normalize.d.ts +17 -0
  1059. package/vendor/llmswitch-core/dist/tools/exec-command/normalize.js +116 -0
  1060. package/vendor/llmswitch-core/dist/tools/exec-command/regression-capturer.d.ts +11 -0
  1061. package/vendor/llmswitch-core/dist/tools/exec-command/regression-capturer.js +144 -0
  1062. package/vendor/llmswitch-core/dist/tools/exec-command/validator.d.ts +10 -0
  1063. package/vendor/llmswitch-core/dist/tools/exec-command/validator.js +238 -0
  1064. package/vendor/llmswitch-core/dist/tools/patch-regression-capturer.d.ts +1 -0
  1065. package/vendor/llmswitch-core/dist/tools/patch-regression-capturer.js +1 -0
  1066. package/vendor/llmswitch-core/dist/tools/tool-description-utils.d.ts +5 -0
  1067. package/vendor/llmswitch-core/dist/tools/tool-description-utils.js +50 -0
  1068. package/vendor/llmswitch-core/dist/tools/tool-registry.d.ts +15 -0
  1069. package/vendor/llmswitch-core/dist/tools/tool-registry.js +253 -0
  1070. package/vendor/llmswitch-core/package.json +189 -0
  1071. package/scripts/link-llmswitch.mjs +0 -56
@@ -0,0 +1,2594 @@
1
+ import { failNativeRequired, isNativeDisabledByEnv } from './native-router-hotpath-policy.js';
2
+ import { loadNativeRouterHotpathBindingForInternalUse } from './native-router-hotpath.js';
3
+ function readNativeFunction(name) {
4
+ const binding = loadNativeRouterHotpathBindingForInternalUse();
5
+ const fn = binding?.[name];
6
+ return typeof fn === 'function' ? fn : null;
7
+ }
8
+ function safeStringify(value) {
9
+ try {
10
+ return JSON.stringify(value);
11
+ }
12
+ catch {
13
+ return undefined;
14
+ }
15
+ }
16
+ function parseJson(raw) {
17
+ try {
18
+ return JSON.parse(raw);
19
+ }
20
+ catch {
21
+ return null;
22
+ }
23
+ }
24
+ function parseRecord(raw) {
25
+ const parsed = parseJson(raw);
26
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
27
+ return null;
28
+ }
29
+ return parsed;
30
+ }
31
+ function parseExtractToolCallsOutput(raw) {
32
+ const parsed = parseJson(raw);
33
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
34
+ return null;
35
+ }
36
+ const row = parsed;
37
+ if (typeof row.cleanedText !== 'string' || !Array.isArray(row.toolCalls)) {
38
+ return null;
39
+ }
40
+ const toolCalls = row.toolCalls.filter((entry) => entry && typeof entry === 'object');
41
+ return {
42
+ cleanedText: row.cleanedText,
43
+ toolCalls
44
+ };
45
+ }
46
+ function parseReasoningItems(raw) {
47
+ const parsed = parseJson(raw);
48
+ if (!Array.isArray(parsed)) {
49
+ return null;
50
+ }
51
+ const out = [];
52
+ for (const entry of parsed) {
53
+ if (!entry || typeof entry !== 'object' || Array.isArray(entry)) {
54
+ return null;
55
+ }
56
+ const row = entry;
57
+ if (row.type !== 'reasoning' || typeof row.content !== 'string') {
58
+ return null;
59
+ }
60
+ out.push({ type: 'reasoning', content: row.content });
61
+ }
62
+ return out;
63
+ }
64
+ function parseExtractReasoningSegmentsOutput(raw) {
65
+ const parsed = parseJson(raw);
66
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
67
+ return null;
68
+ }
69
+ const row = parsed;
70
+ if (typeof row.text !== 'string' || !Array.isArray(row.segments)) {
71
+ return null;
72
+ }
73
+ const segments = row.segments.filter((entry) => typeof entry === 'string');
74
+ if (segments.length !== row.segments.length) {
75
+ return null;
76
+ }
77
+ return { text: row.text, segments };
78
+ }
79
+ function parseNormalizeReasoningOutput(raw) {
80
+ const parsed = parseJson(raw);
81
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
82
+ return null;
83
+ }
84
+ const row = parsed;
85
+ return { payload: row.payload };
86
+ }
87
+ function parseToolCallLiteArray(raw) {
88
+ const parsed = parseJson(raw);
89
+ if (!Array.isArray(parsed)) {
90
+ return null;
91
+ }
92
+ const out = [];
93
+ for (const entry of parsed) {
94
+ if (!entry || typeof entry !== 'object' || Array.isArray(entry)) {
95
+ return null;
96
+ }
97
+ const row = entry;
98
+ if (typeof row.name !== 'string' || typeof row.args !== 'string') {
99
+ return null;
100
+ }
101
+ const id = typeof row.id === 'string' && row.id.trim().length ? row.id : undefined;
102
+ out.push({ id, name: row.name, args: row.args });
103
+ }
104
+ return out;
105
+ }
106
+ function parseArray(raw) {
107
+ const parsed = parseJson(raw);
108
+ return Array.isArray(parsed) ? parsed : null;
109
+ }
110
+ function parseToolDefinitionOutput(raw) {
111
+ const parsed = parseRecord(raw);
112
+ return parsed;
113
+ }
114
+ function parseResponsesConversationResumeResult(raw) {
115
+ const parsed = parseRecord(raw);
116
+ if (!parsed) {
117
+ return null;
118
+ }
119
+ const payload = parsed.payload;
120
+ const meta = parsed.meta;
121
+ if (!payload || typeof payload !== 'object' || Array.isArray(payload)) {
122
+ return null;
123
+ }
124
+ if (!meta || typeof meta !== 'object' || Array.isArray(meta)) {
125
+ return null;
126
+ }
127
+ return {
128
+ payload: payload,
129
+ meta: meta
130
+ };
131
+ }
132
+ function parseToolDefinitionArray(raw) {
133
+ const parsed = parseArray(raw);
134
+ if (!parsed)
135
+ return null;
136
+ const output = [];
137
+ for (const entry of parsed) {
138
+ if (entry && typeof entry === 'object' && !Array.isArray(entry)) {
139
+ output.push(entry);
140
+ }
141
+ }
142
+ return output;
143
+ }
144
+ function parseString(raw) {
145
+ const parsed = parseJson(raw);
146
+ return typeof parsed === 'string' ? parsed : null;
147
+ }
148
+ function parseStringArray(raw) {
149
+ const parsed = parseArray(raw);
150
+ if (!parsed)
151
+ return null;
152
+ const out = [];
153
+ for (const item of parsed) {
154
+ if (typeof item !== "string") {
155
+ return null;
156
+ }
157
+ out.push(item);
158
+ }
159
+ return out;
160
+ }
161
+ export function parseLenientJsonishWithNative(value) {
162
+ const capability = 'parseLenientJsonishJson';
163
+ const fail = (reason) => failNativeRequired(capability, reason);
164
+ if (isNativeDisabledByEnv()) {
165
+ return fail('native disabled');
166
+ }
167
+ const fn = readNativeFunction(capability);
168
+ if (!fn) {
169
+ return fail();
170
+ }
171
+ const valueJson = safeStringify(value ?? null);
172
+ if (!valueJson) {
173
+ return fail('json stringify failed');
174
+ }
175
+ try {
176
+ const raw = fn(valueJson);
177
+ if (typeof raw !== 'string' || !raw) {
178
+ return fail('empty result');
179
+ }
180
+ const parsed = parseJson(raw);
181
+ return parsed === null ? fail('invalid payload') : parsed;
182
+ }
183
+ catch (error) {
184
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
185
+ return fail(reason);
186
+ }
187
+ }
188
+ export function repairArgumentsToStringWithNative(value) {
189
+ const capability = 'repairArgumentsToStringJsonishJson';
190
+ const fail = (reason) => failNativeRequired(capability, reason);
191
+ if (isNativeDisabledByEnv()) {
192
+ return fail('native disabled');
193
+ }
194
+ const fn = readNativeFunction(capability);
195
+ if (!fn) {
196
+ return fail();
197
+ }
198
+ const valueJson = safeStringify(value ?? null);
199
+ if (!valueJson) {
200
+ return fail('json stringify failed');
201
+ }
202
+ try {
203
+ const raw = fn(valueJson);
204
+ if (typeof raw !== 'string') {
205
+ return fail('invalid payload');
206
+ }
207
+ return raw;
208
+ }
209
+ catch (error) {
210
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
211
+ return fail(reason);
212
+ }
213
+ }
214
+ export function extractToolCallsFromReasoningTextWithNative(text, idPrefix) {
215
+ const capability = 'extractToolCallsFromReasoningTextJson';
216
+ const fail = (reason) => failNativeRequired(capability, reason);
217
+ if (isNativeDisabledByEnv()) {
218
+ return fail('native disabled');
219
+ }
220
+ const fn = readNativeFunction(capability);
221
+ if (!fn) {
222
+ return fail();
223
+ }
224
+ try {
225
+ const raw = fn(String(text ?? ''), idPrefix);
226
+ if (typeof raw !== 'string' || !raw) {
227
+ return fail('empty result');
228
+ }
229
+ const parsed = parseExtractToolCallsOutput(raw);
230
+ return parsed ?? fail('invalid payload');
231
+ }
232
+ catch (error) {
233
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
234
+ return fail(reason);
235
+ }
236
+ }
237
+ export function extractReasoningSegmentsWithNative(source) {
238
+ const capability = 'extractReasoningSegmentsJson';
239
+ const fail = (reason) => failNativeRequired(capability, reason);
240
+ if (isNativeDisabledByEnv()) {
241
+ return fail('native disabled');
242
+ }
243
+ const fn = readNativeFunction(capability);
244
+ if (!fn) {
245
+ return fail();
246
+ }
247
+ const payloadJson = safeStringify({ source: String(source ?? '') });
248
+ if (!payloadJson) {
249
+ return fail('json stringify failed');
250
+ }
251
+ try {
252
+ const raw = fn(payloadJson);
253
+ if (typeof raw !== 'string' || !raw) {
254
+ return fail('empty result');
255
+ }
256
+ const parsed = parseExtractReasoningSegmentsOutput(raw);
257
+ return parsed ?? fail('invalid payload');
258
+ }
259
+ catch (error) {
260
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
261
+ return fail(reason);
262
+ }
263
+ }
264
+ export function normalizeAssistantTextToToolCallsWithNative(message, options) {
265
+ const capability = 'normalizeAssistantTextToToolCallsJson';
266
+ const fail = (reason) => failNativeRequired(capability, reason);
267
+ if (isNativeDisabledByEnv()) {
268
+ return fail('native disabled');
269
+ }
270
+ const fn = readNativeFunction(capability);
271
+ if (!fn) {
272
+ return fail();
273
+ }
274
+ const msgJson = safeStringify(message ?? null);
275
+ if (!msgJson) {
276
+ return fail('json stringify failed');
277
+ }
278
+ const optionsJson = options ? safeStringify(options) : undefined;
279
+ try {
280
+ const raw = fn(msgJson, optionsJson);
281
+ if (typeof raw !== 'string' || !raw) {
282
+ return fail('empty result');
283
+ }
284
+ const parsed = parseRecord(raw);
285
+ return parsed ?? fail('invalid payload');
286
+ }
287
+ catch (error) {
288
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
289
+ return fail(reason);
290
+ }
291
+ }
292
+ export function normalizeReasoningInChatPayloadWithNative(payload) {
293
+ const capability = 'normalizeReasoningInChatPayloadJson';
294
+ const fail = (reason) => failNativeRequired(capability, reason);
295
+ if (isNativeDisabledByEnv()) {
296
+ return fail('native disabled');
297
+ }
298
+ const fn = readNativeFunction(capability);
299
+ if (!fn) {
300
+ return fail();
301
+ }
302
+ const payloadJson = safeStringify({ payload: payload ?? null });
303
+ if (!payloadJson) {
304
+ return fail('json stringify failed');
305
+ }
306
+ try {
307
+ const raw = fn(payloadJson);
308
+ if (typeof raw !== 'string' || !raw) {
309
+ return fail('empty result');
310
+ }
311
+ const parsed = parseNormalizeReasoningOutput(raw);
312
+ return parsed ? parsed.payload : fail('invalid payload');
313
+ }
314
+ catch (error) {
315
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
316
+ return fail(reason);
317
+ }
318
+ }
319
+ export function normalizeReasoningInResponsesPayloadWithNative(payload, options) {
320
+ const capability = 'normalizeReasoningInResponsesPayloadJson';
321
+ const fail = (reason) => failNativeRequired(capability, reason);
322
+ if (isNativeDisabledByEnv()) {
323
+ return fail('native disabled');
324
+ }
325
+ const fn = readNativeFunction(capability);
326
+ if (!fn) {
327
+ return fail();
328
+ }
329
+ const payloadJson = safeStringify({ payload: payload ?? null, options: options ?? null });
330
+ if (!payloadJson) {
331
+ return fail('json stringify failed');
332
+ }
333
+ try {
334
+ const raw = fn(payloadJson);
335
+ if (typeof raw !== 'string' || !raw) {
336
+ return fail('empty result');
337
+ }
338
+ const parsed = parseNormalizeReasoningOutput(raw);
339
+ return parsed ? parsed.payload : fail('invalid payload');
340
+ }
341
+ catch (error) {
342
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
343
+ return fail(reason);
344
+ }
345
+ }
346
+ export function normalizeReasoningInGeminiPayloadWithNative(payload) {
347
+ const capability = 'normalizeReasoningInGeminiPayloadJson';
348
+ const fail = (reason) => failNativeRequired(capability, reason);
349
+ if (isNativeDisabledByEnv()) {
350
+ return fail('native disabled');
351
+ }
352
+ const fn = readNativeFunction(capability);
353
+ if (!fn) {
354
+ return fail();
355
+ }
356
+ const payloadJson = safeStringify({ payload: payload ?? null });
357
+ if (!payloadJson) {
358
+ return fail('json stringify failed');
359
+ }
360
+ try {
361
+ const raw = fn(payloadJson);
362
+ if (typeof raw !== 'string' || !raw) {
363
+ return fail('empty result');
364
+ }
365
+ const parsed = parseNormalizeReasoningOutput(raw);
366
+ return parsed ? parsed.payload : fail('invalid payload');
367
+ }
368
+ catch (error) {
369
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
370
+ return fail(reason);
371
+ }
372
+ }
373
+ export function normalizeReasoningInAnthropicPayloadWithNative(payload) {
374
+ const capability = 'normalizeReasoningInAnthropicPayloadJson';
375
+ const fail = (reason) => failNativeRequired(capability, reason);
376
+ if (isNativeDisabledByEnv()) {
377
+ return fail('native disabled');
378
+ }
379
+ const fn = readNativeFunction(capability);
380
+ if (!fn) {
381
+ return fail();
382
+ }
383
+ const payloadJson = safeStringify({ payload: payload ?? null });
384
+ if (!payloadJson) {
385
+ return fail('json stringify failed');
386
+ }
387
+ try {
388
+ const raw = fn(payloadJson);
389
+ if (typeof raw !== 'string' || !raw) {
390
+ return fail('empty result');
391
+ }
392
+ const parsed = parseNormalizeReasoningOutput(raw);
393
+ return parsed ? parsed.payload : fail('invalid payload');
394
+ }
395
+ catch (error) {
396
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
397
+ return fail(reason);
398
+ }
399
+ }
400
+ export function normalizeReasoningInOpenAIPayloadWithNative(payload) {
401
+ const capability = 'normalizeReasoningInOpenAIPayloadJson';
402
+ const fail = (reason) => failNativeRequired(capability, reason);
403
+ if (isNativeDisabledByEnv()) {
404
+ return fail('native disabled');
405
+ }
406
+ const fn = readNativeFunction(capability);
407
+ if (!fn) {
408
+ return fail();
409
+ }
410
+ const payloadJson = safeStringify({ payload: payload ?? null });
411
+ if (!payloadJson) {
412
+ return fail('json stringify failed');
413
+ }
414
+ try {
415
+ const raw = fn(payloadJson);
416
+ if (typeof raw !== 'string' || !raw) {
417
+ return fail('empty result');
418
+ }
419
+ const parsed = parseNormalizeReasoningOutput(raw);
420
+ return parsed ? parsed.payload : fail('invalid payload');
421
+ }
422
+ catch (error) {
423
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
424
+ return fail(reason);
425
+ }
426
+ }
427
+ export function bridgeToolToChatDefinitionWithNative(tool, options) {
428
+ const capability = 'bridgeToolToChatDefinitionJson';
429
+ const fail = (reason) => failNativeRequired(capability, reason);
430
+ if (isNativeDisabledByEnv()) {
431
+ return fail('native disabled');
432
+ }
433
+ const fn = readNativeFunction(capability);
434
+ if (!fn) {
435
+ return fail();
436
+ }
437
+ const payloadJson = safeStringify({ tool, options: options ?? null });
438
+ if (!payloadJson) {
439
+ return fail('json stringify failed');
440
+ }
441
+ try {
442
+ const raw = fn(payloadJson);
443
+ if (typeof raw !== 'string' || !raw) {
444
+ return fail('empty result');
445
+ }
446
+ const parsed = parseToolDefinitionOutput(raw);
447
+ return parsed ?? fail('invalid payload');
448
+ }
449
+ catch (error) {
450
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
451
+ return fail(reason);
452
+ }
453
+ }
454
+ export function chatToolToBridgeDefinitionWithNative(tool, options) {
455
+ const capability = 'chatToolToBridgeDefinitionJson';
456
+ const fail = (reason) => failNativeRequired(capability, reason);
457
+ if (isNativeDisabledByEnv()) {
458
+ return fail('native disabled');
459
+ }
460
+ const fn = readNativeFunction(capability);
461
+ if (!fn) {
462
+ return fail();
463
+ }
464
+ const payloadJson = safeStringify({ tool, options: options ?? null });
465
+ if (!payloadJson) {
466
+ return fail('json stringify failed');
467
+ }
468
+ try {
469
+ const raw = fn(payloadJson);
470
+ if (typeof raw !== 'string' || !raw) {
471
+ return fail('empty result');
472
+ }
473
+ const parsed = parseToolDefinitionOutput(raw);
474
+ return parsed ?? fail('invalid payload');
475
+ }
476
+ catch (error) {
477
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
478
+ return fail(reason);
479
+ }
480
+ }
481
+ export function mapBridgeToolsToChatWithNative(rawTools, options) {
482
+ const capability = 'mapBridgeToolsToChatWithOptionsJson';
483
+ const fail = (reason) => failNativeRequired(capability, reason);
484
+ if (isNativeDisabledByEnv()) {
485
+ return fail('native disabled');
486
+ }
487
+ const fn = readNativeFunction(capability);
488
+ if (!fn) {
489
+ return fail();
490
+ }
491
+ const payloadJson = safeStringify({ tools: Array.isArray(rawTools) ? rawTools : [], options: options ?? null });
492
+ if (!payloadJson) {
493
+ return fail('json stringify failed');
494
+ }
495
+ try {
496
+ const raw = fn(payloadJson);
497
+ if (typeof raw !== 'string' || !raw) {
498
+ return fail('empty result');
499
+ }
500
+ const parsed = parseToolDefinitionArray(raw);
501
+ return parsed ?? fail('invalid payload');
502
+ }
503
+ catch (error) {
504
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
505
+ return fail(reason);
506
+ }
507
+ }
508
+ export function mapChatToolsToBridgeWithNative(rawTools, options) {
509
+ const capability = 'mapChatToolsToBridgeWithOptionsJson';
510
+ const fail = (reason) => failNativeRequired(capability, reason);
511
+ if (isNativeDisabledByEnv()) {
512
+ return fail('native disabled');
513
+ }
514
+ const fn = readNativeFunction(capability);
515
+ if (!fn) {
516
+ return fail();
517
+ }
518
+ const payloadJson = safeStringify({ tools: Array.isArray(rawTools) ? rawTools : [], options: options ?? null });
519
+ if (!payloadJson) {
520
+ return fail('json stringify failed');
521
+ }
522
+ try {
523
+ const raw = fn(payloadJson);
524
+ if (typeof raw !== 'string' || !raw) {
525
+ return fail('empty result');
526
+ }
527
+ const parsed = parseToolDefinitionArray(raw);
528
+ return parsed ?? fail('invalid payload');
529
+ }
530
+ catch (error) {
531
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
532
+ return fail(reason);
533
+ }
534
+ }
535
+ export function collectToolCallsFromResponsesWithNative(response) {
536
+ const capability = 'collectToolCallsFromResponsesJson';
537
+ const fail = (reason) => failNativeRequired(capability, reason);
538
+ if (isNativeDisabledByEnv()) {
539
+ return fail('native disabled');
540
+ }
541
+ const fn = readNativeFunction(capability);
542
+ if (!fn) {
543
+ return fail();
544
+ }
545
+ const payloadJson = safeStringify(response ?? {});
546
+ if (!payloadJson) {
547
+ return fail('json stringify failed');
548
+ }
549
+ try {
550
+ const raw = fn(payloadJson);
551
+ if (typeof raw !== 'string' || !raw) {
552
+ return fail('empty result');
553
+ }
554
+ const parsed = parseToolDefinitionArray(raw);
555
+ return parsed ?? fail('invalid payload');
556
+ }
557
+ catch (error) {
558
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
559
+ return fail(reason);
560
+ }
561
+ }
562
+ export function resolveFinishReasonWithNative(response, toolCalls) {
563
+ const capability = 'resolveFinishReasonJson';
564
+ const fail = (reason) => failNativeRequired(capability, reason);
565
+ if (isNativeDisabledByEnv()) {
566
+ return fail('native disabled');
567
+ }
568
+ const fn = readNativeFunction(capability);
569
+ if (!fn) {
570
+ return fail();
571
+ }
572
+ const responseJson = safeStringify(response ?? {});
573
+ const toolCallsJson = safeStringify(Array.isArray(toolCalls) ? toolCalls : []);
574
+ if (!responseJson || !toolCallsJson) {
575
+ return fail('json stringify failed');
576
+ }
577
+ try {
578
+ const raw = fn(responseJson, toolCallsJson);
579
+ if (typeof raw !== 'string' || !raw) {
580
+ return fail('empty result');
581
+ }
582
+ return parseString(raw) ?? fail('invalid payload');
583
+ }
584
+ catch (error) {
585
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
586
+ return fail(reason);
587
+ }
588
+ }
589
+ export function buildChatResponseFromResponsesWithNative(payload) {
590
+ const capability = 'buildChatResponseFromResponsesJson';
591
+ const fail = (reason) => failNativeRequired(capability, reason);
592
+ if (isNativeDisabledByEnv()) {
593
+ return fail('native disabled');
594
+ }
595
+ const fn = readNativeFunction(capability);
596
+ if (!fn) {
597
+ return fail();
598
+ }
599
+ const payloadJson = safeStringify(payload ?? null);
600
+ if (!payloadJson) {
601
+ return fail('json stringify failed');
602
+ }
603
+ try {
604
+ const raw = fn(payloadJson);
605
+ if (typeof raw !== 'string' || !raw) {
606
+ return fail('empty result');
607
+ }
608
+ return parseRecord(raw) ?? fail('invalid payload');
609
+ }
610
+ catch (error) {
611
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
612
+ return fail(reason);
613
+ }
614
+ }
615
+ export function hasValidThoughtSignatureWithNative(block, options) {
616
+ const capability = 'hasValidThoughtSignatureJson';
617
+ const fail = (reason) => failNativeRequired(capability, reason);
618
+ if (isNativeDisabledByEnv()) {
619
+ return fail('native disabled');
620
+ }
621
+ const fn = readNativeFunction(capability);
622
+ if (!fn) {
623
+ return fail();
624
+ }
625
+ const payloadJson = safeStringify({ block: block ?? null, options: options ?? null });
626
+ if (!payloadJson) {
627
+ return fail('json stringify failed');
628
+ }
629
+ try {
630
+ const raw = fn(payloadJson);
631
+ if (typeof raw !== 'string' || !raw) {
632
+ return fail('empty result');
633
+ }
634
+ const parsed = parseJson(raw);
635
+ return typeof parsed === 'boolean' ? parsed : fail('invalid payload');
636
+ }
637
+ catch (error) {
638
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
639
+ return fail(reason);
640
+ }
641
+ }
642
+ export function sanitizeThinkingBlockWithNative(block) {
643
+ const capability = 'sanitizeThinkingBlockJson';
644
+ const fail = (reason) => failNativeRequired(capability, reason);
645
+ if (isNativeDisabledByEnv()) {
646
+ return fail('native disabled');
647
+ }
648
+ const fn = readNativeFunction(capability);
649
+ if (!fn) {
650
+ return fail();
651
+ }
652
+ const payloadJson = safeStringify({ block: block ?? null });
653
+ if (!payloadJson) {
654
+ return fail('json stringify failed');
655
+ }
656
+ try {
657
+ const raw = fn(payloadJson);
658
+ if (typeof raw !== 'string' || !raw) {
659
+ return fail('empty result');
660
+ }
661
+ const parsed = parseRecord(raw);
662
+ return parsed ?? fail('invalid payload');
663
+ }
664
+ catch (error) {
665
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
666
+ return fail(reason);
667
+ }
668
+ }
669
+ export function filterInvalidThinkingBlocksWithNative(messages, options) {
670
+ const capability = 'filterInvalidThinkingBlocksJson';
671
+ const fail = (reason) => failNativeRequired(capability, reason);
672
+ if (isNativeDisabledByEnv()) {
673
+ return fail('native disabled');
674
+ }
675
+ const fn = readNativeFunction(capability);
676
+ if (!fn) {
677
+ return fail();
678
+ }
679
+ const payloadJson = safeStringify({ messages: Array.isArray(messages) ? messages : [], options: options ?? null });
680
+ if (!payloadJson) {
681
+ return fail('json stringify failed');
682
+ }
683
+ try {
684
+ const raw = fn(payloadJson);
685
+ if (typeof raw !== 'string' || !raw) {
686
+ return fail('empty result');
687
+ }
688
+ const parsed = parseArray(raw);
689
+ return parsed ?? fail('invalid payload');
690
+ }
691
+ catch (error) {
692
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
693
+ return fail(reason);
694
+ }
695
+ }
696
+ export function removeTrailingUnsignedThinkingBlocksWithNative(blocks, options) {
697
+ const capability = 'removeTrailingUnsignedThinkingBlocksJson';
698
+ const fail = (reason) => failNativeRequired(capability, reason);
699
+ if (isNativeDisabledByEnv()) {
700
+ return fail('native disabled');
701
+ }
702
+ const fn = readNativeFunction(capability);
703
+ if (!fn) {
704
+ return fail();
705
+ }
706
+ const payloadJson = safeStringify({ blocks: Array.isArray(blocks) ? blocks : [], options: options ?? null });
707
+ if (!payloadJson) {
708
+ return fail('json stringify failed');
709
+ }
710
+ try {
711
+ const raw = fn(payloadJson);
712
+ if (typeof raw !== 'string' || !raw) {
713
+ return fail('empty result');
714
+ }
715
+ const parsed = parseArray(raw);
716
+ return parsed ?? fail('invalid payload');
717
+ }
718
+ catch (error) {
719
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
720
+ return fail(reason);
721
+ }
722
+ }
723
+ export function sanitizeReasoningTaggedTextWithNative(text) {
724
+ const capability = 'sanitizeReasoningTaggedTextJson';
725
+ const fail = (reason) => failNativeRequired(capability, reason);
726
+ if (isNativeDisabledByEnv()) {
727
+ return fail('native disabled');
728
+ }
729
+ const fn = readNativeFunction(capability);
730
+ if (!fn) {
731
+ return fail();
732
+ }
733
+ try {
734
+ const raw = fn(String(text ?? ''));
735
+ if (typeof raw !== 'string') {
736
+ return fail('invalid payload');
737
+ }
738
+ return raw;
739
+ }
740
+ catch (error) {
741
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
742
+ return fail(reason);
743
+ }
744
+ }
745
+ export function sanitizeFollowupTextWithNative(rawText) {
746
+ const capability = 'sanitizeFollowupTextJson';
747
+ const fail = (reason) => failNativeRequired(capability, reason);
748
+ if (isNativeDisabledByEnv()) {
749
+ return fail('native disabled');
750
+ }
751
+ const fn = readNativeFunction(capability);
752
+ if (!fn) {
753
+ return fail();
754
+ }
755
+ try {
756
+ const raw = fn(String(rawText ?? ''));
757
+ if (typeof raw !== 'string' || !raw) {
758
+ return fail('empty result');
759
+ }
760
+ const parsed = parseString(raw);
761
+ return parsed ?? fail('invalid payload');
762
+ }
763
+ catch (error) {
764
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
765
+ return fail(reason);
766
+ }
767
+ }
768
+ export function ensureBridgeInstructionsWithNative(payload) {
769
+ const capability = 'ensureBridgeInstructionsJson';
770
+ const fail = (reason) => failNativeRequired(capability, reason);
771
+ if (isNativeDisabledByEnv()) {
772
+ return fail('native disabled');
773
+ }
774
+ const fn = readNativeFunction(capability);
775
+ if (!fn) {
776
+ return fail();
777
+ }
778
+ const payloadJson = safeStringify(payload ?? {});
779
+ if (!payloadJson) {
780
+ return fail('json stringify failed');
781
+ }
782
+ try {
783
+ const raw = fn(payloadJson);
784
+ if (typeof raw !== 'string' || !raw) {
785
+ return fail('empty result');
786
+ }
787
+ const parsed = parseRecord(raw);
788
+ return parsed ?? fail('invalid payload');
789
+ }
790
+ catch (error) {
791
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
792
+ return fail(reason);
793
+ }
794
+ }
795
+ export function repairFindMetaWithNative(script) {
796
+ const capability = 'repairFindMetaJson';
797
+ const fail = (reason) => failNativeRequired(capability, reason);
798
+ if (isNativeDisabledByEnv()) {
799
+ return fail('native disabled');
800
+ }
801
+ const fn = readNativeFunction(capability);
802
+ if (!fn) {
803
+ return fail();
804
+ }
805
+ const payloadJson = safeStringify(script ?? '');
806
+ if (!payloadJson) {
807
+ return fail('json stringify failed');
808
+ }
809
+ try {
810
+ const raw = fn(payloadJson);
811
+ if (typeof raw !== 'string' || !raw) {
812
+ return fail('empty result');
813
+ }
814
+ const parsed = parseJson(raw);
815
+ return typeof parsed === 'string' ? parsed : fail('invalid payload');
816
+ }
817
+ catch (error) {
818
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
819
+ return fail(reason);
820
+ }
821
+ }
822
+ export function splitCommandStringWithNative(input) {
823
+ const capability = 'splitCommandStringJson';
824
+ const fail = (reason) => failNativeRequired(capability, reason);
825
+ if (isNativeDisabledByEnv()) {
826
+ return fail('native disabled');
827
+ }
828
+ const fn = readNativeFunction(capability);
829
+ if (!fn) {
830
+ return fail();
831
+ }
832
+ const payloadJson = safeStringify(input ?? '');
833
+ if (!payloadJson) {
834
+ return fail('json stringify failed');
835
+ }
836
+ try {
837
+ const raw = fn(payloadJson);
838
+ if (typeof raw !== 'string' || !raw) {
839
+ return fail('empty result');
840
+ }
841
+ const parsed = parseStringArray(raw);
842
+ return parsed ?? fail('invalid payload');
843
+ }
844
+ catch (error) {
845
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
846
+ return fail(reason);
847
+ }
848
+ }
849
+ export function packShellArgsWithNative(input) {
850
+ const capability = 'packShellArgsJson';
851
+ const fail = (reason) => failNativeRequired(capability, reason);
852
+ if (isNativeDisabledByEnv()) {
853
+ return fail('native disabled');
854
+ }
855
+ const fn = readNativeFunction(capability);
856
+ if (!fn) {
857
+ return fail();
858
+ }
859
+ const payloadJson = safeStringify(input ?? {});
860
+ if (!payloadJson) {
861
+ return fail('json stringify failed');
862
+ }
863
+ try {
864
+ const raw = fn(payloadJson);
865
+ if (typeof raw !== 'string' || !raw) {
866
+ return fail('empty result');
867
+ }
868
+ const parsed = parseRecord(raw);
869
+ return parsed ?? fail('invalid payload');
870
+ }
871
+ catch (error) {
872
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
873
+ return fail(reason);
874
+ }
875
+ }
876
+ export function flattenByCommaWithNative(items) {
877
+ const capability = 'flattenByCommaJson';
878
+ const fail = (reason) => failNativeRequired(capability, reason);
879
+ if (isNativeDisabledByEnv()) {
880
+ return fail('native disabled');
881
+ }
882
+ const fn = readNativeFunction(capability);
883
+ if (!fn) {
884
+ return fail();
885
+ }
886
+ const payloadJson = safeStringify(Array.isArray(items) ? items : []);
887
+ if (!payloadJson) {
888
+ return fail('json stringify failed');
889
+ }
890
+ try {
891
+ const raw = fn(payloadJson);
892
+ if (typeof raw !== 'string' || !raw) {
893
+ return fail('empty result');
894
+ }
895
+ const parsed = parseStringArray(raw);
896
+ return parsed ?? fail('invalid payload');
897
+ }
898
+ catch (error) {
899
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
900
+ return fail(reason);
901
+ }
902
+ }
903
+ export function chunkStringWithNative(s, minParts = 3, maxParts = 12, targetChunk = 12) {
904
+ const capability = 'chunkStringJson';
905
+ const fail = (reason) => failNativeRequired(capability, reason);
906
+ if (isNativeDisabledByEnv()) {
907
+ return fail('native disabled');
908
+ }
909
+ const fn = readNativeFunction(capability);
910
+ if (!fn) {
911
+ return fail();
912
+ }
913
+ const payloadJson = safeStringify({ s, minParts, maxParts, targetChunk });
914
+ if (!payloadJson) {
915
+ return fail('json stringify failed');
916
+ }
917
+ try {
918
+ const raw = fn(payloadJson);
919
+ if (typeof raw !== 'string' || !raw) {
920
+ return fail('empty result');
921
+ }
922
+ const parsed = parseStringArray(raw);
923
+ return parsed ?? fail('invalid payload');
924
+ }
925
+ catch (error) {
926
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
927
+ return fail(reason);
928
+ }
929
+ }
930
+ export function deriveToolCallKeyWithNative(call) {
931
+ const capability = 'deriveToolCallKeyJson';
932
+ const fail = (reason) => failNativeRequired(capability, reason);
933
+ if (isNativeDisabledByEnv()) {
934
+ return fail('native disabled');
935
+ }
936
+ const fn = readNativeFunction(capability);
937
+ if (!fn) {
938
+ return fail();
939
+ }
940
+ const callJson = safeStringify(call ?? null);
941
+ if (!callJson) {
942
+ return fail('json stringify failed');
943
+ }
944
+ try {
945
+ const raw = fn(callJson);
946
+ if (typeof raw !== 'string' || !raw) {
947
+ return fail('empty result');
948
+ }
949
+ const parsed = parseJson(raw);
950
+ if (parsed === null) {
951
+ return null;
952
+ }
953
+ return typeof parsed === 'string' ? parsed : fail('invalid payload');
954
+ }
955
+ catch (error) {
956
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
957
+ return fail(reason);
958
+ }
959
+ }
960
+ export function normalizeIdValueWithNative(value, forceGenerate = false) {
961
+ const capability = 'normalizeIdValueJson';
962
+ const fail = (reason) => failNativeRequired(capability, reason);
963
+ if (isNativeDisabledByEnv()) {
964
+ return fail('native disabled');
965
+ }
966
+ const fn = readNativeFunction(capability);
967
+ if (!fn) {
968
+ return fail();
969
+ }
970
+ const payloadJson = safeStringify({ value, forceGenerate });
971
+ if (!payloadJson) {
972
+ return fail('json stringify failed');
973
+ }
974
+ try {
975
+ const raw = fn(payloadJson);
976
+ if (typeof raw !== 'string' || !raw) {
977
+ return fail('empty result');
978
+ }
979
+ const parsed = parseJson(raw);
980
+ return typeof parsed === 'string' ? parsed : fail('invalid payload');
981
+ }
982
+ catch (error) {
983
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
984
+ return fail(reason);
985
+ }
986
+ }
987
+ export function extractToolCallIdWithNative(obj) {
988
+ const capability = 'extractToolCallIdJson';
989
+ const fail = (reason) => failNativeRequired(capability, reason);
990
+ if (isNativeDisabledByEnv()) {
991
+ return fail('native disabled');
992
+ }
993
+ const fn = readNativeFunction(capability);
994
+ if (!fn) {
995
+ return fail();
996
+ }
997
+ const payloadJson = safeStringify({ obj: obj ?? null });
998
+ if (!payloadJson) {
999
+ return fail('json stringify failed');
1000
+ }
1001
+ try {
1002
+ const raw = fn(payloadJson);
1003
+ if (typeof raw !== 'string' || !raw) {
1004
+ return fail('empty result');
1005
+ }
1006
+ const parsed = parseJson(raw);
1007
+ return typeof parsed === 'string' ? parsed : undefined;
1008
+ }
1009
+ catch (error) {
1010
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1011
+ return fail(reason);
1012
+ }
1013
+ }
1014
+ export function createToolCallIdTransformerWithNative(style) {
1015
+ const capability = 'createToolCallIdTransformerJson';
1016
+ const fail = (reason) => failNativeRequired(capability, reason);
1017
+ if (isNativeDisabledByEnv()) {
1018
+ return fail('native disabled');
1019
+ }
1020
+ const fn = readNativeFunction(capability);
1021
+ if (!fn) {
1022
+ return fail();
1023
+ }
1024
+ const payloadJson = safeStringify({ style });
1025
+ if (!payloadJson) {
1026
+ return fail('json stringify failed');
1027
+ }
1028
+ try {
1029
+ const raw = fn(payloadJson);
1030
+ if (typeof raw !== 'string' || !raw) {
1031
+ return fail('empty result');
1032
+ }
1033
+ const parsed = parseRecord(raw);
1034
+ return parsed ?? fail('invalid payload');
1035
+ }
1036
+ catch (error) {
1037
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1038
+ return fail(reason);
1039
+ }
1040
+ }
1041
+ export function transformToolCallIdWithNative(state, id) {
1042
+ const capability = 'transformToolCallIdJson';
1043
+ const fail = (reason) => failNativeRequired(capability, reason);
1044
+ if (isNativeDisabledByEnv()) {
1045
+ return fail('native disabled');
1046
+ }
1047
+ const fn = readNativeFunction(capability);
1048
+ if (!fn) {
1049
+ return fail();
1050
+ }
1051
+ const payloadJson = safeStringify({ state, id });
1052
+ if (!payloadJson) {
1053
+ return fail('json stringify failed');
1054
+ }
1055
+ try {
1056
+ const raw = fn(payloadJson);
1057
+ if (typeof raw !== 'string' || !raw) {
1058
+ return fail('empty result');
1059
+ }
1060
+ const parsed = parseRecord(raw);
1061
+ if (!parsed || typeof parsed.id !== 'string' || !parsed.state || typeof parsed.state !== 'object') {
1062
+ return fail('invalid payload');
1063
+ }
1064
+ return parsed;
1065
+ }
1066
+ catch (error) {
1067
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1068
+ return fail(reason);
1069
+ }
1070
+ }
1071
+ export function enforceToolCallIdStyleWithNative(messages, state) {
1072
+ const capability = 'enforceToolCallIdStyleJson';
1073
+ const fail = (reason) => failNativeRequired(capability, reason);
1074
+ if (isNativeDisabledByEnv()) {
1075
+ return fail('native disabled');
1076
+ }
1077
+ const fn = readNativeFunction(capability);
1078
+ if (!fn) {
1079
+ return fail();
1080
+ }
1081
+ const payloadJson = safeStringify({ messages: Array.isArray(messages) ? messages : [], state });
1082
+ if (!payloadJson) {
1083
+ return fail('json stringify failed');
1084
+ }
1085
+ try {
1086
+ const raw = fn(payloadJson);
1087
+ if (typeof raw !== 'string' || !raw) {
1088
+ return fail('empty result');
1089
+ }
1090
+ const parsed = parseRecord(raw);
1091
+ if (!parsed || !Array.isArray(parsed.messages) || !parsed.state || typeof parsed.state !== 'object') {
1092
+ return fail('invalid payload');
1093
+ }
1094
+ return parsed;
1095
+ }
1096
+ catch (error) {
1097
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1098
+ return fail(reason);
1099
+ }
1100
+ }
1101
+ export function normalizeResponsesToolCallIdsWithNative(payload) {
1102
+ const capability = 'normalizeResponsesToolCallIdsJson';
1103
+ const fail = (reason) => failNativeRequired(capability, reason);
1104
+ if (isNativeDisabledByEnv()) {
1105
+ return fail('native disabled');
1106
+ }
1107
+ const fn = readNativeFunction(capability);
1108
+ if (!fn) {
1109
+ return fail();
1110
+ }
1111
+ const payloadJson = safeStringify(payload ?? null);
1112
+ if (!payloadJson) {
1113
+ return fail('json stringify failed');
1114
+ }
1115
+ try {
1116
+ const raw = fn(payloadJson);
1117
+ if (typeof raw !== 'string' || !raw) {
1118
+ return fail('empty result');
1119
+ }
1120
+ return parseRecord(raw) ?? fail('invalid payload');
1121
+ }
1122
+ catch (error) {
1123
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1124
+ return fail(reason);
1125
+ }
1126
+ }
1127
+ export function resolveToolCallIdStyleWithNative(metadata) {
1128
+ const capability = 'resolveToolCallIdStyleJson';
1129
+ const fail = (reason) => failNativeRequired(capability, reason);
1130
+ if (isNativeDisabledByEnv()) {
1131
+ return fail('native disabled');
1132
+ }
1133
+ const fn = readNativeFunction(capability);
1134
+ if (!fn) {
1135
+ return fail();
1136
+ }
1137
+ const metadataJson = safeStringify(metadata ?? null);
1138
+ if (!metadataJson) {
1139
+ return fail('json stringify failed');
1140
+ }
1141
+ try {
1142
+ const raw = fn(metadataJson);
1143
+ if (typeof raw !== 'string' || !raw) {
1144
+ return fail('empty result');
1145
+ }
1146
+ const parsed = parseJson(raw);
1147
+ return typeof parsed === 'string' ? parsed : fail('invalid payload');
1148
+ }
1149
+ catch (error) {
1150
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1151
+ return fail(reason);
1152
+ }
1153
+ }
1154
+ export function stripInternalToolingMetadataWithNative(metadata) {
1155
+ const capability = 'stripInternalToolingMetadataJson';
1156
+ const fail = (reason) => failNativeRequired(capability, reason);
1157
+ if (isNativeDisabledByEnv()) {
1158
+ return fail('native disabled');
1159
+ }
1160
+ const fn = readNativeFunction(capability);
1161
+ if (!fn) {
1162
+ return fail();
1163
+ }
1164
+ const metadataJson = safeStringify(metadata ?? null);
1165
+ if (!metadataJson) {
1166
+ return fail('json stringify failed');
1167
+ }
1168
+ try {
1169
+ const raw = fn(metadataJson);
1170
+ if (typeof raw !== 'string' || !raw) {
1171
+ return fail('empty result');
1172
+ }
1173
+ return parseRecord(raw) ?? fail('invalid payload');
1174
+ }
1175
+ catch (error) {
1176
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1177
+ return fail(reason);
1178
+ }
1179
+ }
1180
+ export function buildProviderProtocolErrorWithNative(input) {
1181
+ const capability = 'buildProviderProtocolErrorJson';
1182
+ const fail = (reason) => failNativeRequired(capability, reason);
1183
+ if (isNativeDisabledByEnv()) {
1184
+ return fail('native disabled');
1185
+ }
1186
+ const fn = readNativeFunction(capability);
1187
+ if (!fn) {
1188
+ return fail();
1189
+ }
1190
+ const payloadJson = safeStringify({
1191
+ message: input.message,
1192
+ code: input.code,
1193
+ protocol: input.protocol,
1194
+ providerType: input.providerType,
1195
+ category: input.category,
1196
+ details: input.details
1197
+ });
1198
+ if (!payloadJson) {
1199
+ return fail('json stringify failed');
1200
+ }
1201
+ try {
1202
+ const raw = fn(payloadJson);
1203
+ if (typeof raw !== 'string' || !raw) {
1204
+ return fail('empty result');
1205
+ }
1206
+ const parsed = parseRecord(raw);
1207
+ return parsed ?? fail('invalid payload');
1208
+ }
1209
+ catch (error) {
1210
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1211
+ return fail(reason);
1212
+ }
1213
+ }
1214
+ function parseToolCallResult(raw) {
1215
+ if (!raw || raw === 'null') {
1216
+ return null;
1217
+ }
1218
+ return parseToolCallLiteArray(raw);
1219
+ }
1220
+ function callTextMarkupExtractor(capability, payload) {
1221
+ const fail = (reason) => failNativeRequired(capability, reason);
1222
+ if (isNativeDisabledByEnv()) {
1223
+ return fail('native disabled');
1224
+ }
1225
+ const fn = readNativeFunction(capability);
1226
+ if (!fn) {
1227
+ return fail();
1228
+ }
1229
+ const payloadJson = safeStringify(payload ?? null);
1230
+ if (!payloadJson) {
1231
+ return fail('json stringify failed');
1232
+ }
1233
+ try {
1234
+ const raw = fn(payloadJson);
1235
+ if (typeof raw !== 'string') {
1236
+ return fail('invalid payload');
1237
+ }
1238
+ const parsed = parseToolCallResult(raw);
1239
+ return parsed ?? null;
1240
+ }
1241
+ catch (error) {
1242
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1243
+ return fail(reason);
1244
+ }
1245
+ }
1246
+ export function extractJsonToolCallsFromTextWithNative(text, options) {
1247
+ return callTextMarkupExtractor('extractJsonToolCallsFromTextJson', {
1248
+ text: String(text ?? ''),
1249
+ options: options ?? null
1250
+ });
1251
+ }
1252
+ export function extractXMLToolCallsFromTextWithNative(text) {
1253
+ return callTextMarkupExtractor('extractXmlToolCallsFromTextJson', {
1254
+ text: String(text ?? '')
1255
+ });
1256
+ }
1257
+ export function extractSimpleXmlToolsFromTextWithNative(text) {
1258
+ return callTextMarkupExtractor('extractSimpleXmlToolsFromTextJson', {
1259
+ text: String(text ?? '')
1260
+ });
1261
+ }
1262
+ export function extractParameterXmlToolsFromTextWithNative(text) {
1263
+ return callTextMarkupExtractor('extractParameterXmlToolsFromTextJson', {
1264
+ text: String(text ?? '')
1265
+ });
1266
+ }
1267
+ export function extractInvokeToolsFromTextWithNative(text) {
1268
+ return callTextMarkupExtractor('extractInvokeToolsFromTextJson', {
1269
+ text: String(text ?? '')
1270
+ });
1271
+ }
1272
+ export function extractToolNamespaceXmlBlocksFromTextWithNative(text) {
1273
+ return callTextMarkupExtractor('extractToolNamespaceXmlBlocksFromTextJson', {
1274
+ text: String(text ?? '')
1275
+ });
1276
+ }
1277
+ export function extractApplyPatchCallsFromTextWithNative(text) {
1278
+ return callTextMarkupExtractor('extractApplyPatchCallsFromTextJson', {
1279
+ text: String(text ?? '')
1280
+ });
1281
+ }
1282
+ export function extractBareExecCommandFromTextWithNative(text) {
1283
+ return callTextMarkupExtractor('extractBareExecCommandFromTextJson', {
1284
+ text: String(text ?? '')
1285
+ });
1286
+ }
1287
+ export function extractExecuteBlocksFromTextWithNative(text) {
1288
+ return callTextMarkupExtractor('extractExecuteBlocksFromTextJson', {
1289
+ text: String(text ?? '')
1290
+ });
1291
+ }
1292
+ export function extractExploredListDirectoryCallsFromTextWithNative(text) {
1293
+ return callTextMarkupExtractor('extractExploredListDirectoryCallsFromTextJson', {
1294
+ text: String(text ?? '')
1295
+ });
1296
+ }
1297
+ export function extractQwenToolCallTokensFromTextWithNative(text) {
1298
+ return callTextMarkupExtractor('extractQwenToolCallTokensFromTextJson', {
1299
+ text: String(text ?? '')
1300
+ });
1301
+ }
1302
+ export function mergeToolCallsWithNative(existing, additions) {
1303
+ const capability = 'mergeToolCallsJson';
1304
+ const fail = (reason) => failNativeRequired(capability, reason);
1305
+ if (isNativeDisabledByEnv()) {
1306
+ return fail('native disabled');
1307
+ }
1308
+ const fn = readNativeFunction(capability);
1309
+ if (!fn) {
1310
+ return fail();
1311
+ }
1312
+ const existingJson = safeStringify(existing ?? []);
1313
+ const additionsJson = safeStringify(additions ?? []);
1314
+ if (!existingJson || !additionsJson) {
1315
+ return fail('json stringify failed');
1316
+ }
1317
+ try {
1318
+ const raw = fn(existingJson, additionsJson);
1319
+ if (typeof raw !== 'string' || !raw) {
1320
+ return fail('empty result');
1321
+ }
1322
+ const parsed = parseJson(raw);
1323
+ if (!Array.isArray(parsed)) {
1324
+ return fail('invalid payload');
1325
+ }
1326
+ return parsed.filter((entry) => entry && typeof entry === 'object');
1327
+ }
1328
+ catch (error) {
1329
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1330
+ return fail(reason);
1331
+ }
1332
+ }
1333
+ export function mapReasoningContentToResponsesOutputWithNative(reasoningContent) {
1334
+ const capability = 'mapReasoningContentToResponsesOutputJson';
1335
+ const fail = (reason) => failNativeRequired(capability, reason);
1336
+ if (isNativeDisabledByEnv()) {
1337
+ return fail('native disabled');
1338
+ }
1339
+ const fn = readNativeFunction(capability);
1340
+ if (!fn) {
1341
+ return fail();
1342
+ }
1343
+ const contentJson = safeStringify(reasoningContent ?? null);
1344
+ if (!contentJson) {
1345
+ return fail('json stringify failed');
1346
+ }
1347
+ try {
1348
+ const raw = fn(contentJson);
1349
+ if (typeof raw !== 'string' || !raw) {
1350
+ return fail('empty result');
1351
+ }
1352
+ const parsed = parseReasoningItems(raw);
1353
+ return parsed ?? fail('invalid payload');
1354
+ }
1355
+ catch (error) {
1356
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1357
+ return fail(reason);
1358
+ }
1359
+ }
1360
+ export function validateToolArgumentsWithNative(toolName, args) {
1361
+ const capability = 'validateToolArgumentsJson';
1362
+ const fail = (reason) => failNativeRequired(capability, reason);
1363
+ if (isNativeDisabledByEnv()) {
1364
+ return fail('native disabled');
1365
+ }
1366
+ const fn = readNativeFunction(capability);
1367
+ if (!fn) {
1368
+ return fail();
1369
+ }
1370
+ const payloadJson = safeStringify({ toolName, args: args ?? null });
1371
+ if (!payloadJson) {
1372
+ return fail('json stringify failed');
1373
+ }
1374
+ try {
1375
+ const raw = fn(payloadJson);
1376
+ if (typeof raw !== 'string' || !raw) {
1377
+ return fail('empty result');
1378
+ }
1379
+ const parsed = parseRecord(raw);
1380
+ if (!parsed || typeof parsed.repaired !== 'string' || typeof parsed.success !== 'boolean') {
1381
+ return fail('invalid payload');
1382
+ }
1383
+ const error = typeof parsed.error === 'string' ? parsed.error : undefined;
1384
+ return { repaired: parsed.repaired, success: parsed.success, ...(error ? { error } : {}) };
1385
+ }
1386
+ catch (error) {
1387
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1388
+ return fail(reason);
1389
+ }
1390
+ }
1391
+ export function repairToolCallsWithNative(toolCalls) {
1392
+ const capability = 'repairToolCallsJson';
1393
+ const fail = (reason) => failNativeRequired(capability, reason);
1394
+ if (isNativeDisabledByEnv()) {
1395
+ return fail('native disabled');
1396
+ }
1397
+ const fn = readNativeFunction(capability);
1398
+ if (!fn) {
1399
+ return fail();
1400
+ }
1401
+ const payloadJson = safeStringify(Array.isArray(toolCalls) ? toolCalls : []);
1402
+ if (!payloadJson) {
1403
+ return fail('json stringify failed');
1404
+ }
1405
+ try {
1406
+ const raw = fn(payloadJson);
1407
+ if (typeof raw !== 'string' || !raw) {
1408
+ return fail('empty result');
1409
+ }
1410
+ const parsed = parseArray(raw);
1411
+ if (!parsed) {
1412
+ return fail('invalid payload');
1413
+ }
1414
+ return parsed.filter((entry) => entry && typeof entry === 'object' && !Array.isArray(entry) && typeof entry.arguments === 'string');
1415
+ }
1416
+ catch (error) {
1417
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1418
+ return fail(reason);
1419
+ }
1420
+ }
1421
+ export function isImagePathWithNative(pathValue) {
1422
+ const capability = 'isImagePathJson';
1423
+ const fail = (reason) => failNativeRequired(capability, reason);
1424
+ if (isNativeDisabledByEnv()) {
1425
+ return fail('native disabled');
1426
+ }
1427
+ const fn = readNativeFunction(capability);
1428
+ if (!fn) {
1429
+ return fail();
1430
+ }
1431
+ const pathJson = safeStringify(pathValue ?? null);
1432
+ if (!pathJson) {
1433
+ return fail('json stringify failed');
1434
+ }
1435
+ try {
1436
+ const raw = fn(pathJson);
1437
+ if (typeof raw !== 'string' || !raw) {
1438
+ return fail('empty result');
1439
+ }
1440
+ const parsed = parseJson(raw);
1441
+ return typeof parsed === 'boolean' ? parsed : fail('invalid payload');
1442
+ }
1443
+ catch (error) {
1444
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1445
+ return fail(reason);
1446
+ }
1447
+ }
1448
+ export function extractStreamingToolCallsWithNative(input) {
1449
+ const capability = 'extractStreamingToolCallsJson';
1450
+ const fail = (reason) => failNativeRequired(capability, reason);
1451
+ if (isNativeDisabledByEnv()) {
1452
+ return fail('native disabled');
1453
+ }
1454
+ const fn = readNativeFunction(capability);
1455
+ if (!fn) {
1456
+ return fail();
1457
+ }
1458
+ const payloadJson = safeStringify(input ?? {});
1459
+ if (!payloadJson) {
1460
+ return fail('json stringify failed');
1461
+ }
1462
+ try {
1463
+ const raw = fn(payloadJson);
1464
+ if (typeof raw !== 'string' || !raw) {
1465
+ return fail('empty result');
1466
+ }
1467
+ const parsed = parseRecord(raw);
1468
+ if (!parsed) {
1469
+ return fail('invalid payload');
1470
+ }
1471
+ const buffer = typeof parsed.buffer === 'string' ? parsed.buffer : '';
1472
+ const idCounter = typeof parsed.idCounter === 'number' ? parsed.idCounter : input.idCounter;
1473
+ const toolCalls = Array.isArray(parsed.toolCalls)
1474
+ ? parsed.toolCalls.filter((entry) => entry && typeof entry === 'object' && !Array.isArray(entry))
1475
+ .map((entry) => entry)
1476
+ : [];
1477
+ return { buffer, idCounter, toolCalls };
1478
+ }
1479
+ catch (error) {
1480
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1481
+ return fail(reason);
1482
+ }
1483
+ }
1484
+ export function createStreamingToolExtractorStateWithNative(idPrefix) {
1485
+ const capability = 'createStreamingToolExtractorStateJson';
1486
+ const fail = (reason) => failNativeRequired(capability, reason);
1487
+ if (isNativeDisabledByEnv()) {
1488
+ return fail('native disabled');
1489
+ }
1490
+ const fn = readNativeFunction(capability);
1491
+ if (!fn) {
1492
+ return fail();
1493
+ }
1494
+ const payloadJson = safeStringify(idPrefix ? { idPrefix } : {});
1495
+ if (!payloadJson) {
1496
+ return fail('json stringify failed');
1497
+ }
1498
+ try {
1499
+ const raw = fn(payloadJson);
1500
+ if (typeof raw !== 'string' || !raw) {
1501
+ return fail('empty result');
1502
+ }
1503
+ return parseRecord(raw) ?? fail('invalid payload');
1504
+ }
1505
+ catch (error) {
1506
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1507
+ return fail(reason);
1508
+ }
1509
+ }
1510
+ export function resetStreamingToolExtractorStateWithNative(state) {
1511
+ const capability = 'resetStreamingToolExtractorStateJson';
1512
+ const fail = (reason) => failNativeRequired(capability, reason);
1513
+ if (isNativeDisabledByEnv()) {
1514
+ return fail('native disabled');
1515
+ }
1516
+ const fn = readNativeFunction(capability);
1517
+ if (!fn) {
1518
+ return fail();
1519
+ }
1520
+ const payloadJson = safeStringify(state ?? {});
1521
+ if (!payloadJson) {
1522
+ return fail('json stringify failed');
1523
+ }
1524
+ try {
1525
+ const raw = fn(payloadJson);
1526
+ if (typeof raw !== 'string' || !raw) {
1527
+ return fail('empty result');
1528
+ }
1529
+ return parseRecord(raw) ?? fail('invalid payload');
1530
+ }
1531
+ catch (error) {
1532
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1533
+ return fail(reason);
1534
+ }
1535
+ }
1536
+ export function feedStreamingToolExtractorWithNative(input) {
1537
+ const capability = 'feedStreamingToolExtractorJson';
1538
+ const fail = (reason) => failNativeRequired(capability, reason);
1539
+ if (isNativeDisabledByEnv()) {
1540
+ return fail('native disabled');
1541
+ }
1542
+ const fn = readNativeFunction(capability);
1543
+ if (!fn) {
1544
+ return fail();
1545
+ }
1546
+ const payloadJson = safeStringify(input ?? {});
1547
+ if (!payloadJson) {
1548
+ return fail('json stringify failed');
1549
+ }
1550
+ try {
1551
+ const raw = fn(payloadJson);
1552
+ if (typeof raw !== 'string' || !raw) {
1553
+ return fail('empty result');
1554
+ }
1555
+ const parsed = parseRecord(raw);
1556
+ if (!parsed || !parsed.state || typeof parsed.state !== 'object' || Array.isArray(parsed.state)) {
1557
+ return fail('invalid payload');
1558
+ }
1559
+ const toolCalls = Array.isArray(parsed.toolCalls)
1560
+ ? parsed.toolCalls.filter((entry) => entry && typeof entry === 'object' && !Array.isArray(entry))
1561
+ .map((entry) => entry)
1562
+ : [];
1563
+ return { state: parsed.state, toolCalls };
1564
+ }
1565
+ catch (error) {
1566
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1567
+ return fail(reason);
1568
+ }
1569
+ }
1570
+ export function isCompactionRequestWithNative(payload) {
1571
+ const capability = 'isCompactionRequestJson';
1572
+ const fail = (reason) => failNativeRequired(capability, reason);
1573
+ if (isNativeDisabledByEnv()) {
1574
+ return fail('native disabled');
1575
+ }
1576
+ const fn = readNativeFunction(capability);
1577
+ if (!fn) {
1578
+ return fail();
1579
+ }
1580
+ const payloadJson = safeStringify(payload ?? null);
1581
+ if (!payloadJson) {
1582
+ return fail('json stringify failed');
1583
+ }
1584
+ try {
1585
+ const raw = fn(payloadJson);
1586
+ if (typeof raw !== 'string' || !raw) {
1587
+ return fail('empty result');
1588
+ }
1589
+ const parsed = parseJson(raw);
1590
+ return typeof parsed === 'boolean' ? parsed : fail('invalid payload');
1591
+ }
1592
+ catch (error) {
1593
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1594
+ return fail(reason);
1595
+ }
1596
+ }
1597
+ export function encodeMetadataPassthroughWithNative(parameters, prefix, keys) {
1598
+ const capability = 'encodeMetadataPassthroughJson';
1599
+ const fail = (reason) => failNativeRequired(capability, reason);
1600
+ if (isNativeDisabledByEnv()) {
1601
+ return fail('native disabled');
1602
+ }
1603
+ const fn = readNativeFunction(capability);
1604
+ if (!fn) {
1605
+ return fail();
1606
+ }
1607
+ const parametersJson = safeStringify(parameters ?? null);
1608
+ const keysJson = safeStringify(Array.isArray(keys) ? keys : []);
1609
+ if (!parametersJson || !keysJson) {
1610
+ return fail('json stringify failed');
1611
+ }
1612
+ try {
1613
+ const raw = fn(parametersJson, String(prefix || ''), keysJson);
1614
+ if (typeof raw !== 'string' || !raw) {
1615
+ return fail('empty result');
1616
+ }
1617
+ const parsed = parseJson(raw);
1618
+ if (parsed === null) {
1619
+ return undefined;
1620
+ }
1621
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
1622
+ return fail('invalid payload');
1623
+ }
1624
+ const out = {};
1625
+ for (const [key, value] of Object.entries(parsed)) {
1626
+ if (typeof key !== 'string' || typeof value !== 'string') {
1627
+ return fail('invalid payload');
1628
+ }
1629
+ out[key] = value;
1630
+ }
1631
+ return Object.keys(out).length ? out : undefined;
1632
+ }
1633
+ catch (error) {
1634
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1635
+ return fail(reason);
1636
+ }
1637
+ }
1638
+ export function extractMetadataPassthroughWithNative(metadataField, prefix, keys) {
1639
+ const capability = 'extractMetadataPassthroughJson';
1640
+ const fail = (reason) => failNativeRequired(capability, reason);
1641
+ if (isNativeDisabledByEnv()) {
1642
+ return fail('native disabled');
1643
+ }
1644
+ const fn = readNativeFunction(capability);
1645
+ if (!fn) {
1646
+ return fail();
1647
+ }
1648
+ const metadataJson = safeStringify(metadataField ?? null);
1649
+ const keysJson = safeStringify(Array.isArray(keys) ? keys : []);
1650
+ if (!metadataJson || !keysJson) {
1651
+ return fail('json stringify failed');
1652
+ }
1653
+ try {
1654
+ const raw = fn(metadataJson, String(prefix || ''), keysJson);
1655
+ if (typeof raw !== 'string' || !raw) {
1656
+ return fail('empty result');
1657
+ }
1658
+ const parsed = parseRecord(raw);
1659
+ if (!parsed) {
1660
+ return fail('invalid payload');
1661
+ }
1662
+ const metadata = parsed.metadata && typeof parsed.metadata === 'object' && !Array.isArray(parsed.metadata)
1663
+ ? parsed.metadata
1664
+ : undefined;
1665
+ const passthrough = parsed.passthrough && typeof parsed.passthrough === 'object' && !Array.isArray(parsed.passthrough)
1666
+ ? parsed.passthrough
1667
+ : undefined;
1668
+ return {
1669
+ ...(metadata ? { metadata } : {}),
1670
+ ...(passthrough ? { passthrough } : {})
1671
+ };
1672
+ }
1673
+ catch (error) {
1674
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1675
+ return fail(reason);
1676
+ }
1677
+ }
1678
+ export function ensureProtocolStateWithNative(metadata, protocol) {
1679
+ const capability = 'ensureProtocolStateJson';
1680
+ const fail = (reason) => failNativeRequired(capability, reason);
1681
+ if (isNativeDisabledByEnv()) {
1682
+ return fail('native disabled');
1683
+ }
1684
+ const fn = readNativeFunction(capability);
1685
+ if (!fn) {
1686
+ return fail();
1687
+ }
1688
+ const metadataJson = safeStringify(metadata ?? {});
1689
+ if (!metadataJson) {
1690
+ return fail('json stringify failed');
1691
+ }
1692
+ try {
1693
+ const raw = fn(metadataJson, String(protocol ?? ''));
1694
+ if (typeof raw !== 'string' || !raw) {
1695
+ return fail('empty result');
1696
+ }
1697
+ const parsed = parseRecord(raw);
1698
+ if (!parsed) {
1699
+ return fail('invalid payload');
1700
+ }
1701
+ const metadataOut = parsed.metadata && typeof parsed.metadata === 'object' && !Array.isArray(parsed.metadata)
1702
+ ? parsed.metadata
1703
+ : undefined;
1704
+ const nodeOut = parsed.node && typeof parsed.node === 'object' && !Array.isArray(parsed.node)
1705
+ ? parsed.node
1706
+ : undefined;
1707
+ if (!metadataOut || !nodeOut) {
1708
+ return fail('invalid payload');
1709
+ }
1710
+ return { metadata: metadataOut, node: nodeOut };
1711
+ }
1712
+ catch (error) {
1713
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1714
+ return fail(reason);
1715
+ }
1716
+ }
1717
+ export function getProtocolStateWithNative(metadata, protocol) {
1718
+ const capability = 'getProtocolStateJson';
1719
+ const fail = (reason) => failNativeRequired(capability, reason);
1720
+ if (isNativeDisabledByEnv()) {
1721
+ return fail('native disabled');
1722
+ }
1723
+ const fn = readNativeFunction(capability);
1724
+ if (!fn) {
1725
+ return fail();
1726
+ }
1727
+ const metadataJson = safeStringify(metadata ?? null);
1728
+ if (!metadataJson) {
1729
+ return fail('json stringify failed');
1730
+ }
1731
+ try {
1732
+ const raw = fn(metadataJson, String(protocol ?? ''));
1733
+ if (typeof raw !== 'string' || !raw) {
1734
+ return fail('empty result');
1735
+ }
1736
+ const parsed = parseJson(raw);
1737
+ if (parsed === null) {
1738
+ return undefined;
1739
+ }
1740
+ return parsed && typeof parsed === 'object' && !Array.isArray(parsed)
1741
+ ? parsed
1742
+ : fail('invalid payload');
1743
+ }
1744
+ catch (error) {
1745
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1746
+ return fail(reason);
1747
+ }
1748
+ }
1749
+ export function readRuntimeMetadataWithNative(carrier) {
1750
+ const capability = 'readRuntimeMetadataJson';
1751
+ const fail = (reason) => failNativeRequired(capability, reason);
1752
+ if (isNativeDisabledByEnv()) {
1753
+ return fail('native disabled');
1754
+ }
1755
+ const fn = readNativeFunction(capability);
1756
+ if (!fn) {
1757
+ return fail();
1758
+ }
1759
+ const carrierJson = safeStringify(carrier ?? null);
1760
+ if (!carrierJson) {
1761
+ return fail('json stringify failed');
1762
+ }
1763
+ try {
1764
+ const raw = fn(carrierJson);
1765
+ if (typeof raw !== 'string' || !raw) {
1766
+ return fail('empty result');
1767
+ }
1768
+ const parsed = parseJson(raw);
1769
+ if (parsed === null) {
1770
+ return undefined;
1771
+ }
1772
+ return parsed && typeof parsed === 'object' && !Array.isArray(parsed)
1773
+ ? parsed
1774
+ : fail('invalid payload');
1775
+ }
1776
+ catch (error) {
1777
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1778
+ return fail(reason);
1779
+ }
1780
+ }
1781
+ export function ensureRuntimeMetadataCarrierWithNative(carrier) {
1782
+ const capability = 'ensureRuntimeMetadataJson';
1783
+ const fail = (reason) => failNativeRequired(capability, reason);
1784
+ if (isNativeDisabledByEnv()) {
1785
+ return fail('native disabled');
1786
+ }
1787
+ const fn = readNativeFunction(capability);
1788
+ if (!fn) {
1789
+ return fail();
1790
+ }
1791
+ const carrierJson = safeStringify(carrier);
1792
+ if (!carrierJson) {
1793
+ return fail('json stringify failed');
1794
+ }
1795
+ try {
1796
+ const raw = fn(carrierJson);
1797
+ if (typeof raw !== 'string' || !raw) {
1798
+ return fail('empty result');
1799
+ }
1800
+ const parsed = parseRecord(raw);
1801
+ return parsed ?? fail('invalid payload');
1802
+ }
1803
+ catch (error) {
1804
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1805
+ return fail(reason);
1806
+ }
1807
+ }
1808
+ export function cloneRuntimeMetadataWithNative(carrier) {
1809
+ const capability = 'cloneRuntimeMetadataJson';
1810
+ const fail = (reason) => failNativeRequired(capability, reason);
1811
+ if (isNativeDisabledByEnv()) {
1812
+ return fail('native disabled');
1813
+ }
1814
+ const fn = readNativeFunction(capability);
1815
+ if (!fn) {
1816
+ return fail();
1817
+ }
1818
+ const carrierJson = safeStringify(carrier ?? null);
1819
+ if (!carrierJson) {
1820
+ return fail('json stringify failed');
1821
+ }
1822
+ try {
1823
+ const raw = fn(carrierJson);
1824
+ if (typeof raw !== 'string' || !raw) {
1825
+ return fail('empty result');
1826
+ }
1827
+ const parsed = parseJson(raw);
1828
+ if (parsed === null) {
1829
+ return undefined;
1830
+ }
1831
+ return parsed && typeof parsed === 'object' && !Array.isArray(parsed)
1832
+ ? parsed
1833
+ : fail('invalid payload');
1834
+ }
1835
+ catch (error) {
1836
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1837
+ return fail(reason);
1838
+ }
1839
+ }
1840
+ export function injectMcpToolsForChatWithNative(tools, discoveredServers) {
1841
+ const capability = 'injectMcpToolsForChatJson';
1842
+ const fail = (reason) => failNativeRequired(capability, reason);
1843
+ if (isNativeDisabledByEnv()) {
1844
+ return fail('native disabled');
1845
+ }
1846
+ const fn = readNativeFunction(capability);
1847
+ if (!fn) {
1848
+ return fail();
1849
+ }
1850
+ const toolsJson = safeStringify(Array.isArray(tools) ? tools : []);
1851
+ const serversJson = safeStringify(Array.isArray(discoveredServers) ? discoveredServers : []);
1852
+ if (!toolsJson || !serversJson) {
1853
+ return fail('json stringify failed');
1854
+ }
1855
+ try {
1856
+ const raw = fn(toolsJson, serversJson);
1857
+ if (typeof raw !== 'string' || !raw) {
1858
+ return fail('empty result');
1859
+ }
1860
+ const parsed = parseJson(raw);
1861
+ return Array.isArray(parsed) ? parsed : fail('invalid payload');
1862
+ }
1863
+ catch (error) {
1864
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1865
+ return fail(reason);
1866
+ }
1867
+ }
1868
+ export function normalizeArgsBySchemaWithNative(input, schema) {
1869
+ const capability = 'normalizeArgsBySchemaJson';
1870
+ const fail = (reason) => failNativeRequired(capability, reason);
1871
+ if (isNativeDisabledByEnv()) {
1872
+ return fail('native disabled');
1873
+ }
1874
+ const fn = readNativeFunction(capability);
1875
+ if (!fn) {
1876
+ return fail();
1877
+ }
1878
+ const inputJson = safeStringify(input ?? null);
1879
+ const schemaJson = safeStringify(schema ?? null);
1880
+ if (!inputJson || !schemaJson) {
1881
+ return fail('json stringify failed');
1882
+ }
1883
+ try {
1884
+ const raw = fn(inputJson, schemaJson);
1885
+ if (typeof raw !== 'string' || !raw) {
1886
+ return fail('empty result');
1887
+ }
1888
+ const parsed = parseRecord(raw);
1889
+ if (!parsed || typeof parsed.ok !== 'boolean') {
1890
+ return fail('invalid payload');
1891
+ }
1892
+ const value = parsed.value && typeof parsed.value === 'object' && !Array.isArray(parsed.value)
1893
+ ? parsed.value
1894
+ : undefined;
1895
+ const errors = Array.isArray(parsed.errors)
1896
+ ? parsed.errors.filter((entry) => typeof entry === 'string')
1897
+ : undefined;
1898
+ return {
1899
+ ok: parsed.ok,
1900
+ ...(value ? { value } : {}),
1901
+ ...(errors && errors.length ? { errors } : {})
1902
+ };
1903
+ }
1904
+ catch (error) {
1905
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1906
+ return fail(reason);
1907
+ }
1908
+ }
1909
+ export function normalizeToolsWithNative(tools) {
1910
+ const capability = 'normalizeToolsJson';
1911
+ const fail = (reason) => failNativeRequired(capability, reason);
1912
+ if (isNativeDisabledByEnv()) {
1913
+ return fail('native disabled');
1914
+ }
1915
+ const fn = readNativeFunction(capability);
1916
+ if (!fn) {
1917
+ return fail();
1918
+ }
1919
+ const toolsJson = safeStringify(tools ?? null);
1920
+ if (!toolsJson) {
1921
+ return fail('json stringify failed');
1922
+ }
1923
+ try {
1924
+ const raw = fn(toolsJson);
1925
+ if (typeof raw !== 'string' || !raw) {
1926
+ return fail('empty result');
1927
+ }
1928
+ const parsed = parseJson(raw);
1929
+ return Array.isArray(parsed) ? parsed : fail('invalid payload');
1930
+ }
1931
+ catch (error) {
1932
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1933
+ return fail(reason);
1934
+ }
1935
+ }
1936
+ export function extractOutputSegmentsWithNative(source, itemsKey = 'output') {
1937
+ const capability = 'extractOutputSegmentsJson';
1938
+ const fail = (reason) => failNativeRequired(capability, reason);
1939
+ if (isNativeDisabledByEnv()) {
1940
+ return fail('native disabled');
1941
+ }
1942
+ const fn = readNativeFunction(capability);
1943
+ if (!fn) {
1944
+ return fail();
1945
+ }
1946
+ const sourceJson = safeStringify(source ?? null);
1947
+ if (!sourceJson) {
1948
+ return fail('json stringify failed');
1949
+ }
1950
+ try {
1951
+ const raw = fn(sourceJson, String(itemsKey || 'output'));
1952
+ if (typeof raw !== 'string' || !raw) {
1953
+ return fail('empty result');
1954
+ }
1955
+ const parsed = parseRecord(raw);
1956
+ if (!parsed) {
1957
+ return fail('invalid payload');
1958
+ }
1959
+ const textParts = Array.isArray(parsed.textParts)
1960
+ ? parsed.textParts.filter((entry) => typeof entry === 'string')
1961
+ : [];
1962
+ const reasoningParts = Array.isArray(parsed.reasoningParts)
1963
+ ? parsed.reasoningParts.filter((entry) => typeof entry === 'string')
1964
+ : [];
1965
+ return { textParts, reasoningParts };
1966
+ }
1967
+ catch (error) {
1968
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
1969
+ return fail(reason);
1970
+ }
1971
+ }
1972
+ export function normalizeContentPartWithNative(part, reasoningCollector) {
1973
+ const capability = 'normalizeOutputContentPartJson';
1974
+ const fail = (reason) => failNativeRequired(capability, reason);
1975
+ if (isNativeDisabledByEnv()) {
1976
+ return fail('native disabled');
1977
+ }
1978
+ const fn = readNativeFunction(capability);
1979
+ if (!fn) {
1980
+ return fail();
1981
+ }
1982
+ const partJson = safeStringify(part ?? null);
1983
+ const collectorJson = safeStringify(Array.isArray(reasoningCollector) ? reasoningCollector : []);
1984
+ if (!partJson || !collectorJson) {
1985
+ return fail('json stringify failed');
1986
+ }
1987
+ try {
1988
+ const raw = fn(partJson, collectorJson);
1989
+ if (typeof raw !== 'string' || !raw) {
1990
+ return fail('empty result');
1991
+ }
1992
+ const parsed = parseRecord(raw);
1993
+ if (!parsed) {
1994
+ return fail('invalid payload');
1995
+ }
1996
+ const normalized = parsed.normalized === null
1997
+ ? null
1998
+ : parsed.normalized && typeof parsed.normalized === 'object' && !Array.isArray(parsed.normalized)
1999
+ ? parsed.normalized
2000
+ : fail('invalid payload');
2001
+ const nextCollector = Array.isArray(parsed.reasoningCollector)
2002
+ ? parsed.reasoningCollector.filter((entry) => typeof entry === 'string')
2003
+ : [];
2004
+ return { normalized, reasoningCollector: nextCollector };
2005
+ }
2006
+ catch (error) {
2007
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2008
+ return fail(reason);
2009
+ }
2010
+ }
2011
+ export function normalizeMessageContentPartsWithNative(parts, reasoningCollector) {
2012
+ const capability = 'normalizeMessageContentPartsJson';
2013
+ const fail = (reason) => failNativeRequired(capability, reason);
2014
+ if (isNativeDisabledByEnv()) {
2015
+ return fail('native disabled');
2016
+ }
2017
+ const fn = readNativeFunction(capability);
2018
+ if (!fn) {
2019
+ return fail();
2020
+ }
2021
+ const partsJson = safeStringify(parts ?? null);
2022
+ const collectorJson = safeStringify(Array.isArray(reasoningCollector) ? reasoningCollector : []);
2023
+ if (!partsJson || !collectorJson) {
2024
+ return fail('json stringify failed');
2025
+ }
2026
+ try {
2027
+ const raw = fn(partsJson, collectorJson);
2028
+ if (typeof raw !== 'string' || !raw) {
2029
+ return fail('empty result');
2030
+ }
2031
+ const parsed = parseRecord(raw);
2032
+ if (!parsed) {
2033
+ return fail('invalid payload');
2034
+ }
2035
+ const normalizedParts = Array.isArray(parsed.normalizedParts)
2036
+ ? parsed.normalizedParts.filter((entry) => !!entry && typeof entry === 'object' && !Array.isArray(entry))
2037
+ : [];
2038
+ const reasoningChunks = Array.isArray(parsed.reasoningChunks)
2039
+ ? parsed.reasoningChunks.filter((entry) => typeof entry === 'string')
2040
+ : [];
2041
+ return { normalizedParts, reasoningChunks };
2042
+ }
2043
+ catch (error) {
2044
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2045
+ return fail(reason);
2046
+ }
2047
+ }
2048
+ export function normalizeChatMessageContentWithNative(content) {
2049
+ const capability = 'normalizeChatMessageContentJson';
2050
+ const fail = (reason) => failNativeRequired(capability, reason);
2051
+ if (isNativeDisabledByEnv()) {
2052
+ return fail('native disabled');
2053
+ }
2054
+ const fn = readNativeFunction(capability);
2055
+ if (!fn) {
2056
+ return fail();
2057
+ }
2058
+ const contentJson = safeStringify(content ?? null);
2059
+ if (!contentJson) {
2060
+ return fail('json stringify failed');
2061
+ }
2062
+ try {
2063
+ const raw = fn(contentJson);
2064
+ if (typeof raw !== 'string' || !raw) {
2065
+ return fail('empty result');
2066
+ }
2067
+ const parsed = parseRecord(raw);
2068
+ if (!parsed) {
2069
+ return fail('invalid payload');
2070
+ }
2071
+ const contentText = typeof parsed.contentText === 'string' ? parsed.contentText : undefined;
2072
+ const reasoningText = typeof parsed.reasoningText === 'string' ? parsed.reasoningText : undefined;
2073
+ return {
2074
+ ...(contentText ? { contentText } : {}),
2075
+ ...(reasoningText ? { reasoningText } : {})
2076
+ };
2077
+ }
2078
+ catch (error) {
2079
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2080
+ return fail(reason);
2081
+ }
2082
+ }
2083
+ export function normalizeOpenaiMessageWithNative(message, disableShellCoerce) {
2084
+ const capability = 'normalizeOpenaiMessageJson';
2085
+ const fail = (reason) => failNativeRequired(capability, reason);
2086
+ if (isNativeDisabledByEnv()) {
2087
+ return fail('native disabled');
2088
+ }
2089
+ const fn = readNativeFunction(capability);
2090
+ if (!fn) {
2091
+ return fail();
2092
+ }
2093
+ const payloadJson = safeStringify(message ?? null);
2094
+ if (!payloadJson) {
2095
+ return fail('json stringify failed');
2096
+ }
2097
+ try {
2098
+ const raw = fn(payloadJson, Boolean(disableShellCoerce));
2099
+ if (typeof raw !== 'string' || !raw) {
2100
+ return fail('empty result');
2101
+ }
2102
+ try {
2103
+ return JSON.parse(raw);
2104
+ }
2105
+ catch {
2106
+ return fail('invalid payload');
2107
+ }
2108
+ }
2109
+ catch (error) {
2110
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2111
+ return fail(reason);
2112
+ }
2113
+ }
2114
+ export function normalizeOpenaiToolWithNative(tool) {
2115
+ const capability = 'normalizeOpenaiToolJson';
2116
+ const fail = (reason) => failNativeRequired(capability, reason);
2117
+ if (isNativeDisabledByEnv()) {
2118
+ return fail('native disabled');
2119
+ }
2120
+ const fn = readNativeFunction(capability);
2121
+ if (!fn) {
2122
+ return fail();
2123
+ }
2124
+ const payloadJson = safeStringify(tool ?? null);
2125
+ if (!payloadJson) {
2126
+ return fail('json stringify failed');
2127
+ }
2128
+ try {
2129
+ const raw = fn(payloadJson);
2130
+ if (typeof raw !== 'string' || !raw) {
2131
+ return fail('empty result');
2132
+ }
2133
+ try {
2134
+ return JSON.parse(raw);
2135
+ }
2136
+ catch {
2137
+ return fail('invalid payload');
2138
+ }
2139
+ }
2140
+ catch (error) {
2141
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2142
+ return fail(reason);
2143
+ }
2144
+ }
2145
+ export function normalizeOpenaiChatMessagesWithNative(messages) {
2146
+ const capability = 'normalizeOpenaiChatMessagesJson';
2147
+ const fail = (reason) => failNativeRequired(capability, reason);
2148
+ if (isNativeDisabledByEnv()) {
2149
+ return fail('native disabled');
2150
+ }
2151
+ const fn = readNativeFunction(capability);
2152
+ if (!fn) {
2153
+ return fail();
2154
+ }
2155
+ const payloadJson = safeStringify(messages ?? null);
2156
+ if (!payloadJson) {
2157
+ return fail('json stringify failed');
2158
+ }
2159
+ try {
2160
+ const raw = fn(payloadJson);
2161
+ if (typeof raw !== 'string' || !raw) {
2162
+ return fail('empty result');
2163
+ }
2164
+ const parsed = parseJson(raw);
2165
+ return Array.isArray(parsed) ? parsed : fail('invalid payload');
2166
+ }
2167
+ catch (error) {
2168
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2169
+ return fail(reason);
2170
+ }
2171
+ }
2172
+ export function normalizeOpenaiToolCallWithNative(toolCall, disableShellCoerce) {
2173
+ const capability = 'normalizeOpenaiToolCallJson';
2174
+ const fail = (reason) => failNativeRequired(capability, reason);
2175
+ if (isNativeDisabledByEnv()) {
2176
+ return fail('native disabled');
2177
+ }
2178
+ const fn = readNativeFunction(capability);
2179
+ if (!fn) {
2180
+ return fail();
2181
+ }
2182
+ const payloadJson = safeStringify(toolCall ?? null);
2183
+ if (!payloadJson) {
2184
+ return fail('json stringify failed');
2185
+ }
2186
+ try {
2187
+ const raw = fn(payloadJson, Boolean(disableShellCoerce));
2188
+ if (typeof raw !== 'string' || !raw) {
2189
+ return fail('empty result');
2190
+ }
2191
+ try {
2192
+ return JSON.parse(raw);
2193
+ }
2194
+ catch {
2195
+ return fail('invalid payload');
2196
+ }
2197
+ }
2198
+ catch (error) {
2199
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2200
+ return fail(reason);
2201
+ }
2202
+ }
2203
+ export function prepareGeminiToolsForBridgeWithNative(rawTools, missing) {
2204
+ const capability = 'prepareGeminiToolsForBridgeJson';
2205
+ const fail = (reason) => failNativeRequired(capability, reason);
2206
+ if (isNativeDisabledByEnv()) {
2207
+ return fail('native disabled');
2208
+ }
2209
+ const fn = readNativeFunction(capability);
2210
+ if (!fn) {
2211
+ return fail();
2212
+ }
2213
+ const rawToolsJson = safeStringify(rawTools ?? null);
2214
+ const missingJson = safeStringify(Array.isArray(missing) ? missing : []);
2215
+ if (!rawToolsJson || !missingJson) {
2216
+ return fail('json stringify failed');
2217
+ }
2218
+ try {
2219
+ const raw = fn(rawToolsJson, missingJson);
2220
+ if (typeof raw !== 'string' || !raw) {
2221
+ return fail('empty result');
2222
+ }
2223
+ const parsed = parseRecord(raw);
2224
+ if (!parsed) {
2225
+ return fail('invalid payload');
2226
+ }
2227
+ const defs = Array.isArray(parsed.defs)
2228
+ ? parsed.defs.filter((entry) => !!entry && typeof entry === 'object' && !Array.isArray(entry))
2229
+ : undefined;
2230
+ const nextMissing = Array.isArray(parsed.missing)
2231
+ ? parsed.missing.filter((entry) => !!entry && typeof entry === 'object' && !Array.isArray(entry))
2232
+ : [];
2233
+ return {
2234
+ ...(defs && defs.length ? { defs } : {}),
2235
+ missing: nextMissing
2236
+ };
2237
+ }
2238
+ catch (error) {
2239
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2240
+ return fail(reason);
2241
+ }
2242
+ }
2243
+ export function buildGeminiToolsFromBridgeWithNative(defs, mode = 'default') {
2244
+ const capability = 'buildGeminiToolsFromBridgeJson';
2245
+ const fail = (reason) => failNativeRequired(capability, reason);
2246
+ if (isNativeDisabledByEnv()) {
2247
+ return fail('native disabled');
2248
+ }
2249
+ const fn = readNativeFunction(capability);
2250
+ if (!fn) {
2251
+ return fail();
2252
+ }
2253
+ const defsJson = safeStringify(defs ?? null);
2254
+ if (!defsJson) {
2255
+ return fail('json stringify failed');
2256
+ }
2257
+ try {
2258
+ const raw = fn(defsJson, mode);
2259
+ if (typeof raw !== 'string' || !raw) {
2260
+ return fail('empty result');
2261
+ }
2262
+ const parsed = parseJson(raw);
2263
+ if (parsed == null) {
2264
+ return undefined;
2265
+ }
2266
+ if (!Array.isArray(parsed)) {
2267
+ return fail('invalid payload');
2268
+ }
2269
+ return parsed.filter((entry) => !!entry && typeof entry === 'object' && !Array.isArray(entry));
2270
+ }
2271
+ catch (error) {
2272
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2273
+ return fail(reason);
2274
+ }
2275
+ }
2276
+ export function pickResponsesPersistedFieldsWithNative(payload) {
2277
+ const capability = 'pickResponsesPersistedFieldsJson';
2278
+ const fail = (reason) => failNativeRequired(capability, reason);
2279
+ if (isNativeDisabledByEnv()) {
2280
+ return fail('native disabled');
2281
+ }
2282
+ const fn = readNativeFunction(capability);
2283
+ if (!fn) {
2284
+ return fail();
2285
+ }
2286
+ const payloadJson = safeStringify(payload ?? null);
2287
+ if (!payloadJson) {
2288
+ return fail('json stringify failed');
2289
+ }
2290
+ try {
2291
+ const raw = fn(payloadJson);
2292
+ if (typeof raw !== 'string' || !raw) {
2293
+ return fail('empty result');
2294
+ }
2295
+ const parsed = parseRecord(raw);
2296
+ return parsed ?? fail('invalid payload');
2297
+ }
2298
+ catch (error) {
2299
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2300
+ return fail(reason);
2301
+ }
2302
+ }
2303
+ export function convertResponsesOutputToInputItemsWithNative(response) {
2304
+ const capability = 'convertResponsesOutputToInputItemsJson';
2305
+ const fail = (reason) => failNativeRequired(capability, reason);
2306
+ if (isNativeDisabledByEnv()) {
2307
+ return fail('native disabled');
2308
+ }
2309
+ const fn = readNativeFunction(capability);
2310
+ if (!fn) {
2311
+ return fail();
2312
+ }
2313
+ const responseJson = safeStringify(response ?? null);
2314
+ if (!responseJson) {
2315
+ return fail('json stringify failed');
2316
+ }
2317
+ try {
2318
+ const raw = fn(responseJson);
2319
+ if (typeof raw !== 'string' || !raw) {
2320
+ return fail('empty result');
2321
+ }
2322
+ const parsed = parseJson(raw);
2323
+ if (!Array.isArray(parsed)) {
2324
+ return fail('invalid payload');
2325
+ }
2326
+ return parsed.filter((entry) => !!entry && typeof entry === 'object' && !Array.isArray(entry));
2327
+ }
2328
+ catch (error) {
2329
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2330
+ return fail(reason);
2331
+ }
2332
+ }
2333
+ export function prepareResponsesConversationEntryWithNative(payload, context) {
2334
+ const capability = 'prepareResponsesConversationEntryJson';
2335
+ const fail = (reason) => failNativeRequired(capability, reason);
2336
+ if (isNativeDisabledByEnv()) {
2337
+ return fail('native disabled');
2338
+ }
2339
+ const fn = readNativeFunction(capability);
2340
+ if (!fn) {
2341
+ return fail();
2342
+ }
2343
+ const payloadJson = safeStringify(payload ?? null);
2344
+ const contextJson = safeStringify(context ?? null);
2345
+ if (!payloadJson || !contextJson) {
2346
+ return fail('json stringify failed');
2347
+ }
2348
+ try {
2349
+ const raw = fn(payloadJson, contextJson);
2350
+ if (typeof raw !== 'string' || !raw) {
2351
+ return fail('empty result');
2352
+ }
2353
+ const parsed = parseRecord(raw);
2354
+ if (!parsed) {
2355
+ return fail('invalid payload');
2356
+ }
2357
+ const basePayload = parsed.basePayload;
2358
+ const input = parsed.input;
2359
+ const tools = parsed.tools;
2360
+ if (!basePayload || typeof basePayload !== 'object' || Array.isArray(basePayload) || !Array.isArray(input)) {
2361
+ return fail('invalid payload');
2362
+ }
2363
+ return {
2364
+ basePayload: basePayload,
2365
+ input: input.filter((entry) => !!entry && typeof entry === 'object' && !Array.isArray(entry)),
2366
+ tools: Array.isArray(tools)
2367
+ ? tools.filter((entry) => !!entry && typeof entry === 'object' && !Array.isArray(entry))
2368
+ : undefined
2369
+ };
2370
+ }
2371
+ catch (error) {
2372
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2373
+ return fail(reason);
2374
+ }
2375
+ }
2376
+ export function resumeResponsesConversationPayloadWithNative(entry, responseId, submitPayload, requestId) {
2377
+ const capability = 'resumeResponsesConversationPayloadJson';
2378
+ const fail = (reason) => failNativeRequired(capability, reason);
2379
+ if (isNativeDisabledByEnv()) {
2380
+ return fail('native disabled');
2381
+ }
2382
+ const fn = readNativeFunction(capability);
2383
+ if (!fn) {
2384
+ return fail();
2385
+ }
2386
+ const entryJson = safeStringify(entry ?? null);
2387
+ const submitPayloadJson = safeStringify(submitPayload ?? null);
2388
+ if (!entryJson || !submitPayloadJson) {
2389
+ return fail('json stringify failed');
2390
+ }
2391
+ try {
2392
+ const raw = fn(entryJson, String(responseId ?? ''), submitPayloadJson, requestId);
2393
+ if (typeof raw !== 'string' || !raw) {
2394
+ return fail('empty result');
2395
+ }
2396
+ const parsed = parseResponsesConversationResumeResult(raw);
2397
+ return parsed ?? fail('invalid payload');
2398
+ }
2399
+ catch (error) {
2400
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2401
+ return fail(reason);
2402
+ }
2403
+ }
2404
+ export function enforceChatBudgetWithNative(chat, allowedBytes, systemTextLimit) {
2405
+ const capability = 'enforceChatBudgetJson';
2406
+ const fail = (reason) => failNativeRequired(capability, reason);
2407
+ if (isNativeDisabledByEnv()) {
2408
+ return fail('native disabled');
2409
+ }
2410
+ const fn = readNativeFunction(capability);
2411
+ if (!fn) {
2412
+ return fail();
2413
+ }
2414
+ const chatJson = safeStringify(chat ?? null);
2415
+ if (!chatJson) {
2416
+ return fail('json stringify failed');
2417
+ }
2418
+ try {
2419
+ const raw = fn(chatJson, Number(allowedBytes), Number(systemTextLimit));
2420
+ if (typeof raw !== 'string' || !raw) {
2421
+ return fail('empty result');
2422
+ }
2423
+ const parsed = parseJson(raw);
2424
+ return parsed ?? fail('invalid payload');
2425
+ }
2426
+ catch (error) {
2427
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2428
+ return fail(reason);
2429
+ }
2430
+ }
2431
+ export function resolveBudgetForModelWithNative(modelId, fallback) {
2432
+ const capability = 'resolveBudgetForModelJson';
2433
+ const fail = (reason) => failNativeRequired(capability, reason);
2434
+ if (isNativeDisabledByEnv()) {
2435
+ return fail('native disabled');
2436
+ }
2437
+ const fn = readNativeFunction(capability);
2438
+ if (!fn) {
2439
+ return fail();
2440
+ }
2441
+ const fallbackJson = safeStringify(fallback ?? null);
2442
+ if (!fallbackJson) {
2443
+ return fail('json stringify failed');
2444
+ }
2445
+ try {
2446
+ const raw = fn(String(modelId ?? ''), fallbackJson);
2447
+ if (typeof raw !== 'string' || !raw) {
2448
+ return fail('empty result');
2449
+ }
2450
+ const parsed = parseRecord(raw);
2451
+ if (!parsed) {
2452
+ return fail('invalid payload');
2453
+ }
2454
+ const maxBytes = Number(parsed.maxBytes);
2455
+ const safetyRatio = Number(parsed.safetyRatio);
2456
+ const allowedBytes = Number(parsed.allowedBytes);
2457
+ const source = typeof parsed.source === 'string' ? parsed.source : 'unknown';
2458
+ if (!Number.isFinite(maxBytes) || !Number.isFinite(safetyRatio) || !Number.isFinite(allowedBytes)) {
2459
+ return fail('invalid payload');
2460
+ }
2461
+ return { maxBytes, safetyRatio, allowedBytes, source };
2462
+ }
2463
+ catch (error) {
2464
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2465
+ return fail(reason);
2466
+ }
2467
+ }
2468
+ export function injectMcpToolsForResponsesWithNative(tools, discoveredServers) {
2469
+ const capability = 'injectMcpToolsForResponsesJson';
2470
+ const fail = (reason) => failNativeRequired(capability, reason);
2471
+ if (isNativeDisabledByEnv()) {
2472
+ return fail('native disabled');
2473
+ }
2474
+ const fn = readNativeFunction(capability);
2475
+ if (!fn) {
2476
+ return fail();
2477
+ }
2478
+ const toolsJson = safeStringify(Array.isArray(tools) ? tools : []);
2479
+ const serversJson = safeStringify(Array.isArray(discoveredServers) ? discoveredServers : []);
2480
+ if (!toolsJson || !serversJson) {
2481
+ return fail('json stringify failed');
2482
+ }
2483
+ try {
2484
+ const raw = fn(toolsJson, serversJson);
2485
+ if (typeof raw !== 'string' || !raw) {
2486
+ return fail('empty result');
2487
+ }
2488
+ const parsed = parseJson(raw);
2489
+ return Array.isArray(parsed) ? parsed : fail('invalid payload');
2490
+ }
2491
+ catch (error) {
2492
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2493
+ return fail(reason);
2494
+ }
2495
+ }
2496
+ export function normalizeFunctionCallIdWithNative(input) {
2497
+ const capability = 'normalizeFunctionCallIdJson';
2498
+ const fail = (reason) => failNativeRequired(capability, reason);
2499
+ if (isNativeDisabledByEnv()) {
2500
+ return fail('native disabled');
2501
+ }
2502
+ const fn = readNativeFunction(capability);
2503
+ if (!fn) {
2504
+ return fail();
2505
+ }
2506
+ const inputJson = safeStringify(input ?? {});
2507
+ if (!inputJson) {
2508
+ return fail('json stringify failed');
2509
+ }
2510
+ try {
2511
+ const raw = fn(inputJson);
2512
+ return typeof raw === 'string' && raw ? raw : fail('invalid payload');
2513
+ }
2514
+ catch (error) {
2515
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2516
+ return fail(reason);
2517
+ }
2518
+ }
2519
+ export function normalizeFunctionCallOutputIdWithNative(input) {
2520
+ const capability = 'normalizeFunctionCallOutputIdJson';
2521
+ const fail = (reason) => failNativeRequired(capability, reason);
2522
+ if (isNativeDisabledByEnv()) {
2523
+ return fail('native disabled');
2524
+ }
2525
+ const fn = readNativeFunction(capability);
2526
+ if (!fn) {
2527
+ return fail();
2528
+ }
2529
+ const inputJson = safeStringify(input ?? {});
2530
+ if (!inputJson) {
2531
+ return fail('json stringify failed');
2532
+ }
2533
+ try {
2534
+ const raw = fn(inputJson);
2535
+ return typeof raw === 'string' && raw ? raw : fail('invalid payload');
2536
+ }
2537
+ catch (error) {
2538
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2539
+ return fail(reason);
2540
+ }
2541
+ }
2542
+ export function normalizeResponsesCallIdWithNative(input) {
2543
+ const capability = 'normalizeResponsesCallIdJson';
2544
+ const fail = (reason) => failNativeRequired(capability, reason);
2545
+ if (isNativeDisabledByEnv()) {
2546
+ return fail('native disabled');
2547
+ }
2548
+ const fn = readNativeFunction(capability);
2549
+ if (!fn) {
2550
+ return fail();
2551
+ }
2552
+ const inputJson = safeStringify(input ?? {});
2553
+ if (!inputJson) {
2554
+ return fail('json stringify failed');
2555
+ }
2556
+ try {
2557
+ const raw = fn(inputJson);
2558
+ return typeof raw === 'string' && raw ? raw : fail('invalid payload');
2559
+ }
2560
+ catch (error) {
2561
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2562
+ return fail(reason);
2563
+ }
2564
+ }
2565
+ export function clampResponsesInputItemIdWithNative(rawValue) {
2566
+ const capability = 'clampResponsesInputItemIdJson';
2567
+ const fail = (reason) => failNativeRequired(capability, reason);
2568
+ if (isNativeDisabledByEnv()) {
2569
+ return fail('native disabled');
2570
+ }
2571
+ const fn = readNativeFunction(capability);
2572
+ if (!fn) {
2573
+ return fail();
2574
+ }
2575
+ const rawJson = safeStringify(rawValue ?? null);
2576
+ if (!rawJson) {
2577
+ return fail('json stringify failed');
2578
+ }
2579
+ try {
2580
+ const raw = fn(rawJson);
2581
+ if (typeof raw !== 'string' || !raw) {
2582
+ return fail('empty result');
2583
+ }
2584
+ const parsed = parseJson(raw);
2585
+ if (parsed === null) {
2586
+ return undefined;
2587
+ }
2588
+ return typeof parsed === 'string' ? parsed : fail('invalid payload');
2589
+ }
2590
+ catch (error) {
2591
+ const reason = error instanceof Error ? error.message : String(error ?? 'unknown');
2592
+ return fail(reason);
2593
+ }
2594
+ }