@defai.digital/contracts 13.0.3

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 (388) hide show
  1. package/LICENSE +214 -0
  2. package/dist/ability/v1/index.d.ts +5 -0
  3. package/dist/ability/v1/index.d.ts.map +1 -0
  4. package/dist/ability/v1/index.js +5 -0
  5. package/dist/ability/v1/index.js.map +1 -0
  6. package/dist/ability/v1/schema.d.ts +288 -0
  7. package/dist/ability/v1/schema.d.ts.map +1 -0
  8. package/dist/ability/v1/schema.js +138 -0
  9. package/dist/ability/v1/schema.js.map +1 -0
  10. package/dist/agent/v1/index.d.ts +8 -0
  11. package/dist/agent/v1/index.d.ts.map +1 -0
  12. package/dist/agent/v1/index.js +31 -0
  13. package/dist/agent/v1/index.js.map +1 -0
  14. package/dist/agent/v1/schema.d.ts +4055 -0
  15. package/dist/agent/v1/schema.d.ts.map +1 -0
  16. package/dist/agent/v1/schema.js +970 -0
  17. package/dist/agent/v1/schema.js.map +1 -0
  18. package/dist/agent/v1/storage-port.d.ts +172 -0
  19. package/dist/agent/v1/storage-port.d.ts.map +1 -0
  20. package/dist/agent/v1/storage-port.js +10 -0
  21. package/dist/agent/v1/storage-port.js.map +1 -0
  22. package/dist/analysis/v1/index.d.ts +7 -0
  23. package/dist/analysis/v1/index.d.ts.map +1 -0
  24. package/dist/analysis/v1/index.js +21 -0
  25. package/dist/analysis/v1/index.js.map +1 -0
  26. package/dist/analysis/v1/schema.d.ts +348 -0
  27. package/dist/analysis/v1/schema.d.ts.map +1 -0
  28. package/dist/analysis/v1/schema.js +252 -0
  29. package/dist/analysis/v1/schema.js.map +1 -0
  30. package/dist/cli/v1/index.d.ts +8 -0
  31. package/dist/cli/v1/index.d.ts.map +1 -0
  32. package/dist/cli/v1/index.js +46 -0
  33. package/dist/cli/v1/index.js.map +1 -0
  34. package/dist/cli/v1/output.d.ts +347 -0
  35. package/dist/cli/v1/output.d.ts.map +1 -0
  36. package/dist/cli/v1/output.js +288 -0
  37. package/dist/cli/v1/output.js.map +1 -0
  38. package/dist/cli/v1/schema.d.ts +494 -0
  39. package/dist/cli/v1/schema.d.ts.map +1 -0
  40. package/dist/cli/v1/schema.js +342 -0
  41. package/dist/cli/v1/schema.js.map +1 -0
  42. package/dist/config/v1/config.d.ts +887 -0
  43. package/dist/config/v1/config.d.ts.map +1 -0
  44. package/dist/config/v1/config.js +348 -0
  45. package/dist/config/v1/config.js.map +1 -0
  46. package/dist/config/v1/errors.d.ts +84 -0
  47. package/dist/config/v1/errors.d.ts.map +1 -0
  48. package/dist/config/v1/errors.js +150 -0
  49. package/dist/config/v1/errors.js.map +1 -0
  50. package/dist/config/v1/events.d.ts +416 -0
  51. package/dist/config/v1/events.d.ts.map +1 -0
  52. package/dist/config/v1/events.js +204 -0
  53. package/dist/config/v1/events.js.map +1 -0
  54. package/dist/config/v1/index.d.ts +11 -0
  55. package/dist/config/v1/index.d.ts.map +1 -0
  56. package/dist/config/v1/index.js +49 -0
  57. package/dist/config/v1/index.js.map +1 -0
  58. package/dist/config/v1/operations.d.ts +293 -0
  59. package/dist/config/v1/operations.d.ts.map +1 -0
  60. package/dist/config/v1/operations.js +172 -0
  61. package/dist/config/v1/operations.js.map +1 -0
  62. package/dist/config/v1/provider-config.d.ts +124 -0
  63. package/dist/config/v1/provider-config.d.ts.map +1 -0
  64. package/dist/config/v1/provider-config.js +123 -0
  65. package/dist/config/v1/provider-config.js.map +1 -0
  66. package/dist/constants.d.ts +292 -0
  67. package/dist/constants.d.ts.map +1 -0
  68. package/dist/constants.js +370 -0
  69. package/dist/constants.js.map +1 -0
  70. package/dist/context/v1/index.d.ts +5 -0
  71. package/dist/context/v1/index.d.ts.map +1 -0
  72. package/dist/context/v1/index.js +13 -0
  73. package/dist/context/v1/index.js.map +1 -0
  74. package/dist/context/v1/schema.d.ts +289 -0
  75. package/dist/context/v1/schema.d.ts.map +1 -0
  76. package/dist/context/v1/schema.js +145 -0
  77. package/dist/context/v1/schema.js.map +1 -0
  78. package/dist/cross-cutting/v1/dead-letter.d.ts +305 -0
  79. package/dist/cross-cutting/v1/dead-letter.d.ts.map +1 -0
  80. package/dist/cross-cutting/v1/dead-letter.js +172 -0
  81. package/dist/cross-cutting/v1/dead-letter.js.map +1 -0
  82. package/dist/cross-cutting/v1/idempotency.d.ts +222 -0
  83. package/dist/cross-cutting/v1/idempotency.d.ts.map +1 -0
  84. package/dist/cross-cutting/v1/idempotency.js +170 -0
  85. package/dist/cross-cutting/v1/idempotency.js.map +1 -0
  86. package/dist/cross-cutting/v1/index.d.ts +14 -0
  87. package/dist/cross-cutting/v1/index.d.ts.map +1 -0
  88. package/dist/cross-cutting/v1/index.js +18 -0
  89. package/dist/cross-cutting/v1/index.js.map +1 -0
  90. package/dist/cross-cutting/v1/retention.d.ts +347 -0
  91. package/dist/cross-cutting/v1/retention.d.ts.map +1 -0
  92. package/dist/cross-cutting/v1/retention.js +178 -0
  93. package/dist/cross-cutting/v1/retention.js.map +1 -0
  94. package/dist/cross-cutting/v1/saga.d.ts +358 -0
  95. package/dist/cross-cutting/v1/saga.d.ts.map +1 -0
  96. package/dist/cross-cutting/v1/saga.js +219 -0
  97. package/dist/cross-cutting/v1/saga.js.map +1 -0
  98. package/dist/design/v1/index.d.ts +5 -0
  99. package/dist/design/v1/index.d.ts.map +1 -0
  100. package/dist/design/v1/index.js +5 -0
  101. package/dist/design/v1/index.js.map +1 -0
  102. package/dist/design/v1/schema.d.ts +748 -0
  103. package/dist/design/v1/schema.d.ts.map +1 -0
  104. package/dist/design/v1/schema.js +316 -0
  105. package/dist/design/v1/schema.js.map +1 -0
  106. package/dist/discussion/v1/index.d.ts +10 -0
  107. package/dist/discussion/v1/index.d.ts.map +1 -0
  108. package/dist/discussion/v1/index.js +21 -0
  109. package/dist/discussion/v1/index.js.map +1 -0
  110. package/dist/discussion/v1/schema.d.ts +1186 -0
  111. package/dist/discussion/v1/schema.d.ts.map +1 -0
  112. package/dist/discussion/v1/schema.js +560 -0
  113. package/dist/discussion/v1/schema.js.map +1 -0
  114. package/dist/file-system/v1/index.d.ts +7 -0
  115. package/dist/file-system/v1/index.d.ts.map +1 -0
  116. package/dist/file-system/v1/index.js +7 -0
  117. package/dist/file-system/v1/index.js.map +1 -0
  118. package/dist/file-system/v1/schema.d.ts +644 -0
  119. package/dist/file-system/v1/schema.d.ts.map +1 -0
  120. package/dist/file-system/v1/schema.js +278 -0
  121. package/dist/file-system/v1/schema.js.map +1 -0
  122. package/dist/guard/v1/index.d.ts +9 -0
  123. package/dist/guard/v1/index.d.ts.map +1 -0
  124. package/dist/guard/v1/index.js +10 -0
  125. package/dist/guard/v1/index.js.map +1 -0
  126. package/dist/guard/v1/schema.d.ts +308 -0
  127. package/dist/guard/v1/schema.d.ts.map +1 -0
  128. package/dist/guard/v1/schema.js +267 -0
  129. package/dist/guard/v1/schema.js.map +1 -0
  130. package/dist/index.d.ts +68 -0
  131. package/dist/index.d.ts.map +1 -0
  132. package/dist/index.js +117 -0
  133. package/dist/index.js.map +1 -0
  134. package/dist/iterate/v1/index.d.ts +5 -0
  135. package/dist/iterate/v1/index.d.ts.map +1 -0
  136. package/dist/iterate/v1/index.js +13 -0
  137. package/dist/iterate/v1/index.js.map +1 -0
  138. package/dist/iterate/v1/schema.d.ts +693 -0
  139. package/dist/iterate/v1/schema.d.ts.map +1 -0
  140. package/dist/iterate/v1/schema.js +244 -0
  141. package/dist/iterate/v1/schema.js.map +1 -0
  142. package/dist/mcp/v1/index.d.ts +8 -0
  143. package/dist/mcp/v1/index.d.ts.map +1 -0
  144. package/dist/mcp/v1/index.js +20 -0
  145. package/dist/mcp/v1/index.js.map +1 -0
  146. package/dist/mcp/v1/prompts/index.d.ts +5 -0
  147. package/dist/mcp/v1/prompts/index.d.ts.map +1 -0
  148. package/dist/mcp/v1/prompts/index.js +5 -0
  149. package/dist/mcp/v1/prompts/index.js.map +1 -0
  150. package/dist/mcp/v1/prompts/schema.d.ts +266 -0
  151. package/dist/mcp/v1/prompts/schema.d.ts.map +1 -0
  152. package/dist/mcp/v1/prompts/schema.js +138 -0
  153. package/dist/mcp/v1/prompts/schema.js.map +1 -0
  154. package/dist/mcp/v1/rate-limit.schema.d.ts +175 -0
  155. package/dist/mcp/v1/rate-limit.schema.d.ts.map +1 -0
  156. package/dist/mcp/v1/rate-limit.schema.js +164 -0
  157. package/dist/mcp/v1/rate-limit.schema.js.map +1 -0
  158. package/dist/mcp/v1/resources/index.d.ts +5 -0
  159. package/dist/mcp/v1/resources/index.d.ts.map +1 -0
  160. package/dist/mcp/v1/resources/index.js +5 -0
  161. package/dist/mcp/v1/resources/index.js.map +1 -0
  162. package/dist/mcp/v1/resources/schema.d.ts +169 -0
  163. package/dist/mcp/v1/resources/schema.d.ts.map +1 -0
  164. package/dist/mcp/v1/resources/schema.js +118 -0
  165. package/dist/mcp/v1/resources/schema.js.map +1 -0
  166. package/dist/mcp/v1/runtime/cache.d.ts +204 -0
  167. package/dist/mcp/v1/runtime/cache.d.ts.map +1 -0
  168. package/dist/mcp/v1/runtime/cache.js +92 -0
  169. package/dist/mcp/v1/runtime/cache.js.map +1 -0
  170. package/dist/mcp/v1/runtime/index.d.ts +5 -0
  171. package/dist/mcp/v1/runtime/index.d.ts.map +1 -0
  172. package/dist/mcp/v1/runtime/index.js +9 -0
  173. package/dist/mcp/v1/runtime/index.js.map +1 -0
  174. package/dist/mcp/v1/runtime/limits.d.ts +113 -0
  175. package/dist/mcp/v1/runtime/limits.d.ts.map +1 -0
  176. package/dist/mcp/v1/runtime/limits.js +95 -0
  177. package/dist/mcp/v1/runtime/limits.js.map +1 -0
  178. package/dist/mcp/v1/runtime/response.d.ts +467 -0
  179. package/dist/mcp/v1/runtime/response.d.ts.map +1 -0
  180. package/dist/mcp/v1/runtime/response.js +130 -0
  181. package/dist/mcp/v1/runtime/response.js.map +1 -0
  182. package/dist/mcp/v1/runtime/timeout.d.ts +116 -0
  183. package/dist/mcp/v1/runtime/timeout.d.ts.map +1 -0
  184. package/dist/mcp/v1/runtime/timeout.js +116 -0
  185. package/dist/mcp/v1/runtime/timeout.js.map +1 -0
  186. package/dist/mcp/v1/schema.d.ts +171 -0
  187. package/dist/mcp/v1/schema.d.ts.map +1 -0
  188. package/dist/mcp/v1/schema.js +97 -0
  189. package/dist/mcp/v1/schema.js.map +1 -0
  190. package/dist/mcp/v1/tools/agent.d.ts +485 -0
  191. package/dist/mcp/v1/tools/agent.d.ts.map +1 -0
  192. package/dist/mcp/v1/tools/agent.js +264 -0
  193. package/dist/mcp/v1/tools/agent.js.map +1 -0
  194. package/dist/mcp/v1/tools/guard.d.ts +243 -0
  195. package/dist/mcp/v1/tools/guard.d.ts.map +1 -0
  196. package/dist/mcp/v1/tools/guard.js +136 -0
  197. package/dist/mcp/v1/tools/guard.js.map +1 -0
  198. package/dist/mcp/v1/tools/index.d.ts +15 -0
  199. package/dist/mcp/v1/tools/index.d.ts.map +1 -0
  200. package/dist/mcp/v1/tools/index.js +22 -0
  201. package/dist/mcp/v1/tools/index.js.map +1 -0
  202. package/dist/mcp/v1/tools/memory.d.ts +569 -0
  203. package/dist/mcp/v1/tools/memory.d.ts.map +1 -0
  204. package/dist/mcp/v1/tools/memory.js +319 -0
  205. package/dist/mcp/v1/tools/memory.js.map +1 -0
  206. package/dist/mcp/v1/tools/session.d.ts +545 -0
  207. package/dist/mcp/v1/tools/session.d.ts.map +1 -0
  208. package/dist/mcp/v1/tools/session.js +309 -0
  209. package/dist/mcp/v1/tools/session.js.map +1 -0
  210. package/dist/mcp/v1/tools/tool-list-schemas.d.ts +354 -0
  211. package/dist/mcp/v1/tools/tool-list-schemas.d.ts.map +1 -0
  212. package/dist/mcp/v1/tools/tool-list-schemas.js +140 -0
  213. package/dist/mcp/v1/tools/tool-list-schemas.js.map +1 -0
  214. package/dist/mcp/v1/tools/trace.d.ts +282 -0
  215. package/dist/mcp/v1/tools/trace.d.ts.map +1 -0
  216. package/dist/mcp/v1/tools/trace.js +94 -0
  217. package/dist/mcp/v1/tools/trace.js.map +1 -0
  218. package/dist/mcp/v1/tools/workflow.d.ts +146 -0
  219. package/dist/mcp/v1/tools/workflow.d.ts.map +1 -0
  220. package/dist/mcp/v1/tools/workflow.js +68 -0
  221. package/dist/mcp/v1/tools/workflow.js.map +1 -0
  222. package/dist/mcp/v1/trace/index.d.ts +5 -0
  223. package/dist/mcp/v1/trace/index.d.ts.map +1 -0
  224. package/dist/mcp/v1/trace/index.js +5 -0
  225. package/dist/mcp/v1/trace/index.js.map +1 -0
  226. package/dist/mcp/v1/trace/tool-trace.d.ts +107 -0
  227. package/dist/mcp/v1/trace/tool-trace.d.ts.map +1 -0
  228. package/dist/mcp/v1/trace/tool-trace.js +91 -0
  229. package/dist/mcp/v1/trace/tool-trace.js.map +1 -0
  230. package/dist/memory/v1/index.d.ts +2 -0
  231. package/dist/memory/v1/index.d.ts.map +1 -0
  232. package/dist/memory/v1/index.js +2 -0
  233. package/dist/memory/v1/index.js.map +1 -0
  234. package/dist/memory/v1/schema.d.ts +188 -0
  235. package/dist/memory/v1/schema.d.ts.map +1 -0
  236. package/dist/memory/v1/schema.js +108 -0
  237. package/dist/memory/v1/schema.js.map +1 -0
  238. package/dist/ml-lifecycle/v1/index.d.ts +12 -0
  239. package/dist/ml-lifecycle/v1/index.d.ts.map +1 -0
  240. package/dist/ml-lifecycle/v1/index.js +12 -0
  241. package/dist/ml-lifecycle/v1/index.js.map +1 -0
  242. package/dist/ml-lifecycle/v1/schema.d.ts +1207 -0
  243. package/dist/ml-lifecycle/v1/schema.d.ts.map +1 -0
  244. package/dist/ml-lifecycle/v1/schema.js +481 -0
  245. package/dist/ml-lifecycle/v1/schema.js.map +1 -0
  246. package/dist/orchestration/v1/index.d.ts +5 -0
  247. package/dist/orchestration/v1/index.d.ts.map +1 -0
  248. package/dist/orchestration/v1/index.js +23 -0
  249. package/dist/orchestration/v1/index.js.map +1 -0
  250. package/dist/orchestration/v1/schema.d.ts +1384 -0
  251. package/dist/orchestration/v1/schema.d.ts.map +1 -0
  252. package/dist/orchestration/v1/schema.js +394 -0
  253. package/dist/orchestration/v1/schema.js.map +1 -0
  254. package/dist/provider/v1/circuit-breaker.d.ts +151 -0
  255. package/dist/provider/v1/circuit-breaker.d.ts.map +1 -0
  256. package/dist/provider/v1/circuit-breaker.js +119 -0
  257. package/dist/provider/v1/circuit-breaker.js.map +1 -0
  258. package/dist/provider/v1/health.d.ts +246 -0
  259. package/dist/provider/v1/health.d.ts.map +1 -0
  260. package/dist/provider/v1/health.js +190 -0
  261. package/dist/provider/v1/health.js.map +1 -0
  262. package/dist/provider/v1/index.d.ts +13 -0
  263. package/dist/provider/v1/index.d.ts.map +1 -0
  264. package/dist/provider/v1/index.js +17 -0
  265. package/dist/provider/v1/index.js.map +1 -0
  266. package/dist/provider/v1/port.d.ts +237 -0
  267. package/dist/provider/v1/port.d.ts.map +1 -0
  268. package/dist/provider/v1/port.js +113 -0
  269. package/dist/provider/v1/port.js.map +1 -0
  270. package/dist/provider/v1/rate-limit.d.ts +214 -0
  271. package/dist/provider/v1/rate-limit.d.ts.map +1 -0
  272. package/dist/provider/v1/rate-limit.js +165 -0
  273. package/dist/provider/v1/rate-limit.js.map +1 -0
  274. package/dist/resilience/v1/circuit-breaker.d.ts +135 -0
  275. package/dist/resilience/v1/circuit-breaker.d.ts.map +1 -0
  276. package/dist/resilience/v1/circuit-breaker.js +105 -0
  277. package/dist/resilience/v1/circuit-breaker.js.map +1 -0
  278. package/dist/resilience/v1/index.d.ts +17 -0
  279. package/dist/resilience/v1/index.d.ts.map +1 -0
  280. package/dist/resilience/v1/index.js +17 -0
  281. package/dist/resilience/v1/index.js.map +1 -0
  282. package/dist/resilience/v1/loop-guard.d.ts +123 -0
  283. package/dist/resilience/v1/loop-guard.d.ts.map +1 -0
  284. package/dist/resilience/v1/loop-guard.js +96 -0
  285. package/dist/resilience/v1/loop-guard.js.map +1 -0
  286. package/dist/resilience/v1/metrics.d.ts +323 -0
  287. package/dist/resilience/v1/metrics.d.ts.map +1 -0
  288. package/dist/resilience/v1/metrics.js +183 -0
  289. package/dist/resilience/v1/metrics.js.map +1 -0
  290. package/dist/resilience/v1/rate-limiter.d.ts +122 -0
  291. package/dist/resilience/v1/rate-limiter.d.ts.map +1 -0
  292. package/dist/resilience/v1/rate-limiter.js +119 -0
  293. package/dist/resilience/v1/rate-limiter.js.map +1 -0
  294. package/dist/resilience/v1/resource-limits.d.ts +146 -0
  295. package/dist/resilience/v1/resource-limits.d.ts.map +1 -0
  296. package/dist/resilience/v1/resource-limits.js +130 -0
  297. package/dist/resilience/v1/resource-limits.js.map +1 -0
  298. package/dist/review/v1/index.d.ts +7 -0
  299. package/dist/review/v1/index.d.ts.map +1 -0
  300. package/dist/review/v1/index.js +23 -0
  301. package/dist/review/v1/index.js.map +1 -0
  302. package/dist/review/v1/schema.d.ts +1284 -0
  303. package/dist/review/v1/schema.d.ts.map +1 -0
  304. package/dist/review/v1/schema.js +423 -0
  305. package/dist/review/v1/schema.js.map +1 -0
  306. package/dist/routing/v1/index.d.ts +2 -0
  307. package/dist/routing/v1/index.d.ts.map +1 -0
  308. package/dist/routing/v1/index.js +2 -0
  309. package/dist/routing/v1/index.js.map +1 -0
  310. package/dist/routing/v1/schema.d.ts +315 -0
  311. package/dist/routing/v1/schema.d.ts.map +1 -0
  312. package/dist/routing/v1/schema.js +103 -0
  313. package/dist/routing/v1/schema.js.map +1 -0
  314. package/dist/scaffold/v1/index.d.ts +7 -0
  315. package/dist/scaffold/v1/index.d.ts.map +1 -0
  316. package/dist/scaffold/v1/index.js +7 -0
  317. package/dist/scaffold/v1/index.js.map +1 -0
  318. package/dist/scaffold/v1/schema.d.ts +351 -0
  319. package/dist/scaffold/v1/schema.d.ts.map +1 -0
  320. package/dist/scaffold/v1/schema.js +238 -0
  321. package/dist/scaffold/v1/schema.js.map +1 -0
  322. package/dist/session/v1/index.d.ts +7 -0
  323. package/dist/session/v1/index.d.ts.map +1 -0
  324. package/dist/session/v1/index.js +23 -0
  325. package/dist/session/v1/index.js.map +1 -0
  326. package/dist/session/v1/schema.d.ts +1156 -0
  327. package/dist/session/v1/schema.d.ts.map +1 -0
  328. package/dist/session/v1/schema.js +315 -0
  329. package/dist/session/v1/schema.js.map +1 -0
  330. package/dist/storage/v1/index.d.ts +9 -0
  331. package/dist/storage/v1/index.d.ts.map +1 -0
  332. package/dist/storage/v1/index.js +21 -0
  333. package/dist/storage/v1/index.js.map +1 -0
  334. package/dist/storage/v1/schema.d.ts +411 -0
  335. package/dist/storage/v1/schema.d.ts.map +1 -0
  336. package/dist/storage/v1/schema.js +167 -0
  337. package/dist/storage/v1/schema.js.map +1 -0
  338. package/dist/telemetry/v1/index.d.ts +5 -0
  339. package/dist/telemetry/v1/index.d.ts.map +1 -0
  340. package/dist/telemetry/v1/index.js +5 -0
  341. package/dist/telemetry/v1/index.js.map +1 -0
  342. package/dist/telemetry/v1/schema.d.ts +747 -0
  343. package/dist/telemetry/v1/schema.d.ts.map +1 -0
  344. package/dist/telemetry/v1/schema.js +300 -0
  345. package/dist/telemetry/v1/schema.js.map +1 -0
  346. package/dist/token-budget/v1/index.d.ts +7 -0
  347. package/dist/token-budget/v1/index.d.ts.map +1 -0
  348. package/dist/token-budget/v1/index.js +25 -0
  349. package/dist/token-budget/v1/index.js.map +1 -0
  350. package/dist/token-budget/v1/schema.d.ts +588 -0
  351. package/dist/token-budget/v1/schema.d.ts.map +1 -0
  352. package/dist/token-budget/v1/schema.js +239 -0
  353. package/dist/token-budget/v1/schema.js.map +1 -0
  354. package/dist/trace/v1/index.d.ts +2 -0
  355. package/dist/trace/v1/index.d.ts.map +1 -0
  356. package/dist/trace/v1/index.js +4 -0
  357. package/dist/trace/v1/index.js.map +1 -0
  358. package/dist/trace/v1/schema.d.ts +531 -0
  359. package/dist/trace/v1/schema.d.ts.map +1 -0
  360. package/dist/trace/v1/schema.js +243 -0
  361. package/dist/trace/v1/schema.js.map +1 -0
  362. package/dist/workflow/v1/index.d.ts +3 -0
  363. package/dist/workflow/v1/index.d.ts.map +1 -0
  364. package/dist/workflow/v1/index.js +8 -0
  365. package/dist/workflow/v1/index.js.map +1 -0
  366. package/dist/workflow/v1/schema.d.ts +267 -0
  367. package/dist/workflow/v1/schema.d.ts.map +1 -0
  368. package/dist/workflow/v1/schema.js +95 -0
  369. package/dist/workflow/v1/schema.js.map +1 -0
  370. package/dist/workflow/v1/step-guard.d.ts +571 -0
  371. package/dist/workflow/v1/step-guard.d.ts.map +1 -0
  372. package/dist/workflow/v1/step-guard.js +305 -0
  373. package/dist/workflow/v1/step-guard.js.map +1 -0
  374. package/dist/workflow-templates/v1/index.d.ts +8 -0
  375. package/dist/workflow-templates/v1/index.d.ts.map +1 -0
  376. package/dist/workflow-templates/v1/index.js +8 -0
  377. package/dist/workflow-templates/v1/index.js.map +1 -0
  378. package/dist/workflow-templates/v1/schema.d.ts +714 -0
  379. package/dist/workflow-templates/v1/schema.d.ts.map +1 -0
  380. package/dist/workflow-templates/v1/schema.js +168 -0
  381. package/dist/workflow-templates/v1/schema.js.map +1 -0
  382. package/package.json +142 -0
  383. package/src/guard/v1/policy.schema.json +56 -0
  384. package/src/mcp/v1/tools.schema.json +108 -0
  385. package/src/memory/v1/event.schema.json +136 -0
  386. package/src/routing/v1/decision.schema.json +155 -0
  387. package/src/trace/v1/event.schema.json +197 -0
  388. package/src/workflow/v1/workflow.schema.json +142 -0
