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.
- package/CHANGELOG.md +675 -2
- package/README.md +223 -31
- package/dist/api/assets.d.ts +326 -0
- package/dist/api/assets.d.ts.map +1 -0
- package/dist/api/assets.js +519 -0
- package/dist/api/assets.js.map +1 -0
- package/dist/api/board-favorites.d.ts +329 -0
- package/dist/api/board-favorites.d.ts.map +1 -0
- package/dist/api/board-favorites.js +353 -0
- package/dist/api/board-favorites.js.map +1 -0
- package/dist/api/board-mutation-result.d.ts +9 -5
- package/dist/api/board-mutation-result.d.ts.map +1 -1
- package/dist/api/board-mutation-result.js +9 -5
- package/dist/api/board-mutation-result.js.map +1 -1
- package/dist/api/board-relation-validation.d.ts +161 -0
- package/dist/api/board-relation-validation.d.ts.map +1 -0
- package/dist/api/board-relation-validation.js +317 -0
- package/dist/api/board-relation-validation.js.map +1 -0
- package/dist/api/cache.d.ts +14 -5
- package/dist/api/cache.d.ts.map +1 -1
- package/dist/api/cache.js +8 -10
- package/dist/api/cache.js.map +1 -1
- package/dist/api/column-mapping.js +2 -2
- package/dist/api/column-mapping.js.map +1 -1
- package/dist/api/column-mutation-result.d.ts +9 -5
- package/dist/api/column-mutation-result.d.ts.map +1 -1
- package/dist/api/column-mutation-result.js +9 -5
- package/dist/api/column-mutation-result.js.map +1 -1
- package/dist/api/column-types.d.ts +37 -14
- package/dist/api/column-types.d.ts.map +1 -1
- package/dist/api/column-types.js +47 -6
- package/dist/api/column-types.js.map +1 -1
- package/dist/api/column-values.d.ts +234 -31
- package/dist/api/column-values.d.ts.map +1 -1
- package/dist/api/column-values.js +560 -124
- package/dist/api/column-values.js.map +1 -1
- package/dist/api/cross-board-search.d.ts +501 -0
- package/dist/api/cross-board-search.d.ts.map +1 -0
- package/dist/api/cross-board-search.js +547 -0
- package/dist/api/cross-board-search.js.map +1 -0
- package/dist/api/dev-conventions.d.ts +1038 -0
- package/dist/api/dev-conventions.d.ts.map +1 -0
- package/dist/api/dev-conventions.js +1556 -0
- package/dist/api/dev-conventions.js.map +1 -0
- package/dist/api/documents.d.ts +519 -0
- package/dist/api/documents.d.ts.map +1 -0
- package/dist/api/documents.js +586 -0
- package/dist/api/documents.js.map +1 -0
- package/dist/api/dry-run.d.ts +32 -5
- package/dist/api/dry-run.d.ts.map +1 -1
- package/dist/api/dry-run.js +149 -32
- package/dist/api/dry-run.js.map +1 -1
- package/dist/api/errors.d.ts.map +1 -1
- package/dist/api/errors.js +28 -7
- package/dist/api/errors.js.map +1 -1
- package/dist/api/group-mutation-result.d.ts +9 -5
- package/dist/api/group-mutation-result.d.ts.map +1 -1
- package/dist/api/group-mutation-result.js +9 -5
- package/dist/api/group-mutation-result.js.map +1 -1
- package/dist/api/item-history-projection.d.ts +919 -0
- package/dist/api/item-history-projection.d.ts.map +1 -0
- package/dist/api/item-history-projection.js +1104 -0
- package/dist/api/item-history-projection.js.map +1 -0
- package/dist/api/item-mutation-execute.d.ts +82 -0
- package/dist/api/item-mutation-execute.d.ts.map +1 -0
- package/dist/api/item-mutation-execute.js +199 -0
- package/dist/api/item-mutation-execute.js.map +1 -0
- package/dist/api/item-watch.d.ts +263 -0
- package/dist/api/item-watch.d.ts.map +1 -0
- package/dist/api/item-watch.js +709 -0
- package/dist/api/item-watch.js.map +1 -0
- package/dist/api/multipart-transport.d.ts +223 -0
- package/dist/api/multipart-transport.d.ts.map +1 -0
- package/dist/api/multipart-transport.js +274 -0
- package/dist/api/multipart-transport.js.map +1 -0
- package/dist/api/notifications.d.ts +156 -0
- package/dist/api/notifications.d.ts.map +1 -0
- package/dist/api/notifications.js +215 -0
- package/dist/api/notifications.js.map +1 -0
- package/dist/api/oauth-test-helper.d.ts +64 -0
- package/dist/api/oauth-test-helper.d.ts.map +1 -0
- package/dist/api/oauth-test-helper.js +179 -0
- package/dist/api/oauth-test-helper.js.map +1 -0
- package/dist/api/oauth.d.ts +198 -0
- package/dist/api/oauth.d.ts.map +1 -0
- package/dist/api/oauth.js +471 -0
- package/dist/api/oauth.js.map +1 -0
- package/dist/api/parallel-dispatch.d.ts +155 -0
- package/dist/api/parallel-dispatch.d.ts.map +1 -0
- package/dist/api/parallel-dispatch.js +243 -0
- package/dist/api/parallel-dispatch.js.map +1 -0
- package/dist/api/partial-success-bulk.d.ts +480 -0
- package/dist/api/partial-success-bulk.d.ts.map +1 -0
- package/dist/api/partial-success-bulk.js +436 -0
- package/dist/api/partial-success-bulk.js.map +1 -0
- package/dist/api/partial-success-mutation.d.ts +13 -1
- package/dist/api/partial-success-mutation.d.ts.map +1 -1
- package/dist/api/partial-success-mutation.js +5 -1
- package/dist/api/partial-success-mutation.js.map +1 -1
- package/dist/api/people.d.ts +54 -1
- package/dist/api/people.d.ts.map +1 -1
- package/dist/api/people.js +27 -3
- package/dist/api/people.js.map +1 -1
- package/dist/api/probes.d.ts +487 -0
- package/dist/api/probes.d.ts.map +1 -0
- package/dist/api/probes.js +881 -0
- package/dist/api/probes.js.map +1 -0
- package/dist/api/raw-document.d.ts.map +1 -1
- package/dist/api/raw-document.js +2 -2
- package/dist/api/raw-document.js.map +1 -1
- package/dist/api/raw-write.d.ts +12 -4
- package/dist/api/raw-write.d.ts.map +1 -1
- package/dist/api/raw-write.js +32 -14
- package/dist/api/raw-write.js.map +1 -1
- package/dist/api/resolution-context.d.ts +23 -11
- package/dist/api/resolution-context.d.ts.map +1 -1
- package/dist/api/resolution-context.js +53 -12
- package/dist/api/resolution-context.js.map +1 -1
- package/dist/api/resolution-pass.d.ts +30 -1
- package/dist/api/resolution-pass.d.ts.map +1 -1
- package/dist/api/resolution-pass.js +36 -1
- package/dist/api/resolution-pass.js.map +1 -1
- package/dist/api/resolve-client.d.ts +22 -0
- package/dist/api/resolve-client.d.ts.map +1 -1
- package/dist/api/resolve-client.js +9 -1
- package/dist/api/resolve-client.js.map +1 -1
- package/dist/api/response-root.d.ts +92 -46
- package/dist/api/response-root.d.ts.map +1 -1
- package/dist/api/response-root.js +93 -41
- package/dist/api/response-root.js.map +1 -1
- package/dist/api/tag-directory.d.ts +154 -0
- package/dist/api/tag-directory.d.ts.map +1 -0
- package/dist/api/tag-directory.js +325 -0
- package/dist/api/tag-directory.js.map +1 -0
- package/dist/api/time-tracking.d.ts +165 -0
- package/dist/api/time-tracking.d.ts.map +1 -0
- package/dist/api/time-tracking.js +135 -0
- package/dist/api/time-tracking.js.map +1 -0
- package/dist/api/transport.js +3 -3
- package/dist/api/transport.js.map +1 -1
- package/dist/api/usage.d.ts +190 -0
- package/dist/api/usage.d.ts.map +1 -0
- package/dist/api/usage.js +194 -0
- package/dist/api/usage.js.map +1 -0
- package/dist/api/users-fan-out-mutation.d.ts.map +1 -1
- package/dist/api/users-fan-out-mutation.js +10 -5
- package/dist/api/users-fan-out-mutation.js.map +1 -1
- package/dist/api/webhooks.d.ts +357 -0
- package/dist/api/webhooks.d.ts.map +1 -0
- package/dist/api/webhooks.js +333 -0
- package/dist/api/webhooks.js.map +1 -0
- package/dist/cli/envelope-out.d.ts +18 -1
- package/dist/cli/envelope-out.d.ts.map +1 -1
- package/dist/cli/envelope-out.js +16 -2
- package/dist/cli/envelope-out.js.map +1 -1
- package/dist/cli/program.d.ts.map +1 -1
- package/dist/cli/program.js +120 -1
- package/dist/cli/program.js.map +1 -1
- package/dist/cli/run.d.ts +32 -0
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +3 -0
- package/dist/cli/run.js.map +1 -1
- package/dist/commands/account/tags.d.ts +37 -0
- package/dist/commands/account/tags.d.ts.map +1 -0
- package/dist/commands/account/tags.js +84 -0
- package/dist/commands/account/tags.js.map +1 -0
- package/dist/commands/auth/login.d.ts +14 -0
- package/dist/commands/auth/login.d.ts.map +1 -0
- package/dist/commands/auth/login.js +314 -0
- package/dist/commands/auth/login.js.map +1 -0
- package/dist/commands/auth/logout.d.ts +28 -0
- package/dist/commands/auth/logout.d.ts.map +1 -0
- package/dist/commands/auth/logout.js +94 -0
- package/dist/commands/auth/logout.js.map +1 -0
- package/dist/commands/board/archive.d.ts.map +1 -1
- package/dist/commands/board/archive.js +14 -14
- package/dist/commands/board/archive.js.map +1 -1
- package/dist/commands/board/column-create.d.ts +9 -8
- package/dist/commands/board/column-create.d.ts.map +1 -1
- package/dist/commands/board/column-create.js +61 -51
- package/dist/commands/board/column-create.js.map +1 -1
- package/dist/commands/board/column-delete.d.ts.map +1 -1
- package/dist/commands/board/column-delete.js +15 -16
- package/dist/commands/board/column-delete.js.map +1 -1
- package/dist/commands/board/column-update.d.ts.map +1 -1
- package/dist/commands/board/column-update.js +23 -22
- package/dist/commands/board/column-update.js.map +1 -1
- package/dist/commands/board/create.d.ts.map +1 -1
- package/dist/commands/board/create.js +14 -17
- package/dist/commands/board/create.js.map +1 -1
- package/dist/commands/board/delete.d.ts.map +1 -1
- package/dist/commands/board/delete.js +12 -15
- package/dist/commands/board/delete.js.map +1 -1
- package/dist/commands/board/describe.d.ts.map +1 -1
- package/dist/commands/board/describe.js +30 -0
- package/dist/commands/board/describe.js.map +1 -1
- package/dist/commands/board/duplicate.d.ts.map +1 -1
- package/dist/commands/board/duplicate.js +12 -13
- package/dist/commands/board/duplicate.js.map +1 -1
- package/dist/commands/board/favorites.d.ts +33 -0
- package/dist/commands/board/favorites.d.ts.map +1 -0
- package/dist/commands/board/favorites.js +74 -0
- package/dist/commands/board/favorites.js.map +1 -0
- package/dist/commands/board/find.d.ts +1 -1
- package/dist/commands/board/group-archive.d.ts.map +1 -1
- package/dist/commands/board/group-archive.js +12 -16
- package/dist/commands/board/group-archive.js.map +1 -1
- package/dist/commands/board/group-create.d.ts.map +1 -1
- package/dist/commands/board/group-create.js +9 -19
- package/dist/commands/board/group-create.js.map +1 -1
- package/dist/commands/board/group-delete.d.ts.map +1 -1
- package/dist/commands/board/group-delete.js +12 -16
- package/dist/commands/board/group-delete.js.map +1 -1
- package/dist/commands/board/group-duplicate.d.ts.map +1 -1
- package/dist/commands/board/group-duplicate.js +12 -16
- package/dist/commands/board/group-duplicate.js.map +1 -1
- package/dist/commands/board/group-update.d.ts.map +1 -1
- package/dist/commands/board/group-update.js +12 -11
- package/dist/commands/board/group-update.js.map +1 -1
- package/dist/commands/board/list.d.ts +1 -1
- package/dist/commands/board/update.d.ts.map +1 -1
- package/dist/commands/board/update.js +16 -11
- package/dist/commands/board/update.js.map +1 -1
- package/dist/commands/cache/list.d.ts +2 -0
- package/dist/commands/cache/list.d.ts.map +1 -1
- package/dist/commands/cache/list.js +2 -2
- package/dist/commands/cache/list.js.map +1 -1
- package/dist/commands/completion.d.ts +188 -0
- package/dist/commands/completion.d.ts.map +1 -0
- package/dist/commands/completion.js +418 -0
- package/dist/commands/completion.js.map +1 -0
- package/dist/commands/dev/_shared.d.ts +40 -0
- package/dist/commands/dev/_shared.d.ts.map +1 -0
- package/dist/commands/dev/_shared.js +104 -0
- package/dist/commands/dev/_shared.js.map +1 -0
- package/dist/commands/dev/configure.d.ts +36 -0
- package/dist/commands/dev/configure.d.ts.map +1 -0
- package/dist/commands/dev/configure.js +145 -0
- package/dist/commands/dev/configure.js.map +1 -0
- package/dist/commands/dev/discover.d.ts +34 -0
- package/dist/commands/dev/discover.d.ts.map +1 -0
- package/dist/commands/dev/discover.js +117 -0
- package/dist/commands/dev/discover.js.map +1 -0
- package/dist/commands/dev/doctor.d.ts +39 -0
- package/dist/commands/dev/doctor.d.ts.map +1 -0
- package/dist/commands/dev/doctor.js +91 -0
- package/dist/commands/dev/doctor.js.map +1 -0
- package/dist/commands/dev/epic/items.d.ts +24 -0
- package/dist/commands/dev/epic/items.d.ts.map +1 -0
- package/dist/commands/dev/epic/items.js +103 -0
- package/dist/commands/dev/epic/items.js.map +1 -0
- package/dist/commands/dev/epic/list.d.ts +36 -0
- package/dist/commands/dev/epic/list.d.ts.map +1 -0
- package/dist/commands/dev/epic/list.js +120 -0
- package/dist/commands/dev/epic/list.js.map +1 -0
- package/dist/commands/dev/release/list.d.ts +21 -0
- package/dist/commands/dev/release/list.d.ts.map +1 -0
- package/dist/commands/dev/release/list.js +73 -0
- package/dist/commands/dev/release/list.js.map +1 -0
- package/dist/commands/dev/sprint/current.d.ts +24 -0
- package/dist/commands/dev/sprint/current.d.ts.map +1 -0
- package/dist/commands/dev/sprint/current.js +90 -0
- package/dist/commands/dev/sprint/current.js.map +1 -0
- package/dist/commands/dev/sprint/items.d.ts +34 -0
- package/dist/commands/dev/sprint/items.d.ts.map +1 -0
- package/dist/commands/dev/sprint/items.js +118 -0
- package/dist/commands/dev/sprint/items.js.map +1 -0
- package/dist/commands/dev/sprint/list.d.ts +41 -0
- package/dist/commands/dev/sprint/list.d.ts.map +1 -0
- package/dist/commands/dev/sprint/list.js +104 -0
- package/dist/commands/dev/sprint/list.js.map +1 -0
- package/dist/commands/dev/task/block.d.ts +29 -0
- package/dist/commands/dev/task/block.d.ts.map +1 -0
- package/dist/commands/dev/task/block.js +106 -0
- package/dist/commands/dev/task/block.js.map +1 -0
- package/dist/commands/dev/task/done.d.ts +30 -0
- package/dist/commands/dev/task/done.d.ts.map +1 -0
- package/dist/commands/dev/task/done.js +113 -0
- package/dist/commands/dev/task/done.js.map +1 -0
- package/dist/commands/dev/task/list.d.ts +42 -0
- package/dist/commands/dev/task/list.d.ts.map +1 -0
- package/dist/commands/dev/task/list.js +227 -0
- package/dist/commands/dev/task/list.js.map +1 -0
- package/dist/commands/dev/task/start.d.ts +29 -0
- package/dist/commands/dev/task/start.d.ts.map +1 -0
- package/dist/commands/dev/task/start.js +90 -0
- package/dist/commands/dev/task/start.js.map +1 -0
- package/dist/commands/doc/get.d.ts +46 -0
- package/dist/commands/doc/get.d.ts.map +1 -0
- package/dist/commands/doc/get.js +95 -0
- package/dist/commands/doc/get.js.map +1 -0
- package/dist/commands/doc/list.d.ts +83 -0
- package/dist/commands/doc/list.d.ts.map +1 -0
- package/dist/commands/doc/list.js +248 -0
- package/dist/commands/doc/list.js.map +1 -0
- package/dist/commands/emit.d.ts.map +1 -1
- package/dist/commands/emit.js +5 -3
- package/dist/commands/emit.js.map +1 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +141 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/item/archive.d.ts.map +1 -1
- package/dist/commands/item/archive.js +11 -0
- package/dist/commands/item/archive.js.map +1 -1
- package/dist/commands/item/clear.d.ts.map +1 -1
- package/dist/commands/item/clear.js +15 -0
- package/dist/commands/item/clear.js.map +1 -1
- package/dist/commands/item/create.d.ts.map +1 -1
- package/dist/commands/item/create.js +41 -8
- package/dist/commands/item/create.js.map +1 -1
- package/dist/commands/item/delete.d.ts.map +1 -1
- package/dist/commands/item/delete.js +11 -0
- package/dist/commands/item/delete.js.map +1 -1
- package/dist/commands/item/duplicate.d.ts.map +1 -1
- package/dist/commands/item/duplicate.js +12 -0
- package/dist/commands/item/duplicate.js.map +1 -1
- package/dist/commands/item/history.d.ts +60 -0
- package/dist/commands/item/history.d.ts.map +1 -0
- package/dist/commands/item/history.js +309 -0
- package/dist/commands/item/history.js.map +1 -0
- package/dist/commands/item/list.d.ts.map +1 -1
- package/dist/commands/item/list.js +16 -13
- package/dist/commands/item/list.js.map +1 -1
- package/dist/commands/item/move.d.ts.map +1 -1
- package/dist/commands/item/move.js +41 -7
- package/dist/commands/item/move.js.map +1 -1
- package/dist/commands/item/search.d.ts +99 -15
- package/dist/commands/item/search.d.ts.map +1 -1
- package/dist/commands/item/search.js +480 -36
- package/dist/commands/item/search.js.map +1 -1
- package/dist/commands/item/set.d.ts.map +1 -1
- package/dist/commands/item/set.js +52 -8
- package/dist/commands/item/set.js.map +1 -1
- package/dist/commands/item/time-track/start.d.ts +61 -0
- package/dist/commands/item/time-track/start.d.ts.map +1 -0
- package/dist/commands/item/time-track/start.js +138 -0
- package/dist/commands/item/time-track/start.js.map +1 -0
- package/dist/commands/item/time-track/stop.d.ts +32 -0
- package/dist/commands/item/time-track/stop.d.ts.map +1 -0
- package/dist/commands/item/time-track/stop.js +97 -0
- package/dist/commands/item/time-track/stop.js.map +1 -0
- package/dist/commands/item/update.d.ts +2 -0
- package/dist/commands/item/update.d.ts.map +1 -1
- package/dist/commands/item/update.js +164 -113
- package/dist/commands/item/update.js.map +1 -1
- package/dist/commands/item/upload.d.ts +108 -0
- package/dist/commands/item/upload.d.ts.map +1 -0
- package/dist/commands/item/upload.js +370 -0
- package/dist/commands/item/upload.js.map +1 -0
- package/dist/commands/item/upsert.d.ts.map +1 -1
- package/dist/commands/item/upsert.js +48 -1
- package/dist/commands/item/upsert.js.map +1 -1
- package/dist/commands/item/watch.d.ts +90 -0
- package/dist/commands/item/watch.d.ts.map +1 -0
- package/dist/commands/item/watch.js +342 -0
- package/dist/commands/item/watch.js.map +1 -0
- package/dist/commands/notification/send.d.ts +60 -0
- package/dist/commands/notification/send.d.ts.map +1 -0
- package/dist/commands/notification/send.js +147 -0
- package/dist/commands/notification/send.js.map +1 -0
- package/dist/commands/parse-argv.d.ts.map +1 -1
- package/dist/commands/parse-argv.js +14 -4
- package/dist/commands/parse-argv.js.map +1 -1
- package/dist/commands/raw/index.d.ts.map +1 -1
- package/dist/commands/raw/index.js +13 -15
- package/dist/commands/raw/index.js.map +1 -1
- package/dist/commands/run-by-id-lookup.d.ts.map +1 -1
- package/dist/commands/run-by-id-lookup.js +2 -2
- package/dist/commands/run-by-id-lookup.js.map +1 -1
- package/dist/commands/schema/index.d.ts +2 -0
- package/dist/commands/schema/index.d.ts.map +1 -1
- package/dist/commands/status.d.ts +120 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +365 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/update/body-source.d.ts.map +1 -1
- package/dist/commands/update/body-source.js +2 -2
- package/dist/commands/update/body-source.js.map +1 -1
- package/dist/commands/update/create.d.ts +2 -3
- package/dist/commands/update/create.d.ts.map +1 -1
- package/dist/commands/update/create.js +15 -3
- package/dist/commands/update/create.js.map +1 -1
- package/dist/commands/update/delete.d.ts.map +1 -1
- package/dist/commands/update/delete.js +11 -0
- package/dist/commands/update/delete.js.map +1 -1
- package/dist/commands/update/edit.d.ts.map +1 -1
- package/dist/commands/update/edit.js +11 -0
- package/dist/commands/update/edit.js.map +1 -1
- package/dist/commands/update/list.d.ts.map +1 -1
- package/dist/commands/update/list.js +15 -12
- package/dist/commands/update/list.js.map +1 -1
- package/dist/commands/update/reply.d.ts.map +1 -1
- package/dist/commands/update/reply.js +11 -0
- package/dist/commands/update/reply.js.map +1 -1
- package/dist/commands/update/toggle.d.ts.map +1 -1
- package/dist/commands/update/toggle.js +13 -0
- package/dist/commands/update/toggle.js.map +1 -1
- package/dist/commands/update/upload.d.ts +69 -0
- package/dist/commands/update/upload.d.ts.map +1 -0
- package/dist/commands/update/upload.js +235 -0
- package/dist/commands/update/upload.js.map +1 -0
- package/dist/commands/usage.d.ts +58 -0
- package/dist/commands/usage.d.ts.map +1 -0
- package/dist/commands/usage.js +94 -0
- package/dist/commands/usage.js.map +1 -0
- package/dist/commands/webhook/create.d.ts +74 -0
- package/dist/commands/webhook/create.d.ts.map +1 -0
- package/dist/commands/webhook/create.js +150 -0
- package/dist/commands/webhook/create.js.map +1 -0
- package/dist/commands/webhook/delete.d.ts +46 -0
- package/dist/commands/webhook/delete.d.ts.map +1 -0
- package/dist/commands/webhook/delete.js +141 -0
- package/dist/commands/webhook/delete.js.map +1 -0
- package/dist/commands/webhook/list.d.ts +23 -0
- package/dist/commands/webhook/list.d.ts.map +1 -0
- package/dist/commands/webhook/list.js +68 -0
- package/dist/commands/webhook/list.js.map +1 -0
- package/dist/commands/workspace/create.d.ts.map +1 -1
- package/dist/commands/workspace/create.js +16 -0
- package/dist/commands/workspace/create.js.map +1 -1
- package/dist/commands/workspace/delete.d.ts.map +1 -1
- package/dist/commands/workspace/delete.js +13 -13
- package/dist/commands/workspace/delete.js.map +1 -1
- package/dist/commands/workspace/list.d.ts +1 -1
- package/dist/commands/workspace/update.d.ts.map +1 -1
- package/dist/commands/workspace/update.js +15 -15
- package/dist/commands/workspace/update.js.map +1 -1
- package/dist/config/credentials.d.ts +189 -0
- package/dist/config/credentials.d.ts.map +1 -0
- package/dist/config/credentials.js +300 -0
- package/dist/config/credentials.js.map +1 -0
- package/dist/config/profiles.d.ts +125 -0
- package/dist/config/profiles.d.ts.map +1 -0
- package/dist/config/profiles.js +227 -0
- package/dist/config/profiles.js.map +1 -0
- package/dist/types/global-flags.d.ts +1 -1
- package/dist/types/global-flags.d.ts.map +1 -1
- package/dist/types/global-flags.js +28 -16
- package/dist/types/global-flags.js.map +1 -1
- package/dist/types/ids.d.ts +4 -0
- package/dist/types/ids.d.ts.map +1 -1
- package/dist/types/ids.js +12 -3
- package/dist/types/ids.js.map +1 -1
- package/dist/utils/errors.d.ts +57 -3
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +69 -2
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/fs.d.ts +35 -0
- package/dist/utils/fs.d.ts.map +1 -0
- package/dist/utils/fs.js +36 -0
- package/dist/utils/fs.js.map +1 -0
- package/dist/utils/json.d.ts +60 -0
- package/dist/utils/json.d.ts.map +1 -0
- package/dist/utils/json.js +86 -0
- package/dist/utils/json.js.map +1 -0
- package/dist/utils/mime.d.ts +24 -0
- package/dist/utils/mime.d.ts.map +1 -0
- package/dist/utils/mime.js +64 -0
- package/dist/utils/mime.js.map +1 -0
- package/dist/utils/output/envelope.d.ts +30 -0
- package/dist/utils/output/envelope.d.ts.map +1 -1
- package/dist/utils/output/envelope.js +26 -0
- package/dist/utils/output/envelope.js.map +1 -1
- package/dist/utils/output/ndjson.d.ts +90 -3
- package/dist/utils/output/ndjson.d.ts.map +1 -1
- package/dist/utils/output/ndjson.js +33 -0
- package/dist/utils/output/ndjson.js.map +1 -1
- package/dist/utils/redact.d.ts.map +1 -1
- package/dist/utils/redact.js +31 -0
- package/dist/utils/redact.js.map +1 -1
- package/dist/utils/signal.d.ts +42 -0
- package/dist/utils/signal.d.ts.map +1 -0
- package/dist/utils/signal.js +45 -0
- package/dist/utils/signal.js.map +1 -0
- package/package.json +2 -1
- package/dist/commands/account/client-helper.d.ts +0 -37
- package/dist/commands/account/client-helper.d.ts.map +0 -1
- package/dist/commands/account/client-helper.js +0 -55
- package/dist/commands/account/client-helper.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../../src/commands/dev/_shared.ts"],"names":[],"mappings":"AAqBA,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,GAClC,KAAK,UAAU,EACf,aAAa,OAAO,KACnB,OAAO,CAAC,kBAAkB,CA4C5B,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,GAC1B,SAAS,UAAU,EACnB,MAAM,MAAM,UAAU,EACtB,SAAS,MAAM,KACd,MAiBF,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared helpers for the `monday dev …` namespace verbs.
|
|
3
|
+
*
|
|
4
|
+
* Owns the per-verb preamble pattern surfaced across `dev discover`
|
|
5
|
+
* / `dev configure` / `dev doctor` (M26a) + the workflow verbs
|
|
6
|
+
* (M26b): resolve the active profile name (via the same
|
|
7
|
+
* flag-/env-/default_profile priority `src/cli/program.ts`'s
|
|
8
|
+
* preAction hook applies for token resolution) so the verb can
|
|
9
|
+
* read/write the `[profiles.<name>.dev]` block.
|
|
10
|
+
*
|
|
11
|
+
* **What this module owns.** The pure profile-name resolution. Token
|
|
12
|
+
* resolution is the preAction hook's job (already shipped at
|
|
13
|
+
* v0.3-M21); this helper picks up the same precedence chain and
|
|
14
|
+
* surfaces the resolved name for the dev block IO.
|
|
15
|
+
*
|
|
16
|
+
* **What this module does NOT own.** The dev mapping IO itself
|
|
17
|
+
* (`loadDevMapping` / `saveDevMapping` in
|
|
18
|
+
* `src/api/dev-conventions.ts`); those take the resolved profile
|
|
19
|
+
* name as a parameter.
|
|
20
|
+
*/
|
|
21
|
+
import { ApiError, ConfigError } from '../../utils/errors.js';
|
|
22
|
+
import { loadProfilesConfig, selectProfile, } from '../../config/profiles.js';
|
|
23
|
+
import { parseGlobalFlags } from '../../types/global-flags.js';
|
|
24
|
+
/**
|
|
25
|
+
* Resolves the active profile name for a dev-namespace verb.
|
|
26
|
+
* Surfaces `config_error` (NOT `dev_not_configured`) when the verb
|
|
27
|
+
* runs in implicit-v1 mode — the dev namespace is fundamentally
|
|
28
|
+
* named-profile-only since the dev block lives under
|
|
29
|
+
* `[profiles.<name>.dev]`.
|
|
30
|
+
*
|
|
31
|
+
* Precedence mirrors `cli-design.md` §7.2 + `src/cli/program.ts`'s
|
|
32
|
+
* preAction hook:
|
|
33
|
+
* 1. `--profile <name>` global flag
|
|
34
|
+
* 2. `MONDAY_PROFILE` env var
|
|
35
|
+
* 3. `default_profile` in `~/.monday-cli/config.toml`
|
|
36
|
+
* 4. Implicit-v1 sentinel → throws `config_error`
|
|
37
|
+
*/
|
|
38
|
+
export const resolveActiveDevProfile = async (ctx, programOpts) => {
|
|
39
|
+
// HOME-truthy + length check mirrors `src/cli/program.ts:171-174`.
|
|
40
|
+
// Tests always set HOME via the per-test tmp dir; the
|
|
41
|
+
// `home === undefined` arm is defensive for production environments
|
|
42
|
+
// where HOME is unset (running under a hardened systemd unit, etc.) —
|
|
43
|
+
// not reproducible from any integration test.
|
|
44
|
+
/* c8 ignore start */
|
|
45
|
+
const home = ctx.env.HOME !== undefined && ctx.env.HOME.length > 0
|
|
46
|
+
? ctx.env.HOME
|
|
47
|
+
: undefined;
|
|
48
|
+
const homeOptions = home !== undefined ? { home, env: ctx.env } : { env: ctx.env };
|
|
49
|
+
/* c8 ignore stop */
|
|
50
|
+
// `parseGlobalFlags` throws `UsageError` on a bad global flag
|
|
51
|
+
// (`--retry`, `--timeout`, `--profile`, etc.). Codex M26a IMPL P1-1
|
|
52
|
+
// fix: surface the UsageError synchronously so the dev verb's
|
|
53
|
+
// action body never proceeds to the file-write path with invalid
|
|
54
|
+
// globals. Previously a catch here let `dev configure` reach
|
|
55
|
+
// `saveDevMapping` before `emitMutation`'s re-parse threw the
|
|
56
|
+
// usage_error, leaving the active profile's `[profiles.<name>.dev]`
|
|
57
|
+
// block clobbered despite the rejected invocation.
|
|
58
|
+
const flagProfile = parseGlobalFlags(programOpts, ctx.env).profile;
|
|
59
|
+
const config = await loadProfilesConfig(homeOptions);
|
|
60
|
+
const selection = selectProfile({
|
|
61
|
+
flag: flagProfile,
|
|
62
|
+
env: ctx.env,
|
|
63
|
+
config,
|
|
64
|
+
});
|
|
65
|
+
if (selection.mode === 'implicit_v1') {
|
|
66
|
+
throw new ConfigError('`monday dev` verbs require a named profile', {
|
|
67
|
+
details: {
|
|
68
|
+
hint: 'set MONDAY_PROFILE=<name>, pass --profile <name>, or set `default_profile` in ~/.monday-cli/config.toml (run `monday auth login --profile <name>` to populate the credentials cache too)',
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
return { name: selection.name, homeOptions };
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Slot-check helper for the 10 M26b workflow verbs. Every workflow
|
|
76
|
+
* verb pulls a noun-specific board ID off the loaded {@link DevMapping}
|
|
77
|
+
* + surfaces `dev_not_configured` when the slot is unset — same shape
|
|
78
|
+
* 10 times pre-lift. R-NEW-32 fires at the 10-consumer threshold
|
|
79
|
+
* (M26b IMPL); the helper lands with the workflow verbs themselves
|
|
80
|
+
* so the duplication never appears in any feat commit.
|
|
81
|
+
*
|
|
82
|
+
* **Why this is `dev_not_configured`, not `dev_board_misconfigured`.**
|
|
83
|
+
* Per cli-design §5.9 + the M26a round-1 P2-4 closure: the absence of
|
|
84
|
+
* a slot in the dev mapping is a missing CONFIGURATION (the user
|
|
85
|
+
* hasn't told the CLI which board to use). A misconfigured board —
|
|
86
|
+
* board exists but doesn't expose the expected column / wiring —
|
|
87
|
+
* surfaces from runtime checks via `dev_board_misconfigured` later in
|
|
88
|
+
* the verb. The slot-empty case stays under `dev_not_configured`.
|
|
89
|
+
*/
|
|
90
|
+
export const requireDevBoard = (mapping, slot, profile) => {
|
|
91
|
+
const value = mapping[slot];
|
|
92
|
+
if (value === undefined) {
|
|
93
|
+
const flag = slot.replace('_board', '-board');
|
|
94
|
+
throw new ApiError('dev_not_configured', `Monday Dev mapping for profile \`${profile}\` is missing the \`${slot}\` slot`, {
|
|
95
|
+
details: {
|
|
96
|
+
profile,
|
|
97
|
+
slot,
|
|
98
|
+
hint: `run \`monday dev configure --${flag} <bid>\` or \`monday dev discover --apply\``,
|
|
99
|
+
},
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
return value;
|
|
103
|
+
};
|
|
104
|
+
//# sourceMappingURL=_shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_shared.js","sourceRoot":"","sources":["../../../src/commands/dev/_shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,aAAa,GAEd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAS/D;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAC1C,GAAe,EACf,WAAoB,EACS,EAAE;IAC/B,mEAAmE;IACnE,sDAAsD;IACtD,oEAAoE;IACpE,sEAAsE;IACtE,8CAA8C;IAC9C,qBAAqB;IACrB,MAAM,IAAI,GACR,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QACnD,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI;QACd,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,WAAW,GACf,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;IACjE,oBAAoB;IAEpB,8DAA8D;IAC9D,oEAAoE;IACpE,8DAA8D;IAC9D,iEAAiE;IACjE,6DAA6D;IAC7D,8DAA8D;IAC9D,oEAAoE;IACpE,mDAAmD;IACnD,MAAM,WAAW,GAAG,gBAAgB,CAAC,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;IAEnE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,aAAa,CAAC;QAC9B,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,MAAM;KACP,CAAC,CAAC;IAEH,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACrC,MAAM,IAAI,WAAW,CACnB,4CAA4C,EAC5C;YACE,OAAO,EAAE;gBACP,IAAI,EAAE,0LAA0L;aACjM;SACF,CACF,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;AAC/C,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAAmB,EACnB,IAAsB,EACtB,OAAe,EACP,EAAE;IACV,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC9C,MAAM,IAAI,QAAQ,CAChB,oBAAoB,EACpB,oCAAoC,OAAO,uBAAuB,IAAI,SAAS,EAC/E;YACE,OAAO,EAAE;gBACP,OAAO;gBACP,IAAI;gBACJ,IAAI,EAAE,gCAAgC,IAAI,6CAA6C;aACxF;SACF,CACF,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday dev configure [--tasks-board <bid>] [--sprints-board
|
|
3
|
+
* <bid>] [--epics-board <bid>] [--bugs-board <bid>]
|
|
4
|
+
* [--releases-board <bid>]` — explicit per-board override of the
|
|
5
|
+
* Monday Dev mapping for the active profile (cli-design §4.3 +
|
|
6
|
+
* §5.9 + §11.3 + §13 v0.3 entry; v0.3-plan §3 M26).
|
|
7
|
+
*
|
|
8
|
+
* **Runtime body landed at M26a IMPL.** Reads the active profile's
|
|
9
|
+
* existing `[profiles.<name>.dev]` block (or starts empty if absent),
|
|
10
|
+
* additively merges the supplied `--<noun>-board` flags, writes back
|
|
11
|
+
* via `saveDevMapping`, and emits the canonical mapping via
|
|
12
|
+
* `emitMutation`.
|
|
13
|
+
*
|
|
14
|
+
* **Argv → TOML key mapping.** Commander's option-name camelCase
|
|
15
|
+
* → the TOML config's snake_case slots:
|
|
16
|
+
* --tasks-board → `tasks_board`
|
|
17
|
+
* --sprints-board → `sprints_board`
|
|
18
|
+
* --epics-board → `epics_board`
|
|
19
|
+
* --bugs-board → `bugs_board`
|
|
20
|
+
* --releases-board → `releases_board`
|
|
21
|
+
*
|
|
22
|
+
* Idempotent: yes (writing the same mapping is a no-op).
|
|
23
|
+
*/
|
|
24
|
+
import { z } from 'zod';
|
|
25
|
+
import { type CommandModule } from '../types.js';
|
|
26
|
+
import { type DevConfigureOutput } from '../../api/dev-conventions.js';
|
|
27
|
+
declare const inputSchema: z.ZodObject<{
|
|
28
|
+
tasksBoard: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "BoardId", "out">>;
|
|
29
|
+
sprintsBoard: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "BoardId", "out">>;
|
|
30
|
+
epicsBoard: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "BoardId", "out">>;
|
|
31
|
+
bugsBoard: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "BoardId", "out">>;
|
|
32
|
+
releasesBoard: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "BoardId", "out">>;
|
|
33
|
+
}, z.core.$strict>;
|
|
34
|
+
export declare const devConfigureCommand: CommandModule<z.infer<typeof inputSchema>, DevConfigureOutput>;
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=configure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../../../src/commands/dev/configure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAInE,OAAO,EAIL,KAAK,kBAAkB,EAExB,MAAM,8BAA8B,CAAC;AAGtC,QAAA,MAAM,WAAW;;;;;;kBAwBb,CAAC;AAIL,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAC7C,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,kBAAkB,CA2GnB,CAAC"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday dev configure [--tasks-board <bid>] [--sprints-board
|
|
3
|
+
* <bid>] [--epics-board <bid>] [--bugs-board <bid>]
|
|
4
|
+
* [--releases-board <bid>]` — explicit per-board override of the
|
|
5
|
+
* Monday Dev mapping for the active profile (cli-design §4.3 +
|
|
6
|
+
* §5.9 + §11.3 + §13 v0.3 entry; v0.3-plan §3 M26).
|
|
7
|
+
*
|
|
8
|
+
* **Runtime body landed at M26a IMPL.** Reads the active profile's
|
|
9
|
+
* existing `[profiles.<name>.dev]` block (or starts empty if absent),
|
|
10
|
+
* additively merges the supplied `--<noun>-board` flags, writes back
|
|
11
|
+
* via `saveDevMapping`, and emits the canonical mapping via
|
|
12
|
+
* `emitMutation`.
|
|
13
|
+
*
|
|
14
|
+
* **Argv → TOML key mapping.** Commander's option-name camelCase
|
|
15
|
+
* → the TOML config's snake_case slots:
|
|
16
|
+
* --tasks-board → `tasks_board`
|
|
17
|
+
* --sprints-board → `sprints_board`
|
|
18
|
+
* --epics-board → `epics_board`
|
|
19
|
+
* --bugs-board → `bugs_board`
|
|
20
|
+
* --releases-board → `releases_board`
|
|
21
|
+
*
|
|
22
|
+
* Idempotent: yes (writing the same mapping is a no-op).
|
|
23
|
+
*/
|
|
24
|
+
import { z } from 'zod';
|
|
25
|
+
import { ApiError } from '../../utils/errors.js';
|
|
26
|
+
import { ensureSubcommand } from '../types.js';
|
|
27
|
+
import { parseArgv } from '../parse-argv.js';
|
|
28
|
+
import { emitMutation } from '../emit.js';
|
|
29
|
+
import { BoardIdSchema } from '../../types/ids.js';
|
|
30
|
+
import { devConfigureOutputSchema, loadDevMapping, saveDevMapping, } from '../../api/dev-conventions.js';
|
|
31
|
+
import { resolveActiveDevProfile } from './_shared.js';
|
|
32
|
+
const inputSchema = z
|
|
33
|
+
.object({
|
|
34
|
+
tasksBoard: BoardIdSchema.optional(),
|
|
35
|
+
sprintsBoard: BoardIdSchema.optional(),
|
|
36
|
+
epicsBoard: BoardIdSchema.optional(),
|
|
37
|
+
bugsBoard: BoardIdSchema.optional(),
|
|
38
|
+
releasesBoard: BoardIdSchema.optional(),
|
|
39
|
+
})
|
|
40
|
+
.strict()
|
|
41
|
+
.superRefine((value, ctx) => {
|
|
42
|
+
const anySet = value.tasksBoard !== undefined ||
|
|
43
|
+
value.sprintsBoard !== undefined ||
|
|
44
|
+
value.epicsBoard !== undefined ||
|
|
45
|
+
value.bugsBoard !== undefined ||
|
|
46
|
+
value.releasesBoard !== undefined;
|
|
47
|
+
if (!anySet) {
|
|
48
|
+
ctx.addIssue({
|
|
49
|
+
code: 'custom',
|
|
50
|
+
message: 'monday dev configure requires at least one of --tasks-board / --sprints-board / --epics-board / --bugs-board / --releases-board (run `monday dev discover` to auto-detect)',
|
|
51
|
+
path: [],
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
const DEV_NOT_CONFIGURED = 'dev_not_configured';
|
|
56
|
+
export const devConfigureCommand = {
|
|
57
|
+
name: 'dev.configure',
|
|
58
|
+
summary: "Explicitly set Monday Dev board mappings on the active profile (alternative to `monday dev discover`)",
|
|
59
|
+
examples: [
|
|
60
|
+
'monday dev configure --tasks-board 987654 --sprints-board 987655',
|
|
61
|
+
'monday dev configure --epics-board 987656 --releases-board 987657',
|
|
62
|
+
'monday dev configure --tasks-board 987654 --json',
|
|
63
|
+
],
|
|
64
|
+
idempotent: true,
|
|
65
|
+
inputSchema,
|
|
66
|
+
outputSchema: devConfigureOutputSchema,
|
|
67
|
+
attach: (program, ctx) => {
|
|
68
|
+
const noun = ensureSubcommand(program, 'dev', 'Monday Dev workflow shortcuts (cli-design §2.7 — convention, not API)');
|
|
69
|
+
noun
|
|
70
|
+
.command('configure')
|
|
71
|
+
.description(devConfigureCommand.summary)
|
|
72
|
+
.option('--tasks-board <bid>', 'Board ID for the Tasks board')
|
|
73
|
+
.option('--sprints-board <bid>', 'Board ID for the Sprints board')
|
|
74
|
+
.option('--epics-board <bid>', 'Board ID for the Epics board')
|
|
75
|
+
.option('--bugs-board <bid>', 'Board ID for the Bugs board')
|
|
76
|
+
.option('--releases-board <bid>', 'Board ID for the Releases board')
|
|
77
|
+
.addHelpText('after', [
|
|
78
|
+
'',
|
|
79
|
+
'Examples:',
|
|
80
|
+
...devConfigureCommand.examples.map((e) => ` ${e}`),
|
|
81
|
+
'',
|
|
82
|
+
].join('\n'))
|
|
83
|
+
.action(async (rawOpts) => {
|
|
84
|
+
const opts = parseArgv(devConfigureCommand.inputSchema, rawOpts);
|
|
85
|
+
const profile = await resolveActiveDevProfile(ctx, program.opts());
|
|
86
|
+
// Load existing dev block (additive merge — preserves any
|
|
87
|
+
// slot the user supplied previously that this invocation
|
|
88
|
+
// doesn't touch). Missing dev block is a normal first-write
|
|
89
|
+
// case per round-1 P2-4 closure — `dev_not_configured`
|
|
90
|
+
// surfaces from doctor + workflow verbs, NOT from configure.
|
|
91
|
+
let existing;
|
|
92
|
+
try {
|
|
93
|
+
existing = await loadDevMapping(profile.name, profile.homeOptions);
|
|
94
|
+
}
|
|
95
|
+
catch (err) {
|
|
96
|
+
if (err instanceof ApiError &&
|
|
97
|
+
err.code === DEV_NOT_CONFIGURED) {
|
|
98
|
+
existing = {};
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
// Non-dev_not_configured errors bubble up; in production
|
|
102
|
+
// `cli/program.ts`'s preAction hook surfaces `config_error`
|
|
103
|
+
// on malformed TOML FIRST (it calls `loadProfilesConfig`
|
|
104
|
+
// before the action runs), so this branch is defensive.
|
|
105
|
+
/* c8 ignore next */
|
|
106
|
+
throw err;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
const next = { ...existing };
|
|
110
|
+
if (opts.tasksBoard !== undefined) {
|
|
111
|
+
next.tasks_board = opts.tasksBoard;
|
|
112
|
+
}
|
|
113
|
+
if (opts.sprintsBoard !== undefined) {
|
|
114
|
+
next.sprints_board = opts.sprintsBoard;
|
|
115
|
+
}
|
|
116
|
+
if (opts.epicsBoard !== undefined) {
|
|
117
|
+
next.epics_board = opts.epicsBoard;
|
|
118
|
+
}
|
|
119
|
+
if (opts.bugsBoard !== undefined) {
|
|
120
|
+
next.bugs_board = opts.bugsBoard;
|
|
121
|
+
}
|
|
122
|
+
if (opts.releasesBoard !== undefined) {
|
|
123
|
+
next.releases_board = opts.releasesBoard;
|
|
124
|
+
}
|
|
125
|
+
await saveDevMapping(profile.name, next, profile.homeOptions);
|
|
126
|
+
// Read back via loadDevMapping so the emitted envelope
|
|
127
|
+
// reflects what landed on disk (Codex M21 / M25 pattern —
|
|
128
|
+
// verify the write rather than echoing the input).
|
|
129
|
+
const stored = await loadDevMapping(profile.name, profile.homeOptions);
|
|
130
|
+
const output = {
|
|
131
|
+
profile: profile.name,
|
|
132
|
+
mapping: stored,
|
|
133
|
+
};
|
|
134
|
+
emitMutation({
|
|
135
|
+
ctx,
|
|
136
|
+
data: output,
|
|
137
|
+
schema: devConfigureCommand.outputSchema,
|
|
138
|
+
programOpts: program.opts(),
|
|
139
|
+
source: 'none',
|
|
140
|
+
cacheAgeSeconds: null,
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
},
|
|
144
|
+
};
|
|
145
|
+
//# sourceMappingURL=configure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../../../src/commands/dev/configure.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday dev discover [--apply]` — auto-detect Monday Dev board
|
|
3
|
+
* mappings + optionally apply them to the active profile
|
|
4
|
+
* (cli-design §4.3 + §11.3 + §13 v0.3 entry; v0.3-plan §3 M26).
|
|
5
|
+
*
|
|
6
|
+
* **Runtime body landed at M26a IMPL.** Walks the user's accessible
|
|
7
|
+
* boards via `discoverDevBoards`, applies the
|
|
8
|
+
* `buildDiscoverMappingFromMatches` collapse on the per-noun match
|
|
9
|
+
* results, and — when `--apply` is set — additively merges the
|
|
10
|
+
* heuristic findings into the active profile's
|
|
11
|
+
* `[profiles.<name>.dev]` block via `saveDevMapping`. Mirrors the
|
|
12
|
+
* M21 oauth-stub / M24 history-stub precedent — argv shape pinned
|
|
13
|
+
* at pre-flight, runtime body filled at IMPL.
|
|
14
|
+
*
|
|
15
|
+
* **Additive-merge semantics on `--apply`.** Heuristic findings are
|
|
16
|
+
* merged on top of any existing dev block (heuristic wins on slot
|
|
17
|
+
* conflict; unset slots in the heuristic result preserve existing
|
|
18
|
+
* values). This preserves user-configured slots the heuristic can't
|
|
19
|
+
* fill (e.g. a workspace with no `Sprints` board where the user set
|
|
20
|
+
* `sprints_board` manually).
|
|
21
|
+
*
|
|
22
|
+
* Idempotent: yes when `--apply` is not set (pure read). When
|
|
23
|
+
* `--apply` is set: idempotent on equal mappings (re-discovery
|
|
24
|
+
* against the same workspace shape rewrites the same block).
|
|
25
|
+
*/
|
|
26
|
+
import { z } from 'zod';
|
|
27
|
+
import { type CommandModule } from '../types.js';
|
|
28
|
+
import { type DevDiscoverOutput } from '../../api/dev-conventions.js';
|
|
29
|
+
declare const inputSchema: z.ZodObject<{
|
|
30
|
+
apply: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
}, z.core.$strict>;
|
|
32
|
+
export declare const devDiscoverCommand: CommandModule<z.infer<typeof inputSchema>, DevDiscoverOutput>;
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=discover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../../src/commands/dev/discover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAInE,OAAO,EAML,KAAK,iBAAiB,EAEvB,MAAM,8BAA8B,CAAC;AAGtC,QAAA,MAAM,WAAW;;kBAIN,CAAC;AAIZ,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAC5C,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,iBAAiB,CAmGlB,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday dev discover [--apply]` — auto-detect Monday Dev board
|
|
3
|
+
* mappings + optionally apply them to the active profile
|
|
4
|
+
* (cli-design §4.3 + §11.3 + §13 v0.3 entry; v0.3-plan §3 M26).
|
|
5
|
+
*
|
|
6
|
+
* **Runtime body landed at M26a IMPL.** Walks the user's accessible
|
|
7
|
+
* boards via `discoverDevBoards`, applies the
|
|
8
|
+
* `buildDiscoverMappingFromMatches` collapse on the per-noun match
|
|
9
|
+
* results, and — when `--apply` is set — additively merges the
|
|
10
|
+
* heuristic findings into the active profile's
|
|
11
|
+
* `[profiles.<name>.dev]` block via `saveDevMapping`. Mirrors the
|
|
12
|
+
* M21 oauth-stub / M24 history-stub precedent — argv shape pinned
|
|
13
|
+
* at pre-flight, runtime body filled at IMPL.
|
|
14
|
+
*
|
|
15
|
+
* **Additive-merge semantics on `--apply`.** Heuristic findings are
|
|
16
|
+
* merged on top of any existing dev block (heuristic wins on slot
|
|
17
|
+
* conflict; unset slots in the heuristic result preserve existing
|
|
18
|
+
* values). This preserves user-configured slots the heuristic can't
|
|
19
|
+
* fill (e.g. a workspace with no `Sprints` board where the user set
|
|
20
|
+
* `sprints_board` manually).
|
|
21
|
+
*
|
|
22
|
+
* Idempotent: yes when `--apply` is not set (pure read). When
|
|
23
|
+
* `--apply` is set: idempotent on equal mappings (re-discovery
|
|
24
|
+
* against the same workspace shape rewrites the same block).
|
|
25
|
+
*/
|
|
26
|
+
import { z } from 'zod';
|
|
27
|
+
import { ApiError } from '../../utils/errors.js';
|
|
28
|
+
import { ensureSubcommand } from '../types.js';
|
|
29
|
+
import { parseArgv } from '../parse-argv.js';
|
|
30
|
+
import { emitSuccess } from '../emit.js';
|
|
31
|
+
import { resolveClient } from '../../api/resolve-client.js';
|
|
32
|
+
import { buildDiscoverMappingFromMatches, devDiscoverOutputSchema, discoverDevBoards, loadDevMapping, saveDevMapping, } from '../../api/dev-conventions.js';
|
|
33
|
+
import { resolveActiveDevProfile } from './_shared.js';
|
|
34
|
+
const inputSchema = z
|
|
35
|
+
.object({
|
|
36
|
+
apply: z.boolean().optional(),
|
|
37
|
+
})
|
|
38
|
+
.strict();
|
|
39
|
+
const DEV_NOT_CONFIGURED = 'dev_not_configured';
|
|
40
|
+
export const devDiscoverCommand = {
|
|
41
|
+
name: 'dev.discover',
|
|
42
|
+
summary: 'Auto-detect Monday Dev board mappings (tasks/sprints/epics/releases/bugs) and optionally write them to the active profile',
|
|
43
|
+
examples: [
|
|
44
|
+
'monday dev discover',
|
|
45
|
+
'monday dev discover --apply',
|
|
46
|
+
'monday dev discover --json',
|
|
47
|
+
],
|
|
48
|
+
idempotent: true,
|
|
49
|
+
inputSchema,
|
|
50
|
+
outputSchema: devDiscoverOutputSchema,
|
|
51
|
+
attach: (program, ctx) => {
|
|
52
|
+
const noun = ensureSubcommand(program, 'dev', 'Monday Dev workflow shortcuts (cli-design §2.7 — convention, not API)');
|
|
53
|
+
noun
|
|
54
|
+
.command('discover')
|
|
55
|
+
.description(devDiscoverCommand.summary)
|
|
56
|
+
.option('--apply', "Write the detected mapping into the active profile's `[profiles.<name>.dev]` block. Without --apply, the command is a pure read and only prints the mapping.")
|
|
57
|
+
.addHelpText('after', [
|
|
58
|
+
'',
|
|
59
|
+
'Examples:',
|
|
60
|
+
...devDiscoverCommand.examples.map((e) => ` ${e}`),
|
|
61
|
+
'',
|
|
62
|
+
].join('\n'))
|
|
63
|
+
.action(async (rawOpts) => {
|
|
64
|
+
const opts = parseArgv(devDiscoverCommand.inputSchema, rawOpts);
|
|
65
|
+
const apply = opts.apply ?? false;
|
|
66
|
+
const profile = await resolveActiveDevProfile(ctx, program.opts());
|
|
67
|
+
const { client, apiVersion } = resolveClient(ctx, program.opts());
|
|
68
|
+
const result = await discoverDevBoards({ client });
|
|
69
|
+
const heuristicMapping = buildDiscoverMappingFromMatches(result.matches);
|
|
70
|
+
let finalMapping = heuristicMapping;
|
|
71
|
+
if (apply) {
|
|
72
|
+
let existing;
|
|
73
|
+
try {
|
|
74
|
+
existing = await loadDevMapping(profile.name, profile.homeOptions);
|
|
75
|
+
}
|
|
76
|
+
catch (err) {
|
|
77
|
+
if (err instanceof ApiError &&
|
|
78
|
+
err.code === DEV_NOT_CONFIGURED) {
|
|
79
|
+
// First-write case — no existing dev block. Round-1
|
|
80
|
+
// P2-4 closure: dev discover doesn't surface
|
|
81
|
+
// `dev_not_configured` for itself; absence is normal.
|
|
82
|
+
existing = {};
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
// Non-dev_not_configured errors from `loadDevMapping`
|
|
86
|
+
// bubble up to the runner's catch-all. In production,
|
|
87
|
+
// the only realistic source is `config_error` on
|
|
88
|
+
// malformed TOML, which `cli/program.ts`'s preAction
|
|
89
|
+
// hook surfaces FIRST (it calls `loadProfilesConfig`
|
|
90
|
+
// before the action runs); this branch is defensive.
|
|
91
|
+
/* c8 ignore next */
|
|
92
|
+
throw err;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
finalMapping = { ...existing, ...heuristicMapping };
|
|
96
|
+
await saveDevMapping(profile.name, finalMapping, profile.homeOptions);
|
|
97
|
+
}
|
|
98
|
+
const output = {
|
|
99
|
+
profile: profile.name,
|
|
100
|
+
mapping: finalMapping,
|
|
101
|
+
matches: result.matches,
|
|
102
|
+
applied: apply,
|
|
103
|
+
};
|
|
104
|
+
emitSuccess({
|
|
105
|
+
ctx,
|
|
106
|
+
data: output,
|
|
107
|
+
schema: devDiscoverCommand.outputSchema,
|
|
108
|
+
programOpts: program.opts(),
|
|
109
|
+
apiVersion,
|
|
110
|
+
source: result.source,
|
|
111
|
+
cacheAgeSeconds: result.cacheAgeSeconds,
|
|
112
|
+
complexity: result.complexity,
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
//# sourceMappingURL=discover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discover.js","sourceRoot":"","sources":["../../../src/commands/dev/discover.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday dev doctor` — diagnostics for the active profile's
|
|
3
|
+
* Monday Dev mapping (cli-design §4.3 + §5.9 + §11.3; v0.3-plan
|
|
4
|
+
* §3 M26).
|
|
5
|
+
*
|
|
6
|
+
* **Runtime body landed at M26a IMPL.** Loads the active profile's
|
|
7
|
+
* `[profiles.<name>.dev]` block (surfaces `dev_not_configured` if
|
|
8
|
+
* absent — per round-1 P2-4, this is the verb that DOES fire the
|
|
9
|
+
* code), hydrates every configured board via a single
|
|
10
|
+
* `boards(ids:)` call, then runs each of the 10
|
|
11
|
+
* `DEV_DOCTOR_CHECK_NAMES` checks in order. Surfaces per-check
|
|
12
|
+
* status as `ok` / `warn` / `fail` in `data.checks[]`; `summary`
|
|
13
|
+
* carries the roll-up counts.
|
|
14
|
+
*
|
|
15
|
+
* **Decision 2 closure (M26 pre-flight — doctor diagnostics).**
|
|
16
|
+
* The check-name vocabulary (10 entries post-round-1 Codex
|
|
17
|
+
* fix-ups; see `DEV_DOCTOR_CHECK_NAMES` in
|
|
18
|
+
* `src/api/dev-conventions.ts`) is pinned at the pre-flight +
|
|
19
|
+
* carries an additive-only contract (adding a check is
|
|
20
|
+
* non-breaking; removing or renaming is major). Per-check
|
|
21
|
+
* `details` shape is per-check additive — pinned at this IMPL
|
|
22
|
+
* commit alongside the runtime body of each check.
|
|
23
|
+
*
|
|
24
|
+
* **Exit-code policy.** The verb's exit code stays 0 regardless of
|
|
25
|
+
* per-check `fail_count` — `dev doctor`'s success is "diagnostics
|
|
26
|
+
* completed"; agents inspect `data.summary.fail_count` for drift.
|
|
27
|
+
* `dev_board_misconfigured` is reserved for the case where the
|
|
28
|
+
* doctor itself can't complete; the per-check-level `fail` entries
|
|
29
|
+
* surface in `data.checks[]` rather than as a top-level error.
|
|
30
|
+
*
|
|
31
|
+
* Idempotent: yes (pure read).
|
|
32
|
+
*/
|
|
33
|
+
import { z } from 'zod';
|
|
34
|
+
import { type CommandModule } from '../types.js';
|
|
35
|
+
import { type DevDoctorOutput } from '../../api/dev-conventions.js';
|
|
36
|
+
declare const inputSchema: z.ZodObject<{}, z.core.$strict>;
|
|
37
|
+
export declare const devDoctorCommand: CommandModule<z.infer<typeof inputSchema>, DevDoctorOutput>;
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=doctor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/commands/dev/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAInE,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;AAGtC,QAAA,MAAM,WAAW,iCAAwB,CAAC;AAE1C,eAAO,MAAM,gBAAgB,EAAE,aAAa,CAC1C,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,eAAe,CAiEhB,CAAC"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday dev doctor` — diagnostics for the active profile's
|
|
3
|
+
* Monday Dev mapping (cli-design §4.3 + §5.9 + §11.3; v0.3-plan
|
|
4
|
+
* §3 M26).
|
|
5
|
+
*
|
|
6
|
+
* **Runtime body landed at M26a IMPL.** Loads the active profile's
|
|
7
|
+
* `[profiles.<name>.dev]` block (surfaces `dev_not_configured` if
|
|
8
|
+
* absent — per round-1 P2-4, this is the verb that DOES fire the
|
|
9
|
+
* code), hydrates every configured board via a single
|
|
10
|
+
* `boards(ids:)` call, then runs each of the 10
|
|
11
|
+
* `DEV_DOCTOR_CHECK_NAMES` checks in order. Surfaces per-check
|
|
12
|
+
* status as `ok` / `warn` / `fail` in `data.checks[]`; `summary`
|
|
13
|
+
* carries the roll-up counts.
|
|
14
|
+
*
|
|
15
|
+
* **Decision 2 closure (M26 pre-flight — doctor diagnostics).**
|
|
16
|
+
* The check-name vocabulary (10 entries post-round-1 Codex
|
|
17
|
+
* fix-ups; see `DEV_DOCTOR_CHECK_NAMES` in
|
|
18
|
+
* `src/api/dev-conventions.ts`) is pinned at the pre-flight +
|
|
19
|
+
* carries an additive-only contract (adding a check is
|
|
20
|
+
* non-breaking; removing or renaming is major). Per-check
|
|
21
|
+
* `details` shape is per-check additive — pinned at this IMPL
|
|
22
|
+
* commit alongside the runtime body of each check.
|
|
23
|
+
*
|
|
24
|
+
* **Exit-code policy.** The verb's exit code stays 0 regardless of
|
|
25
|
+
* per-check `fail_count` — `dev doctor`'s success is "diagnostics
|
|
26
|
+
* completed"; agents inspect `data.summary.fail_count` for drift.
|
|
27
|
+
* `dev_board_misconfigured` is reserved for the case where the
|
|
28
|
+
* doctor itself can't complete; the per-check-level `fail` entries
|
|
29
|
+
* surface in `data.checks[]` rather than as a top-level error.
|
|
30
|
+
*
|
|
31
|
+
* Idempotent: yes (pure read).
|
|
32
|
+
*/
|
|
33
|
+
import { z } from 'zod';
|
|
34
|
+
import { ensureSubcommand } from '../types.js';
|
|
35
|
+
import { parseArgv } from '../parse-argv.js';
|
|
36
|
+
import { emitSuccess } from '../emit.js';
|
|
37
|
+
import { resolveClient } from '../../api/resolve-client.js';
|
|
38
|
+
import { devDoctorOutputSchema, loadDevMapping, runDevDoctor, } from '../../api/dev-conventions.js';
|
|
39
|
+
import { resolveActiveDevProfile } from './_shared.js';
|
|
40
|
+
const inputSchema = z.object({}).strict();
|
|
41
|
+
export const devDoctorCommand = {
|
|
42
|
+
name: 'dev.doctor',
|
|
43
|
+
summary: "Validate the active profile's Monday Dev mapping against current board shape (status columns, board_relation wiring, canonical labels)",
|
|
44
|
+
examples: ['monday dev doctor', 'monday dev doctor --json'],
|
|
45
|
+
idempotent: true,
|
|
46
|
+
inputSchema,
|
|
47
|
+
outputSchema: devDoctorOutputSchema,
|
|
48
|
+
attach: (program, ctx) => {
|
|
49
|
+
const noun = ensureSubcommand(program, 'dev', 'Monday Dev workflow shortcuts (cli-design §2.7 — convention, not API)');
|
|
50
|
+
noun
|
|
51
|
+
.command('doctor')
|
|
52
|
+
.description(devDoctorCommand.summary)
|
|
53
|
+
.addHelpText('after', [
|
|
54
|
+
'',
|
|
55
|
+
'Examples:',
|
|
56
|
+
...devDoctorCommand.examples.map((e) => ` ${e}`),
|
|
57
|
+
'',
|
|
58
|
+
].join('\n'))
|
|
59
|
+
.action(async (rawOpts) => {
|
|
60
|
+
parseArgv(devDoctorCommand.inputSchema, rawOpts);
|
|
61
|
+
const profile = await resolveActiveDevProfile(ctx, program.opts());
|
|
62
|
+
// loadDevMapping throws `dev_not_configured` when no
|
|
63
|
+
// `[profiles.<name>.dev]` block exists — doctor's contract
|
|
64
|
+
// requires a configured mapping to diagnose against.
|
|
65
|
+
const mapping = await loadDevMapping(profile.name, profile.homeOptions);
|
|
66
|
+
const { client, apiVersion } = resolveClient(ctx, program.opts());
|
|
67
|
+
const result = await runDevDoctor({
|
|
68
|
+
client,
|
|
69
|
+
profile: profile.name,
|
|
70
|
+
mapping,
|
|
71
|
+
});
|
|
72
|
+
const output = {
|
|
73
|
+
profile: profile.name,
|
|
74
|
+
mapping,
|
|
75
|
+
checks: result.checks,
|
|
76
|
+
summary: result.summary,
|
|
77
|
+
};
|
|
78
|
+
emitSuccess({
|
|
79
|
+
ctx,
|
|
80
|
+
data: output,
|
|
81
|
+
schema: devDoctorCommand.outputSchema,
|
|
82
|
+
programOpts: program.opts(),
|
|
83
|
+
apiVersion,
|
|
84
|
+
source: result.source,
|
|
85
|
+
cacheAgeSeconds: result.cacheAgeSeconds,
|
|
86
|
+
complexity: result.complexity,
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=doctor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/commands/dev/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAsB,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,YAAY,GAEb,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAE1C,MAAM,CAAC,MAAM,gBAAgB,GAGzB;IACF,IAAI,EAAE,YAAY;IAClB,OAAO,EACL,wIAAwI;IAC1I,QAAQ,EAAE,CAAC,mBAAmB,EAAE,0BAA0B,CAAC;IAC3D,UAAU,EAAE,IAAI;IAChB,WAAW;IACX,YAAY,EAAE,qBAAqB;IACnC,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,gBAAgB,CAC3B,OAAO,EACP,KAAK,EACL,uEAAuE,CACxE,CAAC;QACF,IAAI;aACD,OAAO,CAAC,QAAQ,CAAC;aACjB,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC;aACrC,WAAW,CACV,OAAO,EACP;YACE,EAAE;YACF,WAAW;YACX,GAAG,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb;aACA,MAAM,CAAC,KAAK,EAAE,OAAgB,EAAE,EAAE;YACjC,SAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAEjD,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACnE,qDAAqD;YACrD,2DAA2D;YAC3D,qDAAqD;YACrD,MAAM,OAAO,GAAG,MAAM,cAAc,CAClC,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,WAAW,CACpB,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAClE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;gBAChC,MAAM;gBACN,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,OAAO;aACR,CAAC,CAAC;YAEH,MAAM,MAAM,GAAoB;gBAC9B,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,OAAO;gBACP,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;aACxB,CAAC;YAEF,WAAW,CAAC;gBACV,GAAG;gBACH,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,gBAAgB,CAAC,YAAY;gBACrC,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE;gBAC3B,UAAU;gBACV,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,eAAe,EAAE,MAAM,CAAC,eAAe;gBACvC,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `monday dev epic items <eid>` — list the task items linked to
|
|
3
|
+
* a named epic (cli-design §4.3 + §5.9; v0.3-plan §3 M26b).
|
|
4
|
+
*
|
|
5
|
+
* **Runtime body landed at M26b IMPL.** Same shape as
|
|
6
|
+
* `dev sprint items` but operates against the `tasks_to_epics_relation`
|
|
7
|
+
* board_relation column (the M26a round-2 P2-3 fix replaced the
|
|
8
|
+
* epics↔releases relation with this one; epics ↔ tasks is the
|
|
9
|
+
* actually-consumed wiring at v0.3).
|
|
10
|
+
*
|
|
11
|
+
* **<eid> resolution.** Positional epic ID is an item ID on the
|
|
12
|
+
* epics board. `ItemIdSchema` validates the shape at the argv layer.
|
|
13
|
+
*
|
|
14
|
+
* Idempotent: yes (pure read).
|
|
15
|
+
*/
|
|
16
|
+
import { z } from 'zod';
|
|
17
|
+
import { type CommandModule } from '../../types.js';
|
|
18
|
+
import { type ProjectedItem } from '../../../api/item-projection.js';
|
|
19
|
+
declare const inputSchema: z.ZodObject<{
|
|
20
|
+
epicId: z.core.$ZodBranded<z.ZodString, "ItemId", "out">;
|
|
21
|
+
}, z.core.$strict>;
|
|
22
|
+
export declare const devEpicItemsCommand: CommandModule<z.infer<typeof inputSchema>, readonly ProjectedItem[]>;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=items.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"items.d.ts","sourceRoot":"","sources":["../../../../src/commands/dev/epic/items.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAatE,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,iCAAiC,CAAC;AAEzC,QAAA,MAAM,WAAW;;kBAIN,CAAC;AAIZ,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAC7C,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,EAC3B,SAAS,aAAa,EAAE,CAmGzB,CAAC"}
|