@mupt-ai/dari-gateway 0.2.0 → 0.2.1

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 (366) hide show
  1. package/dist/bun.d.ts +2 -0
  2. package/dist/bun.js +4 -0
  3. package/dist/context/eval_catalog.d.ts +3 -0
  4. package/dist/context/eval_catalog.js +7 -0
  5. package/dist/context/interaction_fingerprint.d.ts +27 -0
  6. package/dist/context/interaction_fingerprint.js +519 -0
  7. package/dist/context/interaction_fingerprint_format.d.ts +42 -0
  8. package/dist/context/interaction_fingerprint_format.js +113 -0
  9. package/dist/context/interaction_lease_depth.d.ts +2 -0
  10. package/dist/context/interaction_lease_depth.js +110 -0
  11. package/dist/context/lease_history.d.ts +7 -0
  12. package/dist/context/lease_history.js +158 -0
  13. package/dist/context/pricing.d.ts +4 -0
  14. package/dist/context/pricing.js +23 -0
  15. package/dist/context/provider_prompt_accounting.d.ts +14 -0
  16. package/dist/context/provider_prompt_accounting.js +187 -0
  17. package/dist/context/routing_context.d.ts +40 -0
  18. package/dist/context/routing_context.js +211 -0
  19. package/dist/http/auth.d.ts +2 -0
  20. package/dist/http/auth.js +35 -0
  21. package/dist/http/errors.d.ts +19 -0
  22. package/dist/http/errors.js +89 -0
  23. package/dist/http/handler.d.ts +12 -0
  24. package/dist/http/handler.js +81 -0
  25. package/dist/http/http2_server.d.ts +6 -0
  26. package/dist/http/http2_server.js +103 -0
  27. package/dist/http/serve.d.ts +20 -0
  28. package/dist/http/serve.js +78 -0
  29. package/dist/index.d.ts +6 -0
  30. package/dist/index.js +8 -0
  31. package/dist/ingress/anthropic_messages.d.ts +3 -0
  32. package/dist/ingress/anthropic_messages.js +122 -0
  33. package/dist/ingress/anthropic_models.d.ts +1 -0
  34. package/dist/ingress/anthropic_models.js +23 -0
  35. package/dist/ingress/chat_completions.d.ts +2 -0
  36. package/dist/ingress/chat_completions.js +37 -0
  37. package/dist/ingress/claude_code/request_context.d.ts +2 -0
  38. package/dist/ingress/claude_code/request_context.js +31 -0
  39. package/dist/ingress/codex.d.ts +3 -0
  40. package/dist/ingress/codex.js +65 -0
  41. package/dist/ingress/codex_models.d.ts +2 -0
  42. package/dist/ingress/codex_models.js +89 -0
  43. package/dist/ingress/json.d.ts +1 -0
  44. package/dist/ingress/json.js +95 -0
  45. package/dist/ingress/models.d.ts +1 -0
  46. package/dist/ingress/models.js +53 -0
  47. package/dist/interaction/capabilities.d.ts +3 -0
  48. package/dist/interaction/capabilities.js +24 -0
  49. package/dist/interaction/image.d.ts +4 -0
  50. package/dist/interaction/image.js +13 -0
  51. package/dist/interaction/portable_reasoning_state.d.ts +4 -0
  52. package/dist/interaction/portable_reasoning_state.js +18 -0
  53. package/dist/interaction/provider_continuation_state.d.ts +6 -0
  54. package/dist/interaction/provider_continuation_state.js +27 -0
  55. package/dist/interaction/tool_identity.d.ts +10 -0
  56. package/dist/interaction/tool_identity.js +41 -0
  57. package/dist/interaction/types.d.ts +203 -0
  58. package/dist/interaction/types.js +5 -0
  59. package/dist/models/context_limits.d.ts +2 -0
  60. package/dist/models/context_limits.js +7 -0
  61. package/dist/models/execution_provider.d.ts +8 -0
  62. package/dist/models/execution_provider.js +13 -0
  63. package/dist/models/gateways.d.ts +11 -0
  64. package/dist/models/gateways.js +45 -0
  65. package/dist/models/ids.d.ts +1 -0
  66. package/dist/models/ids.js +15 -0
  67. package/dist/models/provider_defaults.d.ts +4 -0
  68. package/dist/models/provider_defaults.js +41 -0
  69. package/dist/models/runtime_overrides.d.ts +4 -0
  70. package/dist/models/runtime_overrides.js +209 -0
  71. package/dist/observability/errors.d.ts +8 -0
  72. package/dist/observability/errors.js +11 -0
  73. package/dist/platform/platform.d.ts +152 -0
  74. package/dist/platform/platform.js +11 -0
  75. package/dist/platform/routing_contract.d.ts +2 -0
  76. package/dist/platform/routing_contract.js +5 -0
  77. package/dist/protocol/input/anthropic_messages.d.ts +2 -0
  78. package/dist/protocol/input/anthropic_messages.js +494 -0
  79. package/dist/protocol/input/chat_completions.d.ts +4 -0
  80. package/dist/protocol/input/chat_completions.js +212 -0
  81. package/dist/protocol/input/chat_completions_validation.d.ts +2 -0
  82. package/dist/protocol/input/chat_completions_validation.js +257 -0
  83. package/dist/protocol/input/openai_responses.d.ts +2 -0
  84. package/dist/protocol/input/openai_responses.js +666 -0
  85. package/dist/protocol/input/router_model.d.ts +7 -0
  86. package/dist/protocol/input/router_model.js +43 -0
  87. package/dist/protocol/output/anthropic_messages.d.ts +10 -0
  88. package/dist/protocol/output/anthropic_messages.js +15 -0
  89. package/dist/protocol/output/anthropic_messages_output.d.ts +10 -0
  90. package/dist/protocol/output/anthropic_messages_output.js +124 -0
  91. package/dist/protocol/output/anthropic_messages_stream.d.ts +16 -0
  92. package/dist/protocol/output/anthropic_messages_stream.js +267 -0
  93. package/dist/protocol/output/chat_completions.d.ts +29 -0
  94. package/dist/protocol/output/chat_completions.js +406 -0
  95. package/dist/protocol/output/chat_reasoning_detail.d.ts +2 -0
  96. package/dist/protocol/output/chat_reasoning_detail.js +13 -0
  97. package/dist/protocol/output/delivered_stream_snapshot.d.ts +10 -0
  98. package/dist/protocol/output/delivered_stream_snapshot.js +31 -0
  99. package/dist/protocol/output/openai_responses.d.ts +10 -0
  100. package/dist/protocol/output/openai_responses.js +14 -0
  101. package/dist/protocol/output/openai_responses_output.d.ts +14 -0
  102. package/dist/protocol/output/openai_responses_output.js +125 -0
  103. package/dist/protocol/output/openai_responses_stream.d.ts +18 -0
  104. package/dist/protocol/output/openai_responses_stream.js +546 -0
  105. package/dist/protocol/output/sse_stream.d.ts +31 -0
  106. package/dist/protocol/output/sse_stream.js +67 -0
  107. package/dist/providers/anthropic_safeguards.d.ts +11 -0
  108. package/dist/providers/anthropic_safeguards.js +81 -0
  109. package/dist/providers/aws_assume_role.d.ts +17 -0
  110. package/dist/providers/aws_assume_role.js +107 -0
  111. package/dist/providers/cancel_estimate.d.ts +43 -0
  112. package/dist/providers/cancel_estimate.js +89 -0
  113. package/dist/providers/execution.d.ts +72 -0
  114. package/dist/providers/execution.js +491 -0
  115. package/dist/providers/model_capabilities.d.ts +11 -0
  116. package/dist/providers/model_capabilities.js +29 -0
  117. package/dist/providers/pi.d.ts +65 -0
  118. package/dist/providers/pi.js +319 -0
  119. package/dist/providers/pi_context.d.ts +7 -0
  120. package/dist/providers/pi_context.js +405 -0
  121. package/dist/providers/pi_options.d.ts +11 -0
  122. package/dist/providers/pi_options.js +398 -0
  123. package/dist/providers/pi_output.d.ts +2 -0
  124. package/dist/providers/pi_output.js +453 -0
  125. package/dist/providers/provider_attempt_runner.d.ts +55 -0
  126. package/dist/providers/provider_attempt_runner.js +90 -0
  127. package/dist/providers/provider_call.d.ts +77 -0
  128. package/dist/providers/provider_call.js +292 -0
  129. package/dist/providers/provider_reported_cost.d.ts +10 -0
  130. package/dist/providers/provider_reported_cost.js +123 -0
  131. package/dist/providers/reasoning.d.ts +12 -0
  132. package/dist/providers/reasoning.js +30 -0
  133. package/dist/providers/response_capture.d.ts +23 -0
  134. package/dist/providers/response_capture.js +47 -0
  135. package/dist/providers/stream_finalization.d.ts +46 -0
  136. package/dist/providers/stream_finalization.js +165 -0
  137. package/dist/providers/subscription_limits.d.ts +31 -0
  138. package/dist/providers/subscription_limits.js +163 -0
  139. package/dist/providers/subscription_usage.d.ts +10 -0
  140. package/dist/providers/subscription_usage.js +79 -0
  141. package/dist/runtime/claude_code/auxiliary_routing.d.ts +3 -0
  142. package/dist/runtime/claude_code/auxiliary_routing.js +60 -0
  143. package/dist/runtime/customer_disconnect.d.ts +20 -0
  144. package/dist/runtime/customer_disconnect.js +49 -0
  145. package/dist/runtime/explicit_model.d.ts +4 -0
  146. package/dist/runtime/explicit_model.js +53 -0
  147. package/dist/runtime/harness_identity/conversation.d.ts +33 -0
  148. package/dist/runtime/harness_identity/conversation.js +39 -0
  149. package/dist/runtime/harness_identity/extract.d.ts +8 -0
  150. package/dist/runtime/harness_identity/extract.js +214 -0
  151. package/dist/runtime/harness_identity/index.d.ts +2 -0
  152. package/dist/runtime/harness_identity/index.js +2 -0
  153. package/dist/runtime/prepare_routed_completion.d.ts +33 -0
  154. package/dist/runtime/prepare_routed_completion.js +167 -0
  155. package/dist/runtime/provider_stream_lifecycle.d.ts +31 -0
  156. package/dist/runtime/provider_stream_lifecycle.js +88 -0
  157. package/dist/runtime/provider_stream_outcome.d.ts +23 -0
  158. package/dist/runtime/provider_stream_outcome.js +55 -0
  159. package/dist/runtime/request_tags.d.ts +7 -0
  160. package/dist/runtime/request_tags.js +33 -0
  161. package/dist/runtime/routed_completion.d.ts +17 -0
  162. package/dist/runtime/routed_completion.js +80 -0
  163. package/dist/runtime/routed_protocol.d.ts +30 -0
  164. package/dist/runtime/routed_protocol.js +1 -0
  165. package/dist/runtime/routed_runtime.d.ts +40 -0
  166. package/dist/runtime/routed_runtime.js +535 -0
  167. package/dist/runtime/routing_lease.d.ts +26 -0
  168. package/dist/runtime/routing_lease.js +210 -0
  169. package/dist/runtime/runtime_reporter.d.ts +71 -0
  170. package/dist/runtime/runtime_reporter.js +35 -0
  171. package/dist/self_host/config.d.ts +46 -0
  172. package/dist/self_host/config.js +105 -0
  173. package/dist/self_host/main.d.ts +16 -0
  174. package/dist/self_host/main.js +95 -0
  175. package/dist/self_host/platform.d.ts +13 -0
  176. package/dist/self_host/platform.js +50 -0
  177. package/dist/self_host/prefix_store.d.ts +46 -0
  178. package/dist/self_host/prefix_store.js +261 -0
  179. package/dist/self_host/resolve.d.ts +28 -0
  180. package/dist/self_host/resolve.js +171 -0
  181. package/dist/self_host/subscriptions/access.d.ts +10 -0
  182. package/dist/self_host/subscriptions/access.js +37 -0
  183. package/dist/self_host/subscriptions/http.d.ts +15 -0
  184. package/dist/self_host/subscriptions/http.js +187 -0
  185. package/dist/self_host/subscriptions/index.d.ts +24 -0
  186. package/dist/self_host/subscriptions/index.js +24 -0
  187. package/dist/self_host/subscriptions/oauth.d.ts +55 -0
  188. package/dist/self_host/subscriptions/oauth.js +281 -0
  189. package/dist/self_host/subscriptions/store.d.ts +78 -0
  190. package/dist/self_host/subscriptions/store.js +235 -0
  191. package/dist/strategies/auto_routing_selector.d.ts +12 -0
  192. package/dist/strategies/auto_routing_selector.js +61 -0
  193. package/dist/strategies/eval_relevance.d.ts +17 -0
  194. package/dist/strategies/eval_relevance.js +32 -0
  195. package/dist/strategies/fallback_decision.d.ts +8 -0
  196. package/dist/strategies/fallback_decision.js +17 -0
  197. package/dist/strategies/priority_selector.d.ts +7 -0
  198. package/dist/strategies/priority_selector.js +37 -0
  199. package/dist/strategies/route_decision.d.ts +22 -0
  200. package/dist/strategies/route_decision.js +65 -0
  201. package/dist/strategies/routing.d.ts +74 -0
  202. package/dist/strategies/routing.js +280 -0
  203. package/dist/strategies/selector_projection.d.ts +15 -0
  204. package/dist/strategies/selector_projection.js +161 -0
  205. package/dist/telemetry/background.d.ts +7 -0
  206. package/dist/telemetry/background.js +33 -0
  207. package/dist/telemetry/benchmark_replay.d.ts +37 -0
  208. package/dist/telemetry/benchmark_replay.js +108 -0
  209. package/dist/telemetry/billing_finalization.d.ts +64 -0
  210. package/dist/telemetry/billing_finalization.js +96 -0
  211. package/dist/telemetry/ingest_values.d.ts +4 -0
  212. package/dist/telemetry/ingest_values.js +12 -0
  213. package/dist/telemetry/model_cost.d.ts +3 -0
  214. package/dist/telemetry/model_cost.js +15 -0
  215. package/dist/telemetry/prefix_state.d.ts +47 -0
  216. package/dist/telemetry/prefix_state.js +116 -0
  217. package/dist/telemetry/report.d.ts +88 -0
  218. package/dist/telemetry/report.js +621 -0
  219. package/dist/telemetry/requests/interaction_observability.d.ts +45 -0
  220. package/dist/telemetry/requests/interaction_observability.js +180 -0
  221. package/dist/telemetry/requests/retained_interaction_request.d.ts +8 -0
  222. package/dist/telemetry/requests/retained_interaction_request.js +10 -0
  223. package/dist/telemetry/scrub.d.ts +2 -0
  224. package/dist/telemetry/scrub.js +31 -0
  225. package/dist/telemetry/skills/claude/catalog.d.ts +6 -0
  226. package/dist/telemetry/skills/claude/catalog.js +99 -0
  227. package/dist/telemetry/skills/claude/file_reads.d.ts +4 -0
  228. package/dist/telemetry/skills/claude/file_reads.js +110 -0
  229. package/dist/telemetry/skills/claude/observations.d.ts +3 -0
  230. package/dist/telemetry/skills/claude/observations.js +366 -0
  231. package/dist/telemetry/skills/codex/catalog.d.ts +11 -0
  232. package/dist/telemetry/skills/codex/catalog.js +138 -0
  233. package/dist/telemetry/skills/codex/exec_file_reads.d.ts +9 -0
  234. package/dist/telemetry/skills/codex/exec_file_reads.js +36 -0
  235. package/dist/telemetry/skills/codex/explicit.d.ts +3 -0
  236. package/dist/telemetry/skills/codex/explicit.js +90 -0
  237. package/dist/telemetry/skills/codex/file_reads.d.ts +4 -0
  238. package/dist/telemetry/skills/codex/file_reads.js +37 -0
  239. package/dist/telemetry/skills/codex/identity.d.ts +2 -0
  240. package/dist/telemetry/skills/codex/identity.js +20 -0
  241. package/dist/telemetry/skills/observations.d.ts +21 -0
  242. package/dist/telemetry/skills/observations.js +41 -0
  243. package/dist/telemetry/skills/paths.d.ts +11 -0
  244. package/dist/telemetry/skills/paths.js +61 -0
  245. package/dist/telemetry/skills/pi.d.ts +6 -0
  246. package/dist/telemetry/skills/pi.js +223 -0
  247. package/dist/telemetry/skills/shell_file_reads.d.ts +7 -0
  248. package/dist/telemetry/skills/shell_file_reads.js +226 -0
  249. package/dist/telemetry/skills/shell_words.d.ts +13 -0
  250. package/dist/telemetry/skills/shell_words.js +189 -0
  251. package/dist/telemetry/tools/input.d.ts +2 -0
  252. package/dist/telemetry/tools/input.js +14 -0
  253. package/dist/telemetry/tools/observations.d.ts +29 -0
  254. package/dist/telemetry/tools/observations.js +247 -0
  255. package/dist/telemetry/usage.d.ts +57 -0
  256. package/dist/telemetry/usage.js +136 -0
  257. package/dist/types.d.ts +94 -0
  258. package/dist/types.js +1 -0
  259. package/package.json +21 -6
  260. package/src/bun.ts +2 -2
  261. package/src/context/eval_catalog.ts +1 -1
  262. package/src/context/interaction_fingerprint.ts +9 -9
  263. package/src/context/interaction_fingerprint_format.ts +1 -1
  264. package/src/context/interaction_lease_depth.ts +1 -1
  265. package/src/context/pricing.ts +1 -1
  266. package/src/context/provider_prompt_accounting.ts +5 -5
  267. package/src/context/routing_context.ts +16 -16
  268. package/src/http/auth.ts +1 -1
  269. package/src/http/handler.ts +8 -8
  270. package/src/http/serve.ts +3 -3
  271. package/src/index.ts +6 -6
  272. package/src/ingress/anthropic_messages.ts +12 -12
  273. package/src/ingress/anthropic_models.ts +1 -1
  274. package/src/ingress/chat_completions.ts +9 -9
  275. package/src/ingress/claude_code/request_context.ts +2 -2
  276. package/src/ingress/codex.ts +10 -10
  277. package/src/ingress/codex_models.ts +4 -4
  278. package/src/ingress/json.ts +1 -1
  279. package/src/ingress/models.ts +9 -9
  280. package/src/interaction/capabilities.ts +1 -1
  281. package/src/interaction/portable_reasoning_state.ts +1 -1
  282. package/src/interaction/provider_continuation_state.ts +1 -1
  283. package/src/interaction/tool_identity.ts +2 -2
  284. package/src/models/context_limits.ts +1 -1
  285. package/src/models/execution_provider.ts +1 -1
  286. package/src/models/ids.ts +1 -1
  287. package/src/models/provider_defaults.ts +1 -1
  288. package/src/models/runtime_overrides.ts +1 -1
  289. package/src/observability/errors.ts +2 -2
  290. package/src/platform/platform.ts +4 -4
  291. package/src/protocol/input/anthropic_messages.ts +7 -7
  292. package/src/protocol/input/chat_completions.ts +5 -5
  293. package/src/protocol/input/chat_completions_validation.ts +4 -4
  294. package/src/protocol/input/openai_responses.ts +6 -6
  295. package/src/protocol/output/anthropic_messages.ts +3 -3
  296. package/src/protocol/output/anthropic_messages_output.ts +6 -4
  297. package/src/protocol/output/anthropic_messages_stream.ts +7 -7
  298. package/src/protocol/output/chat_completions.ts +13 -13
  299. package/src/protocol/output/chat_reasoning_detail.ts +1 -1
  300. package/src/protocol/output/openai_responses.ts +3 -3
  301. package/src/protocol/output/openai_responses_output.ts +4 -2
  302. package/src/protocol/output/openai_responses_stream.ts +6 -6
  303. package/src/protocol/output/sse_stream.ts +3 -3
  304. package/src/providers/anthropic_safeguards.ts +2 -2
  305. package/src/providers/aws_assume_role.ts +2 -2
  306. package/src/providers/cancel_estimate.ts +1 -1
  307. package/src/providers/execution.ts +17 -17
  308. package/src/providers/pi.ts +14 -14
  309. package/src/providers/pi_context.ts +6 -6
  310. package/src/providers/pi_options.ts +10 -10
  311. package/src/providers/pi_output.ts +5 -5
  312. package/src/providers/provider_attempt_runner.ts +1 -1
  313. package/src/providers/provider_call.ts +14 -14
  314. package/src/providers/provider_reported_cost.ts +3 -3
  315. package/src/providers/reasoning.ts +2 -2
  316. package/src/providers/stream_finalization.ts +9 -9
  317. package/src/providers/subscription_limits.ts +3 -3
  318. package/src/runtime/claude_code/auxiliary_routing.ts +5 -5
  319. package/src/runtime/customer_disconnect.ts +1 -1
  320. package/src/runtime/explicit_model.ts +4 -4
  321. package/src/runtime/harness_identity/conversation.ts +1 -1
  322. package/src/runtime/harness_identity/extract.ts +3 -3
  323. package/src/runtime/harness_identity/index.ts +2 -2
  324. package/src/runtime/prepare_routed_completion.ts +13 -13
  325. package/src/runtime/provider_stream_lifecycle.ts +1 -1
  326. package/src/runtime/provider_stream_outcome.ts +2 -2
  327. package/src/runtime/request_tags.ts +2 -2
  328. package/src/runtime/routed_completion.ts +11 -11
  329. package/src/runtime/routed_protocol.ts +2 -2
  330. package/src/runtime/routed_runtime.ts +20 -19
  331. package/src/runtime/routing_lease.ts +7 -7
  332. package/src/runtime/runtime_reporter.ts +3 -3
  333. package/src/self_host/main.ts +12 -12
  334. package/src/self_host/platform.ts +5 -5
  335. package/src/self_host/prefix_store.ts +2 -2
  336. package/src/self_host/resolve.ts +6 -6
  337. package/src/self_host/subscriptions/access.ts +2 -2
  338. package/src/self_host/subscriptions/http.ts +2 -2
  339. package/src/self_host/subscriptions/index.ts +4 -4
  340. package/src/self_host/subscriptions/store.ts +1 -1
  341. package/src/strategies/auto_routing_selector.ts +2 -2
  342. package/src/strategies/eval_relevance.ts +3 -3
  343. package/src/strategies/priority_selector.ts +1 -1
  344. package/src/strategies/route_decision.ts +7 -7
  345. package/src/strategies/routing.ts +10 -10
  346. package/src/strategies/selector_projection.ts +2 -2
  347. package/src/telemetry/billing_finalization.ts +3 -3
  348. package/src/telemetry/model_cost.ts +1 -1
  349. package/src/telemetry/prefix_state.ts +4 -4
  350. package/src/telemetry/report.ts +21 -21
  351. package/src/telemetry/requests/interaction_observability.ts +1 -1
  352. package/src/telemetry/requests/retained_interaction_request.ts +1 -1
  353. package/src/telemetry/skills/claude/catalog.ts +1 -1
  354. package/src/telemetry/skills/claude/file_reads.ts +6 -6
  355. package/src/telemetry/skills/claude/observations.ts +3 -3
  356. package/src/telemetry/skills/codex/catalog.ts +3 -3
  357. package/src/telemetry/skills/codex/exec_file_reads.ts +4 -4
  358. package/src/telemetry/skills/codex/explicit.ts +3 -3
  359. package/src/telemetry/skills/codex/file_reads.ts +5 -5
  360. package/src/telemetry/skills/observations.ts +7 -7
  361. package/src/telemetry/skills/pi.ts +3 -3
  362. package/src/telemetry/skills/shell_file_reads.ts +2 -2
  363. package/src/telemetry/skills/shell_words.ts +1 -1
  364. package/src/telemetry/tools/input.ts +1 -1
  365. package/src/telemetry/tools/observations.ts +9 -9
  366. package/src/telemetry/usage.ts +5 -5