@@ -0,0 +1,122 @@
1
+ /**
2
+ * Rate Limiter Contract
3
+ *
4
+ * Token bucket rate limiting to prevent API limit violations and cost overruns.
5
+ */
6
+ import { z } from 'zod';
7
+ export declare const RateLimiterConfigSchema: z.ZodObject<{
8
+ /** Maximum requests per minute */
9
+ requestsPerMinute: z.ZodDefault<z.ZodNumber>;
10
+ /** Maximum tokens per minute (for LLM APIs) */
11
+ tokensPerMinute: z.ZodOptional<z.ZodNumber>;
12
+ /** Maximum queued requests waiting for capacity */
13
+ maxQueueSize: z.ZodDefault<z.ZodNumber>;
14
+ /** Maximum time to wait in queue (ms) */
15
+ queueTimeoutMs: z.ZodDefault<z.ZodNumber>;
16
+ /** Burst allowance (extra capacity for bursts) */
17
+ burstMultiplier: z.ZodDefault<z.ZodNumber>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ queueTimeoutMs: number;
20
+ requestsPerMinute: number;
21
+ burstMultiplier: number;
22
+ maxQueueSize: number;
23
+ tokensPerMinute?: number | undefined;
24
+ }, {
25
+ queueTimeoutMs?: number | undefined;
26
+ requestsPerMinute?: number | undefined;
27
+ tokensPerMinute?: number | undefined;
28
+ burstMultiplier?: number | undefined;
29
+ maxQueueSize?: number | undefined;
30
+ }>;
31
+ export type RateLimiterConfig = z.infer<typeof RateLimiterConfigSchema>;
32
+ export declare const RateLimiterStatsSchema: z.ZodObject<{
33
+ /** Requests allowed in current window */
34
+ requestsAllowed: z.ZodNumber;
35
+ /** Requests rejected in current window */
36
+ requestsRejected: z.ZodNumber;
37
+ /** Current queue size */
38
+ queueSize: z.ZodNumber;
39
+ /** Tokens used in current window */
40
+ tokensUsed: z.ZodNumber;
41
+ /** Available capacity (requests) */
42
+ availableCapacity: z.ZodNumber;
43
+ /** Time until next refill (ms) */
44
+ nextRefillMs: z.ZodNumber;
45
+ /** Window start time */
46
+ windowStart: z.ZodString;
47
+ }, "strip", z.ZodTypeAny, {
48
+ windowStart: string;
49
+ queueSize: number;
50
+ tokensUsed: number;
51
+ requestsAllowed: number;
52
+ requestsRejected: number;
53
+ availableCapacity: number;
54
+ nextRefillMs: number;
55
+ }, {
56
+ windowStart: string;
57
+ queueSize: number;
58
+ tokensUsed: number;
59
+ requestsAllowed: number;
60
+ requestsRejected: number;
61
+ availableCapacity: number;
62
+ nextRefillMs: number;
63
+ }>;
64
+ export type RateLimiterStats = z.infer<typeof RateLimiterStatsSchema>;
65
+ export declare const RateLimiterAcquireResultSchema: z.ZodDiscriminatedUnion<"acquired", [z.ZodObject<{
66
+ acquired: z.ZodLiteral<true>;
67
+ waitedMs: z.ZodNumber;
68
+ }, "strip", z.ZodTypeAny, {
69
+ acquired: true;
70
+ waitedMs: number;
71
+ }, {
72
+ acquired: true;
73
+ waitedMs: number;
74
+ }>, z.ZodObject<{
75
+ acquired: z.ZodLiteral<false>;
76
+ reason: z.ZodEnum<["queue-full", "timeout", "limit-exceeded"]>;
77
+ retryAfterMs: z.ZodOptional<z.ZodNumber>;
78
+ }, "strip", z.ZodTypeAny, {
79
+ reason: "timeout" | "queue-full" | "limit-exceeded";
80
+ acquired: false;
81
+ retryAfterMs?: number | undefined;
82
+ }, {
83
+ reason: "timeout" | "queue-full" | "limit-exceeded";
84
+ acquired: false;
85
+ retryAfterMs?: number | undefined;
86
+ }>]>;
87
+ export type RateLimiterAcquireResult = z.infer<typeof RateLimiterAcquireResultSchema>;
88
+ export declare const RateLimiterErrorCodes: {
89
+ readonly RATE_LIMITED: "RATE_LIMITER_LIMITED";
90
+ readonly QUEUE_FULL: "RATE_LIMITER_QUEUE_FULL";
91
+ readonly TIMEOUT: "RATE_LIMITER_TIMEOUT";
92
+ };
93
+ export type RateLimiterErrorCode = (typeof RateLimiterErrorCodes)[keyof typeof RateLimiterErrorCodes];
94
+ export declare function validateRateLimiterConfig(data: unknown): RateLimiterConfig;
95
+ export declare function safeValidateRateLimiterConfig(data: unknown): {
96
+ success: true;
97
+ data: RateLimiterConfig;
98
+ } | {
99
+ success: false;
100
+ error: z.ZodError;
101
+ };
102
+ export declare function createDefaultRateLimiterConfig(): RateLimiterConfig;
103
+ export declare function createRateLimiterStats(): RateLimiterStats;
104
+ /**
105
+ * Default token window duration in milliseconds (1 minute)
106
+ * Used for per-minute rate limiting calculations
107
+ */
108
+ export declare const DEFAULT_TOKEN_WINDOW_MS = 60000;
109
+ /**
110
+ * Default check interval in milliseconds
111
+ * How often to check rate limit status in queue operations
112
+ */
113
+ export declare const DEFAULT_CHECK_INTERVAL_MS = 100;
114
+ /**
115
+ * Time multipliers for parsing time range strings
116
+ */
117
+ export declare const TIME_MULTIPLIERS: Record<string, number>;
118
+ /**
119
+ * Default time range in milliseconds (1 hour)
120
+ */
121
+ export declare const DEFAULT_TIME_RANGE_MS = 3600000;
122
+ //# sourceMappingURL=rate-limiter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate-limiter.d.ts","sourceRoot":"","sources":["../../../src/resilience/v1/rate-limiter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,uBAAuB;IAClC,kCAAkC;;IAGlC,+CAA+C;;IAG/C,mDAAmD;;IAGnD,yCAAyC;;IAGzC,kDAAkD;;;;;;;;;;;;;;EAElD,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAMxE,eAAO,MAAM,sBAAsB;IACjC,yCAAyC;;IAGzC,0CAA0C;;IAG1C,yBAAyB;;IAGzB,oCAAoC;;IAGpC,oCAAoC;;IAGpC,kCAAkC;;IAGlC,wBAAwB;;;;;;;;;;;;;;;;;;EAExB,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;IAUzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAMtF,eAAO,MAAM,qBAAqB;;;;CAIxB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAMrE,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,CAE1E;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,OAAO,GACZ;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAA;CAAE,CAIpF;AAMD,wBAAgB,8BAA8B,IAAI,iBAAiB,CAElE;AAED,wBAAgB,sBAAsB,IAAI,gBAAgB,CAUzD;AAOD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAKnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,UAAU,CAAC"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Rate Limiter Contract
3
+ *
4
+ * Token bucket rate limiting to prevent API limit violations and cost overruns.
5
+ */
6
+ import { z } from 'zod';
7
+ // ============================================================================
8
+ // Configuration
9
+ // ============================================================================
10
+ export const RateLimiterConfigSchema = z.object({
11
+ /** Maximum requests per minute */
12
+ requestsPerMinute: z.number().int().min(1).max(10000).default(60),
13
+ /** Maximum tokens per minute (for LLM APIs) */
14
+ tokensPerMinute: z.number().int().min(1000).max(10000000).optional(),
15
+ /** Maximum queued requests waiting for capacity */
16
+ maxQueueSize: z.number().int().min(0).max(1000).default(100),
17
+ /** Maximum time to wait in queue (ms) */
18
+ queueTimeoutMs: z.number().int().min(0).max(300000).default(30000),
19
+ /** Burst allowance (extra capacity for bursts) */
20
+ burstMultiplier: z.number().min(1).max(5).default(1.5),
21
+ });
22
+ // ============================================================================
23
+ // Stats
24
+ // ============================================================================
25
+ export const RateLimiterStatsSchema = z.object({
26
+ /** Requests allowed in current window */
27
+ requestsAllowed: z.number().int().min(0),
28
+ /** Requests rejected in current window */
29
+ requestsRejected: z.number().int().min(0),
30
+ /** Current queue size */
31
+ queueSize: z.number().int().min(0),
32
+ /** Tokens used in current window */
33
+ tokensUsed: z.number().int().min(0),
34
+ /** Available capacity (requests) */
35
+ availableCapacity: z.number().min(0),
36
+ /** Time until next refill (ms) */
37
+ nextRefillMs: z.number().int().min(0),
38
+ /** Window start time */
39
+ windowStart: z.string().datetime(),
40
+ });
41
+ // ============================================================================
42
+ // Acquire Result
43
+ // ============================================================================
44
+ export const RateLimiterAcquireResultSchema = z.discriminatedUnion('acquired', [
45
+ z.object({
46
+ acquired: z.literal(true),
47
+ waitedMs: z.number().int().min(0),
48
+ }),
49
+ z.object({
50
+ acquired: z.literal(false),
51
+ reason: z.enum(['queue-full', 'timeout', 'limit-exceeded']),
52
+ retryAfterMs: z.number().int().min(0).optional(),
53
+ }),
54
+ ]);
55
+ // ============================================================================
56
+ // Error Codes
57
+ // ============================================================================
58
+ export const RateLimiterErrorCodes = {
59
+ RATE_LIMITED: 'RATE_LIMITER_LIMITED',
60
+ QUEUE_FULL: 'RATE_LIMITER_QUEUE_FULL',
61
+ TIMEOUT: 'RATE_LIMITER_TIMEOUT',
62
+ };
63
+ // ============================================================================
64
+ // Validation Functions
65
+ // ============================================================================
66
+ export function validateRateLimiterConfig(data) {
67
+ return RateLimiterConfigSchema.parse(data);
68
+ }
69
+ export function safeValidateRateLimiterConfig(data) {
70
+ const result = RateLimiterConfigSchema.safeParse(data);
71
+ if (result.success)
72
+ return { success: true, data: result.data };
73
+ return { success: false, error: result.error };
74
+ }
75
+ // ============================================================================
76
+ // Factory Functions
77
+ // ============================================================================
78
+ export function createDefaultRateLimiterConfig() {
79
+ return RateLimiterConfigSchema.parse({});
80
+ }
81
+ export function createRateLimiterStats() {
82
+ return {
83
+ requestsAllowed: 0,
84
+ requestsRejected: 0,
85
+ queueSize: 0,
86
+ tokensUsed: 0,
87
+ availableCapacity: 60, // Default RPM
88
+ nextRefillMs: 0,
89
+ windowStart: new Date().toISOString(),
90
+ };
91
+ }
92
+ // ============================================================================
93
+ // Default Constants
94
+ // Exported for use by implementation code to avoid hardcoding
95
+ // ============================================================================
96
+ /**
97
+ * Default token window duration in milliseconds (1 minute)
98
+ * Used for per-minute rate limiting calculations
99
+ */
100
+ export const DEFAULT_TOKEN_WINDOW_MS = 60000;
101
+ /**
102
+ * Default check interval in milliseconds
103
+ * How often to check rate limit status in queue operations
104
+ */
105
+ export const DEFAULT_CHECK_INTERVAL_MS = 100;
106
+ /**
107
+ * Time multipliers for parsing time range strings
108
+ */
109
+ export const TIME_MULTIPLIERS = {
110
+ s: 1000,
111
+ m: 60000,
112
+ h: 3600000,
113
+ d: 86400000,
114
+ };
115
+ /**
116
+ * Default time range in milliseconds (1 hour)
117
+ */
118
+ export const DEFAULT_TIME_RANGE_MS = 3600000;
119
+ //# sourceMappingURL=rate-limiter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate-limiter.js","sourceRoot":"","sources":["../../../src/resilience/v1/rate-limiter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Resource Limits Contract
3
+ *
4
+ * Enforces limits on tokens, time, cost, and concurrency.
5
+ */
6
+ import { z } from 'zod';
7
+ export declare const ResourceLimitsConfigSchema: z.ZodObject<{
8
+ /** Maximum tokens per request */
9
+ maxTokensPerRequest: z.ZodDefault<z.ZodNumber>;
10
+ /** Maximum tokens per session */
11
+ maxTokensPerSession: z.ZodDefault<z.ZodNumber>;
12
+ /** Maximum duration per operation in ms */
13
+ maxDurationMs: z.ZodDefault<z.ZodNumber>;
14
+ /** Maximum cost per session in dollars */
15
+ maxCostPerSession: z.ZodDefault<z.ZodNumber>;
16
+ /** Maximum concurrent requests */
17
+ maxConcurrentRequests: z.ZodDefault<z.ZodNumber>;
18
+ /** Cost per 1K input tokens (for estimation) */
19
+ costPer1kInputTokens: z.ZodDefault<z.ZodNumber>;
20
+ /** Cost per 1K output tokens (for estimation) */
21
+ costPer1kOutputTokens: z.ZodDefault<z.ZodNumber>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ maxTokensPerRequest: number;
24
+ maxDurationMs: number;
25
+ maxTokensPerSession: number;
26
+ maxCostPerSession: number;
27
+ maxConcurrentRequests: number;
28
+ costPer1kInputTokens: number;
29
+ costPer1kOutputTokens: number;
30
+ }, {
31
+ maxTokensPerRequest?: number | undefined;
32
+ maxDurationMs?: number | undefined;
33
+ maxTokensPerSession?: number | undefined;
34
+ maxCostPerSession?: number | undefined;
35
+ maxConcurrentRequests?: number | undefined;
36
+ costPer1kInputTokens?: number | undefined;
37
+ costPer1kOutputTokens?: number | undefined;
38
+ }>;
39
+ export type ResourceLimitsConfig = z.infer<typeof ResourceLimitsConfigSchema>;
40
+ export declare const ResourceUsageSchema: z.ZodObject<{
41
+ /** Session identifier */
42
+ sessionId: z.ZodString;
43
+ /** Total input tokens used */
44
+ inputTokens: z.ZodNumber;
45
+ /** Total output tokens used */
46
+ outputTokens: z.ZodNumber;
47
+ /** Total requests made */
48
+ requestCount: z.ZodNumber;
49
+ /** Total duration in ms */
50
+ totalDurationMs: z.ZodNumber;
51
+ /** Estimated cost in dollars */
52
+ estimatedCost: z.ZodNumber;
53
+ /** Current concurrent requests */
54
+ concurrentRequests: z.ZodNumber;
55
+ /** First request timestamp */
56
+ startedAt: z.ZodString;
57
+ /** Last request timestamp */
58
+ lastRequestAt: z.ZodOptional<z.ZodString>;
59
+ }, "strip", z.ZodTypeAny, {
60
+ sessionId: string;
61
+ totalDurationMs: number;
62
+ startedAt: string;
63
+ requestCount: number;
64
+ outputTokens: number;
65
+ inputTokens: number;
66
+ estimatedCost: number;
67
+ concurrentRequests: number;
68
+ lastRequestAt?: string | undefined;
69
+ }, {
70
+ sessionId: string;
71
+ totalDurationMs: number;
72
+ startedAt: string;
73
+ requestCount: number;
74
+ outputTokens: number;
75
+ inputTokens: number;
76
+ estimatedCost: number;
77
+ concurrentRequests: number;
78
+ lastRequestAt?: string | undefined;
79
+ }>;
80
+ export type ResourceUsage = z.infer<typeof ResourceUsageSchema>;
81
+ export declare const ResourceCheckResultSchema: z.ZodDiscriminatedUnion<"allowed", [z.ZodObject<{
82
+ allowed: z.ZodLiteral<true>;
83
+ }, "strip", z.ZodTypeAny, {
84
+ allowed: true;
85
+ }, {
86
+ allowed: true;
87
+ }>, z.ZodObject<{
88
+ allowed: z.ZodLiteral<false>;
89
+ reason: z.ZodString;
90
+ limitType: z.ZodEnum<["tokens-per-request", "tokens-per-session", "duration", "cost", "concurrency"]>;
91
+ current: z.ZodNumber;
92
+ max: z.ZodNumber;
93
+ retryAfterMs: z.ZodOptional<z.ZodNumber>;
94
+ }, "strip", z.ZodTypeAny, {
95
+ max: number;
96
+ reason: string;
97
+ allowed: false;
98
+ limitType: "duration" | "tokens-per-request" | "tokens-per-session" | "cost" | "concurrency";
99
+ current: number;
100
+ retryAfterMs?: number | undefined;
101
+ }, {
102
+ max: number;
103
+ reason: string;
104
+ allowed: false;
105
+ limitType: "duration" | "tokens-per-request" | "tokens-per-session" | "cost" | "concurrency";
106
+ current: number;
107
+ retryAfterMs?: number | undefined;
108
+ }>]>;
109
+ export type ResourceCheckResult = z.infer<typeof ResourceCheckResultSchema>;
110
+ export declare const ResourceRequestInfoSchema: z.ZodObject<{
111
+ /** Estimated input tokens */
112
+ estimatedInputTokens: z.ZodOptional<z.ZodNumber>;
113
+ /** Estimated output tokens */
114
+ estimatedOutputTokens: z.ZodOptional<z.ZodNumber>;
115
+ /** Whether this is a new concurrent request */
116
+ isConcurrent: z.ZodDefault<z.ZodBoolean>;
117
+ }, "strip", z.ZodTypeAny, {
118
+ isConcurrent: boolean;
119
+ estimatedInputTokens?: number | undefined;
120
+ estimatedOutputTokens?: number | undefined;
121
+ }, {
122
+ estimatedInputTokens?: number | undefined;
123
+ estimatedOutputTokens?: number | undefined;
124
+ isConcurrent?: boolean | undefined;
125
+ }>;
126
+ export type ResourceRequestInfo = z.infer<typeof ResourceRequestInfoSchema>;
127
+ export declare const ResourceLimitsErrorCodes: {
128
+ readonly TOKENS_PER_REQUEST_EXCEEDED: "RESOURCE_TOKENS_PER_REQUEST_EXCEEDED";
129
+ readonly TOKENS_PER_SESSION_EXCEEDED: "RESOURCE_TOKENS_PER_SESSION_EXCEEDED";
130
+ readonly DURATION_EXCEEDED: "RESOURCE_DURATION_EXCEEDED";
131
+ readonly COST_EXCEEDED: "RESOURCE_COST_EXCEEDED";
132
+ readonly CONCURRENCY_EXCEEDED: "RESOURCE_CONCURRENCY_EXCEEDED";
133
+ };
134
+ export type ResourceLimitsErrorCode = (typeof ResourceLimitsErrorCodes)[keyof typeof ResourceLimitsErrorCodes];
135
+ export declare function validateResourceLimitsConfig(data: unknown): ResourceLimitsConfig;
136
+ export declare function safeValidateResourceLimitsConfig(data: unknown): {
137
+ success: true;
138
+ data: ResourceLimitsConfig;
139
+ } | {
140
+ success: false;
141
+ error: z.ZodError;
142
+ };
143
+ export declare function createDefaultResourceLimitsConfig(): ResourceLimitsConfig;
144
+ export declare function createResourceUsage(sessionId: string): ResourceUsage;
145
+ export declare function estimateCost(inputTokens: number, outputTokens: number, config: ResourceLimitsConfig): number;
146
+ //# sourceMappingURL=resource-limits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-limits.d.ts","sourceRoot":"","sources":["../../../src/resilience/v1/resource-limits.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,0BAA0B;IACrC,iCAAiC;;IAGjC,iCAAiC;;IAGjC,2CAA2C;;IAG3C,0CAA0C;;IAG1C,kCAAkC;;IAGlC,gDAAgD;;IAGhD,iDAAiD;;;;;;;;;;;;;;;;;;EAEjD,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAM9E,eAAO,MAAM,mBAAmB;IAC9B,yBAAyB;;IAGzB,8BAA8B;;IAG9B,+BAA+B;;IAG/B,0BAA0B;;IAG1B,2BAA2B;;IAG3B,gCAAgC;;IAGhC,kCAAkC;;IAGlC,8BAA8B;;IAG9B,6BAA6B;;;;;;;;;;;;;;;;;;;;;;EAE7B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAMhE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkBpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAM5E,eAAO,MAAM,yBAAyB;IACpC,6BAA6B;;IAG7B,8BAA8B;;IAG9B,+CAA+C;;;;;;;;;;EAE/C,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAM5E,eAAO,MAAM,wBAAwB;;;;;;CAM3B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAM3E,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,OAAO,GAAG,oBAAoB,CAEhF;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,OAAO,GACZ;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,oBAAoB,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAA;CAAE,CAIvF;AAMD,wBAAgB,iCAAiC,IAAI,oBAAoB,CAExE;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAWpE;AAMD,wBAAgB,YAAY,CAC1B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,oBAAoB,GAC3B,MAAM,CAIR"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Resource Limits Contract
3
+ *
4
+ * Enforces limits on tokens, time, cost, and concurrency.
5
+ */
6
+ import { z } from 'zod';
7
+ // ============================================================================
8
+ // Configuration
9
+ // ============================================================================
10
+ export const ResourceLimitsConfigSchema = z.object({
11
+ /** Maximum tokens per request */
12
+ maxTokensPerRequest: z.number().int().min(100).max(1000000).default(100000),
13
+ /** Maximum tokens per session */
14
+ maxTokensPerSession: z.number().int().min(1000).max(10000000).default(1000000),
15
+ /** Maximum duration per operation in ms */
16
+ maxDurationMs: z.number().int().min(1000).max(3600000).default(300000), // 5 min
17
+ /** Maximum cost per session in dollars */
18
+ maxCostPerSession: z.number().min(0.01).max(1000).default(10),
19
+ /** Maximum concurrent requests */
20
+ maxConcurrentRequests: z.number().int().min(1).max(100).default(5),
21
+ /** Cost per 1K input tokens (for estimation) */
22
+ costPer1kInputTokens: z.number().min(0).default(0.003),
23
+ /** Cost per 1K output tokens (for estimation) */
24
+ costPer1kOutputTokens: z.number().min(0).default(0.015),
25
+ });
26
+ // ============================================================================
27
+ // Usage Tracking
28
+ // ============================================================================
29
+ export const ResourceUsageSchema = z.object({
30
+ /** Session identifier */
31
+ sessionId: z.string(),
32
+ /** Total input tokens used */
33
+ inputTokens: z.number().int().min(0),
34
+ /** Total output tokens used */
35
+ outputTokens: z.number().int().min(0),
36
+ /** Total requests made */
37
+ requestCount: z.number().int().min(0),
38
+ /** Total duration in ms */
39
+ totalDurationMs: z.number().int().min(0),
40
+ /** Estimated cost in dollars */
41
+ estimatedCost: z.number().min(0),
42
+ /** Current concurrent requests */
43
+ concurrentRequests: z.number().int().min(0),
44
+ /** First request timestamp */
45
+ startedAt: z.string().datetime(),
46
+ /** Last request timestamp */
47
+ lastRequestAt: z.string().datetime().optional(),
48
+ });
49
+ // ============================================================================
50
+ // Check Result
51
+ // ============================================================================
52
+ export const ResourceCheckResultSchema = z.discriminatedUnion('allowed', [
53
+ z.object({
54
+ allowed: z.literal(true),
55
+ }),
56
+ z.object({
57
+ allowed: z.literal(false),
58
+ reason: z.string(),
59
+ limitType: z.enum([
60
+ 'tokens-per-request',
61
+ 'tokens-per-session',
62
+ 'duration',
63
+ 'cost',
64
+ 'concurrency',
65
+ ]),
66
+ current: z.number(),
67
+ max: z.number(),
68
+ retryAfterMs: z.number().int().min(0).optional(),
69
+ }),
70
+ ]);
71
+ // ============================================================================
72
+ // Request Info (for checking before request)
73
+ // ============================================================================
74
+ export const ResourceRequestInfoSchema = z.object({
75
+ /** Estimated input tokens */
76
+ estimatedInputTokens: z.number().int().min(0).optional(),
77
+ /** Estimated output tokens */
78
+ estimatedOutputTokens: z.number().int().min(0).optional(),
79
+ /** Whether this is a new concurrent request */
80
+ isConcurrent: z.boolean().default(false),
81
+ });
82
+ // ============================================================================
83
+ // Error Codes
84
+ // ============================================================================
85
+ export const ResourceLimitsErrorCodes = {
86
+ TOKENS_PER_REQUEST_EXCEEDED: 'RESOURCE_TOKENS_PER_REQUEST_EXCEEDED',
87
+ TOKENS_PER_SESSION_EXCEEDED: 'RESOURCE_TOKENS_PER_SESSION_EXCEEDED',
88
+ DURATION_EXCEEDED: 'RESOURCE_DURATION_EXCEEDED',
89
+ COST_EXCEEDED: 'RESOURCE_COST_EXCEEDED',
90
+ CONCURRENCY_EXCEEDED: 'RESOURCE_CONCURRENCY_EXCEEDED',
91
+ };
92
+ // ============================================================================
93
+ // Validation Functions
94
+ // ============================================================================
95
+ export function validateResourceLimitsConfig(data) {
96
+ return ResourceLimitsConfigSchema.parse(data);
97
+ }
98
+ export function safeValidateResourceLimitsConfig(data) {
99
+ const result = ResourceLimitsConfigSchema.safeParse(data);
100
+ if (result.success)
101
+ return { success: true, data: result.data };
102
+ return { success: false, error: result.error };
103
+ }
104
+ // ============================================================================
105
+ // Factory Functions
106
+ // ============================================================================
107
+ export function createDefaultResourceLimitsConfig() {
108
+ return ResourceLimitsConfigSchema.parse({});
109
+ }
110
+ export function createResourceUsage(sessionId) {
111
+ return {
112
+ sessionId,
113
+ inputTokens: 0,
114
+ outputTokens: 0,
115
+ requestCount: 0,
116
+ totalDurationMs: 0,
117
+ estimatedCost: 0,
118
+ concurrentRequests: 0,
119
+ startedAt: new Date().toISOString(),
120
+ };
121
+ }
122
+ // ============================================================================
123
+ // Utility Functions
124
+ // ============================================================================
125
+ export function estimateCost(inputTokens, outputTokens, config) {
126
+ const inputCost = (inputTokens / 1000) * config.costPer1kInputTokens;
127
+ const outputCost = (outputTokens / 1000) * config.costPer1kOutputTokens;
128
+ return Math.round((inputCost + outputCost) * 10000) / 10000; // Round to 4 decimals
129
+ }
130
+ //# sourceMappingURL=resource-limits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-limits.js","sourceRoot":"","sources":["../../../src/resilience/v1/resource-limits.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Review Contracts v1
3
+ *
4
+ * AI-powered code review with focused analysis modes.
5
+ */
6
+ export { ReviewFocusSchema, type ReviewFocus, ReviewRequestSchema, ReviewCommentSeveritySchema, ReviewCommentSchema, ReviewSummarySchema, ReviewResultSchema, type ReviewRequest, type ReviewCommentSeverity, type ReviewComment, type ReviewSummary, type ReviewResult, SarifRuleSchema, SarifLocationSchema, SarifResultSchema, SarifOutputSchema, type SarifRule, type SarifLocation, type SarifResult, type SarifOutput, ReviewErrorCode, validateReviewRequest, safeValidateReviewRequest, validateReviewResult, safeValidateReviewResult, validateReviewComment, validateSarifOutput, calculateHealthScore, SEVERITY_ORDER, compareCommentsBySeverity, sortCommentsBySeverity, createEmptyReviewSummary, createReviewSummary, } from './schema.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/review/v1/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEL,iBAAiB,EACjB,KAAK,WAAW,EAEhB,mBAAmB,EACnB,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAEhB,eAAe,EAEf,qBAAqB,EACrB,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,mBAAmB,EAEnB,oBAAoB,EAEpB,cAAc,EACd,yBAAyB,EACzB,sBAAsB,EAEtB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Review Contracts v1
3
+ *
4
+ * AI-powered code review with focused analysis modes.
5
+ */
6
+ export {
7
+ // Focus Modes
8
+ ReviewFocusSchema,
9
+ // Request/Response
10
+ ReviewRequestSchema, ReviewCommentSeveritySchema, ReviewCommentSchema, ReviewSummarySchema, ReviewResultSchema,
11
+ // SARIF Output
12
+ SarifRuleSchema, SarifLocationSchema, SarifResultSchema, SarifOutputSchema,
13
+ // Error Codes
14
+ ReviewErrorCode,
15
+ // Validation
16
+ validateReviewRequest, safeValidateReviewRequest, validateReviewResult, safeValidateReviewResult, validateReviewComment, validateSarifOutput,
17
+ // Health Score (INV-REV-OUT-002)
18
+ calculateHealthScore,
19
+ // Severity Ordering (INV-REV-OUT-001)
20
+ SEVERITY_ORDER, compareCommentsBySeverity, sortCommentsBySeverity,
21
+ // Factory Functions
22
+ createEmptyReviewSummary, createReviewSummary, } from './schema.js';
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/review/v1/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO;AACL,cAAc;AACd,iBAAiB;AAEjB,mBAAmB;AACnB,mBAAmB,EACnB,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB;AAMlB,eAAe;AACf,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB;AAKjB,cAAc;AACd,eAAe;AACf,aAAa;AACb,qBAAqB,EACrB,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,mBAAmB;AACnB,iCAAiC;AACjC,oBAAoB;AACpB,sCAAsC;AACtC,cAAc,EACd,yBAAyB,EACzB,sBAAsB;AACtB,oBAAoB;AACpB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,aAAa,CAAC"}