@microsoft/opentelemetry 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (290) hide show
  1. package/README.md +130 -37
  2. package/dist/commonjs/a365/configuration/A365Configuration.d.ts +3 -0
  3. package/dist/commonjs/a365/configuration/A365Configuration.d.ts.map +1 -1
  4. package/dist/commonjs/a365/configuration/A365Configuration.js +5 -1
  5. package/dist/commonjs/a365/configuration/A365Configuration.js.map +1 -1
  6. package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts +3 -0
  7. package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
  8. package/dist/commonjs/a365/constants.d.ts +21 -1
  9. package/dist/commonjs/a365/constants.d.ts.map +1 -1
  10. package/dist/commonjs/a365/constants.js +21 -1
  11. package/dist/commonjs/a365/constants.js.map +1 -1
  12. package/dist/commonjs/a365/contracts.d.ts +53 -2
  13. package/dist/commonjs/a365/contracts.d.ts.map +1 -1
  14. package/dist/commonjs/a365/contracts.js +7 -1
  15. package/dist/commonjs/a365/contracts.js.map +1 -1
  16. package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts +29 -3
  17. package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  18. package/dist/commonjs/a365/exporter/Agent365Exporter.js +327 -73
  19. package/dist/commonjs/a365/exporter/Agent365Exporter.js.map +1 -1
  20. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts +5 -0
  21. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  22. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js +3 -0
  23. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  24. package/dist/commonjs/a365/exporter/durable/DurableDeliveryManager.d.ts +70 -0
  25. package/dist/commonjs/a365/exporter/durable/DurableDeliveryManager.d.ts.map +1 -0
  26. package/dist/commonjs/a365/exporter/durable/DurableDeliveryManager.js +346 -0
  27. package/dist/commonjs/a365/exporter/durable/DurableDeliveryManager.js.map +1 -0
  28. package/dist/commonjs/a365/exporter/durable/DurableDeliveryOptions.d.ts +31 -0
  29. package/dist/commonjs/a365/exporter/durable/DurableDeliveryOptions.d.ts.map +1 -0
  30. package/dist/commonjs/a365/exporter/durable/DurableDeliveryOptions.js +48 -0
  31. package/dist/commonjs/a365/exporter/durable/DurableDeliveryOptions.js.map +1 -0
  32. package/dist/commonjs/a365/exporter/durable/DurableRecord.d.ts +20 -0
  33. package/dist/commonjs/a365/exporter/durable/DurableRecord.d.ts.map +1 -0
  34. package/dist/commonjs/a365/exporter/durable/DurableRecord.js +98 -0
  35. package/dist/commonjs/a365/exporter/durable/DurableRecord.js.map +1 -0
  36. package/dist/commonjs/a365/exporter/durable/PersistentStore.d.ts +48 -0
  37. package/dist/commonjs/a365/exporter/durable/PersistentStore.d.ts.map +1 -0
  38. package/dist/commonjs/a365/exporter/durable/PersistentStore.js +637 -0
  39. package/dist/commonjs/a365/exporter/durable/PersistentStore.js.map +1 -0
  40. package/dist/commonjs/a365/exporter/durable/TransmissionGate.d.ts +24 -0
  41. package/dist/commonjs/a365/exporter/durable/TransmissionGate.d.ts.map +1 -0
  42. package/dist/commonjs/a365/exporter/durable/TransmissionGate.js +85 -0
  43. package/dist/commonjs/a365/exporter/durable/TransmissionGate.js.map +1 -0
  44. package/dist/commonjs/a365/exporter/durable/WindowsFileAccessControl.d.ts +35 -0
  45. package/dist/commonjs/a365/exporter/durable/WindowsFileAccessControl.d.ts.map +1 -0
  46. package/dist/commonjs/a365/exporter/durable/WindowsFileAccessControl.js +169 -0
  47. package/dist/commonjs/a365/exporter/durable/WindowsFileAccessControl.js.map +1 -0
  48. package/dist/commonjs/a365/exporter/durable/index.d.ts +12 -0
  49. package/dist/commonjs/a365/exporter/durable/index.d.ts.map +1 -0
  50. package/dist/commonjs/a365/exporter/durable/index.js +27 -0
  51. package/dist/commonjs/a365/exporter/durable/index.js.map +1 -0
  52. package/dist/commonjs/a365/exporter/index.d.ts +1 -1
  53. package/dist/commonjs/a365/exporter/index.d.ts.map +1 -1
  54. package/dist/commonjs/a365/exporter/index.js.map +1 -1
  55. package/dist/commonjs/a365/index.d.ts +3 -3
  56. package/dist/commonjs/a365/index.d.ts.map +1 -1
  57. package/dist/commonjs/a365/index.js +7 -2
  58. package/dist/commonjs/a365/index.js.map +1 -1
  59. package/dist/commonjs/a365/message-utils.d.ts +13 -1
  60. package/dist/commonjs/a365/message-utils.d.ts.map +1 -1
  61. package/dist/commonjs/a365/message-utils.js +272 -0
  62. package/dist/commonjs/a365/message-utils.js.map +1 -1
  63. package/dist/commonjs/a365/middleware/BaggageBuilder.d.ts +11 -1
  64. package/dist/commonjs/a365/middleware/BaggageBuilder.d.ts.map +1 -1
  65. package/dist/commonjs/a365/middleware/BaggageBuilder.js +93 -17
  66. package/dist/commonjs/a365/middleware/BaggageBuilder.js.map +1 -1
  67. package/dist/commonjs/a365/processors/A365SpanProcessor.d.ts +1 -0
  68. package/dist/commonjs/a365/processors/A365SpanProcessor.d.ts.map +1 -1
  69. package/dist/commonjs/a365/processors/A365SpanProcessor.js +61 -19
  70. package/dist/commonjs/a365/processors/A365SpanProcessor.js.map +1 -1
  71. package/dist/commonjs/a365/processors/util.d.ts.map +1 -1
  72. package/dist/commonjs/a365/processors/util.js +3 -0
  73. package/dist/commonjs/a365/processors/util.js.map +1 -1
  74. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.d.ts.map +1 -1
  75. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.js +1 -6
  76. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.js.map +1 -1
  77. package/dist/commonjs/a365/scopes/ExecuteToolScope.d.ts +2 -1
  78. package/dist/commonjs/a365/scopes/ExecuteToolScope.d.ts.map +1 -1
  79. package/dist/commonjs/a365/scopes/ExecuteToolScope.js +7 -10
  80. package/dist/commonjs/a365/scopes/ExecuteToolScope.js.map +1 -1
  81. package/dist/commonjs/a365/scopes/InferenceScope.d.ts.map +1 -1
  82. package/dist/commonjs/a365/scopes/InferenceScope.js +1 -5
  83. package/dist/commonjs/a365/scopes/InferenceScope.js.map +1 -1
  84. package/dist/commonjs/a365/scopes/InvokeAgentScope.d.ts +6 -2
  85. package/dist/commonjs/a365/scopes/InvokeAgentScope.d.ts.map +1 -1
  86. package/dist/commonjs/a365/scopes/InvokeAgentScope.js +37 -14
  87. package/dist/commonjs/a365/scopes/InvokeAgentScope.js.map +1 -1
  88. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts +6 -3
  89. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  90. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js +23 -12
  91. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js.map +1 -1
  92. package/dist/commonjs/a365/scopes/OutputScope.d.ts.map +1 -1
  93. package/dist/commonjs/a365/scopes/OutputScope.js +1 -5
  94. package/dist/commonjs/a365/scopes/OutputScope.js.map +1 -1
  95. package/dist/commonjs/a365/tool-call-models.d.ts +149 -0
  96. package/dist/commonjs/a365/tool-call-models.d.ts.map +1 -0
  97. package/dist/commonjs/a365/tool-call-models.js +69 -0
  98. package/dist/commonjs/a365/tool-call-models.js.map +1 -0
  99. package/dist/commonjs/azureMonitor/index.d.ts.map +1 -1
  100. package/dist/commonjs/azureMonitor/index.js +4 -10
  101. package/dist/commonjs/azureMonitor/index.js.map +1 -1
  102. package/dist/commonjs/azureMonitor/logs/handler.d.ts +0 -7
  103. package/dist/commonjs/azureMonitor/logs/handler.d.ts.map +1 -1
  104. package/dist/commonjs/azureMonitor/logs/handler.js +0 -27
  105. package/dist/commonjs/azureMonitor/logs/handler.js.map +1 -1
  106. package/dist/commonjs/azureMonitor/metrics/performanceCounters.d.ts +3 -0
  107. package/dist/commonjs/azureMonitor/metrics/performanceCounters.d.ts.map +1 -1
  108. package/dist/commonjs/azureMonitor/metrics/performanceCounters.js +21 -12
  109. package/dist/commonjs/azureMonitor/metrics/performanceCounters.js.map +1 -1
  110. package/dist/commonjs/azureMonitor/traces/handler.d.ts +2 -9
  111. package/dist/commonjs/azureMonitor/traces/handler.d.ts.map +1 -1
  112. package/dist/commonjs/azureMonitor/traces/handler.js +2 -54
  113. package/dist/commonjs/azureMonitor/traces/handler.js.map +1 -1
  114. package/dist/commonjs/azureMonitor/utils/common.d.ts +29 -0
  115. package/dist/commonjs/azureMonitor/utils/common.d.ts.map +1 -1
  116. package/dist/commonjs/azureMonitor/utils/common.js +55 -0
  117. package/dist/commonjs/azureMonitor/utils/common.js.map +1 -1
  118. package/dist/commonjs/distro/distro.d.ts.map +1 -1
  119. package/dist/commonjs/distro/distro.js +3 -0
  120. package/dist/commonjs/distro/distro.js.map +1 -1
  121. package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  122. package/dist/commonjs/genai/instrumentations/langchain/tracer.js +1 -0
  123. package/dist/commonjs/genai/instrumentations/langchain/tracer.js.map +1 -1
  124. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts +1 -0
  125. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  126. package/dist/commonjs/genai/instrumentations/langchain/utils.js +109 -0
  127. package/dist/commonjs/genai/instrumentations/langchain/utils.js.map +1 -1
  128. package/dist/commonjs/genai/semconv.d.ts +10 -0
  129. package/dist/commonjs/genai/semconv.d.ts.map +1 -1
  130. package/dist/commonjs/genai/semconv.js +11 -1
  131. package/dist/commonjs/genai/semconv.js.map +1 -1
  132. package/dist/commonjs/index.d.ts +5 -4
  133. package/dist/commonjs/index.d.ts.map +1 -1
  134. package/dist/commonjs/index.js +66 -59
  135. package/dist/commonjs/index.js.map +1 -1
  136. package/dist/commonjs/shared/config.d.ts +7 -0
  137. package/dist/commonjs/shared/config.d.ts.map +1 -1
  138. package/dist/commonjs/shared/config.js +19 -3
  139. package/dist/commonjs/shared/config.js.map +1 -1
  140. package/dist/commonjs/types.d.ts +1 -1
  141. package/dist/commonjs/types.js +1 -1
  142. package/dist/commonjs/utils/sdkStats.d.ts +7 -0
  143. package/dist/commonjs/utils/sdkStats.d.ts.map +1 -1
  144. package/dist/commonjs/utils/sdkStats.js +12 -2
  145. package/dist/commonjs/utils/sdkStats.js.map +1 -1
  146. package/dist/esm/a365/configuration/A365Configuration.d.ts +3 -0
  147. package/dist/esm/a365/configuration/A365Configuration.d.ts.map +1 -1
  148. package/dist/esm/a365/configuration/A365Configuration.js +5 -1
  149. package/dist/esm/a365/configuration/A365Configuration.js.map +1 -1
  150. package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts +3 -0
  151. package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
  152. package/dist/esm/a365/constants.d.ts +21 -1
  153. package/dist/esm/a365/constants.d.ts.map +1 -1
  154. package/dist/esm/a365/constants.js +20 -0
  155. package/dist/esm/a365/constants.js.map +1 -1
  156. package/dist/esm/a365/contracts.d.ts +53 -2
  157. package/dist/esm/a365/contracts.d.ts.map +1 -1
  158. package/dist/esm/a365/contracts.js +1 -0
  159. package/dist/esm/a365/contracts.js.map +1 -1
  160. package/dist/esm/a365/exporter/Agent365Exporter.d.ts +29 -3
  161. package/dist/esm/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  162. package/dist/esm/a365/exporter/Agent365Exporter.js +325 -71
  163. package/dist/esm/a365/exporter/Agent365Exporter.js.map +1 -1
  164. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts +5 -0
  165. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  166. package/dist/esm/a365/exporter/Agent365ExporterOptions.js +3 -0
  167. package/dist/esm/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  168. package/dist/esm/a365/exporter/durable/DurableDeliveryManager.d.ts +70 -0
  169. package/dist/esm/a365/exporter/durable/DurableDeliveryManager.d.ts.map +1 -0
  170. package/dist/esm/a365/exporter/durable/DurableDeliveryManager.js +342 -0
  171. package/dist/esm/a365/exporter/durable/DurableDeliveryManager.js.map +1 -0
  172. package/dist/esm/a365/exporter/durable/DurableDeliveryOptions.d.ts +31 -0
  173. package/dist/esm/a365/exporter/durable/DurableDeliveryOptions.d.ts.map +1 -0
  174. package/dist/esm/a365/exporter/durable/DurableDeliveryOptions.js +44 -0
  175. package/dist/esm/a365/exporter/durable/DurableDeliveryOptions.js.map +1 -0
  176. package/dist/esm/a365/exporter/durable/DurableRecord.d.ts +20 -0
  177. package/dist/esm/a365/exporter/durable/DurableRecord.d.ts.map +1 -0
  178. package/dist/esm/a365/exporter/durable/DurableRecord.js +93 -0
  179. package/dist/esm/a365/exporter/durable/DurableRecord.js.map +1 -0
  180. package/dist/esm/a365/exporter/durable/PersistentStore.d.ts +48 -0
  181. package/dist/esm/a365/exporter/durable/PersistentStore.d.ts.map +1 -0
  182. package/dist/esm/a365/exporter/durable/PersistentStore.js +599 -0
  183. package/dist/esm/a365/exporter/durable/PersistentStore.js.map +1 -0
  184. package/dist/esm/a365/exporter/durable/TransmissionGate.d.ts +24 -0
  185. package/dist/esm/a365/exporter/durable/TransmissionGate.d.ts.map +1 -0
  186. package/dist/esm/a365/exporter/durable/TransmissionGate.js +80 -0
  187. package/dist/esm/a365/exporter/durable/TransmissionGate.js.map +1 -0
  188. package/dist/esm/a365/exporter/durable/WindowsFileAccessControl.d.ts +35 -0
  189. package/dist/esm/a365/exporter/durable/WindowsFileAccessControl.d.ts.map +1 -0
  190. package/dist/esm/a365/exporter/durable/WindowsFileAccessControl.js +164 -0
  191. package/dist/esm/a365/exporter/durable/WindowsFileAccessControl.js.map +1 -0
  192. package/dist/esm/a365/exporter/durable/index.d.ts +12 -0
  193. package/dist/esm/a365/exporter/durable/index.d.ts.map +1 -0
  194. package/dist/esm/a365/exporter/durable/index.js +9 -0
  195. package/dist/esm/a365/exporter/durable/index.js.map +1 -0
  196. package/dist/esm/a365/exporter/index.d.ts +1 -1
  197. package/dist/esm/a365/exporter/index.d.ts.map +1 -1
  198. package/dist/esm/a365/exporter/index.js.map +1 -1
  199. package/dist/esm/a365/index.d.ts +3 -3
  200. package/dist/esm/a365/index.d.ts.map +1 -1
  201. package/dist/esm/a365/index.js +1 -1
  202. package/dist/esm/a365/index.js.map +1 -1
  203. package/dist/esm/a365/message-utils.d.ts +13 -1
  204. package/dist/esm/a365/message-utils.d.ts.map +1 -1
  205. package/dist/esm/a365/message-utils.js +271 -1
  206. package/dist/esm/a365/message-utils.js.map +1 -1
  207. package/dist/esm/a365/middleware/BaggageBuilder.d.ts +11 -1
  208. package/dist/esm/a365/middleware/BaggageBuilder.d.ts.map +1 -1
  209. package/dist/esm/a365/middleware/BaggageBuilder.js +94 -18
  210. package/dist/esm/a365/middleware/BaggageBuilder.js.map +1 -1
  211. package/dist/esm/a365/processors/A365SpanProcessor.d.ts +1 -0
  212. package/dist/esm/a365/processors/A365SpanProcessor.d.ts.map +1 -1
  213. package/dist/esm/a365/processors/A365SpanProcessor.js +62 -20
  214. package/dist/esm/a365/processors/A365SpanProcessor.js.map +1 -1
  215. package/dist/esm/a365/processors/util.d.ts.map +1 -1
  216. package/dist/esm/a365/processors/util.js +3 -0
  217. package/dist/esm/a365/processors/util.js.map +1 -1
  218. package/dist/esm/a365/scopes/ApplyGuardrailScope.d.ts.map +1 -1
  219. package/dist/esm/a365/scopes/ApplyGuardrailScope.js +1 -6
  220. package/dist/esm/a365/scopes/ApplyGuardrailScope.js.map +1 -1
  221. package/dist/esm/a365/scopes/ExecuteToolScope.d.ts +2 -1
  222. package/dist/esm/a365/scopes/ExecuteToolScope.d.ts.map +1 -1
  223. package/dist/esm/a365/scopes/ExecuteToolScope.js +8 -11
  224. package/dist/esm/a365/scopes/ExecuteToolScope.js.map +1 -1
  225. package/dist/esm/a365/scopes/InferenceScope.d.ts.map +1 -1
  226. package/dist/esm/a365/scopes/InferenceScope.js +1 -5
  227. package/dist/esm/a365/scopes/InferenceScope.js.map +1 -1
  228. package/dist/esm/a365/scopes/InvokeAgentScope.d.ts +6 -2
  229. package/dist/esm/a365/scopes/InvokeAgentScope.d.ts.map +1 -1
  230. package/dist/esm/a365/scopes/InvokeAgentScope.js +37 -14
  231. package/dist/esm/a365/scopes/InvokeAgentScope.js.map +1 -1
  232. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts +6 -3
  233. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  234. package/dist/esm/a365/scopes/OpenTelemetryScope.js +23 -12
  235. package/dist/esm/a365/scopes/OpenTelemetryScope.js.map +1 -1
  236. package/dist/esm/a365/scopes/OutputScope.d.ts.map +1 -1
  237. package/dist/esm/a365/scopes/OutputScope.js +1 -5
  238. package/dist/esm/a365/scopes/OutputScope.js.map +1 -1
  239. package/dist/esm/a365/tool-call-models.d.ts +149 -0
  240. package/dist/esm/a365/tool-call-models.d.ts.map +1 -0
  241. package/dist/esm/a365/tool-call-models.js +64 -0
  242. package/dist/esm/a365/tool-call-models.js.map +1 -0
  243. package/dist/esm/azureMonitor/index.d.ts.map +1 -1
  244. package/dist/esm/azureMonitor/index.js +4 -10
  245. package/dist/esm/azureMonitor/index.js.map +1 -1
  246. package/dist/esm/azureMonitor/logs/handler.d.ts +0 -7
  247. package/dist/esm/azureMonitor/logs/handler.d.ts.map +1 -1
  248. package/dist/esm/azureMonitor/logs/handler.js +0 -27
  249. package/dist/esm/azureMonitor/logs/handler.js.map +1 -1
  250. package/dist/esm/azureMonitor/metrics/performanceCounters.d.ts +3 -0
  251. package/dist/esm/azureMonitor/metrics/performanceCounters.d.ts.map +1 -1
  252. package/dist/esm/azureMonitor/metrics/performanceCounters.js +21 -12
  253. package/dist/esm/azureMonitor/metrics/performanceCounters.js.map +1 -1
  254. package/dist/esm/azureMonitor/traces/handler.d.ts +2 -9
  255. package/dist/esm/azureMonitor/traces/handler.d.ts.map +1 -1
  256. package/dist/esm/azureMonitor/traces/handler.js +2 -54
  257. package/dist/esm/azureMonitor/traces/handler.js.map +1 -1
  258. package/dist/esm/azureMonitor/utils/common.d.ts +29 -0
  259. package/dist/esm/azureMonitor/utils/common.d.ts.map +1 -1
  260. package/dist/esm/azureMonitor/utils/common.js +52 -0
  261. package/dist/esm/azureMonitor/utils/common.js.map +1 -1
  262. package/dist/esm/distro/distro.d.ts.map +1 -1
  263. package/dist/esm/distro/distro.js +3 -0
  264. package/dist/esm/distro/distro.js.map +1 -1
  265. package/dist/esm/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  266. package/dist/esm/genai/instrumentations/langchain/tracer.js +1 -0
  267. package/dist/esm/genai/instrumentations/langchain/tracer.js.map +1 -1
  268. package/dist/esm/genai/instrumentations/langchain/utils.d.ts +1 -0
  269. package/dist/esm/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  270. package/dist/esm/genai/instrumentations/langchain/utils.js +109 -1
  271. package/dist/esm/genai/instrumentations/langchain/utils.js.map +1 -1
  272. package/dist/esm/genai/semconv.d.ts +10 -0
  273. package/dist/esm/genai/semconv.d.ts.map +1 -1
  274. package/dist/esm/genai/semconv.js +10 -0
  275. package/dist/esm/genai/semconv.js.map +1 -1
  276. package/dist/esm/index.d.ts +5 -4
  277. package/dist/esm/index.d.ts.map +1 -1
  278. package/dist/esm/index.js +2 -1
  279. package/dist/esm/index.js.map +1 -1
  280. package/dist/esm/shared/config.d.ts +7 -0
  281. package/dist/esm/shared/config.d.ts.map +1 -1
  282. package/dist/esm/shared/config.js +19 -3
  283. package/dist/esm/shared/config.js.map +1 -1
  284. package/dist/esm/types.d.ts +1 -1
  285. package/dist/esm/types.js +1 -1
  286. package/dist/esm/utils/sdkStats.d.ts +7 -0
  287. package/dist/esm/utils/sdkStats.d.ts.map +1 -1
  288. package/dist/esm/utils/sdkStats.js +12 -2
  289. package/dist/esm/utils/sdkStats.js.map +1 -1
  290. package/package.json +7 -5
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ResolvedDurableDeliveryOptions = exports.DEFAULT_DURABLE_TOKEN_TIMEOUT_MS = exports.DEFAULT_DURABLE_SHUTDOWN_TIMEOUT_MS = exports.DEFAULT_DURABLE_LEASE_MS = exports.DEFAULT_DURABLE_REPLAY_BATCH_SIZE = exports.DEFAULT_DURABLE_REPLAY_INTERVAL_MS = exports.DEFAULT_DURABLE_RECORD_AGE_MS = exports.DEFAULT_DURABLE_STORAGE_BYTES = void 0;
6
+ exports.DEFAULT_DURABLE_STORAGE_BYTES = 50 * 1024 * 1024;
7
+ exports.DEFAULT_DURABLE_RECORD_AGE_MS = 2 * 24 * 60 * 60 * 1000;
8
+ exports.DEFAULT_DURABLE_REPLAY_INTERVAL_MS = 2 * 60 * 1000;
9
+ exports.DEFAULT_DURABLE_REPLAY_BATCH_SIZE = 10;
10
+ exports.DEFAULT_DURABLE_LEASE_MS = 2 * 60 * 1000;
11
+ exports.DEFAULT_DURABLE_SHUTDOWN_TIMEOUT_MS = 10_000;
12
+ exports.DEFAULT_DURABLE_TOKEN_TIMEOUT_MS = 30_000;
13
+ class ResolvedDurableDeliveryOptions {
14
+ enabled;
15
+ storageDirectory;
16
+ maxStorageBytes;
17
+ maxRecordAgeMilliseconds;
18
+ replayIntervalMilliseconds;
19
+ maxReplayBatchSize;
20
+ leaseDurationMilliseconds;
21
+ shutdownTimeoutMilliseconds;
22
+ tokenResolutionTimeoutMilliseconds;
23
+ constructor(options) {
24
+ this.enabled = options?.enabled ?? true;
25
+ this.storageDirectory = options?.storageDirectory;
26
+ this.maxStorageBytes = positive("maxStorageBytes", options?.maxStorageBytes ?? exports.DEFAULT_DURABLE_STORAGE_BYTES);
27
+ this.maxRecordAgeMilliseconds = positive("maxRecordAgeMilliseconds", options?.maxRecordAgeMilliseconds ?? exports.DEFAULT_DURABLE_RECORD_AGE_MS);
28
+ this.replayIntervalMilliseconds = positive("replayIntervalMilliseconds", options?.replayIntervalMilliseconds ?? exports.DEFAULT_DURABLE_REPLAY_INTERVAL_MS);
29
+ this.maxReplayBatchSize = positiveInteger("maxReplayBatchSize", options?.maxReplayBatchSize ?? exports.DEFAULT_DURABLE_REPLAY_BATCH_SIZE);
30
+ this.leaseDurationMilliseconds = positive("leaseDurationMilliseconds", options?.leaseDurationMilliseconds ?? exports.DEFAULT_DURABLE_LEASE_MS);
31
+ this.shutdownTimeoutMilliseconds = positive("shutdownTimeoutMilliseconds", options?.shutdownTimeoutMilliseconds ?? exports.DEFAULT_DURABLE_SHUTDOWN_TIMEOUT_MS);
32
+ this.tokenResolutionTimeoutMilliseconds = positive("tokenResolutionTimeoutMilliseconds", options?.tokenResolutionTimeoutMilliseconds ?? exports.DEFAULT_DURABLE_TOKEN_TIMEOUT_MS);
33
+ }
34
+ }
35
+ exports.ResolvedDurableDeliveryOptions = ResolvedDurableDeliveryOptions;
36
+ function positive(name, value) {
37
+ if (!Number.isFinite(value) || value <= 0) {
38
+ throw new RangeError(`${name} must be greater than 0`);
39
+ }
40
+ return value;
41
+ }
42
+ function positiveInteger(name, value) {
43
+ if (!Number.isSafeInteger(value) || value <= 0) {
44
+ throw new RangeError(`${name} must be a positive integer`);
45
+ }
46
+ return value;
47
+ }
48
+ //# sourceMappingURL=DurableDeliveryOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DurableDeliveryOptions.js","sourceRoot":"","sources":["../../../../../src/a365/exporter/durable/DurableDeliveryOptions.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAErB,QAAA,6BAA6B,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AACjD,QAAA,6BAA6B,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACxD,QAAA,kCAAkC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACnD,QAAA,iCAAiC,GAAG,EAAE,CAAC;AACvC,QAAA,wBAAwB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACzC,QAAA,mCAAmC,GAAG,MAAM,CAAC;AAC7C,QAAA,gCAAgC,GAAG,MAAM,CAAC;AAcvD,MAAa,8BAA8B;IACzB,OAAO,CAAU;IACjB,gBAAgB,CAAU;IAC1B,eAAe,CAAS;IACxB,wBAAwB,CAAS;IACjC,0BAA0B,CAAS;IACnC,kBAAkB,CAAS;IAC3B,yBAAyB,CAAS;IAClC,2BAA2B,CAAS;IACpC,kCAAkC,CAAS;IAE3D,YAAY,OAAwC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;QACxC,IAAI,CAAC,gBAAgB,GAAG,OAAO,EAAE,gBAAgB,CAAC;QAClD,IAAI,CAAC,eAAe,GAAG,QAAQ,CAC7B,iBAAiB,EACjB,OAAO,EAAE,eAAe,IAAI,qCAA6B,CAC1D,CAAC;QACF,IAAI,CAAC,wBAAwB,GAAG,QAAQ,CACtC,0BAA0B,EAC1B,OAAO,EAAE,wBAAwB,IAAI,qCAA6B,CACnE,CAAC;QACF,IAAI,CAAC,0BAA0B,GAAG,QAAQ,CACxC,4BAA4B,EAC5B,OAAO,EAAE,0BAA0B,IAAI,0CAAkC,CAC1E,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,eAAe,CACvC,oBAAoB,EACpB,OAAO,EAAE,kBAAkB,IAAI,yCAAiC,CACjE,CAAC;QACF,IAAI,CAAC,yBAAyB,GAAG,QAAQ,CACvC,2BAA2B,EAC3B,OAAO,EAAE,yBAAyB,IAAI,gCAAwB,CAC/D,CAAC;QACF,IAAI,CAAC,2BAA2B,GAAG,QAAQ,CACzC,6BAA6B,EAC7B,OAAO,EAAE,2BAA2B,IAAI,2CAAmC,CAC5E,CAAC;QACF,IAAI,CAAC,kCAAkC,GAAG,QAAQ,CAChD,oCAAoC,EACpC,OAAO,EAAE,kCAAkC,IAAI,wCAAgC,CAChF,CAAC;IACJ,CAAC;CACF;AA3CD,wEA2CC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,KAAa;IAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,UAAU,CAAC,GAAG,IAAI,yBAAyB,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,KAAa;IAClD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,UAAU,CAAC,GAAG,IAAI,6BAA6B,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { ClusterCategory } from "../../configuration/A365ConfigurationOptions.js";
2
+ export declare const DURABLE_RECORD_VERSION: 1;
3
+ export interface DurableRecordV1 {
4
+ version: typeof DURABLE_RECORD_VERSION;
5
+ id: string;
6
+ createdAt: number;
7
+ tenantId: string;
8
+ agentId: string;
9
+ agenticUserId?: string;
10
+ useS2SEndpoint: boolean;
11
+ body: string;
12
+ }
13
+ type DurableRecordV1CreateInput = Omit<DurableRecordV1, "version" | "id" | "createdAt"> & {
14
+ clusterCategory?: ClusterCategory;
15
+ domainOverride?: string;
16
+ };
17
+ export declare function createDurableRecord(input: DurableRecordV1CreateInput): DurableRecordV1;
18
+ export declare function parseDurableRecord(text: string): DurableRecordV1;
19
+ export {};
20
+ //# sourceMappingURL=DurableRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DurableRecord.d.ts","sourceRoot":"","sources":["../../../../../src/a365/exporter/durable/DurableRecord.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAEvF,eAAO,MAAM,sBAAsB,EAAG,CAAU,CAAC;AA+BjD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,sBAAsB,CAAC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,KAAK,0BAA0B,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,IAAI,GAAG,WAAW,CAAC,GAAG;IACxF,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,0BAA0B,GAAG,eAAe,CAWtF;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CA8BhE"}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.DURABLE_RECORD_VERSION = void 0;
6
+ exports.createDurableRecord = createDurableRecord;
7
+ exports.parseDurableRecord = parseDurableRecord;
8
+ const node_crypto_1 = require("node:crypto");
9
+ exports.DURABLE_RECORD_VERSION = 1;
10
+ // PersistentStore's lease filename format is
11
+ // `${createdAt}-${id}.lease-at-${Date.now()}-${pid}-${randomUUID()}`, and
12
+ // filesystems commonly reject any single path component over 255 bytes
13
+ // (NAME_MAX). Budgeting generously for every variable part -- createdAt and
14
+ // the in-lease Date.now() at up to 21 digits each (the longest plain-decimal
15
+ // string JS ever produces before switching to exponential notation),
16
+ // process.pid at up to 10 digits (a full 32-bit value), and the fixed
17
+ // 36-character UUID -- the literal overhead alone (".lease-at-", the
18
+ // hyphens, ".pending"/etc.) plus those bounds consumes up to ~101 bytes,
19
+ // leaving no more than ~154 bytes of headroom for the id. 128 is a
20
+ // comfortably safe, round bound well under that worst case, while still far
21
+ // exceeding the 36-character UUIDs createDurableRecord() actually generates.
22
+ const MAX_DURABLE_RECORD_ID_LENGTH = 128;
23
+ const SAFE_DURABLE_RECORD_ID_PATTERN = /^[A-Za-z0-9._-]+$/;
24
+ const CLUSTER_CATEGORIES = [
25
+ "local",
26
+ "dev",
27
+ "test",
28
+ "preprod",
29
+ "firstrelease",
30
+ "prod",
31
+ "gov",
32
+ "high",
33
+ "dod",
34
+ "mooncake",
35
+ "ex",
36
+ "rx",
37
+ ];
38
+ function createDurableRecord(input) {
39
+ return {
40
+ version: exports.DURABLE_RECORD_VERSION,
41
+ id: (0, node_crypto_1.randomUUID)(),
42
+ createdAt: Date.now(),
43
+ tenantId: input.tenantId,
44
+ agentId: input.agentId,
45
+ agenticUserId: input.agenticUserId,
46
+ useS2SEndpoint: input.useS2SEndpoint,
47
+ body: input.body,
48
+ };
49
+ }
50
+ function parseDurableRecord(text) {
51
+ const value = JSON.parse(text);
52
+ if (!isObject(value) || value.version !== exports.DURABLE_RECORD_VERSION) {
53
+ throw new Error("Unsupported durable record version");
54
+ }
55
+ if (!isSafeDurableRecordId(value.id) ||
56
+ !isValidCreatedAt(value.createdAt) ||
57
+ typeof value.tenantId !== "string" ||
58
+ typeof value.agentId !== "string" ||
59
+ typeof value.useS2SEndpoint !== "boolean" ||
60
+ typeof value.body !== "string" ||
61
+ !isOptionalString(value.agenticUserId) ||
62
+ !isOptionalClusterCategory(value.clusterCategory) ||
63
+ !isOptionalString(value.domainOverride)) {
64
+ throw new Error("Invalid durable record");
65
+ }
66
+ return {
67
+ version: exports.DURABLE_RECORD_VERSION,
68
+ id: value.id,
69
+ createdAt: value.createdAt,
70
+ tenantId: value.tenantId,
71
+ agentId: value.agentId,
72
+ agenticUserId: value.agenticUserId,
73
+ useS2SEndpoint: value.useS2SEndpoint,
74
+ body: value.body,
75
+ };
76
+ }
77
+ function isObject(value) {
78
+ return typeof value === "object" && value !== null;
79
+ }
80
+ function isOptionalString(value) {
81
+ return value === undefined || typeof value === "string";
82
+ }
83
+ function isOptionalClusterCategory(value) {
84
+ return value === undefined || isClusterCategory(value);
85
+ }
86
+ function isSafeDurableRecordId(value) {
87
+ return (typeof value === "string" &&
88
+ value.length > 0 &&
89
+ value.length <= MAX_DURABLE_RECORD_ID_LENGTH &&
90
+ SAFE_DURABLE_RECORD_ID_PATTERN.test(value));
91
+ }
92
+ function isValidCreatedAt(value) {
93
+ return typeof value === "number" && Number.isSafeInteger(value) && value >= 0;
94
+ }
95
+ function isClusterCategory(value) {
96
+ return typeof value === "string" && CLUSTER_CATEGORIES.includes(value);
97
+ }
98
+ //# sourceMappingURL=DurableRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DurableRecord.js","sourceRoot":"","sources":["../../../../../src/a365/exporter/durable/DurableRecord.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import type { ILogger } from "../../logging.js";
2
+ import { ResolvedDurableDeliveryOptions } from "./DurableDeliveryOptions.js";
3
+ import { type DurableRecordV1 } from "./DurableRecord.js";
4
+ import { type DirectoryAccessControl } from "./WindowsFileAccessControl.js";
5
+ export interface ClaimedRecord {
6
+ record: DurableRecordV1;
7
+ leasePath: string;
8
+ }
9
+ export interface ClaimBatchOptions {
10
+ /**
11
+ * Record ids to skip during this claim scan. Matching pending records are
12
+ * left in place (released back to pending if already leased for
13
+ * inspection) so callers can exclude records they already determined are
14
+ * temporarily unusable without starving unrelated records that sort later.
15
+ */
16
+ excludeRecordIds?: ReadonlySet<string>;
17
+ }
18
+ export interface PersistentStoreDependencies {
19
+ directoryAccessControl?: DirectoryAccessControl;
20
+ }
21
+ export declare class PersistentStore {
22
+ private readonly root;
23
+ private readonly options;
24
+ private readonly logger;
25
+ private static readonly persistenceQueues;
26
+ private claimQueue;
27
+ private constructor();
28
+ static create(options: ResolvedDurableDeliveryOptions, logger: ILogger, dependencies?: PersistentStoreDependencies): Promise<PersistentStore>;
29
+ persist(record: DurableRecordV1): Promise<string>;
30
+ private persistInternal;
31
+ claimBatch(limit: number, options?: ClaimBatchOptions): Promise<ClaimedRecord[]>;
32
+ complete(claim: ClaimedRecord): Promise<void>;
33
+ release(claim: ClaimedRecord): Promise<void>;
34
+ private quarantinePendingFile;
35
+ private pruneForCapacity;
36
+ private recoverStaleLeases;
37
+ private pendingPath;
38
+ private recoveredPendingPath;
39
+ private leasePath;
40
+ private migratedLeasePath;
41
+ private temporaryPath;
42
+ private readManagedFiles;
43
+ private listManagedFilePaths;
44
+ private withClaimLock;
45
+ private withPersistenceLock;
46
+ }
47
+ export declare function applicationPartition(): string;
48
+ //# sourceMappingURL=PersistentStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersistentStore.d.ts","sourceRoot":"","sources":["../../../../../src/a365/exporter/durable/PersistentStore.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,+BAA+B,CAAC;AAiBvC,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACxC;AAUD,MAAM,WAAW,2BAA2B;IAC1C,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;CACjD;AAED,qBAAa,eAAe;IAKxB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IANzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAoC;IAC7E,OAAO,CAAC,UAAU,CAAoC;IAEtD,OAAO;WAMa,MAAM,CACxB,OAAO,EAAE,8BAA8B,EACvC,MAAM,EAAE,OAAO,EACf,YAAY,GAAE,2BAAgC,GAC7C,OAAO,CAAC,eAAe,CAAC;IASpB,OAAO,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;YAI1C,eAAe;IA8BhB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAsHhF,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAW7C,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;YAW3C,qBAAqB;YAkBrB,gBAAgB;YAsDhB,kBAAkB;IAqChC,OAAO,CAAC,WAAW;YAQL,oBAAoB;IAUlC,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,aAAa;YAOP,gBAAgB;YA2BhB,oBAAoB;YAcpB,aAAa;YAeb,mBAAmB;CAkBlC;AAgID,wBAAgB,oBAAoB,IAAI,MAAM,CAQ7C"}