@@ -8,9 +8,9 @@ import {
8
8
  type RouterEval,
9
9
  } from "@mupt-ai/dari-router/policy-engine";
10
10
 
11
- import { publicCatalogSelectorEvals } from "../context/eval_catalog";
12
- import { scrubSecrets } from "../telemetry/scrub";
13
- import type { ResolvedRouter } from "../types";
11
+ import { publicCatalogSelectorEvals } from "../context/eval_catalog.js";
12
+ import { scrubSecrets } from "../telemetry/scrub.js";
13
+ import type { ResolvedRouter } from "../types.js";
14
14
 
15
15
  export type EvalRelevanceDetails =
16
16
  | {
@@ -1,4 +1,4 @@
1
- import type { SelectorBackend } from "./routing";
1
+ import type { SelectorBackend } from "./routing.js";
2
2
 
3
3
  const PRIORITY_SELECTOR_MODEL = "dari-gateway/priority";
4
4
  // Priority selection reads no messages, so the sized selector input only
@@ -5,13 +5,13 @@ import type {
5
5
  StrategyCandidateResolution,
6
6
  SelectorLeaseHistoryEntry,
7
7
  } from "@mupt-ai/dari-router/policy-engine";
8
- import { publicCatalogSelectorEvals } from "../context/eval_catalog";
9
- import { HttpError } from "../http/errors";
10
- import { relevantEvals } from "./eval_relevance";
11
- import { executionProviderForModel } from "../models/execution_provider";
12
- import { selectModel, type SelectorBackend, type SelectorRun } from "./routing";
13
- import type { SelectorImage } from "./selector_projection";
14
- import type { ResolvedRouter } from "../types";
8
+ import { publicCatalogSelectorEvals } from "../context/eval_catalog.js";
9
+ import { HttpError } from "../http/errors.js";
10
+ import { relevantEvals } from "./eval_relevance.js";
11
+ import { executionProviderForModel } from "../models/execution_provider.js";
12
+ import { selectModel, type SelectorBackend, type SelectorRun } from "./routing.js";
13
+ import type { SelectorImage } from "./selector_projection.js";
14
+ import type { ResolvedRouter } from "../types.js";
15
15
 
16
16
  export type RoutedDecision = {
17
17
  decision: RoutingDecision;
@@ -21,21 +21,21 @@ import {
21
21
  type SelectorInput,
22
22
  type SelectorLeaseHistoryEntry,
23
23
  } from "@mupt-ai/dari-router/policy-engine";
24
- import { HttpError } from "../http/errors";
25
- import { executionProviderForModel } from "../models/execution_provider";
26
- import { providerLabel } from "../models/provider_defaults";
27
- import { internalChatCompletionsToInteraction } from "../protocol/input/chat_completions";
28
- import { gatewayPlatform, type ResolveRouterRequest } from "../platform/platform";
29
- import { isBedrockApi } from "../providers/model_capabilities";
30
- import { completeInteractionModel, modelContextWindow } from "../providers/pi";
24
+ import { HttpError } from "../http/errors.js";
25
+ import { executionProviderForModel } from "../models/execution_provider.js";
26
+ import { providerLabel } from "../models/provider_defaults.js";
27
+ import { internalChatCompletionsToInteraction } from "../protocol/input/chat_completions.js";
28
+ import { gatewayPlatform, type ResolveRouterRequest } from "../platform/platform.js";
29
+ import { isBedrockApi } from "../providers/model_capabilities.js";
30
+ import { completeInteractionModel, modelContextWindow } from "../providers/pi.js";
31
31
  import type {
32
32
  AwsAssumeRoleProviderAuth,
33
33
  AwsSigV4ProviderAuth,
34
34
  ProviderAuth,
35
35
  ResolvedRouter,
36
- } from "../types";
37
- import { deriveFallbackDecision } from "./fallback_decision";
38
- import type { SelectorImage } from "./selector_projection";
36
+ } from "../types.js";
37
+ import { deriveFallbackDecision } from "./fallback_decision.js";
38
+ import type { SelectorImage } from "./selector_projection.js";
39
39
 
40
40
  export function resolveRouter(args: ResolveRouterRequest): Promise<ResolvedRouter> {
41
41
  return gatewayPlatform().resolveRouter(args);
@@ -1,12 +1,12 @@
1
1
  import type { ChatMessage } from "@mupt-ai/dari-router/policy-engine";
2
2
 
3
- import { toolWireName } from "../interaction/tool_identity";
3
+ import { toolWireName } from "../interaction/tool_identity.js";
4
4
  import type {
5
5
  InteractionContent,
6
6
  InteractionMessage,
7
7
  InteractionRequest,
8
8
  InteractionToolCall,
9
- } from "../interaction/types";
9
+ } from "../interaction/types.js";
10
10
 
11
11
  export const IMAGE_OMITTED = "<image omitted>";
12
12
  // Matches every numbered placeholder in a rendered selector prompt.
@@ -1,6 +1,6 @@
1
- import type { InteractionUsage } from "../interaction/types";
2
- import type { ProviderKeySource } from "../types";
3
- import { finiteNumber, isRecord, tokenCount } from "./ingest_values";
1
+ import type { InteractionUsage } from "../interaction/types.js";
2
+ import type { ProviderKeySource } from "../types.js";
3
+ import { finiteNumber, isRecord, tokenCount } from "./ingest_values.js";
4
4
 
5
5
  const BILLING_EVENT_SCHEMA_VERSION = 1;
6
6
 
@@ -1,4 +1,4 @@
1
- import type { RoutingBillingProviderAttemptFacts } from "./billing_finalization";
1
+ import type { RoutingBillingProviderAttemptFacts } from "./billing_finalization.js";
2
2
 
3
3
  /** Model reference cost only, including retries; unknown/estimated usage is never free. */
4
4
  export function modelCost(attempts: readonly RoutingBillingProviderAttemptFacts[]): number | null {
@@ -6,15 +6,15 @@ import {
6
6
  import {
7
7
  extendInteractionChain,
8
8
  extendInteractionLooseChain,
9
- } from "../context/interaction_fingerprint";
9
+ } from "../context/interaction_fingerprint.js";
10
10
  import type {
11
11
  InteractionOutput,
12
12
  InteractionRequest,
13
13
  InteractionUsage,
14
14
  ProviderIdentity,
15
- } from "../interaction/types";
16
- import { gatewayPlatform, type PrefixStateWrite } from "../platform/platform";
17
- import { tokenCount } from "./ingest_values";
15
+ } from "../interaction/types.js";
16
+ import { gatewayPlatform, type PrefixStateWrite } from "../platform/platform.js";
17
+ import { tokenCount } from "./ingest_values.js";
18
18
 
19
19
  export type CompletedPrefixHit = Omit<RouterPrefixHit, "updated_at"> & {
20
20
  lease_depth: number;
@@ -14,34 +14,34 @@ import {
14
14
  type RoutingDecision,
15
15
  type RoutingStrategy,
16
16
  } from "@mupt-ai/dari-router/policy-engine";
17
- import type { ImageCapabilityPrunedModel } from "../context/routing_context";
18
- import { HttpError, errorCode } from "../http/errors";
19
- import { executionProviderForModel } from "../models/execution_provider";
17
+ import type { ImageCapabilityPrunedModel } from "../context/routing_context.js";
18
+ import { HttpError, errorCode } from "../http/errors.js";
19
+ import { executionProviderForModel } from "../models/execution_provider.js";
20
20
  import {
21
21
  isBackgroundRequest,
22
22
  type InteractionOutput,
23
23
  type InteractionRequest,
24
24
  type InteractionUsage,
25
25
  type ProviderIdentity,
26
- } from "../interaction/types";
27
- import { captureOperationalError } from "../observability/errors";
28
- import { gatewayPlatform, type RequestTags } from "../platform/platform";
26
+ } from "../interaction/types.js";
27
+ import { captureOperationalError } from "../observability/errors.js";
28
+ import { gatewayPlatform, type RequestTags } from "../platform/platform.js";
29
29
  import type {
30
30
  ProviderAttemptRecord,
31
31
  ProviderAttemptReport,
32
32
  FrozenProviderTerminal,
33
33
  ReportableProviderOutcome,
34
34
  ReportedProviderExecution,
35
- } from "../runtime/runtime_reporter";
35
+ } from "../runtime/runtime_reporter.js";
36
36
  import {
37
37
  selectorTraceFromError,
38
38
  type SelectorRun,
39
39
  type SelectorTrace,
40
- } from "../strategies/routing";
41
- import type { ResolvedRouter } from "../types";
42
- import type { HarnessConversationIdentity } from "../runtime/harness_identity";
43
- import { trackBackgroundTelemetry } from "./background";
44
- import { modelCost } from "./model_cost";
40
+ } from "../strategies/routing.js";
41
+ import type { ResolvedRouter } from "../types.js";
42
+ import type { HarnessConversationIdentity } from "../runtime/harness_identity/index.js";
43
+ import { trackBackgroundTelemetry } from "./background.js";
44
+ import { modelCost } from "./model_cost.js";
45
45
  import {
46
46
  routingBillingProviderAttemptFacts,
47
47
  type FrozenRoutingBillingTerminal,
@@ -49,26 +49,26 @@ import {
49
49
  type RoutingBillingFinalizationPayload,
50
50
  type RoutingBillingProviderAttemptFacts,
51
51
  type RoutingBillingTerminalOutcome,
52
- } from "./billing_finalization";
53
- import { estimateBenchmarkReplay } from "./benchmark_replay";
54
- import { extractInteractionObservability } from "./requests/interaction_observability";
52
+ } from "./billing_finalization.js";
53
+ import { estimateBenchmarkReplay } from "./benchmark_replay.js";
54
+ import { extractInteractionObservability } from "./requests/interaction_observability.js";
55
55
  import {
56
56
  costString,
57
57
  finiteNumber,
58
58
  isRecord,
59
59
  tokenCount,
60
- } from "./ingest_values";
60
+ } from "./ingest_values.js";
61
61
  import {
62
62
  buildCompletedPrefixHit,
63
63
  leaseCountdownForPrefix,
64
64
  prefixEntryForIngest,
65
65
  reportPendingLease,
66
66
  reportPrefixState,
67
- } from "./prefix_state";
68
- import { subscriptionUsageLimitFromFailure } from "../providers/subscription_limits";
69
- import { scrubSecrets } from "./scrub";
70
- import { encodeRetainedInteractionRequest } from "./requests/retained_interaction_request";
71
- import { toolResultObservations, toolSkillEvents } from "./tools/observations";
67
+ } from "./prefix_state.js";
68
+ import { subscriptionUsageLimitFromFailure } from "../providers/subscription_limits.js";
69
+ import { scrubSecrets } from "./scrub.js";
70
+ import { encodeRetainedInteractionRequest } from "./requests/retained_interaction_request.js";
71
+ import { toolResultObservations, toolSkillEvents } from "./tools/observations.js";
72
72
 
