monday-cli 0.2.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.
- package/CHANGELOG.md +439 -0
- package/LICENSE +21 -0
- package/README.md +431 -0
- package/dist/api/board-child-finder.d.ts +95 -0
- package/dist/api/board-child-finder.d.ts.map +1 -0
- package/dist/api/board-child-finder.js +89 -0
- package/dist/api/board-child-finder.js.map +1 -0
- package/dist/api/board-metadata.d.ts +162 -0
- package/dist/api/board-metadata.d.ts.map +1 -0
- package/dist/api/board-metadata.js +238 -0
- package/dist/api/board-metadata.js.map +1 -0
- package/dist/api/board-mutation-invalidation.d.ts +153 -0
- package/dist/api/board-mutation-invalidation.d.ts.map +1 -0
- package/dist/api/board-mutation-invalidation.js +136 -0
- package/dist/api/board-mutation-invalidation.js.map +1 -0
- package/dist/api/board-mutation-result.d.ts +97 -0
- package/dist/api/board-mutation-result.d.ts.map +1 -0
- package/dist/api/board-mutation-result.js +99 -0
- package/dist/api/board-mutation-result.js.map +1 -0
- package/dist/api/board-projection.d.ts +68 -0
- package/dist/api/board-projection.d.ts.map +1 -0
- package/dist/api/board-projection.js +79 -0
- package/dist/api/board-projection.js.map +1 -0
- package/dist/api/cache.d.ts +150 -0
- package/dist/api/cache.d.ts.map +1 -0
- package/dist/api/cache.js +418 -0
- package/dist/api/cache.js.map +1 -0
- package/dist/api/client.d.ts +162 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +205 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/column-mapping.d.ts +68 -0
- package/dist/api/column-mapping.d.ts.map +1 -0
- package/dist/api/column-mapping.js +117 -0
- package/dist/api/column-mapping.js.map +1 -0
- package/dist/api/column-mutation-result.d.ts +136 -0
- package/dist/api/column-mutation-result.d.ts.map +1 -0
- package/dist/api/column-mutation-result.js +130 -0
- package/dist/api/column-mutation-result.js.map +1 -0
- package/dist/api/column-types.d.ts +215 -0
- package/dist/api/column-types.d.ts.map +1 -0
- package/dist/api/column-types.js +195 -0
- package/dist/api/column-types.js.map +1 -0
- package/dist/api/column-values.d.ts +446 -0
- package/dist/api/column-values.d.ts.map +1 -0
- package/dist/api/column-values.js +795 -0
- package/dist/api/column-values.js.map +1 -0
- package/dist/api/columns.d.ts +205 -0
- package/dist/api/columns.d.ts.map +1 -0
- package/dist/api/columns.js +343 -0
- package/dist/api/columns.js.map +1 -0
- package/dist/api/complexity.d.ts +90 -0
- package/dist/api/complexity.d.ts.map +1 -0
- package/dist/api/complexity.js +194 -0
- package/dist/api/complexity.js.map +1 -0
- package/dist/api/dates.d.ts +150 -0
- package/dist/api/dates.d.ts.map +1 -0
- package/dist/api/dates.js +490 -0
- package/dist/api/dates.js.map +1 -0
- package/dist/api/destructive-gate.d.ts +107 -0
- package/dist/api/destructive-gate.d.ts.map +1 -0
- package/dist/api/destructive-gate.js +19 -0
- package/dist/api/destructive-gate.js.map +1 -0
- package/dist/api/dry-run.d.ts +338 -0
- package/dist/api/dry-run.d.ts.map +1 -0
- package/dist/api/dry-run.js +607 -0
- package/dist/api/dry-run.js.map +1 -0
- package/dist/api/emails.d.ts +60 -0
- package/dist/api/emails.d.ts.map +1 -0
- package/dist/api/emails.js +113 -0
- package/dist/api/emails.js.map +1 -0
- package/dist/api/errors.d.ts +82 -0
- package/dist/api/errors.d.ts.map +1 -0
- package/dist/api/errors.js +434 -0
- package/dist/api/errors.js.map +1 -0
- package/dist/api/filters.d.ts +198 -0
- package/dist/api/filters.d.ts.map +1 -0
- package/dist/api/filters.js +328 -0
- package/dist/api/filters.js.map +1 -0
- package/dist/api/group-color.d.ts +33 -0
- package/dist/api/group-color.d.ts.map +1 -0
- package/dist/api/group-color.js +80 -0
- package/dist/api/group-color.js.map +1 -0
- package/dist/api/group-mutation-result.d.ts +150 -0
- package/dist/api/group-mutation-result.d.ts.map +1 -0
- package/dist/api/group-mutation-result.js +141 -0
- package/dist/api/group-mutation-result.js.map +1 -0
- package/dist/api/iso-country-codes.d.ts +45 -0
- package/dist/api/iso-country-codes.d.ts.map +1 -0
- package/dist/api/iso-country-codes.js +71 -0
- package/dist/api/iso-country-codes.js.map +1 -0
- package/dist/api/item-board-lookup.d.ts +86 -0
- package/dist/api/item-board-lookup.d.ts.map +1 -0
- package/dist/api/item-board-lookup.js +140 -0
- package/dist/api/item-board-lookup.js.map +1 -0
- package/dist/api/item-helpers.d.ts +133 -0
- package/dist/api/item-helpers.d.ts.map +1 -0
- package/dist/api/item-helpers.js +139 -0
- package/dist/api/item-helpers.js.map +1 -0
- package/dist/api/item-mutation-result.d.ts +60 -0
- package/dist/api/item-mutation-result.d.ts.map +1 -0
- package/dist/api/item-mutation-result.js +63 -0
- package/dist/api/item-mutation-result.js.map +1 -0
- package/dist/api/item-projection.d.ts +165 -0
- package/dist/api/item-projection.d.ts.map +1 -0
- package/dist/api/item-projection.js +235 -0
- package/dist/api/item-projection.js.map +1 -0
- package/dist/api/item-source-read.d.ts +45 -0
- package/dist/api/item-source-read.d.ts.map +1 -0
- package/dist/api/item-source-read.js +57 -0
- package/dist/api/item-source-read.js.map +1 -0
- package/dist/api/items-page-walker.d.ts +126 -0
- package/dist/api/items-page-walker.d.ts.map +1 -0
- package/dist/api/items-page-walker.js +256 -0
- package/dist/api/items-page-walker.js.map +1 -0
- package/dist/api/links.d.ts +70 -0
- package/dist/api/links.d.ts.map +1 -0
- package/dist/api/links.js +128 -0
- package/dist/api/links.js.map +1 -0
- package/dist/api/me-token.d.ts +52 -0
- package/dist/api/me-token.d.ts.map +1 -0
- package/dist/api/me-token.js +55 -0
- package/dist/api/me-token.js.map +1 -0
- package/dist/api/pagination.d.ts +201 -0
- package/dist/api/pagination.d.ts.map +1 -0
- package/dist/api/pagination.js +223 -0
- package/dist/api/pagination.js.map +1 -0
- package/dist/api/partial-success-mutation.d.ts +28 -0
- package/dist/api/partial-success-mutation.d.ts.map +1 -0
- package/dist/api/partial-success-mutation.js +68 -0
- package/dist/api/partial-success-mutation.js.map +1 -0
- package/dist/api/people.d.ts +182 -0
- package/dist/api/people.d.ts.map +1 -0
- package/dist/api/people.js +260 -0
- package/dist/api/people.js.map +1 -0
- package/dist/api/phones.d.ts +74 -0
- package/dist/api/phones.d.ts.map +1 -0
- package/dist/api/phones.js +167 -0
- package/dist/api/phones.js.map +1 -0
- package/dist/api/raw-document.d.ts +53 -0
- package/dist/api/raw-document.d.ts.map +1 -0
- package/dist/api/raw-document.js +177 -0
- package/dist/api/raw-document.js.map +1 -0
- package/dist/api/raw-write.d.ts +127 -0
- package/dist/api/raw-write.d.ts.map +1 -0
- package/dist/api/raw-write.js +233 -0
- package/dist/api/raw-write.js.map +1 -0
- package/dist/api/resolution-context.d.ts +32 -0
- package/dist/api/resolution-context.d.ts.map +1 -0
- package/dist/api/resolution-context.js +42 -0
- package/dist/api/resolution-context.js.map +1 -0
- package/dist/api/resolution-pass.d.ts +163 -0
- package/dist/api/resolution-pass.d.ts.map +1 -0
- package/dist/api/resolution-pass.js +254 -0
- package/dist/api/resolution-pass.js.map +1 -0
- package/dist/api/resolve-client.d.ts +69 -0
- package/dist/api/resolve-client.d.ts.map +1 -0
- package/dist/api/resolve-client.js +70 -0
- package/dist/api/resolve-client.js.map +1 -0
- package/dist/api/resolver-error-fold.d.ts +176 -0
- package/dist/api/resolver-error-fold.d.ts.map +1 -0
- package/dist/api/resolver-error-fold.js +230 -0
- package/dist/api/resolver-error-fold.js.map +1 -0
- package/dist/api/resolvers.d.ts +131 -0
- package/dist/api/resolvers.d.ts.map +1 -0
- package/dist/api/resolvers.js +262 -0
- package/dist/api/resolvers.js.map +1 -0
- package/dist/api/response-root.d.ts +65 -0
- package/dist/api/response-root.d.ts.map +1 -0
- package/dist/api/response-root.js +61 -0
- package/dist/api/response-root.js.map +1 -0
- package/dist/api/retry.d.ts +112 -0
- package/dist/api/retry.d.ts.map +1 -0
- package/dist/api/retry.js +181 -0
- package/dist/api/retry.js.map +1 -0
- package/dist/api/set-expression.d.ts +23 -0
- package/dist/api/set-expression.d.ts.map +1 -0
- package/dist/api/set-expression.js +31 -0
- package/dist/api/set-expression.js.map +1 -0
- package/dist/api/sort.d.ts +59 -0
- package/dist/api/sort.d.ts.map +1 -0
- package/dist/api/sort.js +73 -0
- package/dist/api/sort.js.map +1 -0
- package/dist/api/source-aggregator.d.ts +94 -0
- package/dist/api/source-aggregator.d.ts.map +1 -0
- package/dist/api/source-aggregator.js +111 -0
- package/dist/api/source-aggregator.js.map +1 -0
- package/dist/api/transport.d.ts +58 -0
- package/dist/api/transport.d.ts.map +1 -0
- package/dist/api/transport.js +190 -0
- package/dist/api/transport.js.map +1 -0
- package/dist/api/update-mutation-result.d.ts +133 -0
- package/dist/api/update-mutation-result.d.ts.map +1 -0
- package/dist/api/update-mutation-result.js +145 -0
- package/dist/api/update-mutation-result.js.map +1 -0
- package/dist/api/users-fan-out-mutation.d.ts +124 -0
- package/dist/api/users-fan-out-mutation.d.ts.map +1 -0
- package/dist/api/users-fan-out-mutation.js +331 -0
- package/dist/api/users-fan-out-mutation.js.map +1 -0
- package/dist/api/walk-pages.d.ts +91 -0
- package/dist/api/walk-pages.d.ts.map +1 -0
- package/dist/api/walk-pages.js +84 -0
- package/dist/api/walk-pages.js.map +1 -0
- package/dist/api/workspace-projection.d.ts +64 -0
- package/dist/api/workspace-projection.d.ts.map +1 -0
- package/dist/api/workspace-projection.js +83 -0
- package/dist/api/workspace-projection.js.map +1 -0
- package/dist/cli/envelope-out.d.ts +128 -0
- package/dist/cli/envelope-out.d.ts.map +1 -0
- package/dist/cli/envelope-out.js +146 -0
- package/dist/cli/envelope-out.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +27 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/program.d.ts +29 -0
- package/dist/cli/program.d.ts.map +1 -0
- package/dist/cli/program.js +109 -0
- package/dist/cli/program.js.map +1 -0
- package/dist/cli/run.d.ts +108 -0
- package/dist/cli/run.d.ts.map +1 -0
- package/dist/cli/run.js +105 -0
- package/dist/cli/run.js.map +1 -0
- package/dist/commands/account/client-helper.d.ts +37 -0
- package/dist/commands/account/client-helper.d.ts.map +1 -0
- package/dist/commands/account/client-helper.js +55 -0
- package/dist/commands/account/client-helper.js.map +1 -0
- package/dist/commands/account/complexity.d.ts +29 -0
- package/dist/commands/account/complexity.d.ts.map +1 -0
- package/dist/commands/account/complexity.js +70 -0
- package/dist/commands/account/complexity.js.map +1 -0
- package/dist/commands/account/info.d.ts +36 -0
- package/dist/commands/account/info.d.ts.map +1 -0
- package/dist/commands/account/info.js +74 -0
- package/dist/commands/account/info.js.map +1 -0
- package/dist/commands/account/version.d.ts +44 -0
- package/dist/commands/account/version.d.ts.map +1 -0
- package/dist/commands/account/version.js +98 -0
- package/dist/commands/account/version.js.map +1 -0
- package/dist/commands/account/whoami.d.ts +34 -0
- package/dist/commands/account/whoami.d.ts.map +1 -0
- package/dist/commands/account/whoami.js +77 -0
- package/dist/commands/account/whoami.js.map +1 -0
- package/dist/commands/board/add-users.d.ts +60 -0
- package/dist/commands/board/add-users.d.ts.map +1 -0
- package/dist/commands/board/add-users.js +133 -0
- package/dist/commands/board/add-users.js.map +1 -0
- package/dist/commands/board/archive.d.ts +64 -0
- package/dist/commands/board/archive.d.ts.map +1 -0
- package/dist/commands/board/archive.js +226 -0
- package/dist/commands/board/archive.js.map +1 -0
- package/dist/commands/board/column-create.d.ts +146 -0
- package/dist/commands/board/column-create.d.ts.map +1 -0
- package/dist/commands/board/column-create.js +564 -0
- package/dist/commands/board/column-create.js.map +1 -0
- package/dist/commands/board/column-delete.d.ts +76 -0
- package/dist/commands/board/column-delete.d.ts.map +1 -0
- package/dist/commands/board/column-delete.js +224 -0
- package/dist/commands/board/column-delete.js.map +1 -0
- package/dist/commands/board/column-update.d.ts +92 -0
- package/dist/commands/board/column-update.d.ts.map +1 -0
- package/dist/commands/board/column-update.js +364 -0
- package/dist/commands/board/column-update.js.map +1 -0
- package/dist/commands/board/columns.d.ts +30 -0
- package/dist/commands/board/columns.d.ts.map +1 -0
- package/dist/commands/board/columns.js +102 -0
- package/dist/commands/board/columns.js.map +1 -0
- package/dist/commands/board/create.d.ts +67 -0
- package/dist/commands/board/create.d.ts.map +1 -0
- package/dist/commands/board/create.js +226 -0
- package/dist/commands/board/create.js.map +1 -0
- package/dist/commands/board/delete.d.ts +60 -0
- package/dist/commands/board/delete.d.ts.map +1 -0
- package/dist/commands/board/delete.js +192 -0
- package/dist/commands/board/delete.js.map +1 -0
- package/dist/commands/board/describe.d.ts +68 -0
- package/dist/commands/board/describe.d.ts.map +1 -0
- package/dist/commands/board/describe.js +241 -0
- package/dist/commands/board/describe.js.map +1 -0
- package/dist/commands/board/doctor.d.ts +108 -0
- package/dist/commands/board/doctor.d.ts.map +1 -0
- package/dist/commands/board/doctor.js +417 -0
- package/dist/commands/board/doctor.js.map +1 -0
- package/dist/commands/board/duplicate.d.ts +85 -0
- package/dist/commands/board/duplicate.d.ts.map +1 -0
- package/dist/commands/board/duplicate.js +281 -0
- package/dist/commands/board/duplicate.js.map +1 -0
- package/dist/commands/board/find.d.ts +47 -0
- package/dist/commands/board/find.d.ts.map +1 -0
- package/dist/commands/board/find.js +153 -0
- package/dist/commands/board/find.js.map +1 -0
- package/dist/commands/board/get.d.ts +41 -0
- package/dist/commands/board/get.d.ts.map +1 -0
- package/dist/commands/board/get.js +66 -0
- package/dist/commands/board/get.js.map +1 -0
- package/dist/commands/board/group-archive.d.ts +83 -0
- package/dist/commands/board/group-archive.d.ts.map +1 -0
- package/dist/commands/board/group-archive.js +264 -0
- package/dist/commands/board/group-archive.js.map +1 -0
- package/dist/commands/board/group-create.d.ts +118 -0
- package/dist/commands/board/group-create.d.ts.map +1 -0
- package/dist/commands/board/group-create.js +239 -0
- package/dist/commands/board/group-create.js.map +1 -0
- package/dist/commands/board/group-delete.d.ts +79 -0
- package/dist/commands/board/group-delete.d.ts.map +1 -0
- package/dist/commands/board/group-delete.js +222 -0
- package/dist/commands/board/group-delete.js.map +1 -0
- package/dist/commands/board/group-duplicate.d.ts +70 -0
- package/dist/commands/board/group-duplicate.d.ts.map +1 -0
- package/dist/commands/board/group-duplicate.js +219 -0
- package/dist/commands/board/group-duplicate.js.map +1 -0
- package/dist/commands/board/group-update.d.ts +145 -0
- package/dist/commands/board/group-update.d.ts.map +1 -0
- package/dist/commands/board/group-update.js +341 -0
- package/dist/commands/board/group-update.js.map +1 -0
- package/dist/commands/board/groups.d.ts +28 -0
- package/dist/commands/board/groups.d.ts.map +1 -0
- package/dist/commands/board/groups.js +85 -0
- package/dist/commands/board/groups.js.map +1 -0
- package/dist/commands/board/list.d.ts +39 -0
- package/dist/commands/board/list.d.ts.map +1 -0
- package/dist/commands/board/list.js +135 -0
- package/dist/commands/board/list.js.map +1 -0
- package/dist/commands/board/subscribers.d.ts +24 -0
- package/dist/commands/board/subscribers.d.ts.map +1 -0
- package/dist/commands/board/subscribers.js +89 -0
- package/dist/commands/board/subscribers.js.map +1 -0
- package/dist/commands/board/update.d.ts +82 -0
- package/dist/commands/board/update.d.ts.map +1 -0
- package/dist/commands/board/update.js +328 -0
- package/dist/commands/board/update.js.map +1 -0
- package/dist/commands/cache/clear.d.ts +34 -0
- package/dist/commands/cache/clear.d.ts.map +1 -0
- package/dist/commands/cache/clear.js +113 -0
- package/dist/commands/cache/clear.js.map +1 -0
- package/dist/commands/cache/list.d.ts +50 -0
- package/dist/commands/cache/list.d.ts.map +1 -0
- package/dist/commands/cache/list.js +77 -0
- package/dist/commands/cache/list.js.map +1 -0
- package/dist/commands/cache/stats.d.ts +22 -0
- package/dist/commands/cache/stats.d.ts.map +1 -0
- package/dist/commands/cache/stats.js +56 -0
- package/dist/commands/cache/stats.js.map +1 -0
- package/dist/commands/config/path.d.ts +22 -0
- package/dist/commands/config/path.d.ts.map +1 -0
- package/dist/commands/config/path.js +74 -0
- package/dist/commands/config/path.js.map +1 -0
- package/dist/commands/config/show.d.ts +61 -0
- package/dist/commands/config/show.d.ts.map +1 -0
- package/dist/commands/config/show.js +137 -0
- package/dist/commands/config/show.js.map +1 -0
- package/dist/commands/emit.d.ts +156 -0
- package/dist/commands/emit.d.ts.map +1 -0
- package/dist/commands/emit.js +212 -0
- package/dist/commands/emit.js.map +1 -0
- package/dist/commands/index.d.ts +5 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +195 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/item/archive.d.ts +81 -0
- package/dist/commands/item/archive.d.ts.map +1 -0
- package/dist/commands/item/archive.js +187 -0
- package/dist/commands/item/archive.js.map +1 -0
- package/dist/commands/item/clear.d.ts +140 -0
- package/dist/commands/item/clear.d.ts.map +1 -0
- package/dist/commands/item/clear.js +748 -0
- package/dist/commands/item/clear.js.map +1 -0
- package/dist/commands/item/create.d.ts +77 -0
- package/dist/commands/item/create.d.ts.map +1 -0
- package/dist/commands/item/create.js +802 -0
- package/dist/commands/item/create.js.map +1 -0
- package/dist/commands/item/delete.d.ts +82 -0
- package/dist/commands/item/delete.d.ts.map +1 -0
- package/dist/commands/item/delete.js +179 -0
- package/dist/commands/item/delete.js.map +1 -0
- package/dist/commands/item/duplicate.d.ts +117 -0
- package/dist/commands/item/duplicate.d.ts.map +1 -0
- package/dist/commands/item/duplicate.js +238 -0
- package/dist/commands/item/duplicate.js.map +1 -0
- package/dist/commands/item/find.d.ts +55 -0
- package/dist/commands/item/find.d.ts.map +1 -0
- package/dist/commands/item/find.js +231 -0
- package/dist/commands/item/find.js.map +1 -0
- package/dist/commands/item/get.d.ts +47 -0
- package/dist/commands/item/get.d.ts.map +1 -0
- package/dist/commands/item/get.js +66 -0
- package/dist/commands/item/get.js.map +1 -0
- package/dist/commands/item/list.d.ts +73 -0
- package/dist/commands/item/list.d.ts.map +1 -0
- package/dist/commands/item/list.js +284 -0
- package/dist/commands/item/list.js.map +1 -0
- package/dist/commands/item/move.d.ts +181 -0
- package/dist/commands/item/move.d.ts.map +1 -0
- package/dist/commands/item/move.js +560 -0
- package/dist/commands/item/move.js.map +1 -0
- package/dist/commands/item/search.d.ts +67 -0
- package/dist/commands/item/search.d.ts.map +1 -0
- package/dist/commands/item/search.js +322 -0
- package/dist/commands/item/search.js.map +1 -0
- package/dist/commands/item/set.d.ts +88 -0
- package/dist/commands/item/set.d.ts.map +1 -0
- package/dist/commands/item/set.js +387 -0
- package/dist/commands/item/set.js.map +1 -0
- package/dist/commands/item/subitems.d.ts +50 -0
- package/dist/commands/item/subitems.d.ts.map +1 -0
- package/dist/commands/item/subitems.js +86 -0
- package/dist/commands/item/subitems.js.map +1 -0
- package/dist/commands/item/update.d.ts +99 -0
- package/dist/commands/item/update.d.ts.map +1 -0
- package/dist/commands/item/update.js +884 -0
- package/dist/commands/item/update.js.map +1 -0
- package/dist/commands/item/upsert.d.ts +105 -0
- package/dist/commands/item/upsert.d.ts.map +1 -0
- package/dist/commands/item/upsert.js +998 -0
- package/dist/commands/item/upsert.js.map +1 -0
- package/dist/commands/parse-argv.d.ts +20 -0
- package/dist/commands/parse-argv.d.ts.map +1 -0
- package/dist/commands/parse-argv.js +40 -0
- package/dist/commands/parse-argv.js.map +1 -0
- package/dist/commands/raw/index.d.ts +23 -0
- package/dist/commands/raw/index.d.ts.map +1 -0
- package/dist/commands/raw/index.js +416 -0
- package/dist/commands/raw/index.js.map +1 -0
- package/dist/commands/run-by-id-lookup.d.ts +72 -0
- package/dist/commands/run-by-id-lookup.d.ts.map +1 -0
- package/dist/commands/run-by-id-lookup.js +58 -0
- package/dist/commands/run-by-id-lookup.js.map +1 -0
- package/dist/commands/schema/index.d.ts +104 -0
- package/dist/commands/schema/index.d.ts.map +1 -0
- package/dist/commands/schema/index.js +183 -0
- package/dist/commands/schema/index.js.map +1 -0
- package/dist/commands/types.d.ts +66 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +15 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/commands/update/body-source.d.ts +38 -0
- package/dist/commands/update/body-source.d.ts.map +1 -0
- package/dist/commands/update/body-source.js +80 -0
- package/dist/commands/update/body-source.js.map +1 -0
- package/dist/commands/update/clear-all.d.ts +67 -0
- package/dist/commands/update/clear-all.d.ts.map +1 -0
- package/dist/commands/update/clear-all.js +281 -0
- package/dist/commands/update/clear-all.js.map +1 -0
- package/dist/commands/update/create.d.ts +51 -0
- package/dist/commands/update/create.d.ts.map +1 -0
- package/dist/commands/update/create.js +167 -0
- package/dist/commands/update/create.js.map +1 -0
- package/dist/commands/update/delete.d.ts +53 -0
- package/dist/commands/update/delete.d.ts.map +1 -0
- package/dist/commands/update/delete.js +148 -0
- package/dist/commands/update/delete.js.map +1 -0
- package/dist/commands/update/edit.d.ts +37 -0
- package/dist/commands/update/edit.d.ts.map +1 -0
- package/dist/commands/update/edit.js +129 -0
- package/dist/commands/update/edit.js.map +1 -0
- package/dist/commands/update/get.d.ts +37 -0
- package/dist/commands/update/get.d.ts.map +1 -0
- package/dist/commands/update/get.js +92 -0
- package/dist/commands/update/get.js.map +1 -0
- package/dist/commands/update/like.d.ts +17 -0
- package/dist/commands/update/like.d.ts.map +1 -0
- package/dist/commands/update/like.js +23 -0
- package/dist/commands/update/like.js.map +1 -0
- package/dist/commands/update/list.d.ts +58 -0
- package/dist/commands/update/list.d.ts.map +1 -0
- package/dist/commands/update/list.js +322 -0
- package/dist/commands/update/list.js.map +1 -0
- package/dist/commands/update/pin.d.ts +17 -0
- package/dist/commands/update/pin.d.ts.map +1 -0
- package/dist/commands/update/pin.js +23 -0
- package/dist/commands/update/pin.js.map +1 -0
- package/dist/commands/update/reply.d.ts +47 -0
- package/dist/commands/update/reply.d.ts.map +1 -0
- package/dist/commands/update/reply.js +149 -0
- package/dist/commands/update/reply.js.map +1 -0
- package/dist/commands/update/toggle.d.ts +70 -0
- package/dist/commands/update/toggle.d.ts.map +1 -0
- package/dist/commands/update/toggle.js +118 -0
- package/dist/commands/update/toggle.js.map +1 -0
- package/dist/commands/update/unlike.d.ts +17 -0
- package/dist/commands/update/unlike.d.ts.map +1 -0
- package/dist/commands/update/unlike.js +22 -0
- package/dist/commands/update/unlike.js.map +1 -0
- package/dist/commands/update/unpin.d.ts +17 -0
- package/dist/commands/update/unpin.d.ts.map +1 -0
- package/dist/commands/update/unpin.js +21 -0
- package/dist/commands/update/unpin.js.map +1 -0
- package/dist/commands/user/get.d.ts +31 -0
- package/dist/commands/user/get.d.ts.map +1 -0
- package/dist/commands/user/get.js +81 -0
- package/dist/commands/user/get.js.map +1 -0
- package/dist/commands/user/list.d.ts +61 -0
- package/dist/commands/user/list.d.ts.map +1 -0
- package/dist/commands/user/list.js +148 -0
- package/dist/commands/user/list.js.map +1 -0
- package/dist/commands/user/me.d.ts +17 -0
- package/dist/commands/user/me.d.ts.map +1 -0
- package/dist/commands/user/me.js +49 -0
- package/dist/commands/user/me.js.map +1 -0
- package/dist/commands/workspace/add-users.d.ts +76 -0
- package/dist/commands/workspace/add-users.d.ts.map +1 -0
- package/dist/commands/workspace/add-users.js +154 -0
- package/dist/commands/workspace/add-users.js.map +1 -0
- package/dist/commands/workspace/create.d.ts +59 -0
- package/dist/commands/workspace/create.d.ts.map +1 -0
- package/dist/commands/workspace/create.js +163 -0
- package/dist/commands/workspace/create.js.map +1 -0
- package/dist/commands/workspace/delete.d.ts +67 -0
- package/dist/commands/workspace/delete.d.ts.map +1 -0
- package/dist/commands/workspace/delete.js +182 -0
- package/dist/commands/workspace/delete.js.map +1 -0
- package/dist/commands/workspace/folders.d.ts +40 -0
- package/dist/commands/workspace/folders.d.ts.map +1 -0
- package/dist/commands/workspace/folders.js +124 -0
- package/dist/commands/workspace/folders.js.map +1 -0
- package/dist/commands/workspace/get.d.ts +35 -0
- package/dist/commands/workspace/get.d.ts.map +1 -0
- package/dist/commands/workspace/get.js +62 -0
- package/dist/commands/workspace/get.js.map +1 -0
- package/dist/commands/workspace/list.d.ts +57 -0
- package/dist/commands/workspace/list.d.ts.map +1 -0
- package/dist/commands/workspace/list.js +125 -0
- package/dist/commands/workspace/list.js.map +1 -0
- package/dist/commands/workspace/remove-users.d.ts +47 -0
- package/dist/commands/workspace/remove-users.d.ts.map +1 -0
- package/dist/commands/workspace/remove-users.js +122 -0
- package/dist/commands/workspace/remove-users.js.map +1 -0
- package/dist/commands/workspace/update.d.ts +68 -0
- package/dist/commands/workspace/update.d.ts.map +1 -0
- package/dist/commands/workspace/update.js +237 -0
- package/dist/commands/workspace/update.js.map +1 -0
- package/dist/config/load.d.ts +33 -0
- package/dist/config/load.d.ts.map +1 -0
- package/dist/config/load.js +81 -0
- package/dist/config/load.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/types/global-flags.d.ts +69 -0
- package/dist/types/global-flags.d.ts.map +1 -0
- package/dist/types/global-flags.js +170 -0
- package/dist/types/global-flags.js.map +1 -0
- package/dist/types/ids.d.ts +38 -0
- package/dist/types/ids.d.ts.map +1 -0
- package/dist/types/ids.js +51 -0
- package/dist/types/ids.js.map +1 -0
- package/dist/types/json.d.ts +60 -0
- package/dist/types/json.d.ts.map +1 -0
- package/dist/types/json.js +33 -0
- package/dist/types/json.js.map +1 -0
- package/dist/utils/errors.d.ts +121 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +264 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/logger.d.ts +39 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +49 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/output/envelope.d.ts +140 -0
- package/dist/utils/output/envelope.d.ts.map +1 -0
- package/dist/utils/output/envelope.js +120 -0
- package/dist/utils/output/envelope.js.map +1 -0
- package/dist/utils/output/json.d.ts +10 -0
- package/dist/utils/output/json.d.ts.map +1 -0
- package/dist/utils/output/json.js +12 -0
- package/dist/utils/output/json.js.map +1 -0
- package/dist/utils/output/ndjson.d.ts +92 -0
- package/dist/utils/output/ndjson.d.ts.map +1 -0
- package/dist/utils/output/ndjson.js +33 -0
- package/dist/utils/output/ndjson.js.map +1 -0
- package/dist/utils/output/select.d.ts +22 -0
- package/dist/utils/output/select.d.ts.map +1 -0
- package/dist/utils/output/select.js +47 -0
- package/dist/utils/output/select.js.map +1 -0
- package/dist/utils/output/table.d.ts +32 -0
- package/dist/utils/output/table.d.ts.map +1 -0
- package/dist/utils/output/table.js +133 -0
- package/dist/utils/output/table.js.map +1 -0
- package/dist/utils/output/text.d.ts +5 -0
- package/dist/utils/output/text.d.ts.map +1 -0
- package/dist/utils/output/text.js +32 -0
- package/dist/utils/output/text.js.map +1 -0
- package/dist/utils/parse-boundary.d.ts +53 -0
- package/dist/utils/parse-boundary.d.ts.map +1 -0
- package/dist/utils/parse-boundary.js +62 -0
- package/dist/utils/parse-boundary.js.map +1 -0
- package/dist/utils/redact.d.ts +54 -0
- package/dist/utils/redact.d.ts.map +1 -0
- package/dist/utils/redact.js +154 -0
- package/dist/utils/redact.js.map +1 -0
- package/dist/utils/request-id.d.ts +17 -0
- package/dist/utils/request-id.d.ts.map +1 -0
- package/dist/utils/request-id.js +26 -0
- package/dist/utils/request-id.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"body-source.js","sourceRoot":"","sources":["../../../src/commands/update/body-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday update clear-all <iid> --yes [--dry-run]` — delete every
|
|
3
|
+
* update on an item (`cli-design.md` §4.3 line 702-715,
|
|
4
|
+
* `v0.2-plan.md` §3 M13).
|
|
5
|
+
*
|
|
6
|
+
* **Two-leg flow.** First page-walks `updates(item_id)` via
|
|
7
|
+
* `walkPages` to enumerate every update on the item; then iterates
|
|
8
|
+
* `delete_update(id)` once per collected update. Sequential per
|
|
9
|
+
* v0.2-plan §8 decision 8 — parallel waits for v0.4 `--concurrency`.
|
|
10
|
+
*
|
|
11
|
+
* **Partial-success envelope** (cli-design §6.4 partial-success
|
|
12
|
+
* shape; v0.2-plan §1 universal rule). Whole-call success means the
|
|
13
|
+
* page-walk + dispatch ran, regardless of per-update outcomes —
|
|
14
|
+
* envelope is `ok: true` with `data.results: [{update_id, ok,
|
|
15
|
+
* error?}]`. Top-level `error` reserved for whole-call failure
|
|
16
|
+
* (couldn't reach the API; the page-walk threw before any
|
|
17
|
+
* delete_update fired; the item itself is not_found). `update
|
|
18
|
+
* clear-all` is the FIRST consumer of this shape; M14 / M15 add-
|
|
19
|
+
* users / remove-users reuse it via `dispatchSequential`.
|
|
20
|
+
*
|
|
21
|
+
* **Confirmation gate** (cli-design §3.1 #7 + §10.2). `--yes`
|
|
22
|
+
* mandatory; gate fires before `resolveClient` per the M10 round-1
|
|
23
|
+
* P2 ordering invariant.
|
|
24
|
+
*
|
|
25
|
+
* **Dry-run shape** per cli-design §6.4 update-clear-all variant:
|
|
26
|
+
* page-walks for the would-delete IDs (no `delete_update` fires),
|
|
27
|
+
* emits `{operation: "clear_all_updates", item_id, update_ids:
|
|
28
|
+
* [...]}`. `meta.source: 'live'` — the page-walk fires real reads.
|
|
29
|
+
*
|
|
30
|
+
* **Idempotent: yes** — re-running on an item that's already had
|
|
31
|
+
* its updates cleared produces an empty `results: []` (the page-
|
|
32
|
+
* walk finds zero updates, the dispatch loop runs zero times,
|
|
33
|
+
* envelope is `ok: true` with no per-update records). Mirrors the
|
|
34
|
+
* "ran the dispatch and here are the per-target outcomes" contract
|
|
35
|
+
* — zero outcomes is a valid outcome.
|
|
36
|
+
*
|
|
37
|
+
* **Why per-update fan-out instead of `clear_item_updates`** (the
|
|
38
|
+
* SDK's atomic alternative). Monday DOES expose `clear_item_updates
|
|
39
|
+
* (item_id)` as a single mutation that deletes all updates server-
|
|
40
|
+
* side; the v0.2-plan + this implementation deliberately fan-out
|
|
41
|
+
* because (a) per-update visibility is more useful to agents on
|
|
42
|
+
* partial-permission failures and (b) the partial-success envelope
|
|
43
|
+
* shape M14 / M15 inherit needs a real first consumer. The atomic
|
|
44
|
+
* mutation is logged as a v0.3 optimisation candidate (see M13
|
|
45
|
+
* post-mortem) — landing it requires empirical proof of Monday's
|
|
46
|
+
* atomic-failure semantics.
|
|
47
|
+
*/
|
|
48
|
+
import { z } from 'zod';
|
|
49
|
+
import { type CommandModule } from '../types.js';
|
|
50
|
+
export declare const updateClearAllOutputSchema: z.ZodObject<{
|
|
51
|
+
results: z.ZodArray<z.ZodObject<{
|
|
52
|
+
update_id: z.core.$ZodBranded<z.ZodString, "UpdateId", "out">;
|
|
53
|
+
ok: z.ZodBoolean;
|
|
54
|
+
error: z.ZodOptional<z.ZodObject<{
|
|
55
|
+
code: z.ZodString;
|
|
56
|
+
message: z.ZodString;
|
|
57
|
+
}, z.core.$strict>>;
|
|
58
|
+
}, z.core.$strict>>;
|
|
59
|
+
}, z.core.$strict>;
|
|
60
|
+
export type UpdateClearAllOutput = z.infer<typeof updateClearAllOutputSchema>;
|
|
61
|
+
declare const inputSchema: z.ZodObject<{
|
|
62
|
+
itemId: z.core.$ZodBranded<z.ZodString, "ItemId", "out">;
|
|
63
|
+
limitPages: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
64
|
+
}, z.core.$strict>;
|
|
65
|
+
export declare const updateClearAllCommand: CommandModule<z.infer<typeof inputSchema>, UpdateClearAllOutput>;
|
|
66
|
+
export {};
|
|
67
|
+
//# sourceMappingURL=clear-all.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-all.d.ts","sourceRoot":"","sources":["../../../src/commands/update/clear-all.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAiEnE,eAAO,MAAM,0BAA0B;;;;;;;;;kBAI5B,CAAC;AAEZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,QAAA,MAAM,WAAW;;;kBAKN,CAAC;AAiEZ,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAC/C,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,oBAAoB,CAiLrB,CAAC"}
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday update clear-all <iid> --yes [--dry-run]` — delete every
|
|
3
|
+
* update on an item (`cli-design.md` §4.3 line 702-715,
|
|
4
|
+
* `v0.2-plan.md` §3 M13).
|
|
5
|
+
*
|
|
6
|
+
* **Two-leg flow.** First page-walks `updates(item_id)` via
|
|
7
|
+
* `walkPages` to enumerate every update on the item; then iterates
|
|
8
|
+
* `delete_update(id)` once per collected update. Sequential per
|
|
9
|
+
* v0.2-plan §8 decision 8 — parallel waits for v0.4 `--concurrency`.
|
|
10
|
+
*
|
|
11
|
+
* **Partial-success envelope** (cli-design §6.4 partial-success
|
|
12
|
+
* shape; v0.2-plan §1 universal rule). Whole-call success means the
|
|
13
|
+
* page-walk + dispatch ran, regardless of per-update outcomes —
|
|
14
|
+
* envelope is `ok: true` with `data.results: [{update_id, ok,
|
|
15
|
+
* error?}]`. Top-level `error` reserved for whole-call failure
|
|
16
|
+
* (couldn't reach the API; the page-walk threw before any
|
|
17
|
+
* delete_update fired; the item itself is not_found). `update
|
|
18
|
+
* clear-all` is the FIRST consumer of this shape; M14 / M15 add-
|
|
19
|
+
* users / remove-users reuse it via `dispatchSequential`.
|
|
20
|
+
*
|
|
21
|
+
* **Confirmation gate** (cli-design §3.1 #7 + §10.2). `--yes`
|
|
22
|
+
* mandatory; gate fires before `resolveClient` per the M10 round-1
|
|
23
|
+
* P2 ordering invariant.
|
|
24
|
+
*
|
|
25
|
+
* **Dry-run shape** per cli-design §6.4 update-clear-all variant:
|
|
26
|
+
* page-walks for the would-delete IDs (no `delete_update` fires),
|
|
27
|
+
* emits `{operation: "clear_all_updates", item_id, update_ids:
|
|
28
|
+
* [...]}`. `meta.source: 'live'` — the page-walk fires real reads.
|
|
29
|
+
*
|
|
30
|
+
* **Idempotent: yes** — re-running on an item that's already had
|
|
31
|
+
* its updates cleared produces an empty `results: []` (the page-
|
|
32
|
+
* walk finds zero updates, the dispatch loop runs zero times,
|
|
33
|
+
* envelope is `ok: true` with no per-update records). Mirrors the
|
|
34
|
+
* "ran the dispatch and here are the per-target outcomes" contract
|
|
35
|
+
* — zero outcomes is a valid outcome.
|
|
36
|
+
*
|
|
37
|
+
* **Why per-update fan-out instead of `clear_item_updates`** (the
|
|
38
|
+
* SDK's atomic alternative). Monday DOES expose `clear_item_updates
|
|
39
|
+
* (item_id)` as a single mutation that deletes all updates server-
|
|
40
|
+
* side; the v0.2-plan + this implementation deliberately fan-out
|
|
41
|
+
* because (a) per-update visibility is more useful to agents on
|
|
42
|
+
* partial-permission failures and (b) the partial-success envelope
|
|
43
|
+
* shape M14 / M15 inherit needs a real first consumer. The atomic
|
|
44
|
+
* mutation is logged as a v0.3 optimisation candidate (see M13
|
|
45
|
+
* post-mortem) — landing it requires empirical proof of Monday's
|
|
46
|
+
* atomic-failure semantics.
|
|
47
|
+
*/
|
|
48
|
+
import { z } from 'zod';
|
|
49
|
+
import { ensureSubcommand } from '../types.js';
|
|
50
|
+
import { emitDryRun, emitMutation } from '../emit.js';
|
|
51
|
+
import { resolveClient } from '../../api/resolve-client.js';
|
|
52
|
+
import { ItemIdSchema, UpdateIdSchema } from '../../types/ids.js';
|
|
53
|
+
import { parseArgv } from '../parse-argv.js';
|
|
54
|
+
import { parseGlobalFlags } from '../../types/global-flags.js';
|
|
55
|
+
import { ApiError } from '../../utils/errors.js';
|
|
56
|
+
import { enforceDestructiveGate } from '../../api/destructive-gate.js';
|
|
57
|
+
import { buildCapWarning, DEFAULT_MAX_PAGES, walkPages, } from '../../api/walk-pages.js';
|
|
58
|
+
import { dispatchSequential } from '../../api/partial-success-mutation.js';
|
|
59
|
+
import { SourceAggregator } from '../../api/source-aggregator.js';
|
|
60
|
+
import { unwrapOrThrow } from '../../utils/parse-boundary.js';
|
|
61
|
+
import { assertUpdateMutationPresent } from '../../api/update-mutation-result.js';
|
|
62
|
+
const UPDATE_IDS_QUERY = `
|
|
63
|
+
query UpdateClearAllRead($itemIds: [ID!], $limit: Int, $page: Int) {
|
|
64
|
+
items(ids: $itemIds) {
|
|
65
|
+
id
|
|
66
|
+
updates(limit: $limit, page: $page) {
|
|
67
|
+
id
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
`;
|
|
72
|
+
const DELETE_UPDATE_MUTATION = `
|
|
73
|
+
mutation UpdateClearAllDelete($id: ID!) {
|
|
74
|
+
delete_update(id: $id) {
|
|
75
|
+
id
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
`;
|
|
79
|
+
// Per-update record shape: `update_id` (the id-field) + `ok` + an
|
|
80
|
+
// optional `error: {code, message}` slot per cli-design §6.4. The
|
|
81
|
+
// envelope's `data` is `{results: [...]}` regardless of per-update
|
|
82
|
+
// outcomes (whole-call success means dispatch ran).
|
|
83
|
+
const errorShape = z
|
|
84
|
+
.object({
|
|
85
|
+
code: z.string().min(1),
|
|
86
|
+
message: z.string(),
|
|
87
|
+
})
|
|
88
|
+
.strict();
|
|
89
|
+
const resultRecordSchema = z
|
|
90
|
+
.object({
|
|
91
|
+
update_id: UpdateIdSchema,
|
|
92
|
+
ok: z.boolean(),
|
|
93
|
+
error: errorShape.optional(),
|
|
94
|
+
})
|
|
95
|
+
.strict();
|
|
96
|
+
export const updateClearAllOutputSchema = z
|
|
97
|
+
.object({
|
|
98
|
+
results: z.array(resultRecordSchema),
|
|
99
|
+
})
|
|
100
|
+
.strict();
|
|
101
|
+
const inputSchema = z
|
|
102
|
+
.object({
|
|
103
|
+
itemId: ItemIdSchema,
|
|
104
|
+
limitPages: z.coerce.number().int().positive().max(500).optional(),
|
|
105
|
+
})
|
|
106
|
+
.strict();
|
|
107
|
+
const PAGE_SIZE = 100;
|
|
108
|
+
const collectUpdateIds = async (client, itemId, source, maxPages) => {
|
|
109
|
+
let pageCounter = 0;
|
|
110
|
+
const result = await walkPages({
|
|
111
|
+
fetchPage: async (page) => {
|
|
112
|
+
const response = await client.raw(UPDATE_IDS_QUERY, { itemIds: [itemId], limit: PAGE_SIZE, page }, { operationName: 'UpdateClearAllRead' });
|
|
113
|
+
pageCounter++;
|
|
114
|
+
// Read leg fired — record 'live'. cache_age_seconds: null
|
|
115
|
+
// because no cache lookup happened (this is a raw GraphQL read).
|
|
116
|
+
source.record('live', null);
|
|
117
|
+
// Distinguish "item not found" (Monday returns []) from "item
|
|
118
|
+
// exists with no updates" (Monday returns [{...}] with empty
|
|
119
|
+
// `updates`). Mirrors `update list`'s rule (list.ts:158): only
|
|
120
|
+
// the first page can hand a not_found.
|
|
121
|
+
if (pageCounter === 1 && (response.data.items ?? []).length === 0) {
|
|
122
|
+
throw new ApiError('not_found', `Monday returned no item for id ${itemId}`, { details: { item_id: itemId } });
|
|
123
|
+
}
|
|
124
|
+
return response;
|
|
125
|
+
},
|
|
126
|
+
extractItems: (r) => {
|
|
127
|
+
const updates = r.data.items?.[0]?.updates ?? [];
|
|
128
|
+
return updates.filter((u) => typeof u.id === 'string');
|
|
129
|
+
},
|
|
130
|
+
pageSize: PAGE_SIZE,
|
|
131
|
+
all: true,
|
|
132
|
+
maxPages,
|
|
133
|
+
});
|
|
134
|
+
return {
|
|
135
|
+
ids: result.items.map((u) => u.id),
|
|
136
|
+
hasMore: result.hasMore,
|
|
137
|
+
pagesFetched: result.pagesFetched,
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
export const updateClearAllCommand = {
|
|
141
|
+
name: 'update.clear-all',
|
|
142
|
+
summary: 'Delete every update on an item — --yes required',
|
|
143
|
+
examples: [
|
|
144
|
+
'monday update clear-all 12345 --yes',
|
|
145
|
+
'monday update clear-all 12345 --dry-run',
|
|
146
|
+
'monday update clear-all 12345 --yes --json',
|
|
147
|
+
],
|
|
148
|
+
// Idempotent: re-running on an already-cleared item produces empty
|
|
149
|
+
// `data.results` (zero per-target outcomes). The "dispatch ran" half
|
|
150
|
+
// of the contract holds even when the page-walk finds nothing — the
|
|
151
|
+
// envelope still emits `ok: true` with `results: []`.
|
|
152
|
+
idempotent: true,
|
|
153
|
+
inputSchema,
|
|
154
|
+
outputSchema: updateClearAllOutputSchema,
|
|
155
|
+
attach: (program, ctx) => {
|
|
156
|
+
const noun = ensureSubcommand(program, 'update', 'Update (comment) commands');
|
|
157
|
+
noun
|
|
158
|
+
.command('clear-all <itemId>')
|
|
159
|
+
.description(updateClearAllCommand.summary)
|
|
160
|
+
.option('--limit-pages <n>', `max pages to walk for the page-walk leg (1-500, default ${String(DEFAULT_MAX_PAGES)}). On a thread bigger than the cap, the walker surfaces a pagination_cap_reached warning + the live dispatch covers only the collected prefix; agents re-run after the prefix clears.`)
|
|
161
|
+
.addHelpText('after', ['', 'Examples:', ...updateClearAllCommand.examples.map((e) => ` ${e}`), ''].join('\n'))
|
|
162
|
+
.action(async (itemId, opts) => {
|
|
163
|
+
const parsed = parseArgv(updateClearAllCommand.inputSchema, {
|
|
164
|
+
itemId,
|
|
165
|
+
...opts,
|
|
166
|
+
});
|
|
167
|
+
// Gate BEFORE `resolveClient()` — Codex M10 round-1 P2.
|
|
168
|
+
// R29 lift (v0.2-plan §20): clear-all uses the
|
|
169
|
+
// `previewSuffix` override because its preview shape
|
|
170
|
+
// ("the would-delete IDs") differs from the single-target
|
|
171
|
+
// verbs' boilerplate "preview." trailing.
|
|
172
|
+
const globalFlags = parseGlobalFlags(program.opts(), ctx.env);
|
|
173
|
+
enforceDestructiveGate({
|
|
174
|
+
globalFlags,
|
|
175
|
+
verb: 'update clear-all',
|
|
176
|
+
target: parsed.itemId,
|
|
177
|
+
detailKey: 'item_id',
|
|
178
|
+
action: 'delete every update on the item',
|
|
179
|
+
previewSuffix: 'or --dry-run to preview the would-delete IDs.',
|
|
180
|
+
hint: 'destructive — clears the entire comment thread. ' +
|
|
181
|
+
'Monday retains deleted updates in the trash for ~30 ' +
|
|
182
|
+
'days but exposes no bulk-restore mutation. Per-update ' +
|
|
183
|
+
'failures land in `data.results[i].error` rather than ' +
|
|
184
|
+
'aborting the whole call.',
|
|
185
|
+
});
|
|
186
|
+
const { client, apiVersion, toEmit } = resolveClient(ctx, program.opts());
|
|
187
|
+
// Aggregate source across the page-walk + delete legs. Page-
|
|
188
|
+
// walk is always live; per-update deletes are always live;
|
|
189
|
+
// aggregate stays 'live'. cache_age_seconds: null throughout.
|
|
190
|
+
const sourceAgg = new SourceAggregator();
|
|
191
|
+
const maxPages = parsed.limitPages ?? DEFAULT_MAX_PAGES;
|
|
192
|
+
const collected = await collectUpdateIds(client, parsed.itemId, sourceAgg, maxPages);
|
|
193
|
+
// Codex M13 F1 (P2): the page-walker's `hasMore` signal must
|
|
194
|
+
// surface to the agent. On a thread with more updates than
|
|
195
|
+
// `maxPages × PAGE_SIZE`, the walker truncates and the
|
|
196
|
+
// dispatch only covers the collected prefix; without a
|
|
197
|
+
// warning the agent thinks "all cleared" while older updates
|
|
198
|
+
// linger. Per the v0.1 walkPages contract, surface
|
|
199
|
+
// `pagination_cap_reached` so the agent knows to re-run (or
|
|
200
|
+
// pass `--limit-pages` to extend the cap).
|
|
201
|
+
const warnings = [];
|
|
202
|
+
if (collected.hasMore) {
|
|
203
|
+
warnings.push(buildCapWarning(collected.pagesFetched));
|
|
204
|
+
}
|
|
205
|
+
if (globalFlags.dryRun) {
|
|
206
|
+
// Dry-run: report would-delete IDs after the page-walk.
|
|
207
|
+
// `meta.source: 'live'` because the page-walk fired real
|
|
208
|
+
// reads (the dry-run is a preview-of-state-change, not a
|
|
209
|
+
// preview-of-payload).
|
|
210
|
+
emitDryRun({
|
|
211
|
+
ctx,
|
|
212
|
+
programOpts: program.opts(),
|
|
213
|
+
plannedChanges: [
|
|
214
|
+
{
|
|
215
|
+
operation: 'clear_all_updates',
|
|
216
|
+
item_id: parsed.itemId,
|
|
217
|
+
update_ids: collected.ids,
|
|
218
|
+
},
|
|
219
|
+
],
|
|
220
|
+
...sourceAgg.result(),
|
|
221
|
+
warnings,
|
|
222
|
+
apiVersion,
|
|
223
|
+
});
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
// Live path: sequential `delete_update` per id. Per-update
|
|
227
|
+
// failures captured into `results[i].error` rather than thrown
|
|
228
|
+
// — `dispatchSequential` handles the partial-success
|
|
229
|
+
// discipline so per-target failure doesn't abort the loop.
|
|
230
|
+
let lastResponse;
|
|
231
|
+
const results = await dispatchSequential(collected.ids, 'update_id', async ({ targetId }) => {
|
|
232
|
+
const response = await client.raw(DELETE_UPDATE_MUTATION, { id: targetId }, { operationName: 'UpdateClearAllDelete' });
|
|
233
|
+
lastResponse = response;
|
|
234
|
+
sourceAgg.record('live', null);
|
|
235
|
+
// Validate the wire shape per-call so a Monday-side bug
|
|
236
|
+
// (e.g. `delete_update: null`) surfaces as a per-update
|
|
237
|
+
// not_found rather than corrupting the envelope. The
|
|
238
|
+
// result record's `error` slot will pick this up via
|
|
239
|
+
// `dispatchSequential`'s catch arm.
|
|
240
|
+
const data = unwrapOrThrow(z
|
|
241
|
+
.object({ delete_update: z.unknown() })
|
|
242
|
+
.loose()
|
|
243
|
+
.safeParse(response.data), {
|
|
244
|
+
context: 'Monday returned a malformed UpdateClearAllDelete response',
|
|
245
|
+
details: { update_id: targetId },
|
|
246
|
+
});
|
|
247
|
+
// Lift R37 (v0.2-plan §20): null-check-only seam shared
|
|
248
|
+
// with the four full-projection sites (reply / edit /
|
|
249
|
+
// delete / toggle). Clear-all stays narrow because the
|
|
250
|
+
// per-target `DELETE_UPDATE_MUTATION` selects only `{ id }`
|
|
251
|
+
// — projection would force widening the wire payload.
|
|
252
|
+
assertUpdateMutationPresent(data.delete_update, {
|
|
253
|
+
updateId: targetId,
|
|
254
|
+
mutationName: 'delete_update',
|
|
255
|
+
});
|
|
256
|
+
});
|
|
257
|
+
// Emit the one success envelope. `ok: true` even when every
|
|
258
|
+
// per-update delete failed — the call's contract is "I ran
|
|
259
|
+
// the dispatch and here are the per-target outcomes." The
|
|
260
|
+
// emit schema parses through `updateClearAllOutputSchema`
|
|
261
|
+
// which validates the per-record shape (update_id branded,
|
|
262
|
+
// ok boolean, optional error{code, message}); the results
|
|
263
|
+
// array is spread into a mutable shape because zod's parsed
|
|
264
|
+
// type is mutable while `dispatchSequential` returns readonly.
|
|
265
|
+
emitMutation({
|
|
266
|
+
ctx,
|
|
267
|
+
data: updateClearAllOutputSchema.parse({
|
|
268
|
+
results: [...results],
|
|
269
|
+
}),
|
|
270
|
+
schema: updateClearAllCommand.outputSchema,
|
|
271
|
+
programOpts: program.opts(),
|
|
272
|
+
warnings,
|
|
273
|
+
...(lastResponse === undefined
|
|
274
|
+
? { apiVersion }
|
|
275
|
+
: toEmit(lastResponse)),
|
|
276
|
+
...sourceAgg.result(),
|
|
277
|
+
});
|
|
278
|
+
});
|
|
279
|
+
},
|
|
280
|
+
};
|
|
281
|
+
//# sourceMappingURL=clear-all.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-all.js","sourceRoot":"","sources":["../../../src/commands/update/clear-all.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday update create <iid> --body <md> | --body-file <path>` —
|
|
3
|
+
* post a comment on an item (`cli-design.md` §4.3 line 509,
|
|
4
|
+
* `v0.1-plan.md` §3 M5b).
|
|
5
|
+
*
|
|
6
|
+
* Monday calls these "updates"; cli-design names them comments (the
|
|
7
|
+
* agent-friendly term). Mutates via `create_update(item_id, body)`
|
|
8
|
+
* — body is markdown that Monday renders to HTML for display.
|
|
9
|
+
*
|
|
10
|
+
* **Body sources** (mutually exclusive):
|
|
11
|
+
* - `--body <md>` — inline markdown.
|
|
12
|
+
* - `--body-file <path>` — read from disk (cli-design §10.1 +
|
|
13
|
+
* cli.md "Stdin"). `--body-file -` reads from stdin (the
|
|
14
|
+
* CLI's `ctx.stdin`), letting agents pipe `git log` /
|
|
15
|
+
* `cat` etc. into a comment.
|
|
16
|
+
*
|
|
17
|
+
* **`--dry-run` is supported** even though `create_update` is
|
|
18
|
+
* non-idempotent (re-running creates a second comment). Agents
|
|
19
|
+
* preview "would post comment to item X" before committing —
|
|
20
|
+
* useful for templated comment workflows where the body is
|
|
21
|
+
* computed and a sanity-check pass is cheap.
|
|
22
|
+
*
|
|
23
|
+
* Idempotent: NO — re-running creates a duplicate comment. Agents
|
|
24
|
+
* that want idempotency should either dedupe by `update.body`
|
|
25
|
+
* via `monday update list <iid>` first, or use a future
|
|
26
|
+
* `update upsert` (deferred to v0.2).
|
|
27
|
+
*/
|
|
28
|
+
import { z } from 'zod';
|
|
29
|
+
import { type CommandModule } from '../types.js';
|
|
30
|
+
export declare const updateCreateOutputSchema: z.ZodObject<{
|
|
31
|
+
id: z.core.$ZodBranded<z.ZodString, "UpdateId", "out">;
|
|
32
|
+
body: z.ZodString;
|
|
33
|
+
text_body: z.ZodNullable<z.ZodString>;
|
|
34
|
+
creator_id: z.ZodNullable<z.ZodString>;
|
|
35
|
+
creator: z.ZodNullable<z.ZodObject<{
|
|
36
|
+
id: z.ZodString;
|
|
37
|
+
name: z.ZodString;
|
|
38
|
+
email: z.ZodString;
|
|
39
|
+
}, z.core.$strict>>;
|
|
40
|
+
item_id: z.ZodNullable<z.core.$ZodBranded<z.ZodString, "ItemId", "out">>;
|
|
41
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
42
|
+
updated_at: z.ZodNullable<z.ZodString>;
|
|
43
|
+
}, z.core.$strict>;
|
|
44
|
+
export type UpdateCreateOutput = z.infer<typeof updateCreateOutputSchema>;
|
|
45
|
+
declare const inputSchema: z.ZodObject<{
|
|
46
|
+
itemId: z.core.$ZodBranded<z.ZodString, "ItemId", "out">;
|
|
47
|
+
body: z.ZodOptional<z.ZodString>;
|
|
48
|
+
}, z.core.$strict>;
|
|
49
|
+
export declare const updateCreateCommand: CommandModule<z.infer<typeof inputSchema>, UpdateCreateOutput>;
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=create.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/update/create.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AA0BnE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;kBAW1B,CAAC;AAEZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,QAAA,MAAM,WAAW;;;kBAKN,CAAC;AAQZ,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAC7C,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,kBAAkB,CAsGnB,CAAC"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday update create <iid> --body <md> | --body-file <path>` —
|
|
3
|
+
* post a comment on an item (`cli-design.md` §4.3 line 509,
|
|
4
|
+
* `v0.1-plan.md` §3 M5b).
|
|
5
|
+
*
|
|
6
|
+
* Monday calls these "updates"; cli-design names them comments (the
|
|
7
|
+
* agent-friendly term). Mutates via `create_update(item_id, body)`
|
|
8
|
+
* — body is markdown that Monday renders to HTML for display.
|
|
9
|
+
*
|
|
10
|
+
* **Body sources** (mutually exclusive):
|
|
11
|
+
* - `--body <md>` — inline markdown.
|
|
12
|
+
* - `--body-file <path>` — read from disk (cli-design §10.1 +
|
|
13
|
+
* cli.md "Stdin"). `--body-file -` reads from stdin (the
|
|
14
|
+
* CLI's `ctx.stdin`), letting agents pipe `git log` /
|
|
15
|
+
* `cat` etc. into a comment.
|
|
16
|
+
*
|
|
17
|
+
* **`--dry-run` is supported** even though `create_update` is
|
|
18
|
+
* non-idempotent (re-running creates a second comment). Agents
|
|
19
|
+
* preview "would post comment to item X" before committing —
|
|
20
|
+
* useful for templated comment workflows where the body is
|
|
21
|
+
* computed and a sanity-check pass is cheap.
|
|
22
|
+
*
|
|
23
|
+
* Idempotent: NO — re-running creates a duplicate comment. Agents
|
|
24
|
+
* that want idempotency should either dedupe by `update.body`
|
|
25
|
+
* via `monday update list <iid>` first, or use a future
|
|
26
|
+
* `update upsert` (deferred to v0.2).
|
|
27
|
+
*/
|
|
28
|
+
import { z } from 'zod';
|
|
29
|
+
import { ensureSubcommand } from '../types.js';
|
|
30
|
+
import { emitDryRun, emitMutation } from '../emit.js';
|
|
31
|
+
import { resolveClient } from '../../api/resolve-client.js';
|
|
32
|
+
import { ItemIdSchema, UpdateIdSchema } from '../../types/ids.js';
|
|
33
|
+
import { parseArgv } from '../parse-argv.js';
|
|
34
|
+
import { ApiError } from '../../utils/errors.js';
|
|
35
|
+
import { unwrapOrThrow } from '../../utils/parse-boundary.js';
|
|
36
|
+
import { readUpdateBody } from './body-source.js';
|
|
37
|
+
import { UPDATE_FIELDS_FRAGMENT } from '../../api/update-mutation-result.js';
|
|
38
|
+
const CREATE_UPDATE_MUTATION = `
|
|
39
|
+
mutation UpdateCreate($itemId: ID!, $body: String!) {
|
|
40
|
+
create_update(item_id: $itemId, body: $body) {
|
|
41
|
+
${UPDATE_FIELDS_FRAGMENT}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
`;
|
|
45
|
+
const creatorSchema = z
|
|
46
|
+
.object({
|
|
47
|
+
id: z.string().min(1),
|
|
48
|
+
name: z.string(),
|
|
49
|
+
email: z.string(),
|
|
50
|
+
})
|
|
51
|
+
.strict();
|
|
52
|
+
export const updateCreateOutputSchema = z
|
|
53
|
+
.object({
|
|
54
|
+
id: UpdateIdSchema,
|
|
55
|
+
body: z.string(),
|
|
56
|
+
text_body: z.string().nullable(),
|
|
57
|
+
creator_id: z.string().nullable(),
|
|
58
|
+
creator: creatorSchema.nullable(),
|
|
59
|
+
item_id: ItemIdSchema.nullable(),
|
|
60
|
+
created_at: z.string().nullable(),
|
|
61
|
+
updated_at: z.string().nullable(),
|
|
62
|
+
})
|
|
63
|
+
.strict();
|
|
64
|
+
const inputSchema = z
|
|
65
|
+
.object({
|
|
66
|
+
itemId: ItemIdSchema,
|
|
67
|
+
body: z.string().optional(),
|
|
68
|
+
})
|
|
69
|
+
.strict();
|
|
70
|
+
const responseSchema = z
|
|
71
|
+
.object({
|
|
72
|
+
create_update: z.unknown(),
|
|
73
|
+
})
|
|
74
|
+
.loose();
|
|
75
|
+
export const updateCreateCommand = {
|
|
76
|
+
name: 'update.create',
|
|
77
|
+
summary: 'Post a comment (update) on an item',
|
|
78
|
+
examples: [
|
|
79
|
+
'monday update create 12345 --body "Done — moved to QA."',
|
|
80
|
+
'monday update create 12345 --body-file ./post.md',
|
|
81
|
+
'cat post.md | monday update create 12345 --body-file -',
|
|
82
|
+
'monday update create 12345 --body "Quick note" --dry-run --json',
|
|
83
|
+
],
|
|
84
|
+
// Comment creation is non-idempotent — re-running creates a
|
|
85
|
+
// duplicate comment. Agents that want idempotency should
|
|
86
|
+
// dedupe via `monday update list <iid>` first.
|
|
87
|
+
idempotent: false,
|
|
88
|
+
inputSchema,
|
|
89
|
+
outputSchema: updateCreateOutputSchema,
|
|
90
|
+
attach: (program, ctx) => {
|
|
91
|
+
const noun = ensureSubcommand(program, 'update', 'Update (comment) commands');
|
|
92
|
+
noun
|
|
93
|
+
.command('create <itemId>')
|
|
94
|
+
.description(updateCreateCommand.summary)
|
|
95
|
+
.option('--body <md>', 'inline markdown body (mutually exclusive with --body-file)')
|
|
96
|
+
.addHelpText('after', ['', 'Examples:', ...updateCreateCommand.examples.map((e) => ` ${e}`), ''].join('\n'))
|
|
97
|
+
.action(async (itemId, opts) => {
|
|
98
|
+
const parsed = parseArgv(updateCreateCommand.inputSchema, {
|
|
99
|
+
itemId,
|
|
100
|
+
...opts,
|
|
101
|
+
});
|
|
102
|
+
const { client, globalFlags, apiVersion, toEmit } = resolveClient(ctx, program.opts());
|
|
103
|
+
const body = await readUpdateBody({
|
|
104
|
+
inlineBody: parsed.body,
|
|
105
|
+
bodyFile: globalFlags.bodyFile,
|
|
106
|
+
stdin: ctx.stdin,
|
|
107
|
+
verbHint: 'monday update create requires either --body <md> or ' +
|
|
108
|
+
'--body-file <path>. Use --body-file - to read from stdin.',
|
|
109
|
+
});
|
|
110
|
+
if (globalFlags.dryRun) {
|
|
111
|
+
// Dry-run shape for `update create` — `data: null`,
|
|
112
|
+
// `meta.dry_run: true`, `planned_changes: [{...}]`. The
|
|
113
|
+
// operation is `create_update`; the diff carries the
|
|
114
|
+
// outgoing body so an agent can verify what would be
|
|
115
|
+
// posted. Source is `'none'` because no API call fires
|
|
116
|
+
// (Codex pass-1 minor: `'live'` would imply a network
|
|
117
|
+
// round-trip; the dry-run is purely argv-derived).
|
|
118
|
+
emitDryRun({
|
|
119
|
+
ctx,
|
|
120
|
+
programOpts: program.opts(),
|
|
121
|
+
plannedChanges: [
|
|
122
|
+
{
|
|
123
|
+
operation: 'create_update',
|
|
124
|
+
item_id: parsed.itemId,
|
|
125
|
+
body,
|
|
126
|
+
body_length: body.length,
|
|
127
|
+
},
|
|
128
|
+
],
|
|
129
|
+
source: 'none',
|
|
130
|
+
cacheAgeSeconds: null,
|
|
131
|
+
warnings: [],
|
|
132
|
+
apiVersion,
|
|
133
|
+
});
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
const response = await client.raw(CREATE_UPDATE_MUTATION, { itemId: parsed.itemId, body }, { operationName: 'UpdateCreate' });
|
|
137
|
+
const data = unwrapOrThrow(responseSchema.safeParse(response.data), {
|
|
138
|
+
context: 'Monday returned a malformed UpdateCreate response',
|
|
139
|
+
details: { item_id: parsed.itemId },
|
|
140
|
+
hint: 'this is a data-integrity error in Monday\'s response; ' +
|
|
141
|
+
'verify the response shape and update responseSchema if ' +
|
|
142
|
+
'Monday\'s contract has changed.',
|
|
143
|
+
});
|
|
144
|
+
const projected = projectCreatedUpdate(data.create_update, parsed.itemId);
|
|
145
|
+
emitMutation({
|
|
146
|
+
ctx,
|
|
147
|
+
data: projected,
|
|
148
|
+
schema: updateCreateCommand.outputSchema,
|
|
149
|
+
programOpts: program.opts(),
|
|
150
|
+
warnings: [],
|
|
151
|
+
...toEmit(response),
|
|
152
|
+
source: 'live',
|
|
153
|
+
cacheAgeSeconds: null,
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
const projectCreatedUpdate = (raw, itemId) => {
|
|
159
|
+
if (raw === null || raw === undefined) {
|
|
160
|
+
throw new ApiError('internal_error', `Monday returned no update payload from create_update for item ${itemId}.`, { details: { item_id: itemId } });
|
|
161
|
+
}
|
|
162
|
+
return unwrapOrThrow(updateCreateOutputSchema.safeParse(raw), {
|
|
163
|
+
context: `Monday returned a malformed update payload for item ${itemId}`,
|
|
164
|
+
details: { item_id: itemId },
|
|
165
|
+
});
|
|
166
|
+
};
|
|
167
|
+
//# sourceMappingURL=create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/update/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday update delete <uid> --yes [--dry-run]` — delete an existing
|
|
3
|
+
* update (`cli-design.md` §4.3 line 695, `v0.2-plan.md` §3 M13).
|
|
4
|
+
*
|
|
5
|
+
* **Confirmation gate** (cli-design §3.1 #7 + §10.2). `--yes` is
|
|
6
|
+
* mandatory for the live path; without `--yes` (and without
|
|
7
|
+
* `--dry-run`) the command fails fast with `confirmation_required`
|
|
8
|
+
* carrying `details.update_id`. Same shape — and same gate-before-
|
|
9
|
+
* `resolveClient()` ordering — as `item delete` / `item archive`
|
|
10
|
+
* (Codex M10 round-1 P2: the gate's contract is unconditional;
|
|
11
|
+
* a missing token must NOT mask `confirmation_required` as
|
|
12
|
+
* `config_error`).
|
|
13
|
+
*
|
|
14
|
+
* **Live path.** Single round-trip via `delete_update(id: ID!)`.
|
|
15
|
+
* Monday returns the deleted `Update` so the envelope's `data` is
|
|
16
|
+
* the full projection. A null result surfaces as `not_found` —
|
|
17
|
+
* mirrors `update reply` / `update edit`'s null-payload mapping
|
|
18
|
+
* (M10 R28 lifecycle pattern).
|
|
19
|
+
*
|
|
20
|
+
* **Dry-run shape** per cli-design §6.4 update-delete variant:
|
|
21
|
+
* minimal `{ operation: "delete_update", update_id }`. No
|
|
22
|
+
* preflight read fires; the dry-run is purely argv-derived.
|
|
23
|
+
* `meta.source: 'none'`.
|
|
24
|
+
*
|
|
25
|
+
* **Idempotent: false.** Re-running surfaces `not_found` past the
|
|
26
|
+
* first call. Same rationale as `item delete` — agents can't
|
|
27
|
+
* safely retry without verifying the id still names the same
|
|
28
|
+
* record.
|
|
29
|
+
*/
|
|
30
|
+
import { z } from 'zod';
|
|
31
|
+
import { type CommandModule } from '../types.js';
|
|
32
|
+
import { type UpdateProjection } from '../../api/update-mutation-result.js';
|
|
33
|
+
export declare const updateDeleteOutputSchema: z.ZodObject<{
|
|
34
|
+
id: z.core.$ZodBranded<z.ZodString, "UpdateId", "out">;
|
|
35
|
+
body: z.ZodString;
|
|
36
|
+
text_body: z.ZodNullable<z.ZodString>;
|
|
37
|
+
creator_id: z.ZodNullable<z.ZodString>;
|
|
38
|
+
creator: z.ZodNullable<z.ZodObject<{
|
|
39
|
+
id: z.ZodString;
|
|
40
|
+
name: z.ZodString;
|
|
41
|
+
email: z.ZodString;
|
|
42
|
+
}, z.core.$strict>>;
|
|
43
|
+
item_id: z.ZodNullable<z.core.$ZodBranded<z.ZodString, "ItemId", "out">>;
|
|
44
|
+
created_at: z.ZodNullable<z.ZodString>;
|
|
45
|
+
updated_at: z.ZodNullable<z.ZodString>;
|
|
46
|
+
}, z.core.$strict>;
|
|
47
|
+
export type UpdateDeleteOutput = UpdateProjection;
|
|
48
|
+
declare const inputSchema: z.ZodObject<{
|
|
49
|
+
updateId: z.core.$ZodBranded<z.ZodString, "UpdateId", "out">;
|
|
50
|
+
}, z.core.$strict>;
|
|
51
|
+
export declare const updateDeleteCommand: CommandModule<z.infer<typeof inputSchema>, UpdateDeleteOutput>;
|
|
52
|
+
export {};
|
|
53
|
+
//# sourceMappingURL=delete.d.ts.map
|