monday-cli 0.2.0 → 0.4.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 (479) hide show
  1. package/CHANGELOG.md +675 -2
  2. package/README.md +223 -31
  3. package/dist/api/assets.d.ts +326 -0
  4. package/dist/api/assets.d.ts.map +1 -0
  5. package/dist/api/assets.js +519 -0
  6. package/dist/api/assets.js.map +1 -0
  7. package/dist/api/board-favorites.d.ts +329 -0
  8. package/dist/api/board-favorites.d.ts.map +1 -0
  9. package/dist/api/board-favorites.js +353 -0
  10. package/dist/api/board-favorites.js.map +1 -0
  11. package/dist/api/board-mutation-result.d.ts +9 -5
  12. package/dist/api/board-mutation-result.d.ts.map +1 -1
  13. package/dist/api/board-mutation-result.js +9 -5
  14. package/dist/api/board-mutation-result.js.map +1 -1
  15. package/dist/api/board-relation-validation.d.ts +161 -0
  16. package/dist/api/board-relation-validation.d.ts.map +1 -0
  17. package/dist/api/board-relation-validation.js +317 -0
  18. package/dist/api/board-relation-validation.js.map +1 -0
  19. package/dist/api/cache.d.ts +14 -5
  20. package/dist/api/cache.d.ts.map +1 -1
  21. package/dist/api/cache.js +8 -10
  22. package/dist/api/cache.js.map +1 -1
  23. package/dist/api/column-mapping.js +2 -2
  24. package/dist/api/column-mapping.js.map +1 -1
  25. package/dist/api/column-mutation-result.d.ts +9 -5
  26. package/dist/api/column-mutation-result.d.ts.map +1 -1
  27. package/dist/api/column-mutation-result.js +9 -5
  28. package/dist/api/column-mutation-result.js.map +1 -1
  29. package/dist/api/column-types.d.ts +37 -14
  30. package/dist/api/column-types.d.ts.map +1 -1
  31. package/dist/api/column-types.js +47 -6
  32. package/dist/api/column-types.js.map +1 -1
  33. package/dist/api/column-values.d.ts +234 -31
  34. package/dist/api/column-values.d.ts.map +1 -1
  35. package/dist/api/column-values.js +560 -124
  36. package/dist/api/column-values.js.map +1 -1
  37. package/dist/api/cross-board-search.d.ts +501 -0
  38. package/dist/api/cross-board-search.d.ts.map +1 -0
  39. package/dist/api/cross-board-search.js +547 -0
  40. package/dist/api/cross-board-search.js.map +1 -0
  41. package/dist/api/dev-conventions.d.ts +1038 -0
  42. package/dist/api/dev-conventions.d.ts.map +1 -0
  43. package/dist/api/dev-conventions.js +1556 -0
  44. package/dist/api/dev-conventions.js.map +1 -0
  45. package/dist/api/documents.d.ts +519 -0
  46. package/dist/api/documents.d.ts.map +1 -0
  47. package/dist/api/documents.js +586 -0
  48. package/dist/api/documents.js.map +1 -0
  49. package/dist/api/dry-run.d.ts +32 -5
  50. package/dist/api/dry-run.d.ts.map +1 -1
  51. package/dist/api/dry-run.js +149 -32
  52. package/dist/api/dry-run.js.map +1 -1
  53. package/dist/api/errors.d.ts.map +1 -1
  54. package/dist/api/errors.js +28 -7
  55. package/dist/api/errors.js.map +1 -1
  56. package/dist/api/group-mutation-result.d.ts +9 -5
  57. package/dist/api/group-mutation-result.d.ts.map +1 -1
  58. package/dist/api/group-mutation-result.js +9 -5
  59. package/dist/api/group-mutation-result.js.map +1 -1
  60. package/dist/api/item-history-projection.d.ts +919 -0
  61. package/dist/api/item-history-projection.d.ts.map +1 -0
  62. package/dist/api/item-history-projection.js +1104 -0
  63. package/dist/api/item-history-projection.js.map +1 -0
  64. package/dist/api/item-mutation-execute.d.ts +82 -0
  65. package/dist/api/item-mutation-execute.d.ts.map +1 -0
  66. package/dist/api/item-mutation-execute.js +199 -0
  67. package/dist/api/item-mutation-execute.js.map +1 -0
  68. package/dist/api/item-watch.d.ts +263 -0
  69. package/dist/api/item-watch.d.ts.map +1 -0
  70. package/dist/api/item-watch.js +709 -0
  71. package/dist/api/item-watch.js.map +1 -0
  72. package/dist/api/multipart-transport.d.ts +223 -0
  73. package/dist/api/multipart-transport.d.ts.map +1 -0
  74. package/dist/api/multipart-transport.js +274 -0
  75. package/dist/api/multipart-transport.js.map +1 -0
  76. package/dist/api/notifications.d.ts +156 -0
  77. package/dist/api/notifications.d.ts.map +1 -0
  78. package/dist/api/notifications.js +215 -0
  79. package/dist/api/notifications.js.map +1 -0
  80. package/dist/api/oauth-test-helper.d.ts +64 -0
  81. package/dist/api/oauth-test-helper.d.ts.map +1 -0
  82. package/dist/api/oauth-test-helper.js +179 -0
  83. package/dist/api/oauth-test-helper.js.map +1 -0
  84. package/dist/api/oauth.d.ts +198 -0
  85. package/dist/api/oauth.d.ts.map +1 -0
  86. package/dist/api/oauth.js +471 -0
  87. package/dist/api/oauth.js.map +1 -0
  88. package/dist/api/parallel-dispatch.d.ts +155 -0
  89. package/dist/api/parallel-dispatch.d.ts.map +1 -0
  90. package/dist/api/parallel-dispatch.js +243 -0
  91. package/dist/api/parallel-dispatch.js.map +1 -0
  92. package/dist/api/partial-success-bulk.d.ts +480 -0
  93. package/dist/api/partial-success-bulk.d.ts.map +1 -0
  94. package/dist/api/partial-success-bulk.js +436 -0
  95. package/dist/api/partial-success-bulk.js.map +1 -0
  96. package/dist/api/partial-success-mutation.d.ts +13 -1
  97. package/dist/api/partial-success-mutation.d.ts.map +1 -1
  98. package/dist/api/partial-success-mutation.js +5 -1
  99. package/dist/api/partial-success-mutation.js.map +1 -1
  100. package/dist/api/people.d.ts +54 -1
  101. package/dist/api/people.d.ts.map +1 -1
  102. package/dist/api/people.js +27 -3
  103. package/dist/api/people.js.map +1 -1
  104. package/dist/api/probes.d.ts +487 -0
  105. package/dist/api/probes.d.ts.map +1 -0
  106. package/dist/api/probes.js +881 -0
  107. package/dist/api/probes.js.map +1 -0
  108. package/dist/api/raw-document.d.ts.map +1 -1
  109. package/dist/api/raw-document.js +2 -2
  110. package/dist/api/raw-document.js.map +1 -1
  111. package/dist/api/raw-write.d.ts +12 -4
  112. package/dist/api/raw-write.d.ts.map +1 -1
  113. package/dist/api/raw-write.js +32 -14
  114. package/dist/api/raw-write.js.map +1 -1
  115. package/dist/api/resolution-context.d.ts +23 -11
  116. package/dist/api/resolution-context.d.ts.map +1 -1
  117. package/dist/api/resolution-context.js +53 -12
  118. package/dist/api/resolution-context.js.map +1 -1
  119. package/dist/api/resolution-pass.d.ts +30 -1
  120. package/dist/api/resolution-pass.d.ts.map +1 -1
  121. package/dist/api/resolution-pass.js +36 -1
  122. package/dist/api/resolution-pass.js.map +1 -1
  123. package/dist/api/resolve-client.d.ts +22 -0
  124. package/dist/api/resolve-client.d.ts.map +1 -1
  125. package/dist/api/resolve-client.js +9 -1
  126. package/dist/api/resolve-client.js.map +1 -1
  127. package/dist/api/response-root.d.ts +92 -46
  128. package/dist/api/response-root.d.ts.map +1 -1
  129. package/dist/api/response-root.js +93 -41
  130. package/dist/api/response-root.js.map +1 -1
  131. package/dist/api/tag-directory.d.ts +154 -0
  132. package/dist/api/tag-directory.d.ts.map +1 -0
  133. package/dist/api/tag-directory.js +325 -0
  134. package/dist/api/tag-directory.js.map +1 -0
  135. package/dist/api/time-tracking.d.ts +165 -0
  136. package/dist/api/time-tracking.d.ts.map +1 -0
  137. package/dist/api/time-tracking.js +135 -0
  138. package/dist/api/time-tracking.js.map +1 -0
  139. package/dist/api/transport.js +3 -3
  140. package/dist/api/transport.js.map +1 -1
  141. package/dist/api/usage.d.ts +190 -0
  142. package/dist/api/usage.d.ts.map +1 -0
  143. package/dist/api/usage.js +194 -0
  144. package/dist/api/usage.js.map +1 -0
  145. package/dist/api/users-fan-out-mutation.d.ts.map +1 -1
  146. package/dist/api/users-fan-out-mutation.js +10 -5
  147. package/dist/api/users-fan-out-mutation.js.map +1 -1
  148. package/dist/api/webhooks.d.ts +357 -0
  149. package/dist/api/webhooks.d.ts.map +1 -0
  150. package/dist/api/webhooks.js +333 -0
  151. package/dist/api/webhooks.js.map +1 -0
  152. package/dist/cli/envelope-out.d.ts +18 -1
  153. package/dist/cli/envelope-out.d.ts.map +1 -1
  154. package/dist/cli/envelope-out.js +16 -2
  155. package/dist/cli/envelope-out.js.map +1 -1
  156. package/dist/cli/program.d.ts.map +1 -1
  157. package/dist/cli/program.js +120 -1
  158. package/dist/cli/program.js.map +1 -1
  159. package/dist/cli/run.d.ts +32 -0
  160. package/dist/cli/run.d.ts.map +1 -1
  161. package/dist/cli/run.js +3 -0
  162. package/dist/cli/run.js.map +1 -1
  163. package/dist/commands/account/tags.d.ts +37 -0
  164. package/dist/commands/account/tags.d.ts.map +1 -0
  165. package/dist/commands/account/tags.js +84 -0
  166. package/dist/commands/account/tags.js.map +1 -0
  167. package/dist/commands/auth/login.d.ts +14 -0
  168. package/dist/commands/auth/login.d.ts.map +1 -0
  169. package/dist/commands/auth/login.js +314 -0
  170. package/dist/commands/auth/login.js.map +1 -0
  171. package/dist/commands/auth/logout.d.ts +28 -0
  172. package/dist/commands/auth/logout.d.ts.map +1 -0
  173. package/dist/commands/auth/logout.js +94 -0
  174. package/dist/commands/auth/logout.js.map +1 -0
  175. package/dist/commands/board/archive.d.ts.map +1 -1
  176. package/dist/commands/board/archive.js +14 -14
  177. package/dist/commands/board/archive.js.map +1 -1
  178. package/dist/commands/board/column-create.d.ts +9 -8
  179. package/dist/commands/board/column-create.d.ts.map +1 -1
  180. package/dist/commands/board/column-create.js +61 -51
  181. package/dist/commands/board/column-create.js.map +1 -1
  182. package/dist/commands/board/column-delete.d.ts.map +1 -1
  183. package/dist/commands/board/column-delete.js +15 -16
  184. package/dist/commands/board/column-delete.js.map +1 -1
  185. package/dist/commands/board/column-update.d.ts.map +1 -1
  186. package/dist/commands/board/column-update.js +23 -22
  187. package/dist/commands/board/column-update.js.map +1 -1
  188. package/dist/commands/board/create.d.ts.map +1 -1
  189. package/dist/commands/board/create.js +14 -17
  190. package/dist/commands/board/create.js.map +1 -1
  191. package/dist/commands/board/delete.d.ts.map +1 -1
  192. package/dist/commands/board/delete.js +12 -15
  193. package/dist/commands/board/delete.js.map +1 -1
  194. package/dist/commands/board/describe.d.ts.map +1 -1
  195. package/dist/commands/board/describe.js +30 -0
  196. package/dist/commands/board/describe.js.map +1 -1
  197. package/dist/commands/board/duplicate.d.ts.map +1 -1
  198. package/dist/commands/board/duplicate.js +12 -13
  199. package/dist/commands/board/duplicate.js.map +1 -1
  200. package/dist/commands/board/favorites.d.ts +33 -0
  201. package/dist/commands/board/favorites.d.ts.map +1 -0
  202. package/dist/commands/board/favorites.js +74 -0
  203. package/dist/commands/board/favorites.js.map +1 -0
  204. package/dist/commands/board/find.d.ts +1 -1
  205. package/dist/commands/board/group-archive.d.ts.map +1 -1
  206. package/dist/commands/board/group-archive.js +12 -16
  207. package/dist/commands/board/group-archive.js.map +1 -1
  208. package/dist/commands/board/group-create.d.ts.map +1 -1
  209. package/dist/commands/board/group-create.js +9 -19
  210. package/dist/commands/board/group-create.js.map +1 -1
  211. package/dist/commands/board/group-delete.d.ts.map +1 -1
  212. package/dist/commands/board/group-delete.js +12 -16
  213. package/dist/commands/board/group-delete.js.map +1 -1
  214. package/dist/commands/board/group-duplicate.d.ts.map +1 -1
  215. package/dist/commands/board/group-duplicate.js +12 -16
  216. package/dist/commands/board/group-duplicate.js.map +1 -1
  217. package/dist/commands/board/group-update.d.ts.map +1 -1
  218. package/dist/commands/board/group-update.js +12 -11
  219. package/dist/commands/board/group-update.js.map +1 -1
  220. package/dist/commands/board/list.d.ts +1 -1
  221. package/dist/commands/board/update.d.ts.map +1 -1
  222. package/dist/commands/board/update.js +16 -11
  223. package/dist/commands/board/update.js.map +1 -1
  224. package/dist/commands/cache/list.d.ts +2 -0
  225. package/dist/commands/cache/list.d.ts.map +1 -1
  226. package/dist/commands/cache/list.js +2 -2
  227. package/dist/commands/cache/list.js.map +1 -1
  228. package/dist/commands/completion.d.ts +188 -0
  229. package/dist/commands/completion.d.ts.map +1 -0
  230. package/dist/commands/completion.js +418 -0
  231. package/dist/commands/completion.js.map +1 -0
  232. package/dist/commands/dev/_shared.d.ts +40 -0
  233. package/dist/commands/dev/_shared.d.ts.map +1 -0
  234. package/dist/commands/dev/_shared.js +104 -0
  235. package/dist/commands/dev/_shared.js.map +1 -0
  236. package/dist/commands/dev/configure.d.ts +36 -0
  237. package/dist/commands/dev/configure.d.ts.map +1 -0
  238. package/dist/commands/dev/configure.js +145 -0
  239. package/dist/commands/dev/configure.js.map +1 -0
  240. package/dist/commands/dev/discover.d.ts +34 -0
  241. package/dist/commands/dev/discover.d.ts.map +1 -0
  242. package/dist/commands/dev/discover.js +117 -0
  243. package/dist/commands/dev/discover.js.map +1 -0
  244. package/dist/commands/dev/doctor.d.ts +39 -0
  245. package/dist/commands/dev/doctor.d.ts.map +1 -0
  246. package/dist/commands/dev/doctor.js +91 -0
  247. package/dist/commands/dev/doctor.js.map +1 -0
  248. package/dist/commands/dev/epic/items.d.ts +24 -0
  249. package/dist/commands/dev/epic/items.d.ts.map +1 -0
  250. package/dist/commands/dev/epic/items.js +103 -0
  251. package/dist/commands/dev/epic/items.js.map +1 -0
  252. package/dist/commands/dev/epic/list.d.ts +36 -0
  253. package/dist/commands/dev/epic/list.d.ts.map +1 -0
  254. package/dist/commands/dev/epic/list.js +120 -0
  255. package/dist/commands/dev/epic/list.js.map +1 -0
  256. package/dist/commands/dev/release/list.d.ts +21 -0
  257. package/dist/commands/dev/release/list.d.ts.map +1 -0
  258. package/dist/commands/dev/release/list.js +73 -0
  259. package/dist/commands/dev/release/list.js.map +1 -0
  260. package/dist/commands/dev/sprint/current.d.ts +24 -0
  261. package/dist/commands/dev/sprint/current.d.ts.map +1 -0
  262. package/dist/commands/dev/sprint/current.js +90 -0
  263. package/dist/commands/dev/sprint/current.js.map +1 -0
  264. package/dist/commands/dev/sprint/items.d.ts +34 -0
  265. package/dist/commands/dev/sprint/items.d.ts.map +1 -0
  266. package/dist/commands/dev/sprint/items.js +118 -0
  267. package/dist/commands/dev/sprint/items.js.map +1 -0
  268. package/dist/commands/dev/sprint/list.d.ts +41 -0
  269. package/dist/commands/dev/sprint/list.d.ts.map +1 -0
  270. package/dist/commands/dev/sprint/list.js +104 -0
  271. package/dist/commands/dev/sprint/list.js.map +1 -0
  272. package/dist/commands/dev/task/block.d.ts +29 -0
  273. package/dist/commands/dev/task/block.d.ts.map +1 -0
  274. package/dist/commands/dev/task/block.js +106 -0
  275. package/dist/commands/dev/task/block.js.map +1 -0
  276. package/dist/commands/dev/task/done.d.ts +30 -0
  277. package/dist/commands/dev/task/done.d.ts.map +1 -0
  278. package/dist/commands/dev/task/done.js +113 -0
  279. package/dist/commands/dev/task/done.js.map +1 -0
  280. package/dist/commands/dev/task/list.d.ts +42 -0
  281. package/dist/commands/dev/task/list.d.ts.map +1 -0
  282. package/dist/commands/dev/task/list.js +227 -0
  283. package/dist/commands/dev/task/list.js.map +1 -0
  284. package/dist/commands/dev/task/start.d.ts +29 -0
  285. package/dist/commands/dev/task/start.d.ts.map +1 -0
  286. package/dist/commands/dev/task/start.js +90 -0
  287. package/dist/commands/dev/task/start.js.map +1 -0
  288. package/dist/commands/doc/get.d.ts +46 -0
  289. package/dist/commands/doc/get.d.ts.map +1 -0
  290. package/dist/commands/doc/get.js +95 -0
  291. package/dist/commands/doc/get.js.map +1 -0
  292. package/dist/commands/doc/list.d.ts +83 -0
  293. package/dist/commands/doc/list.d.ts.map +1 -0
  294. package/dist/commands/doc/list.js +248 -0
  295. package/dist/commands/doc/list.js.map +1 -0
  296. package/dist/commands/emit.d.ts.map +1 -1
  297. package/dist/commands/emit.js +5 -3
  298. package/dist/commands/emit.js.map +1 -1
  299. package/dist/commands/index.d.ts.map +1 -1
  300. package/dist/commands/index.js +141 -0
  301. package/dist/commands/index.js.map +1 -1
  302. package/dist/commands/item/archive.d.ts.map +1 -1
  303. package/dist/commands/item/archive.js +11 -0
  304. package/dist/commands/item/archive.js.map +1 -1
  305. package/dist/commands/item/clear.d.ts.map +1 -1
  306. package/dist/commands/item/clear.js +15 -0
  307. package/dist/commands/item/clear.js.map +1 -1
  308. package/dist/commands/item/create.d.ts.map +1 -1
  309. package/dist/commands/item/create.js +41 -8
  310. package/dist/commands/item/create.js.map +1 -1
  311. package/dist/commands/item/delete.d.ts.map +1 -1
  312. package/dist/commands/item/delete.js +11 -0
  313. package/dist/commands/item/delete.js.map +1 -1
  314. package/dist/commands/item/duplicate.d.ts.map +1 -1
  315. package/dist/commands/item/duplicate.js +12 -0
  316. package/dist/commands/item/duplicate.js.map +1 -1
  317. package/dist/commands/item/history.d.ts +60 -0
  318. package/dist/commands/item/history.d.ts.map +1 -0
  319. package/dist/commands/item/history.js +309 -0
  320. package/dist/commands/item/history.js.map +1 -0
  321. package/dist/commands/item/list.d.ts.map +1 -1
  322. package/dist/commands/item/list.js +16 -13
  323. package/dist/commands/item/list.js.map +1 -1
  324. package/dist/commands/item/move.d.ts.map +1 -1
  325. package/dist/commands/item/move.js +41 -7
  326. package/dist/commands/item/move.js.map +1 -1
  327. package/dist/commands/item/search.d.ts +99 -15
  328. package/dist/commands/item/search.d.ts.map +1 -1
  329. package/dist/commands/item/search.js +480 -36
  330. package/dist/commands/item/search.js.map +1 -1
  331. package/dist/commands/item/set.d.ts.map +1 -1
  332. package/dist/commands/item/set.js +52 -8
  333. package/dist/commands/item/set.js.map +1 -1
  334. package/dist/commands/item/time-track/start.d.ts +61 -0
  335. package/dist/commands/item/time-track/start.d.ts.map +1 -0
  336. package/dist/commands/item/time-track/start.js +138 -0
  337. package/dist/commands/item/time-track/start.js.map +1 -0
  338. package/dist/commands/item/time-track/stop.d.ts +32 -0
  339. package/dist/commands/item/time-track/stop.d.ts.map +1 -0
  340. package/dist/commands/item/time-track/stop.js +97 -0
  341. package/dist/commands/item/time-track/stop.js.map +1 -0
  342. package/dist/commands/item/update.d.ts +2 -0
  343. package/dist/commands/item/update.d.ts.map +1 -1
  344. package/dist/commands/item/update.js +164 -113
  345. package/dist/commands/item/update.js.map +1 -1
  346. package/dist/commands/item/upload.d.ts +108 -0
  347. package/dist/commands/item/upload.d.ts.map +1 -0
  348. package/dist/commands/item/upload.js +370 -0
  349. package/dist/commands/item/upload.js.map +1 -0
  350. package/dist/commands/item/upsert.d.ts.map +1 -1
  351. package/dist/commands/item/upsert.js +48 -1
  352. package/dist/commands/item/upsert.js.map +1 -1
  353. package/dist/commands/item/watch.d.ts +90 -0
  354. package/dist/commands/item/watch.d.ts.map +1 -0
  355. package/dist/commands/item/watch.js +342 -0
  356. package/dist/commands/item/watch.js.map +1 -0
  357. package/dist/commands/notification/send.d.ts +60 -0
  358. package/dist/commands/notification/send.d.ts.map +1 -0
  359. package/dist/commands/notification/send.js +147 -0
  360. package/dist/commands/notification/send.js.map +1 -0
  361. package/dist/commands/parse-argv.d.ts.map +1 -1
  362. package/dist/commands/parse-argv.js +14 -4
  363. package/dist/commands/parse-argv.js.map +1 -1
  364. package/dist/commands/raw/index.d.ts.map +1 -1
  365. package/dist/commands/raw/index.js +13 -15
  366. package/dist/commands/raw/index.js.map +1 -1
  367. package/dist/commands/run-by-id-lookup.d.ts.map +1 -1
  368. package/dist/commands/run-by-id-lookup.js +2 -2
  369. package/dist/commands/run-by-id-lookup.js.map +1 -1
  370. package/dist/commands/schema/index.d.ts +2 -0
  371. package/dist/commands/schema/index.d.ts.map +1 -1
  372. package/dist/commands/status.d.ts +120 -0
  373. package/dist/commands/status.d.ts.map +1 -0
  374. package/dist/commands/status.js +365 -0
  375. package/dist/commands/status.js.map +1 -0
  376. package/dist/commands/update/body-source.d.ts.map +1 -1
  377. package/dist/commands/update/body-source.js +2 -2
  378. package/dist/commands/update/body-source.js.map +1 -1
  379. package/dist/commands/update/create.d.ts +2 -3
  380. package/dist/commands/update/create.d.ts.map +1 -1
  381. package/dist/commands/update/create.js +15 -3
  382. package/dist/commands/update/create.js.map +1 -1
  383. package/dist/commands/update/delete.d.ts.map +1 -1
  384. package/dist/commands/update/delete.js +11 -0
  385. package/dist/commands/update/delete.js.map +1 -1
  386. package/dist/commands/update/edit.d.ts.map +1 -1
  387. package/dist/commands/update/edit.js +11 -0
  388. package/dist/commands/update/edit.js.map +1 -1
  389. package/dist/commands/update/list.d.ts.map +1 -1
  390. package/dist/commands/update/list.js +15 -12
  391. package/dist/commands/update/list.js.map +1 -1
  392. package/dist/commands/update/reply.d.ts.map +1 -1
  393. package/dist/commands/update/reply.js +11 -0
  394. package/dist/commands/update/reply.js.map +1 -1
  395. package/dist/commands/update/toggle.d.ts.map +1 -1
  396. package/dist/commands/update/toggle.js +13 -0
  397. package/dist/commands/update/toggle.js.map +1 -1
  398. package/dist/commands/update/upload.d.ts +69 -0
  399. package/dist/commands/update/upload.d.ts.map +1 -0
  400. package/dist/commands/update/upload.js +235 -0
  401. package/dist/commands/update/upload.js.map +1 -0
  402. package/dist/commands/usage.d.ts +58 -0
  403. package/dist/commands/usage.d.ts.map +1 -0
  404. package/dist/commands/usage.js +94 -0
  405. package/dist/commands/usage.js.map +1 -0
  406. package/dist/commands/webhook/create.d.ts +74 -0
  407. package/dist/commands/webhook/create.d.ts.map +1 -0
  408. package/dist/commands/webhook/create.js +150 -0
  409. package/dist/commands/webhook/create.js.map +1 -0
  410. package/dist/commands/webhook/delete.d.ts +46 -0
  411. package/dist/commands/webhook/delete.d.ts.map +1 -0
  412. package/dist/commands/webhook/delete.js +141 -0
  413. package/dist/commands/webhook/delete.js.map +1 -0
  414. package/dist/commands/webhook/list.d.ts +23 -0
  415. package/dist/commands/webhook/list.d.ts.map +1 -0
  416. package/dist/commands/webhook/list.js +68 -0
  417. package/dist/commands/webhook/list.js.map +1 -0
  418. package/dist/commands/workspace/create.d.ts.map +1 -1
  419. package/dist/commands/workspace/create.js +16 -0
  420. package/dist/commands/workspace/create.js.map +1 -1
  421. package/dist/commands/workspace/delete.d.ts.map +1 -1
  422. package/dist/commands/workspace/delete.js +13 -13
  423. package/dist/commands/workspace/delete.js.map +1 -1
  424. package/dist/commands/workspace/list.d.ts +1 -1
  425. package/dist/commands/workspace/update.d.ts.map +1 -1
  426. package/dist/commands/workspace/update.js +15 -15
  427. package/dist/commands/workspace/update.js.map +1 -1
  428. package/dist/config/credentials.d.ts +189 -0
  429. package/dist/config/credentials.d.ts.map +1 -0
  430. package/dist/config/credentials.js +300 -0
  431. package/dist/config/credentials.js.map +1 -0
  432. package/dist/config/profiles.d.ts +125 -0
  433. package/dist/config/profiles.d.ts.map +1 -0
  434. package/dist/config/profiles.js +227 -0
  435. package/dist/config/profiles.js.map +1 -0
  436. package/dist/types/global-flags.d.ts +1 -1
  437. package/dist/types/global-flags.d.ts.map +1 -1
  438. package/dist/types/global-flags.js +28 -16
  439. package/dist/types/global-flags.js.map +1 -1
  440. package/dist/types/ids.d.ts +4 -0
  441. package/dist/types/ids.d.ts.map +1 -1
  442. package/dist/types/ids.js +12 -3
  443. package/dist/types/ids.js.map +1 -1
  444. package/dist/utils/errors.d.ts +57 -3
  445. package/dist/utils/errors.d.ts.map +1 -1
  446. package/dist/utils/errors.js +69 -2
  447. package/dist/utils/errors.js.map +1 -1
  448. package/dist/utils/fs.d.ts +35 -0
  449. package/dist/utils/fs.d.ts.map +1 -0
  450. package/dist/utils/fs.js +36 -0
  451. package/dist/utils/fs.js.map +1 -0
  452. package/dist/utils/json.d.ts +60 -0
  453. package/dist/utils/json.d.ts.map +1 -0
  454. package/dist/utils/json.js +86 -0
  455. package/dist/utils/json.js.map +1 -0
  456. package/dist/utils/mime.d.ts +24 -0
  457. package/dist/utils/mime.d.ts.map +1 -0
  458. package/dist/utils/mime.js +64 -0
  459. package/dist/utils/mime.js.map +1 -0
  460. package/dist/utils/output/envelope.d.ts +30 -0
  461. package/dist/utils/output/envelope.d.ts.map +1 -1
  462. package/dist/utils/output/envelope.js +26 -0
  463. package/dist/utils/output/envelope.js.map +1 -1
  464. package/dist/utils/output/ndjson.d.ts +90 -3
  465. package/dist/utils/output/ndjson.d.ts.map +1 -1
  466. package/dist/utils/output/ndjson.js +33 -0
  467. package/dist/utils/output/ndjson.js.map +1 -1
  468. package/dist/utils/redact.d.ts.map +1 -1
  469. package/dist/utils/redact.js +31 -0
  470. package/dist/utils/redact.js.map +1 -1
  471. package/dist/utils/signal.d.ts +42 -0
  472. package/dist/utils/signal.d.ts.map +1 -0
  473. package/dist/utils/signal.js +45 -0
  474. package/dist/utils/signal.js.map +1 -0
  475. package/package.json +2 -1
  476. package/dist/commands/account/client-helper.d.ts +0 -37
  477. package/dist/commands/account/client-helper.d.ts.map +0 -1
  478. package/dist/commands/account/client-helper.js +0 -55
  479. package/dist/commands/account/client-helper.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"board-favorites.js","sourceRoot":"","sources":["../../src/api/board-favorites.ts"],"names":[],"mappings":"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"}