73
73
  // The decision's candidate_pruning audit: core cache-aware pruning, extended
74
74
  // with models excluded up front for missing hard capabilities (image input).
@@ -5,7 +5,7 @@ import {
5
5
  type InteractionRequest,
6
6
  type InteractionToolChoice,
7
7
  type ProviderContinuationState,
8
- } from "../../interaction/types";
8
+ } from "../../interaction/types.js";
9
9
 
10
10
  const SCHEMA_VERSION = 1 as const;
11
11
 
@@ -1,4 +1,4 @@
1
- import type { InteractionRequest } from "../../interaction/types";
1
+ import type { InteractionRequest } from "../../interaction/types.js";
2
2
 
3
3
  export const RETAINED_INTERACTION_REQUEST_FORMAT = "interaction_request_v1" as const;
4
4
 
@@ -1,7 +1,7 @@
1
1
  import type {
2
2
  InteractionMessage,
3
3
  InteractionRequest,
4
- } from "../../../interaction/types";
4
+ } from "../../../interaction/types.js";
5
5
 
6
6
  const MAX_CAPABILITY_ID_CHARS = 512;
7
7
  const MAX_SKILL_NAME_CHARS = 512;
@@ -1,19 +1,19 @@
1
1
  import type {
2
2
  InteractionOutput,
3
3
  InteractionRequest,
4
- } from "../../../interaction/types";
5
- import { interactionToolInput } from "../../tools/input";
4
+ } from "../../../interaction/types.js";
5
+ import { interactionToolInput } from "../../tools/input.js";
6
6
  import {
7
7
  claudeSkillCapabilityId,
8
8
  claudeSystemSkillNames,
9
- } from "./catalog";
9
+ } from "./catalog.js";
10
10
  import {
11
11
  normalizedAbsoluteSkillPath,
12
12
  skillPathSegments,
13
13
  type NormalizedSkillPath,
14
- } from "../paths";
15
- import type { SkillObservation } from "../observations";
16
- import { readPathsFromShellCommand } from "../shell_file_reads";
14
+ } from "../paths.js";
15
+ import type { SkillObservation } from "../observations.js";
16
+ import { readPathsFromShellCommand } from "../shell_file_reads.js";
17
17
 
