@evermore.work/shared 2026.509.0-canary.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 (373) hide show
  1. package/dist/adapter-type.d.ts +4 -0
  2. package/dist/adapter-type.d.ts.map +1 -0
  3. package/dist/adapter-type.js +14 -0
  4. package/dist/adapter-type.js.map +1 -0
  5. package/dist/adapter-types.test.d.ts +2 -0
  6. package/dist/adapter-types.test.d.ts.map +1 -0
  7. package/dist/adapter-types.test.js +46 -0
  8. package/dist/adapter-types.test.js.map +1 -0
  9. package/dist/agent-url-key.d.ts +4 -0
  10. package/dist/agent-url-key.d.ts.map +1 -0
  11. package/dist/agent-url-key.js +22 -0
  12. package/dist/agent-url-key.js.map +1 -0
  13. package/dist/api.d.ts +23 -0
  14. package/dist/api.d.ts.map +1 -0
  15. package/dist/api.js +23 -0
  16. package/dist/api.js.map +1 -0
  17. package/dist/config-schema.d.ts +725 -0
  18. package/dist/config-schema.d.ts.map +1 -0
  19. package/dist/config-schema.js +160 -0
  20. package/dist/config-schema.js.map +1 -0
  21. package/dist/constants.d.ts +323 -0
  22. package/dist/constants.d.ts.map +1 -0
  23. package/dist/constants.js +761 -0
  24. package/dist/constants.js.map +1 -0
  25. package/dist/environment-support.d.ts +37 -0
  26. package/dist/environment-support.d.ts.map +1 -0
  27. package/dist/environment-support.js +92 -0
  28. package/dist/environment-support.js.map +1 -0
  29. package/dist/environment-support.test.d.ts +2 -0
  30. package/dist/environment-support.test.d.ts.map +1 -0
  31. package/dist/environment-support.test.js +11 -0
  32. package/dist/environment-support.test.js.map +1 -0
  33. package/dist/execution-workspace-guards.d.ts +6 -0
  34. package/dist/execution-workspace-guards.d.ts.map +1 -0
  35. package/dist/execution-workspace-guards.js +12 -0
  36. package/dist/execution-workspace-guards.js.map +1 -0
  37. package/dist/index.d.ts +23 -0
  38. package/dist/index.d.ts.map +1 -0
  39. package/dist/index.js +21 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/issue-references.d.ts +16 -0
  42. package/dist/issue-references.d.ts.map +1 -0
  43. package/dist/issue-references.js +160 -0
  44. package/dist/issue-references.js.map +1 -0
  45. package/dist/issue-references.test.d.ts +2 -0
  46. package/dist/issue-references.test.d.ts.map +1 -0
  47. package/dist/issue-references.test.js +56 -0
  48. package/dist/issue-references.test.js.map +1 -0
  49. package/dist/issue-thread-interactions.test.d.ts +2 -0
  50. package/dist/issue-thread-interactions.test.d.ts.map +1 -0
  51. package/dist/issue-thread-interactions.test.js +118 -0
  52. package/dist/issue-thread-interactions.test.js.map +1 -0
  53. package/dist/network-bind.d.ts +27 -0
  54. package/dist/network-bind.d.ts.map +1 -0
  55. package/dist/network-bind.js +75 -0
  56. package/dist/network-bind.js.map +1 -0
  57. package/dist/project-mentions.d.ts +32 -0
  58. package/dist/project-mentions.d.ts.map +1 -0
  59. package/dist/project-mentions.js +210 -0
  60. package/dist/project-mentions.js.map +1 -0
  61. package/dist/project-mentions.test.d.ts +2 -0
  62. package/dist/project-mentions.test.d.ts.map +1 -0
  63. package/dist/project-mentions.test.js +36 -0
  64. package/dist/project-mentions.test.js.map +1 -0
  65. package/dist/project-url-key.d.ts +5 -0
  66. package/dist/project-url-key.d.ts.map +1 -0
  67. package/dist/project-url-key.js +39 -0
  68. package/dist/project-url-key.js.map +1 -0
  69. package/dist/routine-variables.d.ts +21 -0
  70. package/dist/routine-variables.d.ts.map +1 -0
  71. package/dist/routine-variables.js +91 -0
  72. package/dist/routine-variables.js.map +1 -0
  73. package/dist/routine-variables.test.d.ts +2 -0
  74. package/dist/routine-variables.test.d.ts.map +1 -0
  75. package/dist/routine-variables.test.js +58 -0
  76. package/dist/routine-variables.test.js.map +1 -0
  77. package/dist/telemetry/client.d.ts +18 -0
  78. package/dist/telemetry/client.d.ts.map +1 -0
  79. package/dist/telemetry/client.js +105 -0
  80. package/dist/telemetry/client.js.map +1 -0
  81. package/dist/telemetry/config.d.ts +5 -0
  82. package/dist/telemetry/config.d.ts.map +1 -0
  83. package/dist/telemetry/config.js +21 -0
  84. package/dist/telemetry/config.js.map +1 -0
  85. package/dist/telemetry/events.d.ts +41 -0
  86. package/dist/telemetry/events.d.ts.map +1 -0
  87. package/dist/telemetry/events.js +59 -0
  88. package/dist/telemetry/events.js.map +1 -0
  89. package/dist/telemetry/index.d.ts +6 -0
  90. package/dist/telemetry/index.d.ts.map +1 -0
  91. package/dist/telemetry/index.js +5 -0
  92. package/dist/telemetry/index.js.map +1 -0
  93. package/dist/telemetry/state.d.ts +3 -0
  94. package/dist/telemetry/state.d.ts.map +1 -0
  95. package/dist/telemetry/state.js +28 -0
  96. package/dist/telemetry/state.js.map +1 -0
  97. package/dist/telemetry/types.d.ts +28 -0
  98. package/dist/telemetry/types.d.ts.map +1 -0
  99. package/dist/telemetry/types.js +2 -0
  100. package/dist/telemetry/types.js.map +1 -0
  101. package/dist/types/access.d.ts +142 -0
  102. package/dist/types/access.d.ts.map +1 -0
  103. package/dist/types/access.js +2 -0
  104. package/dist/types/access.js.map +1 -0
  105. package/dist/types/activity.d.ts +14 -0
  106. package/dist/types/activity.d.ts.map +1 -0
  107. package/dist/types/activity.js +2 -0
  108. package/dist/types/activity.js.map +1 -0
  109. package/dist/types/adapter-skills.d.ts +31 -0
  110. package/dist/types/adapter-skills.d.ts.map +1 -0
  111. package/dist/types/adapter-skills.js +2 -0
  112. package/dist/types/adapter-skills.js.map +1 -0
  113. package/dist/types/agent.d.ts +117 -0
  114. package/dist/types/agent.d.ts.map +1 -0
  115. package/dist/types/agent.js +2 -0
  116. package/dist/types/agent.js.map +1 -0
  117. package/dist/types/approval.d.ts +26 -0
  118. package/dist/types/approval.d.ts.map +1 -0
  119. package/dist/types/approval.js +2 -0
  120. package/dist/types/approval.js.map +1 -0
  121. package/dist/types/asset.d.ts +16 -0
  122. package/dist/types/asset.d.ts.map +1 -0
  123. package/dist/types/asset.js +2 -0
  124. package/dist/types/asset.js.map +1 -0
  125. package/dist/types/budget.d.ts +86 -0
  126. package/dist/types/budget.d.ts.map +1 -0
  127. package/dist/types/budget.js +2 -0
  128. package/dist/types/budget.js.map +1 -0
  129. package/dist/types/company-portability.d.ts +298 -0
  130. package/dist/types/company-portability.d.ts.map +1 -0
  131. package/dist/types/company-portability.js +2 -0
  132. package/dist/types/company-portability.js.map +1 -0
  133. package/dist/types/company-skill.d.ts +140 -0
  134. package/dist/types/company-skill.d.ts.map +1 -0
  135. package/dist/types/company-skill.js +2 -0
  136. package/dist/types/company-skill.js.map +1 -0
  137. package/dist/types/company.d.ts +25 -0
  138. package/dist/types/company.d.ts.map +1 -0
  139. package/dist/types/company.js +2 -0
  140. package/dist/types/company.js.map +1 -0
  141. package/dist/types/cost.d.ts +120 -0
  142. package/dist/types/cost.d.ts.map +1 -0
  143. package/dist/types/cost.js +2 -0
  144. package/dist/types/cost.js.map +1 -0
  145. package/dist/types/dashboard.d.ts +36 -0
  146. package/dist/types/dashboard.d.ts.map +1 -0
  147. package/dist/types/dashboard.js +2 -0
  148. package/dist/types/dashboard.js.map +1 -0
  149. package/dist/types/environment.d.ts +73 -0
  150. package/dist/types/environment.d.ts.map +1 -0
  151. package/dist/types/environment.js +2 -0
  152. package/dist/types/environment.js.map +1 -0
  153. package/dist/types/feedback.d.ts +95 -0
  154. package/dist/types/feedback.d.ts.map +1 -0
  155. package/dist/types/feedback.js +7 -0
  156. package/dist/types/feedback.js.map +1 -0
  157. package/dist/types/finance.d.ts +57 -0
  158. package/dist/types/finance.d.ts.map +1 -0
  159. package/dist/types/finance.js +2 -0
  160. package/dist/types/finance.js.map +1 -0
  161. package/dist/types/goal.d.ts +14 -0
  162. package/dist/types/goal.d.ts.map +1 -0
  163. package/dist/types/goal.js +2 -0
  164. package/dist/types/goal.js.map +1 -0
  165. package/dist/types/heartbeat.d.ts +158 -0
  166. package/dist/types/heartbeat.d.ts.map +1 -0
  167. package/dist/types/heartbeat.js +2 -0
  168. package/dist/types/heartbeat.js.map +1 -0
  169. package/dist/types/inbox-dismissal.d.ts +10 -0
  170. package/dist/types/inbox-dismissal.d.ts.map +1 -0
  171. package/dist/types/inbox-dismissal.js +2 -0
  172. package/dist/types/inbox-dismissal.js.map +1 -0
  173. package/dist/types/index.d.ts +37 -0
  174. package/dist/types/index.d.ts.map +1 -0
  175. package/dist/types/index.js +3 -0
  176. package/dist/types/index.js.map +1 -0
  177. package/dist/types/instance.d.ts +63 -0
  178. package/dist/types/instance.d.ts.map +1 -0
  179. package/dist/types/instance.js +12 -0
  180. package/dist/types/instance.js.map +1 -0
  181. package/dist/types/issue-tree-control.d.ts +102 -0
  182. package/dist/types/issue-tree-control.d.ts.map +1 -0
  183. package/dist/types/issue-tree-control.js +2 -0
  184. package/dist/types/issue-tree-control.js.map +1 -0
  185. package/dist/types/issue.d.ts +527 -0
  186. package/dist/types/issue.d.ts.map +1 -0
  187. package/dist/types/issue.js +2 -0
  188. package/dist/types/issue.js.map +1 -0
  189. package/dist/types/live.d.ts +9 -0
  190. package/dist/types/live.d.ts.map +1 -0
  191. package/dist/types/live.js +2 -0
  192. package/dist/types/live.js.map +1 -0
  193. package/dist/types/plugin.d.ts +686 -0
  194. package/dist/types/plugin.d.ts.map +1 -0
  195. package/dist/types/plugin.js +2 -0
  196. package/dist/types/plugin.js.map +1 -0
  197. package/dist/types/project.d.ts +82 -0
  198. package/dist/types/project.d.ts.map +1 -0
  199. package/dist/types/project.js +2 -0
  200. package/dist/types/project.js.map +1 -0
  201. package/dist/types/quota.d.ts +26 -0
  202. package/dist/types/quota.d.ts.map +1 -0
  203. package/dist/types/quota.js +2 -0
  204. package/dist/types/quota.js.map +1 -0
  205. package/dist/types/routine.d.ts +185 -0
  206. package/dist/types/routine.d.ts.map +1 -0
  207. package/dist/types/routine.js +2 -0
  208. package/dist/types/routine.js.map +1 -0
  209. package/dist/types/search.d.ts +50 -0
  210. package/dist/types/search.d.ts.map +1 -0
  211. package/dist/types/search.js +2 -0
  212. package/dist/types/search.js.map +1 -0
  213. package/dist/types/secrets.d.ts +32 -0
  214. package/dist/types/secrets.d.ts.map +1 -0
  215. package/dist/types/secrets.js +2 -0
  216. package/dist/types/secrets.js.map +1 -0
  217. package/dist/types/sidebar-badges.d.ts +7 -0
  218. package/dist/types/sidebar-badges.d.ts.map +1 -0
  219. package/dist/types/sidebar-badges.js +2 -0
  220. package/dist/types/sidebar-badges.js.map +1 -0
  221. package/dist/types/sidebar-preferences.d.ts +5 -0
  222. package/dist/types/sidebar-preferences.d.ts.map +1 -0
  223. package/dist/types/sidebar-preferences.js +2 -0
  224. package/dist/types/sidebar-preferences.js.map +1 -0
  225. package/dist/types/user-profile.d.ts +81 -0
  226. package/dist/types/user-profile.d.ts.map +1 -0
  227. package/dist/types/user-profile.js +2 -0
  228. package/dist/types/user-profile.js.map +1 -0
  229. package/dist/types/work-product.d.ts +27 -0
  230. package/dist/types/work-product.d.ts.map +1 -0
  231. package/dist/types/work-product.js +2 -0
  232. package/dist/types/work-product.js.map +1 -0
  233. package/dist/types/workspace-operation.d.ts +26 -0
  234. package/dist/types/workspace-operation.d.ts.map +1 -0
  235. package/dist/types/workspace-operation.js +2 -0
  236. package/dist/types/workspace-operation.js.map +1 -0
  237. package/dist/types/workspace-runtime.d.ts +252 -0
  238. package/dist/types/workspace-runtime.d.ts.map +1 -0
  239. package/dist/types/workspace-runtime.js +2 -0
  240. package/dist/types/workspace-runtime.js.map +1 -0
  241. package/dist/validators/access.d.ts +333 -0
  242. package/dist/validators/access.d.ts.map +1 -0
  243. package/dist/validators/access.js +132 -0
  244. package/dist/validators/access.js.map +1 -0
  245. package/dist/validators/adapter-skills.d.ts +156 -0
  246. package/dist/validators/adapter-skills.d.ts.map +1 -0
  247. package/dist/validators/adapter-skills.js +48 -0
  248. package/dist/validators/adapter-skills.js.map +1 -0
  249. package/dist/validators/agent.d.ts +841 -0
  250. package/dist/validators/agent.d.ts.map +1 -0
  251. package/dist/validators/agent.js +115 -0
  252. package/dist/validators/agent.js.map +1 -0
  253. package/dist/validators/approval.d.ts +51 -0
  254. package/dist/validators/approval.d.ts.map +1 -0
  255. package/dist/validators/approval.js +22 -0
  256. package/dist/validators/approval.js.map +1 -0
  257. package/dist/validators/approval.test.d.ts +2 -0
  258. package/dist/validators/approval.test.d.ts.map +1 -0
  259. package/dist/validators/approval.test.js +25 -0
  260. package/dist/validators/approval.test.js.map +1 -0
  261. package/dist/validators/asset.d.ts +10 -0
  262. package/dist/validators/asset.d.ts.map +1 -0
  263. package/dist/validators/asset.js +11 -0
  264. package/dist/validators/asset.js.map +1 -0
  265. package/dist/validators/budget.d.ts +56 -0
  266. package/dist/validators/budget.d.ts.map +1 -0
  267. package/dist/validators/budget.js +27 -0
  268. package/dist/validators/budget.js.map +1 -0
  269. package/dist/validators/company-portability.d.ts +3453 -0
  270. package/dist/validators/company-portability.d.ts.map +1 -0
  271. package/dist/validators/company-portability.js +231 -0
  272. package/dist/validators/company-portability.js.map +1 -0
  273. package/dist/validators/company-skill.d.ts +797 -0
  274. package/dist/validators/company-skill.d.ts.map +1 -0
  275. package/dist/validators/company-skill.js +116 -0
  276. package/dist/validators/company-skill.js.map +1 -0
  277. package/dist/validators/company.d.ts +91 -0
  278. package/dist/validators/company.d.ts.map +1 -0
  279. package/dist/validators/company.js +43 -0
  280. package/dist/validators/company.js.map +1 -0
  281. package/dist/validators/cost.d.ts +92 -0
  282. package/dist/validators/cost.d.ts.map +1 -0
  283. package/dist/validators/cost.js +26 -0
  284. package/dist/validators/cost.js.map +1 -0
  285. package/dist/validators/environment.d.ts +72 -0
  286. package/dist/validators/environment.d.ts.map +1 -0
  287. package/dist/validators/environment.js +31 -0
  288. package/dist/validators/environment.js.map +1 -0
  289. package/dist/validators/execution-workspace.d.ts +586 -0
  290. package/dist/validators/execution-workspace.d.ts.map +1 -0
  291. package/dist/validators/execution-workspace.js +120 -0
  292. package/dist/validators/execution-workspace.js.map +1 -0
  293. package/dist/validators/feedback.d.ts +26 -0
  294. package/dist/validators/feedback.d.ts.map +1 -0
  295. package/dist/validators/feedback.js +14 -0
  296. package/dist/validators/feedback.js.map +1 -0
  297. package/dist/validators/finance.d.ts +129 -0
  298. package/dist/validators/finance.d.ts.map +1 -0
  299. package/dist/validators/finance.js +32 -0
  300. package/dist/validators/finance.js.map +1 -0
  301. package/dist/validators/goal.d.ts +48 -0
  302. package/dist/validators/goal.d.ts.map +1 -0
  303. package/dist/validators/goal.js +12 -0
  304. package/dist/validators/goal.js.map +1 -0
  305. package/dist/validators/index.d.ts +26 -0
  306. package/dist/validators/index.d.ts.map +1 -0
  307. package/dist/validators/index.js +26 -0
  308. package/dist/validators/index.js.map +1 -0
  309. package/dist/validators/instance.d.ts +137 -0
  310. package/dist/validators/instance.d.ts.map +1 -0
  311. package/dist/validators/instance.js +41 -0
  312. package/dist/validators/instance.js.map +1 -0
  313. package/dist/validators/issue-tree-control.d.ts +100 -0
  314. package/dist/validators/issue-tree-control.d.ts.map +1 -0
  315. package/dist/validators/issue-tree-control.js +31 -0
  316. package/dist/validators/issue-tree-control.js.map +1 -0
  317. package/dist/validators/issue.d.ts +4292 -0
  318. package/dist/validators/issue.d.ts.map +1 -0
  319. package/dist/validators/issue.js +506 -0
  320. package/dist/validators/issue.js.map +1 -0
  321. package/dist/validators/issue.test.d.ts +2 -0
  322. package/dist/validators/issue.test.d.ts.map +1 -0
  323. package/dist/validators/issue.test.js +203 -0
  324. package/dist/validators/issue.test.js.map +1 -0
  325. package/dist/validators/plugin.d.ts +2426 -0
  326. package/dist/validators/plugin.d.ts.map +1 -0
  327. package/dist/validators/plugin.js +837 -0
  328. package/dist/validators/plugin.js.map +1 -0
  329. package/dist/validators/plugin.test.d.ts +2 -0
  330. package/dist/validators/plugin.test.d.ts.map +1 -0
  331. package/dist/validators/plugin.test.js +64 -0
  332. package/dist/validators/plugin.test.js.map +1 -0
  333. package/dist/validators/project.d.ts +784 -0
  334. package/dist/validators/project.d.ts.map +1 -0
  335. package/dist/validators/project.js +102 -0
  336. package/dist/validators/project.js.map +1 -0
  337. package/dist/validators/routine.d.ts +920 -0
  338. package/dist/validators/routine.d.ts.map +1 -0
  339. package/dist/validators/routine.js +125 -0
  340. package/dist/validators/routine.js.map +1 -0
  341. package/dist/validators/routine.test.d.ts +2 -0
  342. package/dist/validators/routine.test.d.ts.map +1 -0
  343. package/dist/validators/routine.test.js +79 -0
  344. package/dist/validators/routine.test.js.map +1 -0
  345. package/dist/validators/search.d.ts +24 -0
  346. package/dist/validators/search.d.ts.map +1 -0
  347. package/dist/validators/search.js +33 -0
  348. package/dist/validators/search.js.map +1 -0
  349. package/dist/validators/secret.d.ts +114 -0
  350. package/dist/validators/secret.d.ts.map +1 -0
  351. package/dist/validators/secret.js +35 -0
  352. package/dist/validators/secret.js.map +1 -0
  353. package/dist/validators/sidebar-preferences.d.ts +20 -0
  354. package/dist/validators/sidebar-preferences.d.ts.map +1 -0
  355. package/dist/validators/sidebar-preferences.js +10 -0
  356. package/dist/validators/sidebar-preferences.js.map +1 -0
  357. package/dist/validators/text.d.ts +4 -0
  358. package/dist/validators/text.d.ts.map +1 -0
  359. package/dist/validators/text.js +9 -0
  360. package/dist/validators/text.js.map +1 -0
  361. package/dist/validators/work-product.d.ts +105 -0
  362. package/dist/validators/work-product.d.ts.map +1 -0
  363. package/dist/validators/work-product.js +46 -0
  364. package/dist/validators/work-product.js.map +1 -0
  365. package/dist/workspace-commands.d.ts +7 -0
  366. package/dist/workspace-commands.d.ts.map +1 -0
  367. package/dist/workspace-commands.js +150 -0
  368. package/dist/workspace-commands.js.map +1 -0
  369. package/dist/workspace-commands.test.d.ts +2 -0
  370. package/dist/workspace-commands.test.d.ts.map +1 -0
  371. package/dist/workspace-commands.test.js +65 -0
  372. package/dist/workspace-commands.test.js.map +1 -0
  373. package/package.json +47 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routine.d.ts","sourceRoot":"","sources":["../../src/validators/routine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BhC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcxC,CAAC;AAEZ,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUxC,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIjC,CAAC;AAEZ,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAkC,CAAC;AAC7E,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AACxF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAOpF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAcrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;EAOrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,gCAAgC,gDAAe,CAAC;AAC7D,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC"}