@@ -60,11 +60,15 @@
60
60
  * stays inline because each verb's response root key
61
61
  * (`create_board` / `archive_board` / etc.) is per-verb. The
62
62
  * missing-root-key check (schema-drift → `internal_error` with
63
- * a `hint`) stays inline too that's Codex M15 implementation
64
- * round-2 F1's distinction between schema-drift and null-payload,
65
- * deliberately preserved at each site. R42 would unify the
66
- * missing-root-key check across all pre-M14 mutation verbs once
67
- * scheduled.
63
+ * a `hint`) was Codex M15 implementation round-2 F1's distinction
64
+ * between schema-drift and null-payload, deliberately preserved at
65
+ * each site at M15 ship time. **R42 (post-v0.2 v0.3 cleanup
66
+ * window `c529445`) consolidated the inline check across every
67
+ * board-mutation verb onto `assertResponseFieldPresent`** with
68
+ * `nullHandling: 'caller_handles'`; the helper runs immediately
69
+ * after each verb's `unwrapOrThrow(responseSchema.safeParse(...))`,
70
+ * with `projectMutationBoard` continuing to handle null-value per-
71
+ * noun (some verbs throw `internal_error`, some `not_found`).
68
72
  */
69
73
  import { type ErrorCode } from '../utils/errors.js';