18
18
  const MAX_COMMAND_CHARS = 64 * 1024;
19
19
  const SKILL_FILE_NAME = "SKILL.md";
@@ -5,16 +5,16 @@ import type {
5
5
  InteractionRequest,
6
6
  InteractionToolCall,
7
7
  InteractionToolResult,
8
- } from "../../../interaction/types";
8
+ } from "../../../interaction/types.js";
9
9
  import type {
10
10
  SkillEvidenceSource,
11
11
  SkillObservation,
12
- } from "../observations";
12
+ } from "../observations.js";
13
13
  import {
14
14
  claudeAvailableSkillNames,
15
15
  claudeSkillCapabilityId,
16
16
  normalizedClaudeSkillName,
17
- } from "./catalog";
17
+ } from "./catalog.js";
18
18
 
19
19
  const MAX_SKILL_PATH_CHARS = 16 * 1024;
20
20
  const UNSAFE_DISPLAY_CHARACTERS = /[\u0000-\u001f\u007f-\u009f\u202a-\u202e\u2066-\u2069]/u;
@@ -1,12 +1,12 @@
1
- import type { InteractionRequest } from "../../../interaction/types";
2
- import { normalizedCodexSkillName } from "./identity";
1
+ import type { InteractionRequest } from "../../../interaction/types.js";
2
+ import { normalizedCodexSkillName } from "./identity.js";
3
3
  import {
4
4
  joinedSkillPath,
5
5
  normalizedAbsoluteSkillPath,
6
6
  skillPathBasename,
7
7
  type NormalizedSkillPath,
8
8
  type PathPlatform,
9
- } from "../paths";
9
+ } from "../paths.js";
10
10
 