@@ -0,0 +1,125 @@
1
+ import { z } from "zod";
2
+ import { ISSUE_PRIORITIES, ROUTINE_CATCH_UP_POLICIES, ROUTINE_CONCURRENCY_POLICIES, ROUTINE_STATUSES, ROUTINE_TRIGGER_KINDS, ROUTINE_TRIGGER_SIGNING_MODES, ROUTINE_VARIABLE_TYPES, } from "../constants.js";
3
+ import { ISSUE_EXECUTION_WORKSPACE_PREFERENCES, issueExecutionWorkspaceSettingsSchema, } from "./issue.js";
4
+ const routineVariableValueSchema = z.union([z.string(), z.number().finite(), z.boolean()]);
5
+ export const routineVariableSchema = z.object({
6
+ name: z.string().trim().regex(/^[A-Za-z][A-Za-z0-9_]*$/),
7
+ label: z.string().trim().max(120).optional().nullable(),
8
+ type: z.enum(ROUTINE_VARIABLE_TYPES).optional().default("text"),
9
+ defaultValue: routineVariableValueSchema.optional().nullable(),
10
+ required: z.boolean().optional().default(true),
11
+ options: z.array(z.string().trim().min(1).max(120)).max(50).optional().default([]),
12
+ }).superRefine((value, ctx) => {
13
+ if (value.type === "select" && value.options.length === 0) {
14
+ ctx.addIssue({
15
+ code: z.ZodIssueCode.custom,
16
+ path: ["options"],
17
+ message: "Select variables require at least one option",
18
+ });
19
+ }
20
+ if (value.type !== "select" && value.options.length > 0) {
21
+ ctx.addIssue({
22
+ code: z.ZodIssueCode.custom,
23
+ path: ["options"],
24
+ message: "Only select variables can define options",
25
+ });
26
+ }
27
+ if (value.type === "select" && value.defaultValue != null) {
28
+ if (typeof value.defaultValue !== "string" || !value.options.includes(value.defaultValue)) {
29
+ ctx.addIssue({
30
+ code: z.ZodIssueCode.custom,
31
+ path: ["defaultValue"],
32
+ message: "Select variable defaults must match one of the allowed options",
33
+ });
34
+ }
35
+ }
36
+ });
37
+ export const createRoutineSchema = z.object({
38
+ projectId: z.string().uuid().optional().nullable(),
39
+ goalId: z.string().uuid().optional().nullable(),
40
+ parentIssueId: z.string().uuid().optional().nullable(),
41
+ title: z.string().trim().min(1).max(200),
42
+ description: z.string().optional().nullable(),
43
+ assigneeAgentId: z.string().uuid().optional().nullable(),
44
+ priority: z.enum(ISSUE_PRIORITIES).optional().default("medium"),
45
+ status: z.enum(ROUTINE_STATUSES).optional().default("active"),
46
+ concurrencyPolicy: z.enum(ROUTINE_CONCURRENCY_POLICIES).optional().default("coalesce_if_active"),
47
+ catchUpPolicy: z.enum(ROUTINE_CATCH_UP_POLICIES).optional().default("skip_missed"),
48
+ variables: z.array(routineVariableSchema).optional().default([]),
49
+ });
50
+ export const updateRoutineSchema = createRoutineSchema.partial().extend({
51
+ baseRevisionId: z.string().uuid().optional().nullable(),
52
+ });
53
+ export const routineRevisionSnapshotRoutineV1Schema = z.object({
54
+ id: z.string().uuid(),
55
+ companyId: z.string().uuid(),
56
+ projectId: z.string().uuid().nullable(),
57
+ goalId: z.string().uuid().nullable(),
58
+ parentIssueId: z.string().uuid().nullable(),
59
+ title: z.string().trim().min(1).max(200),
60
+ description: z.string().nullable(),
61
+ assigneeAgentId: z.string().uuid().nullable(),
62
+ priority: z.enum(ISSUE_PRIORITIES),
63
+ status: z.enum(ROUTINE_STATUSES),
64
+ concurrencyPolicy: z.enum(ROUTINE_CONCURRENCY_POLICIES),
65
+ catchUpPolicy: z.enum(ROUTINE_CATCH_UP_POLICIES),
66
+ variables: z.array(routineVariableSchema),
67
+ }).strict();
68
+ export const routineRevisionSnapshotTriggerV1Schema = z.object({
69
+ id: z.string().uuid(),
70
+ kind: z.enum(ROUTINE_TRIGGER_KINDS),
71
+ label: z.string().nullable(),
72
+ enabled: z.boolean(),
73
+ cronExpression: z.string().nullable(),
74
+ timezone: z.string().nullable(),
75
+ publicId: z.string().nullable(),
76
+ signingMode: z.enum(ROUTINE_TRIGGER_SIGNING_MODES).nullable(),
77
+ replayWindowSec: z.number().int().min(30).max(86_400).nullable(),
78
+ }).strict();
79
+ export const routineRevisionSnapshotV1Schema = z.object({
80
+ version: z.literal(1),
81
+ routine: routineRevisionSnapshotRoutineV1Schema,
82
+ triggers: z.array(routineRevisionSnapshotTriggerV1Schema),
83
+ }).strict();
84
+ export const routineRevisionSnapshotSchema = routineRevisionSnapshotV1Schema;
85
+ const baseTriggerSchema = z.object({
86
+ label: z.string().trim().max(120).optional().nullable(),
87
+ enabled: z.boolean().optional().default(true),
88
+ });
89
+ export const createRoutineTriggerSchema = z.discriminatedUnion("kind", [
90
+ baseTriggerSchema.extend({
91
+ kind: z.literal("schedule"),
92
+ cronExpression: z.string().trim().min(1),
93
+ timezone: z.string().trim().min(1).default("UTC"),
94
+ }),
95
+ baseTriggerSchema.extend({
96
+ kind: z.literal("webhook"),
97
+ signingMode: z.enum(ROUTINE_TRIGGER_SIGNING_MODES).optional().default("bearer"),
98
+ replayWindowSec: z.number().int().min(30).max(86_400).optional().default(300),
99
+ }),
100
+ baseTriggerSchema.extend({
101
+ kind: z.literal("api"),
102
+ }),
103
+ ]);
104
+ export const updateRoutineTriggerSchema = z.object({
105
+ label: z.string().trim().max(120).optional().nullable(),
106
+ enabled: z.boolean().optional(),
107
+ cronExpression: z.string().trim().min(1).optional().nullable(),
108
+ timezone: z.string().trim().min(1).optional().nullable(),
109
+ signingMode: z.enum(ROUTINE_TRIGGER_SIGNING_MODES).optional().nullable(),
110
+ replayWindowSec: z.number().int().min(30).max(86_400).optional().nullable(),
111
+ });
112
+ export const runRoutineSchema = z.object({
113
+ triggerId: z.string().uuid().optional().nullable(),
114
+ payload: z.record(z.unknown()).optional().nullable(),
115
+ variables: z.record(routineVariableValueSchema).optional().nullable(),
116
+ projectId: z.string().uuid().optional().nullable(),
117
+ assigneeAgentId: z.string().uuid().optional().nullable(),
118
+ idempotencyKey: z.string().trim().max(255).optional().nullable(),
119
+ source: z.enum(["manual", "api"]).optional().default("manual"),
120
+ executionWorkspaceId: z.string().uuid().optional().nullable(),
121
+ executionWorkspacePreference: z.enum(ISSUE_EXECUTION_WORKSPACE_PREFERENCES).optional().nullable(),
122
+ executionWorkspaceSettings: issueExecutionWorkspaceSettingsSchema.optional().nullable(),
123
+ });
124
+ export const rotateRoutineTriggerSecretSchema = z.object({});
125
+ //# sourceMappingURL=routine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routine.js","sourceRoot":"","sources":["../../src/validators/routine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=routine.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routine.test.d.ts","sourceRoot":"","sources":["../../src/validators/routine.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,79 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { routineRevisionSnapshotV1Schema, updateRoutineSchema, } from "./routine.js";
3
+ const routineId = "11111111-1111-4111-8111-111111111111";
4
+ const companyId = "22222222-2222-4222-8222-222222222222";
5
+ const triggerId = "33333333-3333-4333-8333-333333333333";
6
+ const baseRevisionId = "44444444-4444-4444-8444-444444444444";
7
+ describe("routine validators", () => {
8
+ it("accepts versioned routine revision snapshots with safe trigger metadata", () => {
9
+ const parsed = routineRevisionSnapshotV1Schema.parse({
10
+ version: 1,
11
+ routine: {
12
+ id: routineId,
13
+ companyId,
14
+ projectId: null,
15
+ goalId: null,
16
+ parentIssueId: null,
17
+ title: "Daily triage",
18
+ description: null,
19
+ assigneeAgentId: null,
20
+ priority: "medium",
21
+ status: "active",
22
+ concurrencyPolicy: "coalesce_if_active",
23
+ catchUpPolicy: "skip_missed",
24
+ variables: [],
25
+ },
26
+ triggers: [{
27
+ id: triggerId,
28
+ kind: "webhook",
29
+ label: "Inbound",
30
+ enabled: true,
31
+ cronExpression: null,
32
+ timezone: null,
33
+ publicId: "routine_webhook_123",
34
+ signingMode: "bearer",
35
+ replayWindowSec: 300,
36
+ }],
37
+ });
38
+ expect(parsed.triggers[0]?.publicId).toBe("routine_webhook_123");
39
+ });
40
+ it("rejects secret-bearing trigger fields in routine revision snapshots", () => {
41
+ expect(() => routineRevisionSnapshotV1Schema.parse({
42
+ version: 1,
43
+ routine: {
44
+ id: routineId,
45
+ companyId,
46
+ projectId: null,
47
+ goalId: null,
48
+ parentIssueId: null,
49
+ title: "Daily triage",
50
+ description: null,
51
+ assigneeAgentId: null,
52
+ priority: "medium",
53
+ status: "active",
54
+ concurrencyPolicy: "coalesce_if_active",
55
+ catchUpPolicy: "skip_missed",
56
+ variables: [],
57
+ },
58
+ triggers: [{
59
+ id: triggerId,
60
+ kind: "webhook",
61
+ label: "Inbound",
62
+ enabled: true,
63
+ cronExpression: null,
64
+ timezone: null,
65
+ publicId: "routine_webhook_123",
66
+ signingMode: "bearer",
67
+ replayWindowSec: 300,
68
+ secretId: "55555555-5555-4555-8555-555555555555",
69
+ }],
70
+ })).toThrow();
71
+ });
72
+ it("accepts optional base revision ids on routine updates", () => {
73
+ expect(updateRoutineSchema.parse({
74
+ title: "Daily triage",
75
+ baseRevisionId,
76
+ }).baseRevisionId).toBe(baseRevisionId);
77
+ });
78
+ });
79
+ //# sourceMappingURL=routine.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routine.test.js","sourceRoot":"","sources":["../../src/validators/routine.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,SAAS,GAAG,sCAAsC,CAAC;AACzD,MAAM,SAAS,GAAG,sCAAsC,CAAC;AACzD,MAAM,SAAS,GAAG,sCAAsC,CAAC;AACzD,MAAM,cAAc,GAAG,sCAAsC,CAAC;AAE9D,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QACjF,MAAM,MAAM,GAAG,+BAA+B,CAAC,KAAK,CAAC;YACnD,OAAO,EAAE,CAAC;YACV,OAAO,EAAE;gBACP,EAAE,EAAE,SAAS;gBACb,SAAS;gBACT,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,IAAI;gBACZ,aAAa,EAAE,IAAI;gBACnB,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,IAAI;gBACjB,eAAe,EAAE,IAAI;gBACrB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,QAAQ;gBAChB,iBAAiB,EAAE,oBAAoB;gBACvC,aAAa,EAAE,aAAa;gBAC5B,SAAS,EAAE,EAAE;aACd;YACD,QAAQ,EAAE,CAAC;oBACT,EAAE,EAAE,SAAS;oBACb,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,IAAI;oBACb,cAAc,EAAE,IAAI;oBACpB,QAAQ,EAAE,IAAI;oBACd,QAAQ,EAAE,qBAAqB;oBAC/B,WAAW,EAAE,QAAQ;oBACrB,eAAe,EAAE,GAAG;iBACrB,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC,KAAK,CAAC;YACjD,OAAO,EAAE,CAAC;YACV,OAAO,EAAE;gBACP,EAAE,EAAE,SAAS;gBACb,SAAS;gBACT,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,IAAI;gBACZ,aAAa,EAAE,IAAI;gBACnB,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,IAAI;gBACjB,eAAe,EAAE,IAAI;gBACrB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,QAAQ;gBAChB,iBAAiB,EAAE,oBAAoB;gBACvC,aAAa,EAAE,aAAa;gBAC5B,SAAS,EAAE,EAAE;aACd;YACD,QAAQ,EAAE,CAAC;oBACT,EAAE,EAAE,SAAS;oBACb,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,IAAI;oBACb,cAAc,EAAE,IAAI;oBACpB,QAAQ,EAAE,IAAI;oBACd,QAAQ,EAAE,qBAAqB;oBAC/B,WAAW,EAAE,QAAQ;oBACrB,eAAe,EAAE,GAAG;oBACpB,QAAQ,EAAE,sCAAsC;iBACjD,CAAC;SACH,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC;YAC/B,KAAK,EAAE,cAAc;YACrB,cAAc;SACf,CAAC,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { z } from "zod";
2
+ export declare const COMPANY_SEARCH_MAX_QUERY_LENGTH = 200;
3
+ export declare const COMPANY_SEARCH_MAX_TOKENS = 8;
4
+ export declare const COMPANY_SEARCH_DEFAULT_LIMIT = 20;
5
+ export declare const COMPANY_SEARCH_MAX_LIMIT = 50;
6
+ export declare const COMPANY_SEARCH_MAX_OFFSET = 200;
7
+ export declare const companySearchQuerySchema: z.ZodObject<{
8
+ q: z.ZodEffects<z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodString>>, string, unknown>, string, unknown>;
9
+ scope: z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodCatch<z.ZodEnum<["all", "issues", "comments", "documents", "agents", "projects"]>>, "projects" | "agents" | "issues" | "all" | "comments" | "documents", unknown>>>;
10
+ limit: z.ZodEffects<z.ZodOptional<z.ZodUnknown>, number, unknown>;
11
+ offset: z.ZodEffects<z.ZodOptional<z.ZodUnknown>, number, unknown>;
12
+ }, "strip", z.ZodTypeAny, {
13
+ q: string;
14
+ scope: "projects" | "agents" | "issues" | "all" | "comments" | "documents";
15
+ limit: number;
16
+ offset: number;
17
+ }, {
18
+ q?: unknown;
19
+ scope?: unknown;
20
+ limit?: unknown;
21
+ offset?: unknown;
22
+ }>;
23
+ export type CompanySearchQuery = z.infer<typeof companySearchQuerySchema>;
24
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/validators/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAiB7C,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAUnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { z } from "zod";
2
+ import { COMPANY_SEARCH_SCOPES } from "../types/search.js";
3
+ export const COMPANY_SEARCH_MAX_QUERY_LENGTH = 200;
4
+ export const COMPANY_SEARCH_MAX_TOKENS = 8;
5
+ export const COMPANY_SEARCH_DEFAULT_LIMIT = 20;
6
+ export const COMPANY_SEARCH_MAX_LIMIT = 50;
7
+ export const COMPANY_SEARCH_MAX_OFFSET = 200;
8
+ function firstQueryValue(value) {
9
+ return Array.isArray(value) ? value[0] : value;
10
+ }
11
+ function clampInteger(value, fallback, min, max) {
12
+ const raw = firstQueryValue(value);
13
+ const numeric = typeof raw === "number"
14
+ ? raw
15
+ : typeof raw === "string" && raw.trim().length > 0
16
+ ? Number.parseInt(raw, 10)
17
+ : Number.NaN;
18
+ if (!Number.isFinite(numeric))
19
+ return fallback;
20
+ return Math.min(max, Math.max(min, Math.floor(numeric)));
21
+ }
22
+ export const companySearchQuerySchema = z.object({
23
+ q: z.preprocess(firstQueryValue, z.string().optional().default(""))
24
+ .transform((value) => value.slice(0, COMPANY_SEARCH_MAX_QUERY_LENGTH)),
25
+ scope: z.preprocess(firstQueryValue, z.enum(COMPANY_SEARCH_SCOPES).catch("all")).optional().default("all"),
26
+ limit: z.unknown()
27
+ .optional()
28
+ .transform((value) => clampInteger(value, COMPANY_SEARCH_DEFAULT_LIMIT, 1, COMPANY_SEARCH_MAX_LIMIT)),
29
+ offset: z.unknown()
30
+ .optional()
31
+ .transform((value) => clampInteger(value, 0, 0, COMPANY_SEARCH_MAX_OFFSET)),
32
+ });
33
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/validators/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,CAAC;AACnD,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAC/C,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAE7C,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACjD,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,QAAgB,EAAE,GAAW,EAAE,GAAW;IAC9E,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,OAAO,GAAG,KAAK,QAAQ;QACrC,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YAChD,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC;YAC1B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IACjB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAChE,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;IACxE,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC1G,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;SACf,QAAQ,EAAE;SACV,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,4BAA4B,EAAE,CAAC,EAAE,wBAAwB,CAAC,CAAC;IACvG,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;SAChB,QAAQ,EAAE;SACV,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,yBAAyB,CAAC,CAAC;CAC9E,CAAC,CAAC"}
@@ -0,0 +1,114 @@
1
+ import { z } from "zod";
2
+ export declare const envBindingPlainSchema: z.ZodObject<{
3
+ type: z.ZodLiteral<"plain">;
4
+ value: z.ZodString;
5
+ }, "strip", z.ZodTypeAny, {
6
+ value: string;
7
+ type: "plain";
8
+ }, {
9
+ value: string;
10
+ type: "plain";
11
+ }>;
12
+ export declare const envBindingSecretRefSchema: z.ZodObject<{
13
+ type: z.ZodLiteral<"secret_ref">;
14
+ secretId: z.ZodString;
15
+ version: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"latest">, z.ZodNumber]>>;
16
+ }, "strip", z.ZodTypeAny, {
17
+ secretId: string;
18
+ type: "secret_ref";
19
+ version?: number | "latest" | undefined;
20
+ }, {
21
+ secretId: string;
22
+ type: "secret_ref";
23
+ version?: number | "latest" | undefined;
24
+ }>;
25
+ export declare const envBindingSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
26
+ type: z.ZodLiteral<"plain">;
27
+ value: z.ZodString;
28
+ }, "strip", z.ZodTypeAny, {
29
+ value: string;
30
+ type: "plain";
31
+ }, {
32
+ value: string;
33
+ type: "plain";
34
+ }>, z.ZodObject<{
35
+ type: z.ZodLiteral<"secret_ref">;
36
+ secretId: z.ZodString;
37
+ version: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"latest">, z.ZodNumber]>>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ secretId: string;
40
+ type: "secret_ref";
41
+ version?: number | "latest" | undefined;
42
+ }, {
43
+ secretId: string;
44
+ type: "secret_ref";
45
+ version?: number | "latest" | undefined;
46
+ }>]>;
47
+ export declare const envConfigSchema: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodObject<{
48
+ type: z.ZodLiteral<"plain">;
49
+ value: z.ZodString;
50
+ }, "strip", z.ZodTypeAny, {
51
+ value: string;
52
+ type: "plain";
53
+ }, {
54
+ value: string;
55
+ type: "plain";
56
+ }>, z.ZodObject<{
57
+ type: z.ZodLiteral<"secret_ref">;
58
+ secretId: z.ZodString;
59
+ version: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"latest">, z.ZodNumber]>>;
60
+ }, "strip", z.ZodTypeAny, {
61
+ secretId: string;
62
+ type: "secret_ref";
63
+ version?: number | "latest" | undefined;
64
+ }, {
65
+ secretId: string;
66
+ type: "secret_ref";
67
+ version?: number | "latest" | undefined;
68
+ }>]>>;
69
+ export declare const createSecretSchema: z.ZodObject<{
70
+ name: z.ZodString;
71
+ provider: z.ZodOptional<z.ZodEnum<["local_encrypted", "aws_secrets_manager", "gcp_secret_manager", "vault"]>>;
72
+ value: z.ZodString;
73
+ description: z.ZodNullable<z.ZodOptional<z.ZodString>>;
74
+ externalRef: z.ZodNullable<z.ZodOptional<z.ZodString>>;
75
+ }, "strip", z.ZodTypeAny, {
76
+ value: string;
77
+ name: string;
78
+ description?: string | null | undefined;
79
+ provider?: "local_encrypted" | "aws_secrets_manager" | "gcp_secret_manager" | "vault" | undefined;
80
+ externalRef?: string | null | undefined;
81
+ }, {
82
+ value: string;
83
+ name: string;
84
+ description?: string | null | undefined;
85
+ provider?: "local_encrypted" | "aws_secrets_manager" | "gcp_secret_manager" | "vault" | undefined;
86
+ externalRef?: string | null | undefined;
87
+ }>;
88
+ export type CreateSecret = z.infer<typeof createSecretSchema>;
89
+ export declare const rotateSecretSchema: z.ZodObject<{
90
+ value: z.ZodString;
91
+ externalRef: z.ZodNullable<z.ZodOptional<z.ZodString>>;
92
+ }, "strip", z.ZodTypeAny, {
93
+ value: string;
94
+ externalRef?: string | null | undefined;
95
+ }, {
96
+ value: string;
97
+ externalRef?: string | null | undefined;
98
+ }>;
99
+ export type RotateSecret = z.infer<typeof rotateSecretSchema>;
100
+ export declare const updateSecretSchema: z.ZodObject<{
101
+ name: z.ZodOptional<z.ZodString>;
102
+ description: z.ZodNullable<z.ZodOptional<z.ZodString>>;
103
+ externalRef: z.ZodNullable<z.ZodOptional<z.ZodString>>;
104
+ }, "strip", z.ZodTypeAny, {
105
+ description?: string | null | undefined;
106
+ name?: string | undefined;
107
+ externalRef?: string | null | undefined;
108
+ }, {
109
+ description?: string | null | undefined;
110
+ name?: string | undefined;
111
+ externalRef?: string | null | undefined;
112
+ }>;
113
+ export type UpdateSecret = z.infer<typeof updateSecretSchema>;
114
+ //# sourceMappingURL=secret.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.d.ts","sourceRoot":"","sources":["../../src/validators/secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,qBAAqB;;;;;;;;;EAGhC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;EAIpC,CAAC;AAGH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;IAI3B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;KAA6B,CAAC;AAE1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;EAM7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAI7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { z } from "zod";
2
+ import { SECRET_PROVIDERS } from "../constants.js";
3
+ export const envBindingPlainSchema = z.object({
4
+ type: z.literal("plain"),
5
+ value: z.string(),
6
+ });
7
+ export const envBindingSecretRefSchema = z.object({
8
+ type: z.literal("secret_ref"),
9
+ secretId: z.string().uuid(),
10
+ version: z.union([z.literal("latest"), z.number().int().positive()]).optional(),
11
+ });
12
+ // Backward-compatible union that accepts legacy inline values.
13
+ export const envBindingSchema = z.union([
14
+ z.string(),
15
+ envBindingPlainSchema,
16
+ envBindingSecretRefSchema,
17
+ ]);
18
+ export const envConfigSchema = z.record(envBindingSchema);
19
+ export const createSecretSchema = z.object({
20
+ name: z.string().min(1),
21
+ provider: z.enum(SECRET_PROVIDERS).optional(),
22
+ value: z.string().min(1),
23
+ description: z.string().optional().nullable(),
24
+ externalRef: z.string().optional().nullable(),
25
+ });
26
+ export const rotateSecretSchema = z.object({
27
+ value: z.string().min(1),
28
+ externalRef: z.string().optional().nullable(),
29
+ });
30
+ export const updateSecretSchema = z.object({
31
+ name: z.string().min(1).optional(),
32
+ description: z.string().optional().nullable(),
33
+ externalRef: z.string().optional().nullable(),
34
+ });
35
+ //# sourceMappingURL=secret.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.js","sourceRoot":"","sources":["../../src/validators/secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC3B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CAChF,CAAC,CAAC;AAEH,+DAA+D;AAC/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC;IACtC,CAAC,CAAC,MAAM,EAAE;IACV,qBAAqB;IACrB,yBAAyB;CAC1B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAClC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { z } from "zod";
2
+ export declare const sidebarOrderPreferenceSchema: z.ZodObject<{
3
+ orderedIds: z.ZodArray<z.ZodString, "many">;
4
+ updatedAt: z.ZodNullable<z.ZodDate>;
5
+ }, "strip", z.ZodTypeAny, {
6
+ updatedAt: Date | null;
7
+ orderedIds: string[];
8
+ }, {
9
+ updatedAt: Date | null;
10
+ orderedIds: string[];
11
+ }>;
12
+ export declare const upsertSidebarOrderPreferenceSchema: z.ZodObject<{
13
+ orderedIds: z.ZodArray<z.ZodString, "many">;
14
+ }, "strip", z.ZodTypeAny, {
15
+ orderedIds: string[];
16
+ }, {
17
+ orderedIds: string[];
18
+ }>;
19
+ export type UpsertSidebarOrderPreference = z.infer<typeof upsertSidebarOrderPreferenceSchema>;
20
+ //# sourceMappingURL=sidebar-preferences.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar-preferences.d.ts","sourceRoot":"","sources":["../../src/validators/sidebar-preferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,4BAA4B;;;;;;;;;EAGvC,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;;;;EAE7C,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { z } from "zod";
2
+ const sidebarOrderedIdSchema = z.string().uuid();
3
+ export const sidebarOrderPreferenceSchema = z.object({
4
+ orderedIds: z.array(sidebarOrderedIdSchema),
5
+ updatedAt: z.coerce.date().nullable(),
6
+ });
7
+ export const upsertSidebarOrderPreferenceSchema = z.object({
8
+ orderedIds: z.array(sidebarOrderedIdSchema),
9
+ });
10
+ //# sourceMappingURL=sidebar-preferences.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar-preferences.js","sourceRoot":"","sources":["../../src/validators/sidebar-preferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;AAEjD,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC;IAC3C,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC;CAC5C,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { z } from "zod";
2
+ export declare function normalizeEscapedLineBreaks(value: string): string;
3
+ export declare const multilineTextSchema: z.ZodEffects<z.ZodString, string, string>;
4
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/validators/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKhE;AAED,eAAO,MAAM,mBAAmB,2CAAmD,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+ export function normalizeEscapedLineBreaks(value) {
3
+ return value
4
+ .replace(/\\r\\n/g, "\n")
5
+ .replace(/\\n/g, "\n")
6
+ .replace(/\\r/g, "\n");
7
+ }
8
+ export const multilineTextSchema = z.string().transform(normalizeEscapedLineBreaks);
9
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/validators/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,UAAU,0BAA0B,CAAC,KAAa;IACtD,OAAO,KAAK;SACT,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC;SACxB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;SACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC"}