70
74
  import { type BoardProjection } from './board-projection.js';
@@ -1 +1 @@
1
- {"version":3,"file":"board-mutation-result.d.ts","sourceRoot":"","sources":["../../src/api/board-mutation-result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AAEH,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEpF,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,YAAY,CAAC;AAE/D,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B;;;wDAGoD;IACpD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,oBAAoB,GAAI,2DAMlC,0BAA0B,KAAG,eAc/B,CAAC"}
1
+ {"version":3,"file":"board-mutation-result.d.ts","sourceRoot":"","sources":["../../src/api/board-mutation-result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuEG;AAEH,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEpF,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,YAAY,CAAC;AAE/D,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B;;;wDAGoD;IACpD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,oBAAoB,GAAI,2DAMlC,0BAA0B,KAAG,eAc/B,CAAC"}
@@ -60,11 +60,15 @@
60
60
  * stays inline because each verb's response root key
61
61
  * (`create_board` / `archive_board` / etc.) is per-verb. The
62
62
  * missing-root-key check (schema-drift → `internal_error` with
63
- * a `hint`) stays inline too that's Codex M15 implementation
64
- * round-2 F1's distinction between schema-drift and null-payload,
65
- * deliberately preserved at each site. R42 would unify the
66
- * missing-root-key check across all pre-M14 mutation verbs once
67
- * scheduled.
63
+ * a `hint`) was Codex M15 implementation round-2 F1's distinction
64
+ * between schema-drift and null-payload, deliberately preserved at
65
+ * each site at M15 ship time. **R42 (post-v0.2 v0.3 cleanup
66
+ * window `c529445`) consolidated the inline check across every
67
+ * board-mutation verb onto `assertResponseFieldPresent`** with
68
+ * `nullHandling: 'caller_handles'`; the helper runs immediately
69
+ * after each verb's `unwrapOrThrow(responseSchema.safeParse(...))`,
70
+ * with `projectMutationBoard` continuing to handle null-value per-
71
+ * noun (some verbs throw `internal_error`, some `not_found`).
68
72
  */
69
73
  import { ApiError } from '../utils/errors.js';
70
74
  import { unwrapOrThrow } from '../utils/parse-boundary.js';
@@ -1 +1 @@
1
- {"version":3,"file":"board-mutation-result.js","sourceRoot":"","sources":["../../src/api/board-mutation-result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AAEH,OAAO,EAAE,QAAQ,EAAkB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAwB,MAAM,uBAAuB,CAAC;AAgBpF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,GAAG,EACH,SAAS,EACT,YAAY,EACZ,SAAS,EACT,WAAW,GACgB,EAAmB,EAAE;IAChD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,IAAI,QAAQ,CAAC,SAAS,EAAE,YAAY,EAAE;YAC1C,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,aAAa,GACjB,SAAS,KAAK,YAAY;QACxB,CAAC,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;QACvC,CAAC,CAAC,MAAM,WAAW,EAAE,CAAC;IAC1B,OAAO,aAAa,CAAC,qBAAqB,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;QACzD,OAAO,EAAE,iDAAiD,aAAa,EAAE;QACzE,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE;KACtC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"board-mutation-result.js","sourceRoot":"","sources":["../../src/api/board-mutation-result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuEG;AAEH,OAAO,EAAE,QAAQ,EAAkB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAwB,MAAM,uBAAuB,CAAC;AAgBpF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,GAAG,EACH,SAAS,EACT,YAAY,EACZ,SAAS,EACT,WAAW,GACgB,EAAmB,EAAE;IAChD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,IAAI,QAAQ,CAAC,SAAS,EAAE,YAAY,EAAE;YAC1C,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,aAAa,GACjB,SAAS,KAAK,YAAY;QACxB,CAAC,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;QACvC,CAAC,CAAC,MAAM,WAAW,EAAE,CAAC;IAC1B,OAAO,aAAa,CAAC,qBAAqB,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;QACzD,OAAO,EAAE,iDAAiD,aAAa,EAAE;QACzE,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE;KACtC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1,161 @@
1
+ /**
2
+ * Validator + parser for v0.3-M19's `board_relation` and `dependency`
3
+ * friendly translators. Each translator's input is a comma-split
4
+ * item-ID list (`<iid1>,<iid2>`); both target columns scope the
5
+ * relation to a specific allowed-board set (Monday's
6
+ * `column.settings.boardIds` for `board_relation` /
7
+ * `column.settings.dependencyBoards` for `dependency`).
8
+ *
9
+ * **Two surfaces.**
10
+ *
11
+ * - `parseRelationItemIds(raw, columnId, context)` — pure parser.
12
+ * Comma-splits + trims + filters the raw `--set` value, rejects
13
+ * empty / over-cap / non-decimal / unsafe-integer / duplicate
14
+ * inputs as `usage_error` BEFORE any network call. Returns
15
+ * `readonly number[]` (parallel to the input order, post-dedup).
16
+ *
17
+ * - `validateBoardRelationItems({ client, itemIds, allowedBoards,
18
+ * context, env?, noCache? })` — async validator. Batches a single
19
+ * `items(ids: [...])` query (one trip per `--set` call rather than
20
+ * one trip per item) and confirms each input item belongs to one
21
+ * of the column's allowed boards. Mismatches surface as
22
+ * `usage_error` (built by the caller from the returned
23
+ * `mismatches: BoardRelationMismatch[]`) so agents can correct
24
+ * without reading the column's settings separately.
25
+ *
26
+ * **Why a separate module from `column-values.ts`.** Both
27
+ * `board_relation` and `dependency` translators consume the same
28
+ * helpers (different settings field, identical wire shape +
29
+ * resolution path). Keeping the parser + validator in their own
30
+ * module mirrors the precedent set by `dates.ts` / `links.ts` /
31
+ * `emails.ts` / `phones.ts` / `people.ts` — translator-specific
32
+ * machinery isolated from `column-values.ts`'s dispatcher logic
33
+ * for unit-test ergonomics. The `--set` cap (Monday's documented
34
+ * 25-item-per-call ceiling per cli-design §5.3) lives here too;
35
+ * over-cap inputs surface `usage_error` pre-network without
36
+ * burning a complexity-budget call against `items(ids: ...)`.
37
+ *
38
+ * **Always live.** No cache leg — board membership of an item can
39
+ * change cross-call (item moved cross-board), so the validator
40
+ * always hits live. The translator threads
41
+ * `{ source: 'live', cacheAgeSeconds: null }` into
42
+ * `translatorResolution` for symmetry with the tags translator's
43
+ * cache-aware path.
44
+ */
45
+ import type { MondayClient } from './client.js';
46
+ /** Monday's documented per-call cap for relation-column item lists. */
47
+ export declare const BOARD_RELATION_MAX_ITEMS = 25;
48
+ export type RelationContext = 'board_relation' | 'dependency';
49
+ export interface BoardRelationValidationInputs {
50
+ /**
51
+ * The Monday GraphQL client. Required because the validator
52
+ * batches a single live `items(ids: [...])` query to read each
53
+ * input item's `board.id` and confirm membership in the column's
54
+ * allowed-board set. No cache fallback — board membership of an
55
+ * item can change between calls (item moved cross-board), so the
56
+ * validator always hits live.
57
+ */
58
+ readonly client: MondayClient;
59
+ readonly itemIds: readonly number[];
60
+ readonly allowedBoards: readonly number[];
61
+ /** The translator's column ID — surfaced into mismatch details. */
62
+ readonly columnId: string;
63
+ /**
64
+ * Diagnostic context — surfaced in the throw's `details` so a
65
+ * mismatch between `board_relation` and `dependency` consumers
66
+ * is visible in the error envelope (per cli-design §6.5
67
+ * single-target shape).
68
+ */
69
+ readonly context: RelationContext;
70
+ readonly env?: NodeJS.ProcessEnv;
71
+ readonly noCache?: boolean;
72
+ }
73
+ export interface BoardRelationMismatch {
74
+ readonly itemId: number;
75
+ /**
76
+ * `null` when the item ID didn't appear in the `items(ids:)`
77
+ * response at all (item deleted, item not visible to the caller's
78
+ * token, or item never existed). A real board ID otherwise.
79
+ */
80
+ readonly actualBoard: number | null;
81
+ }
82
+ /**
83
+ * Per-item echo for the dry-run + envelope surface — pairs the input
84
+ * item ID with the resolved home-board ID. `boardId` may be `null`
85
+ * if the validator chose to treat a missing-from-response item as a
86
+ * silent zero-row (today every code path that lands here surfaces a
87
+ * mismatch instead, so this is reserved for future relaxations).
88
+ */
89
+ export interface ValidatedRelationItem {
90
+ readonly itemId: number;
91
+ readonly boardId: number | null;
92
+ }
93
+ export type BoardRelationValidationResult = {
94
+ readonly ok: true;
95
+ /**
96
+ * Per-item validation results in input order. Each entry pairs
97
+ * the input item ID with its resolved home-board ID. The
98
+ * translator's relationResolution echo reads from this so dry-run
99
+ * surfaces show the validator's per-item resolution alongside
100
+ * the wire payload. Codex round-2 P1-3 widened the success
101
+ * branch to carry these (the original `{ ok: true }` shape
102
+ * dropped per-item data the dry-run echo needs).
103
+ */
104
+ readonly items: readonly ValidatedRelationItem[];
105
+ } | {
106
+ readonly ok: false;
107
+ readonly mismatches: readonly BoardRelationMismatch[];
108
+ };
109
+ /**
110
+ * Parses a comma-split item-ID list per cli-design §5.3 step 3 (the
111
+ * `board_relation` / `dependency` translator grammar). Five rejection
112
+ * branches, all surfacing `usage_error` BEFORE any network call so
113
+ * malformed input never burns a complexity-budget call against
114
+ * `items(ids: ...)`:
115
+ *
116
+ * 1. **Empty input** — `--set <col>=""` or `--set <col>=" , , "` —
117
+ * rejected with a hint pointing at `monday item clear` (mirrors
118
+ * the dropdown / people / tags empty-input contract).
119
+ * 2. **Over-cap input** — more than `BOARD_RELATION_MAX_ITEMS = 25`
120
+ * tokens — rejected pre-network so we don't burn a call
121
+ * against Monday's documented per-call ceiling.
122
+ * 3. **Non-decimal token** — anything that isn't a decimal
123
+ * non-negative integer string. Hex (`"0x2a"`), scientific
124
+ * (`"1e3"`), signed (`"-1"`), and decimal (`"1.5"`) forms all
125
+ * reject here.
126
+ * 4. **Unsafe-integer token** — decimal but exceeds
127
+ * `Number.MAX_SAFE_INTEGER` (2^53 - 1). `Number(token)` would
128
+ * lose precision; surfacing as `usage_error` rather than
129
+ * silently corrupting the wire payload.
130
+ * 5. **Duplicate token** — two tokens reference the same item ID.
131
+ * Monday's `items_page` does NOT deduplicate `item_ids`, so
132
+ * a duplicate would either error server-side or silently
133
+ * double-link. Rejecting client-side keeps the contract
134
+ * explicit.
135
+ *
136
+ * Returns the parsed item IDs in input-token order (post-dedup is
137
+ * unreachable since we reject duplicates).
138
+ */
139
+ export declare const parseRelationItemIds: (raw: string, columnId: string, context: RelationContext) => readonly number[];
140
+ /**
141
+ * Validates that every input item ID belongs to one of the
142
+ * column's allowed boards. Batches a single `items(ids: [...])`
143
+ * query (Monday charges complexity per-call, not per-id, so
144
+ * batching is a hard requirement, not an optimisation).
145
+ *
146
+ * Returns `{ ok: true, items: [...] }` when every item resolves
147
+ * cleanly (the per-item array surfaces verbatim into the
148
+ * translator's relationResolution echo) OR
149
+ * `{ ok: false, mismatches: [...] }` listing every input item
150
+ * whose `board.id` falls outside the allowed set OR whose entry
151
+ * is missing from Monday's response (item deleted, no visibility,
152
+ * etc.).
153
+ *
154
+ * **Stub-body removal note.** The pre-flight contract diff at
155
+ * `d822982` shipped a `Promise.reject(internal_error)` stub; this
156
+ * runtime body lands at M19 Commit 3 alongside the friendly
157
+ * translator. The success-branch widening (`items: [...]`) is a
158
+ * Codex round-2 P1-3 amendment to the original pre-flight contract.
159
+ */
160
+ export declare const validateBoardRelationItems: (inputs: BoardRelationValidationInputs) => Promise<BoardRelationValidationResult>;
161
+ //# sourceMappingURL=board-relation-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"board-relation-validation.d.ts","sourceRoot":"","sources":["../../src/api/board-relation-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAK3C,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,YAAY,CAAC;AAE9D,MAAM,WAAW,6BAA6B;IAC5C;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,MAAM,6BAA6B,GACrC;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB;;;;;;;;OAQG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAClD,GACD;IACE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,UAAU,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACvD,CAAC;AAqDN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,oBAAoB,GAC/B,KAAK,MAAM,EACX,UAAU,MAAM,EAChB,SAAS,eAAe,KACvB,SAAS,MAAM,EAqIjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,0BAA0B,GACrC,QAAQ,6BAA6B,KACpC,OAAO,CAAC,6BAA6B,CAwFvC,CAAC"}
@@ -0,0 +1,317 @@
1
+ /**
2
+ * Validator + parser for v0.3-M19's `board_relation` and `dependency`
3
+ * friendly translators. Each translator's input is a comma-split
4
+ * item-ID list (`<iid1>,<iid2>`); both target columns scope the
5
+ * relation to a specific allowed-board set (Monday's
6
+ * `column.settings.boardIds` for `board_relation` /
7
+ * `column.settings.dependencyBoards` for `dependency`).
8
+ *
9
+ * **Two surfaces.**
10
+ *
11
+ * - `parseRelationItemIds(raw, columnId, context)` — pure parser.
12
+ * Comma-splits + trims + filters the raw `--set` value, rejects
13
+ * empty / over-cap / non-decimal / unsafe-integer / duplicate
14
+ * inputs as `usage_error` BEFORE any network call. Returns
15
+ * `readonly number[]` (parallel to the input order, post-dedup).
16
+ *
17
+ * - `validateBoardRelationItems({ client, itemIds, allowedBoards,
18
+ * context, env?, noCache? })` — async validator. Batches a single
19
+ * `items(ids: [...])` query (one trip per `--set` call rather than
20
+ * one trip per item) and confirms each input item belongs to one
21
+ * of the column's allowed boards. Mismatches surface as
22
+ * `usage_error` (built by the caller from the returned
23
+ * `mismatches: BoardRelationMismatch[]`) so agents can correct
24
+ * without reading the column's settings separately.
25
+ *
26
+ * **Why a separate module from `column-values.ts`.** Both
27
+ * `board_relation` and `dependency` translators consume the same
28
+ * helpers (different settings field, identical wire shape +
29
+ * resolution path). Keeping the parser + validator in their own
30
+ * module mirrors the precedent set by `dates.ts` / `links.ts` /
31
+ * `emails.ts` / `phones.ts` / `people.ts` — translator-specific
32
+ * machinery isolated from `column-values.ts`'s dispatcher logic
33
+ * for unit-test ergonomics. The `--set` cap (Monday's documented
34
+ * 25-item-per-call ceiling per cli-design §5.3) lives here too;
35
+ * over-cap inputs surface `usage_error` pre-network without
36
+ * burning a complexity-budget call against `items(ids: ...)`.
37
+ *
38
+ * **Always live.** No cache leg — board membership of an item can
39
+ * change cross-call (item moved cross-board), so the validator
40
+ * always hits live. The translator threads
41
+ * `{ source: 'live', cacheAgeSeconds: null }` into
42
+ * `translatorResolution` for symmetry with the tags translator's
43
+ * cache-aware path.
44
+ */
45
+ import { z } from 'zod';
46
+ import { ApiError, UsageError } from '../utils/errors.js';
47
+ /** Monday's documented per-call cap for relation-column item lists. */
48
+ export const BOARD_RELATION_MAX_ITEMS = 25;
49
+ /** Decimal non-negative integer, no leading zeros allowed except for `0` itself. */
50
+ const DECIMAL_ITEM_ID_PATTERN = /^(?:0|[1-9]\d*)$/u;
51
+ const ITEMS_BY_ID_QUERY = `
52
+ query ItemsByIdsForRelation($ids: [ID!]!) {
53
+ items(ids: $ids) {
54
+ id
55
+ board {
56
+ id
57
+ }
58
+ }
59
+ }
60
+ `;
61
+ const itemEntrySchema = z
62
+ .object({
63
+ id: z.string().regex(DECIMAL_ITEM_ID_PATTERN, {
64
+ message: 'item id must be a decimal non-negative integer string',
65
+ }),
66
+ board: z
67
+ .object({
68
+ id: z.string().regex(DECIMAL_ITEM_ID_PATTERN, {
69
+ message: 'board id must be a decimal non-negative integer string',
70
+ }),
71
+ })
72
+ .nullable(),
73
+ })
74
+ .strict();
75
+ const itemsResponseSchema = z
76
+ .object({
77
+ items: z.array(itemEntrySchema).nullable(),
78
+ })
79
+ .strict();
80
+ /**
81
+ * Builds the per-context human noun used in `usage_error` messages
82
+ * + error details. `board_relation` columns are described as
83
+ * "board-relation columns"; `dependency` columns are "dependency
84
+ * columns". Pinned via test so the agent-facing wording stays
85
+ * stable.
86
+ */
87
+ const contextNoun = (context) => context === 'board_relation' ? 'board-relation' : 'dependency';
88
+ /**
89
+ * Parses a comma-split item-ID list per cli-design §5.3 step 3 (the
90
+ * `board_relation` / `dependency` translator grammar). Five rejection
91
+ * branches, all surfacing `usage_error` BEFORE any network call so
92
+ * malformed input never burns a complexity-budget call against
93
+ * `items(ids: ...)`:
94
+ *
95
+ * 1. **Empty input** — `--set <col>=""` or `--set <col>=" , , "` —
96
+ * rejected with a hint pointing at `monday item clear` (mirrors
97
+ * the dropdown / people / tags empty-input contract).
98
+ * 2. **Over-cap input** — more than `BOARD_RELATION_MAX_ITEMS = 25`
99
+ * tokens — rejected pre-network so we don't burn a call
100
+ * against Monday's documented per-call ceiling.
101
+ * 3. **Non-decimal token** — anything that isn't a decimal
102
+ * non-negative integer string. Hex (`"0x2a"`), scientific
103
+ * (`"1e3"`), signed (`"-1"`), and decimal (`"1.5"`) forms all
104
+ * reject here.
105
+ * 4. **Unsafe-integer token** — decimal but exceeds
106
+ * `Number.MAX_SAFE_INTEGER` (2^53 - 1). `Number(token)` would
107
+ * lose precision; surfacing as `usage_error` rather than
108
+ * silently corrupting the wire payload.
109
+ * 5. **Duplicate token** — two tokens reference the same item ID.
110
+ * Monday's `items_page` does NOT deduplicate `item_ids`, so
111
+ * a duplicate would either error server-side or silently
112
+ * double-link. Rejecting client-side keeps the contract
113
+ * explicit.
114
+ *
115
+ * Returns the parsed item IDs in input-token order (post-dedup is
116
+ * unreachable since we reject duplicates).
117
+ */
118
+ export const parseRelationItemIds = (raw, columnId, context) => {
119
+ const noun = contextNoun(context);
120
+ const tokens = raw
121
+ .split(',')
122
+ .map((segment) => segment.trim())
123
+ .filter((segment) => segment.length > 0);
124
+ if (tokens.length === 0) {
125
+ throw new UsageError(`${context === 'board_relation' ? 'Board-relation' : 'Dependency'} column "${columnId}" needs at least one item ID. ` +
126
+ `Got "${raw}". To clear a ${noun} column, use ` +
127
+ `\`monday item clear <iid> ${columnId} [--board <bid>]\` instead.`, {
128
+ details: {
129
+ column_id: columnId,
130
+ column_type: context,
131
+ raw_input: raw,
132
+ hint: 'pass a comma-separated list of numeric item IDs (e.g. ' +
133
+ `--set ${columnId}=12345,67890). To clear, use ` +
134
+ '`monday item clear` — `--set <col>=""` is value-shaping, ' +
135
+ 'not clear-intent (cli-design §5.3 lines 2375–2386).',
136
+ },
137
+ });
138
+ }
139
+ if (tokens.length > BOARD_RELATION_MAX_ITEMS) {
140
+ throw new UsageError(`${context === 'board_relation' ? 'Board-relation' : 'Dependency'} column "${columnId}" got ${tokens.length.toString()} item IDs, ` +
141
+ `which exceeds Monday's documented per-call cap of ` +
142
+ `${BOARD_RELATION_MAX_ITEMS.toString()}. Split the write into ` +
143
+ `multiple calls (each ≤${BOARD_RELATION_MAX_ITEMS.toString()} ` +
144
+ `items) or use --set-raw with a smaller subset.`, {
145
+ details: {
146
+ column_id: columnId,
147
+ column_type: context,
148
+ raw_input: raw,
149
+ item_count: tokens.length,
150
+ max_items: BOARD_RELATION_MAX_ITEMS,
151
+ hint: `Monday's relation-column item cap is ` +
152
+ `${BOARD_RELATION_MAX_ITEMS.toString()} per --set call. ` +
153
+ `Batch the input across multiple invocations.`,
154
+ },
155
+ });
156
+ }
157
+ const ids = [];
158
+ const seen = new Set();
159
+ for (const token of tokens) {
160
+ if (!DECIMAL_ITEM_ID_PATTERN.test(token)) {
161
+ throw new UsageError(`${context === 'board_relation' ? 'Board-relation' : 'Dependency'} column "${columnId}" got non-numeric token "${token}" in ` +
162
+ `input "${raw}". Each token must be a decimal non-negative ` +
163
+ `item ID (Monday item IDs are auto-incremented integers).`, {
164
+ details: {
165
+ column_id: columnId,
166
+ column_type: context,
167
+ raw_input: raw,
168
+ token,
169
+ hint: `pass numeric item IDs only (e.g. --set ${columnId}=` +
170
+ `12345,67890). The --set-raw escape hatch accepts the ` +
171
+ `literal Monday wire shape if neither form fits.`,
172
+ },
173
+ });
174
+ }
175
+ const parsed = Number(token);
176
+ if (!Number.isSafeInteger(parsed)) {
177
+ throw new UsageError(`${context === 'board_relation' ? 'Board-relation' : 'Dependency'} column "${columnId}" got numeric token "${token}" that ` +
178
+ `exceeds JavaScript's safe-integer range (2^53 - 1, i.e. ` +
179
+ `9007199254740991). Number(token) would lose precision, ` +
180
+ `corrupting the item_ids wire payload.`, {
181
+ details: {
182
+ column_id: columnId,
183
+ column_type: context,
184
+ raw_input: raw,
185
+ token,
186
+ // Codex post-Commit-5 P2-2 fix: don't suggest --set-raw
187
+ // here — that path still goes through JSON.parse, which
188
+ // suffers the same precision corruption for IDs beyond
189
+ // the safe-integer range. Monday's documented item IDs
190
+ // fit within 2^53-1; if the token is correct, this is a
191
+ // data-shape problem we can't safely round-trip.
192
+ hint: `Monday's documented item IDs fit within JS safe-` +
193
+ `integer range (2^53 - 1). The friendly translator ` +
194
+ `cannot safely round-trip this token; --set-raw can't ` +
195
+ `either (its JSON parse path suffers the same precision ` +
196
+ `corruption for >2^53 numeric literals). Verify the ` +
197
+ `item ID is correct before retrying.`,
198
+ },
199
+ });
200
+ }
201
+ if (seen.has(token)) {
202
+ throw new UsageError(`${context === 'board_relation' ? 'Board-relation' : 'Dependency'} column "${columnId}" got duplicate item ID "${token}" in ` +
203
+ `input "${raw}". Each --set call links a unique set of ` +
204
+ `items; bundling two references to the same item ID would ` +
205
+ `silently collapse to one link.`, {
206
+ details: {
207
+ column_id: columnId,
208
+ column_type: context,
209
+ raw_input: raw,
210
+ token,
211
+ hint: `pass each item ID at most once (e.g. --set ${columnId}=` +
212
+ `12345,67890, not 12345,12345).`,
213
+ },
214
+ });
215
+ }
216
+ seen.add(token);
217
+ ids.push(parsed);
218
+ }
219
+ return ids;
220
+ };
221
+ /**
222
+ * Validates that every input item ID belongs to one of the
223
+ * column's allowed boards. Batches a single `items(ids: [...])`
224
+ * query (Monday charges complexity per-call, not per-id, so
225
+ * batching is a hard requirement, not an optimisation).
226
+ *
227
+ * Returns `{ ok: true, items: [...] }` when every item resolves
228
+ * cleanly (the per-item array surfaces verbatim into the
229
+ * translator's relationResolution echo) OR
230
+ * `{ ok: false, mismatches: [...] }` listing every input item
231
+ * whose `board.id` falls outside the allowed set OR whose entry
232
+ * is missing from Monday's response (item deleted, no visibility,
233
+ * etc.).
234
+ *
235
+ * **Stub-body removal note.** The pre-flight contract diff at
236
+ * `d822982` shipped a `Promise.reject(internal_error)` stub; this
237
+ * runtime body lands at M19 Commit 3 alongside the friendly
238
+ * translator. The success-branch widening (`items: [...]`) is a
239
+ * Codex round-2 P1-3 amendment to the original pre-flight contract.
240
+ */
241
+ export const validateBoardRelationItems = async (inputs) => {
242
+ const { client, itemIds, allowedBoards, columnId, context } = inputs;
243
+ // Defensive: an empty input list shouldn't reach the validator
244
+ // (parseRelationItemIds rejects pre-call), but the helper might
245
+ // be called from a future site that has its own input path. Treat
246
+ // empty as a vacuous success — no items to check, none broken.
247
+ /* c8 ignore next 3 — defensive: parseRelationItemIds rejects empty
248
+ pre-call; reaching this branch requires bypassing the parser. */
249
+ if (itemIds.length === 0) {
250
+ return { ok: true, items: [] };
251
+ }
252
+ const allowedSet = new Set(allowedBoards);
253
+ const variables = {
254
+ ids: itemIds.map((id) => id.toString()),
255
+ };
256
+ const response = await client.raw(ITEMS_BY_ID_QUERY, variables, { operationName: 'ItemsByIdsForRelation' });
257
+ const parsed = itemsResponseSchema.safeParse(response.data);
258
+ if (!parsed.success) {
259
+ const issues = parsed.error.issues.map((i) => ({
260
+ path: i.path.join('.'),
261
+ message: i.message,
262
+ code: i.code,
263
+ }));
264
+ throw new ApiError('internal_error', `Monday returned a malformed items(ids:) response while validating ` +
265
+ `${contextNoun(context)} column "${columnId}".`, {
266
+ cause: parsed.error,
267
+ details: {
268
+ column_id: columnId,
269
+ column_type: context,
270
+ issues,
271
+ hint: "this is a data-integrity error in Monday's response (or a " +
272
+ 'response-shape drift); verify the response and update the ' +
273
+ 'itemsResponseSchema if Monday\'s contract has changed.',
274
+ },
275
+ });
276
+ }
277
+ // Build a map from id (number) → boardId (number | null). Monday
278
+ // returns items in unspecified order; iterate the input order to
279
+ // preserve the per-item echo's argv-order pin.
280
+ const byId = new Map();
281
+ for (const entry of parsed.data.items ?? []) {
282
+ const itemNum = Number(entry.id);
283
+ /* c8 ignore next 3 — defensive: itemEntrySchema's regex gates the
284
+ id field at parse boundary, so Number() always returns a finite
285
+ number here. */
286
+ if (!Number.isSafeInteger(itemNum))
287
+ continue;
288
+ const boardNum = entry.board === null ? null : Number(entry.board.id);
289
+ /* c8 ignore next 3 — defensive: same regex gates board.id. */
290
+ if (boardNum !== null && !Number.isSafeInteger(boardNum))
291
+ continue;
292
+ byId.set(itemNum, boardNum);
293
+ }
294
+ const items = [];
295
+ const mismatches = [];
296
+ for (const itemId of itemIds) {
297
+ const actualBoard = byId.get(itemId);
298
+ if (actualBoard === undefined) {
299
+ // Item missing from response entirely — deleted, not visible
300
+ // to the caller's token, or never existed. Surface as mismatch
301
+ // with `actualBoard: null` so the caller can build a single
302
+ // typed error envelope.
303
+ mismatches.push({ itemId, actualBoard: null });
304
+ continue;
305
+ }
306
+ if (actualBoard === null || !allowedSet.has(actualBoard)) {
307
+ mismatches.push({ itemId, actualBoard });
308
+ continue;
309
+ }
310
+ items.push({ itemId, boardId: actualBoard });
311
+ }
312
+ if (mismatches.length > 0) {
313
+ return { ok: false, mismatches };
314
+ }
315
+ return { ok: true, items };
316
+ };
317
+ //# sourceMappingURL=board-relation-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"board-relation-validation.js","sourceRoot":"","sources":["../../src/api/board-relation-validation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE1D,uEAAuE;AACvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C,oFAAoF;AACpF,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAsEpD,MAAM,iBAAiB,GAAG;;;;;;;;;CASzB,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC;KACtB,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,EAAE;QAC5C,OAAO,EAAE,uDAAuD;KACjE,CAAC;IACF,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAuB,EAAE;YAC5C,OAAO,EAAE,wDAAwD;SAClE,CAAC;KACH,CAAC;SACD,QAAQ,EAAE;CACd,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,mBAAmB,GAAG,CAAC;KAC1B,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC;KACD,MAAM,EAAE,CAAC;AAWZ;;;;;;GAMG;AACH,MAAM,WAAW,GAAG,CAAC,OAAwB,EAAU,EAAE,CACvD,OAAO,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,GAAW,EACX,QAAgB,EAChB,OAAwB,EACL,EAAE;IACrB,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,GAAG;SACf,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SAChC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,UAAU,CAClB,GACE,OAAO,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YACpD,YAAY,QAAQ,gCAAgC;YAClD,QAAQ,GAAG,iBAAiB,IAAI,eAAe;YAC/C,6BAA6B,QAAQ,6BAA6B,EACpE;YACE,OAAO,EAAE;gBACP,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,OAAO;gBACpB,SAAS,EAAE,GAAG;gBACd,IAAI,EACF,wDAAwD;oBACxD,SAAS,QAAQ,+BAA+B;oBAChD,2DAA2D;oBAC3D,qDAAqD;aACxD;SACF,CACF,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,wBAAwB,EAAE,CAAC;QAC7C,MAAM,IAAI,UAAU,CAClB,GACE,OAAO,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YACpD,YAAY,QAAQ,SAAS,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa;YAChE,oDAAoD;YACpD,GAAG,wBAAwB,CAAC,QAAQ,EAAE,yBAAyB;YAC/D,yBAAyB,wBAAwB,CAAC,QAAQ,EAAE,GAAG;YAC/D,gDAAgD,EAClD;YACE,OAAO,EAAE;gBACP,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,OAAO;gBACpB,SAAS,EAAE,GAAG;gBACd,UAAU,EAAE,MAAM,CAAC,MAAM;gBACzB,SAAS,EAAE,wBAAwB;gBACnC,IAAI,EACF,uCAAuC;oBACvC,GAAG,wBAAwB,CAAC,QAAQ,EAAE,mBAAmB;oBACzD,8CAA8C;aACjD;SACF,CACF,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,UAAU,CAClB,GACE,OAAO,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YACpD,YAAY,QAAQ,4BAA4B,KAAK,OAAO;gBAC1D,UAAU,GAAG,+CAA+C;gBAC5D,0DAA0D,EAC5D;gBACE,OAAO,EAAE;oBACP,SAAS,EAAE,QAAQ;oBACnB,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,GAAG;oBACd,KAAK;oBACL,IAAI,EACF,0CAA0C,QAAQ,GAAG;wBACrD,uDAAuD;wBACvD,iDAAiD;iBACpD;aACF,CACF,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,UAAU,CAClB,GACE,OAAO,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YACpD,YAAY,QAAQ,wBAAwB,KAAK,SAAS;gBACxD,0DAA0D;gBAC1D,yDAAyD;gBACzD,uCAAuC,EACzC;gBACE,OAAO,EAAE;oBACP,SAAS,EAAE,QAAQ;oBACnB,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,GAAG;oBACd,KAAK;oBACL,wDAAwD;oBACxD,wDAAwD;oBACxD,uDAAuD;oBACvD,uDAAuD;oBACvD,wDAAwD;oBACxD,iDAAiD;oBACjD,IAAI,EACF,kDAAkD;wBAClD,oDAAoD;wBACpD,uDAAuD;wBACvD,yDAAyD;wBACzD,qDAAqD;wBACrD,qCAAqC;iBACxC;aACF,CACF,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,UAAU,CAClB,GACE,OAAO,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YACpD,YAAY,QAAQ,4BAA4B,KAAK,OAAO;gBAC1D,UAAU,GAAG,2CAA2C;gBACxD,2DAA2D;gBAC3D,gCAAgC,EAClC;gBACE,OAAO,EAAE;oBACP,SAAS,EAAE,QAAQ;oBACnB,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,GAAG;oBACd,KAAK;oBACL,IAAI,EACF,8CAA8C,QAAQ,GAAG;wBACzD,gCAAgC;iBACnC;aACF,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAC7C,MAAqC,EACG,EAAE;IAC1C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAErE,+DAA+D;IAC/D,gEAAgE;IAChE,kEAAkE;IAClE,+DAA+D;IAC/D;uEACmE;IACnE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACjC,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS,aAAa,CAAC,CAAC;IAElD,MAAM,SAAS,GAAsC;QACnD,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;KACxC,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAC/B,iBAAiB,EACjB,SAAS,EACT,EAAE,aAAa,EAAE,uBAAuB,EAAE,CAC3C,CAAC;IACF,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;YACtB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,IAAI,EAAE,CAAC,CAAC,IAAI;SACb,CAAC,CAAC,CAAC;QACJ,MAAM,IAAI,QAAQ,CAChB,gBAAgB,EAChB,oEAAoE;YAClE,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,QAAQ,IAAI,EACjD;YACE,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE;gBACP,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,OAAO;gBACpB,MAAM;gBACN,IAAI,EACF,4DAA4D;oBAC5D,4DAA4D;oBAC5D,wDAAwD;aAC3D;SACF,CACF,CAAC;IACJ,CAAC;IAED,iEAAiE;IACjE,iEAAiE;IACjE,+CAA+C;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjC;;0BAEkB;QAClB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC;YAAE,SAAS;QAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtE,8DAA8D;QAC9D,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,SAAS;QACnE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,KAAK,GAA4B,EAAE,CAAC;IAC1C,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,6DAA6D;YAC7D,+DAA+D;YAC/D,4DAA4D;YAC5D,wBAAwB;YACxB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/C,SAAS;QACX,CAAC;QACD,IAAI,WAAW,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACzD,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;YACzC,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACnC,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC,CAAC"}
@@ -7,6 +7,8 @@ export type CacheKey = {
7
7
  readonly kind: 'users';
8
8
  } | {
9
9
  readonly kind: 'schemaVersion';
10
+ } | {
11
+ readonly kind: 'accountTags';
10
12
  };
11
13
  export interface CacheRootOptions {
12
14
  readonly env?: NodeJS.ProcessEnv;
@@ -71,12 +73,19 @@ export interface CacheEntryInfo {
71
73
  readonly modifiedAt: string;
72
74
  readonly ageSeconds: number;
73
75
  /**
74
- * Best-effort kind classification. `boards`/`users`/`schema` reflect
75
- * the layout in §8; an entry that doesn't match any known prefix is
76
- * surfaced as `other` rather than dropped — agents see exactly what
77
- * `cache clear` would remove.
76
+ * Best-effort kind classification. `boards`/`users`/`schema`/
77
+ * `account_tags` reflect the layout in §8; an entry that doesn't
78
+ * match any known prefix is surfaced as `other` rather than dropped
79
+ * — agents see exactly what `cache clear` would remove.
80
+ *
81
+ * **M19** added `account_tags` for the per-account tag directory
82
+ * (single-account-scope cache file under `account_tags/index.json`,
83
+ * mirroring `users/index.json`'s layout). Kind label uses snake-
84
+ * case to match the on-disk directory name; the `users` /
85
+ * `boards` / `schema` labels predate the convention but stay as-is
86
+ * for stability.
78
87
  */
79
- readonly kind: 'boards' | 'users' | 'schema' | 'other';
88
+ readonly kind: 'boards' | 'users' | 'schema' | 'account_tags' | 'other';
80
89
  readonly id: string | undefined;
81
90
  }
82
91
  interface ListOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/api/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/api/cache.ts"],"names":[],"mappings":"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"}