11
11
  const MAX_CATALOG_ENTRIES = 2_000;
12
12
  const SKILLS_OPEN = "<skills_instructions>";
@@ -1,7 +1,7 @@
1
- import type { InteractionOutput } from "../../../interaction/types";
2
- import { interactionToolInput } from "../../tools/input";
3
- import { readPathsFromShellCommand } from "../shell_file_reads";
4
- import type { CatalogSkill, CodexSkillCatalog } from "./catalog";
1
+ import type { InteractionOutput } from "../../../interaction/types.js";
2
+ import { interactionToolInput } from "../../tools/input.js";
3
+ import { readPathsFromShellCommand } from "../shell_file_reads.js";
4
+ import type { CatalogSkill, CodexSkillCatalog } from "./catalog.js";
5
5
 
6
6
  const MAX_COMMAND_CHARS = 64 * 1024;
7
7
  const MAX_SKILL_PATH_CHARS = 16 * 1024;
@@ -1,12 +1,12 @@
1
1
  import type {
2
2
  InteractionMessage,
3
3
  InteractionRequest,
4
- } from "../../../interaction/types";
5
- import type { SkillObservation } from "../observations";
4
+ } from "../../../interaction/types.js";
5
+ import type { SkillObservation } from "../observations.js";
6
6
  import {
7
7
  codexSkillCapabilityId,
8
8
  normalizedCodexSkillName,
9
- } from "./identity";
9
+ } from "./identity.js";
10
10
 
11
11
  const MAX_SKILL_PATH_CHARS = 16 * 1024;
12
12
  const UNSAFE_DISPLAY_CHARACTERS = /[\u0000-\u001f\u007f-\u009f\u202a-\u202e\u2066-\u2069]/u;
@@ -1,14 +1,14 @@
1
1
  import type {
2
2
  InteractionOutput,
3
3
  InteractionRequest,
4
- } from "../../../interaction/types";
4
+ } from "../../../interaction/types.js";
5
5
  import {
6
6
  codexExecCommand,
7
7
  readSkillsFromCodexCommand,
8
- } from "./exec_file_reads";
9
- import { codexFileSkillCatalog } from "./catalog";
10
- import { codexSkillCapabilityId } from "./identity";
11
- import type { SkillObservation } from "../observations";
8
+ } from "./exec_file_reads.js";
9
+ import { codexFileSkillCatalog } from "./catalog.js";
10
+ import { codexSkillCapabilityId } from "./identity.js";
11
+ import type { SkillObservation } from "../observations.js";
12
12
 
13
13
  /** Match model-emitted Codex file reads to the exact current skill catalog. */
14
14
  export function codexAutomaticSkillObservations(
@@ -1,13 +1,13 @@
1
- import { isBackgroundRequest, type InteractionOutput, type InteractionRequest } from "../../interaction/types";
2
- import type { HarnessConversationIdentity } from "../../runtime/harness_identity";
1
+ import { isBackgroundRequest, type InteractionOutput, type InteractionRequest } from "../../interaction/types.js";
2
+ import type { HarnessConversationIdentity } from "../../runtime/harness_identity/index.js";
3
3
  import {
4
4
  piStyleAutomaticSkillObservations,
5
5
  piStyleExplicitSkillObservations,
6
- } from "./pi";
7
- import { claudeFileReadObservations } from "./claude/file_reads";
8
- import { claudeSkillObservations } from "./claude/observations";
9
- import { codexExplicitSkillObservations } from "./codex/explicit";
10
- import { codexAutomaticSkillObservations } from "./codex/file_reads";
6
+ } from "./pi.js";
7
+ import { claudeFileReadObservations } from "./claude/file_reads.js";
8
+ import { claudeSkillObservations } from "./claude/observations.js";
9
+ import { codexExplicitSkillObservations } from "./codex/explicit.js";
10
+ import { codexAutomaticSkillObservations } from "./codex/file_reads.js";
11
11
 
12
12
  export type SkillEvidenceSource =
13
13
  | "skill_content_injection"
@@ -2,9 +2,9 @@ import type {
2
2
  InteractionMessage,
3
3
  InteractionOutput,
4
4
  InteractionRequest,
5
- } from "../../interaction/types";
6
- import { interactionToolInput } from "../tools/input";
7
- import type { SkillObservation } from "./observations";
5
+ } from "../../interaction/types.js";
6
+ import { interactionToolInput } from "../tools/input.js";
7
+ import type { SkillObservation } from "./observations.js";
8
8
 
9
9
  const CAPABILITY_PREFIX = "unattributed:name:";
10
10
  const MAX_CAPABILITY_ID_CHARS = 512;
@@ -3,13 +3,13 @@ import {
3
3
  resolvedSkillPath,
4
4
  type NormalizedSkillPath,
5
5
  type PathPlatform,
6
- } from "./paths";
6
+ } from "./paths.js";
7
7
  import {
8
8
  executableCommand,
9
9
  restrictedShellSegments,
10
10
  trustedExecutableName,
11
11
  type ShellOperator,
12
- } from "./shell_words";
12
+ } from "./shell_words.js";
13
13
 
14
14
  const MAX_SHELL_NESTING = 16;
15
15
  const NO_VALUE_FLAGS = new Set<string>();
@@ -1,6 +1,6 @@
1
1
  import { posix, win32 } from "node:path";
2
2
 
3
- import type { PathPlatform } from "./paths";
3
+ import type { PathPlatform } from "./paths.js";
4
4
 
5
5
  const MAX_COMMAND_TOKENS = 4_096;
6
6
  const SHELL_ASSIGNMENT = /^[A-Za-z_][A-Za-z0-9_]*=/u;
@@ -1,6 +1,6 @@
1
1
  import { isRecord } from "@mupt-ai/dari-router/policy-engine";
2
2
 
3
- import type { InteractionToolCall } from "../../interaction/types";
3
+ import type { InteractionToolCall } from "../../interaction/types.js";
4
4
 
5
5
  export function interactionToolInput(
6
6
  item: InteractionToolCall,
@@ -1,23 +1,23 @@
1
1
  import { isRecord, stableStringify } from "@mupt-ai/dari-router/policy-engine";
2
2
 
3
- import { interactionPrefixChain } from "../../context/interaction_fingerprint";
3
+ import { interactionPrefixChain } from "../../context/interaction_fingerprint.js";
4
4
  import type {
5
5
  InteractionContent,
6
6
  InteractionItem,
7
7
  InteractionOutput,
8
8
  InteractionRequest,
9
9
  InteractionToolResult,
10
- } from "../../interaction/types";
11
- import { isProtocolToolCallId } from "../../interaction/tool_identity";
12
- import { anthropicMessagesToInteraction } from "../../protocol/input/anthropic_messages";
13
- import { internalChatCompletionsToInteraction } from "../../protocol/input/chat_completions";
14
- import { anthropicContent } from "../../protocol/output/anthropic_messages_output";
15
- import { assistantMessagePayload } from "../../protocol/output/chat_completions";
16
- import type { HarnessConversationIdentity } from "../../runtime/harness_identity";
10
+ } from "../../interaction/types.js";
11
+ import { isProtocolToolCallId } from "../../interaction/tool_identity.js";
12
+ import { anthropicMessagesToInteraction } from "../../protocol/input/anthropic_messages.js";
13
+ import { internalChatCompletionsToInteraction } from "../../protocol/input/chat_completions.js";
14
+ import { anthropicContent } from "../../protocol/output/anthropic_messages_output.js";
15
+ import { assistantMessagePayload } from "../../protocol/output/chat_completions.js";
16
+ import type { HarnessConversationIdentity } from "../../runtime/harness_identity/index.js";
17
17
  import {
18
18
  inputSkillObservations,
19
19
  outputSkillObservations,
20
- } from "../skills/observations";
20
+ } from "../skills/observations.js";
21
21
 
22
22
  const MAX_TOOL_SKILL_EVENTS = 1000;
23
23
 
@@ -1,11 +1,11 @@
1
1
  import type { Provider } from "@mupt-ai/dari-router/policy-engine";
2
2
  import { randomUUID } from "node:crypto";
3
3
 
4
- import { HttpError } from "../http/errors";
5
- import { executionProviderForModel, keySourceForModel } from "../models/execution_provider";
6
- import { captureOperationalError } from "../observability/errors";
7
- import { gatewayPlatform, type RequestTags } from "../platform/platform";
8
- import type { ProviderKeySource, ResolvedRouter } from "../types";
4
+ import { HttpError } from "../http/errors.js";
5
+ import { executionProviderForModel, keySourceForModel } from "../models/execution_provider.js";
6
+ import { captureOperationalError } from "../observability/errors.js";
7
+ import { gatewayPlatform, type RequestTags } from "../platform/platform.js";
8
+ import type { ProviderKeySource, ResolvedRouter } from "../types.js";
9
9
 
10
10
  export type RoutingUsageContext = {
11
11
  organizationId: string;