monday-cli 0.2.0 → 0.3.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 +324 -2
- package/README.md +128 -30
- 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 +26 -7
- package/dist/api/column-types.d.ts.map +1 -1
- package/dist/api/column-types.js +42 -3
- package/dist/api/column-types.js.map +1 -1
- package/dist/api/column-values.d.ts +228 -31
- package/dist/api/column-values.d.ts.map +1 -1
- package/dist/api/column-values.js +551 -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/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/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/partial-success-bulk.d.ts +422 -0
- package/dist/api/partial-success-bulk.d.ts.map +1 -0
- package/dist/api/partial-success-bulk.js +378 -0
- package/dist/api/partial-success-bulk.js.map +1 -0
- 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.map +1 -1
- package/dist/api/raw-write.js +11 -3
- 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 +11 -0
- package/dist/api/resolve-client.d.ts.map +1 -1
- package/dist/api/resolve-client.js +1 -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 +12 -0
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +2 -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 +3 -3
- package/dist/commands/board/column-create.d.ts.map +1 -1
- package/dist/commands/board/column-create.js +52 -45
- 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/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/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 +95 -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 +1 -0
- package/dist/commands/item/update.d.ts.map +1 -1
- package/dist/commands/item/update.js +103 -113
- package/dist/commands/item/update.js.map +1 -1
- 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/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/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 +2 -0
- package/dist/types/ids.d.ts.map +1 -1
- package/dist/types/ids.js +5 -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/output/ndjson.d.ts +65 -3
- package/dist/utils/output/ndjson.d.ts.map +1 -1
- package/dist/utils/output/ndjson.js +21 -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/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
package/dist/utils/errors.js
CHANGED
|
@@ -3,8 +3,20 @@
|
|
|
3
3
|
* `code` from `cli-design.md` §6.5 — agents key off the code, never
|
|
4
4
|
* the English `message`. v0.1 froze 26 codes; `ambiguous_match` ships
|
|
5
5
|
* in v0.2 M12 (`item upsert` with 2+ matches), bringing the count to
|
|
6
|
-
* 27. `
|
|
7
|
-
*
|
|
6
|
+
* 27. `tag_not_found` registered pre-v0.3-M19 as the writer-expansion
|
|
7
|
+
* close prerequisite (cli-design §6.5 entry landed at `4c652d5`); the
|
|
8
|
+
* runtime throw site lands at M19 implementation when the `tags`
|
|
9
|
+
* friendly translator + `tag-directory.ts` ship — but the union
|
|
10
|
+
* widens at the M19 pre-flight contract diff so M19 feat commits
|
|
11
|
+
* throw into a stable typed surface (28 total). `oauth_failed` joined
|
|
12
|
+
* at the v0.3-M21 pre-flight contract diff as the `monday auth login`
|
|
13
|
+
* umbrella per cli-design §7.3.3 (29 total) — `details.reason`
|
|
14
|
+
* discriminates the failure mode (`csrf_mismatch`, `user_denied`,
|
|
15
|
+
* `authorization_failed`, `code_exchange_failed`, `timeout`,
|
|
16
|
+
* `port_in_use`, `browser_unavailable`); the runtime throw sites land
|
|
17
|
+
* at M21 implementation when `src/api/oauth.ts` + `src/commands/auth/*`
|
|
18
|
+
* ship their wire bodies. `dev_*` codes ship in v0.3 but are listed here
|
|
19
|
+
* so the M5b agent doesn't need to backfill the type.
|
|
8
20
|
*/
|
|
9
21
|
export const ERROR_CODES = [
|
|
10
22
|
'usage_error',
|
|
@@ -15,6 +27,7 @@ export const ERROR_CODES = [
|
|
|
15
27
|
'ambiguous_match',
|
|
16
28
|
'column_not_found',
|
|
17
29
|
'user_not_found',
|
|
30
|
+
'tag_not_found',
|
|
18
31
|
'unsupported_column_type',
|
|
19
32
|
'column_archived',
|
|
20
33
|
'unauthorized',
|
|
@@ -27,6 +40,7 @@ export const ERROR_CODES = [
|
|
|
27
40
|
'resource_locked',
|
|
28
41
|
'validation_failed',
|
|
29
42
|
'stale_cursor',
|
|
43
|
+
'oauth_failed',
|
|
30
44
|
'config_error',
|
|
31
45
|
'cache_error',
|
|
32
46
|
'network_error',
|
|
@@ -82,6 +96,7 @@ export const CODE_RETRYABLE_DEFAULT = Object.freeze({
|
|
|
82
96
|
ambiguous_match: false,
|
|
83
97
|
column_not_found: false,
|
|
84
98
|
user_not_found: false,
|
|
99
|
+
tag_not_found: false,
|
|
85
100
|
unsupported_column_type: false,
|
|
86
101
|
column_archived: false,
|
|
87
102
|
unauthorized: false,
|
|
@@ -94,6 +109,7 @@ export const CODE_RETRYABLE_DEFAULT = Object.freeze({
|
|
|
94
109
|
resource_locked: true,
|
|
95
110
|
validation_failed: false,
|
|
96
111
|
stale_cursor: false,
|
|
112
|
+
oauth_failed: false,
|
|
97
113
|
config_error: false,
|
|
98
114
|
cache_error: true,
|
|
99
115
|
network_error: true,
|
|
@@ -121,6 +137,7 @@ export const CODE_TYPICAL_HTTP_STATUS = Object.freeze({
|
|
|
121
137
|
ambiguous_match: null,
|
|
122
138
|
column_not_found: null,
|
|
123
139
|
user_not_found: null,
|
|
140
|
+
tag_not_found: null,
|
|
124
141
|
unsupported_column_type: null,
|
|
125
142
|
column_archived: 200,
|
|
126
143
|
unauthorized: 401,
|
|
@@ -133,6 +150,7 @@ export const CODE_TYPICAL_HTTP_STATUS = Object.freeze({
|
|
|
133
150
|
resource_locked: 423,
|
|
134
151
|
validation_failed: 200,
|
|
135
152
|
stale_cursor: 200,
|
|
153
|
+
oauth_failed: null,
|
|
136
154
|
config_error: null,
|
|
137
155
|
cache_error: null,
|
|
138
156
|
network_error: null,
|
|
@@ -204,6 +222,7 @@ export const exitCodeForError = (code) => {
|
|
|
204
222
|
switch (code) {
|
|
205
223
|
case 'usage_error':
|
|
206
224
|
case 'confirmation_required':
|
|
225
|
+
case 'oauth_failed':
|
|
207
226
|
return 1;
|
|
208
227
|
case 'config_error':
|
|
209
228
|
return 3;
|
|
@@ -213,6 +232,7 @@ export const exitCodeForError = (code) => {
|
|
|
213
232
|
case 'ambiguous_match':
|
|
214
233
|
case 'column_not_found':
|
|
215
234
|
case 'user_not_found':
|
|
235
|
+
case 'tag_not_found':
|
|
216
236
|
case 'unsupported_column_type':
|
|
217
237
|
case 'column_archived':
|
|
218
238
|
case 'unauthorized':
|
|
@@ -261,4 +281,51 @@ export const errorForAbortReason = (reason) => {
|
|
|
261
281
|
return assertNever(reason, 'errorForAbortReason');
|
|
262
282
|
}
|
|
263
283
|
};
|
|
284
|
+
/**
|
|
285
|
+
* Narrows a caught `unknown` to its message string. The standard
|
|
286
|
+
* `useUnknownInCatchVariables`-narrowing idiom for project code that
|
|
287
|
+
* needs the human-readable text without the full Error object.
|
|
288
|
+
*
|
|
289
|
+
* **R-NEW-14 lift (post-M23 audit).** Previously inlined 11+ times
|
|
290
|
+
* across the codebase since M2/M6 — see `docs/v0.3-plan.md` §22
|
|
291
|
+
* R-NEW-14 entry for the missed-trigger history. M22's
|
|
292
|
+
* `src/api/probes.ts:errorMessage` is the smoking gun: the developer
|
|
293
|
+
* needed the helper and wrote a local copy instead of finding the
|
|
294
|
+
* 9+ inline sites. Lift consolidates those into one canonical
|
|
295
|
+
* helper.
|
|
296
|
+
*/
|
|
297
|
+
export const errorMessage = (err) => err instanceof Error ? err.message : String(err);
|
|
298
|
+
/**
|
|
299
|
+
* Coerces a caught `unknown` to a real `Error` for `cause:`
|
|
300
|
+
* propagation. The companion to {@link errorMessage} for code paths
|
|
301
|
+
* that want the full Error object to thread through a `cause:`
|
|
302
|
+
* chain rather than just the message string.
|
|
303
|
+
*
|
|
304
|
+
* **R-NEW-15 lift (post-M23 audit).** Previously inlined 6+ times
|
|
305
|
+
* across M1 + M21 modules (`src/api/cache.ts`,
|
|
306
|
+
* `src/config/credentials.ts`, `src/config/profiles.ts`,
|
|
307
|
+
* `src/api/oauth-test-helper.ts`). M22's `src/api/probes.ts:asError`
|
|
308
|
+
* is the smoking gun (local copy with an `AbortSignal.reason`
|
|
309
|
+
* fallback parameter — superseded here by the shared helper).
|
|
310
|
+
* See `docs/v0.3-plan.md` §22 R-NEW-15 for the missed-trigger
|
|
311
|
+
* history.
|
|
312
|
+
*/
|
|
313
|
+
export const asError = (err) => err instanceof Error ? err : new Error(String(err));
|
|
314
|
+
/**
|
|
315
|
+
* Extracts the Node `err.code` property in a type-safe way, returning
|
|
316
|
+
* the string when present and `undefined` otherwise.
|
|
317
|
+
*
|
|
318
|
+
* **R-NEW-16 lift (post-M23 audit).** Generalises the
|
|
319
|
+
* `(err as { code?: unknown }).code` pattern that R-NEW-1's
|
|
320
|
+
* `isENOENT` open-coded. Three named consumers as of M22 (probes.ts
|
|
321
|
+
* + transport.ts + utils/fs.ts's `isENOENT`). `isENOENT` is now a
|
|
322
|
+
* one-liner on top of this. See `docs/v0.3-plan.md` §22 R-NEW-16
|
|
323
|
+
* for the trigger history.
|
|
324
|
+
*/
|
|
325
|
+
export const errorCode = (err) => {
|
|
326
|
+
if (typeof err !== 'object' || err === null)
|
|
327
|
+
return undefined;
|
|
328
|
+
const code = err.code;
|
|
329
|
+
return typeof code === 'string' ? code : undefined;
|
|
330
|
+
};
|
|
264
331
|
//# sourceMappingURL=errors.js.map
|
package/dist/utils/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Filesystem helpers shared across modules that talk to `node:fs`.
|
|
3
|
+
*
|
|
4
|
+
* v0.3-M21 Part 2 R-NEW-1: the 5-line `isENOENT` helper was duplicated
|
|
5
|
+
* verbatim in `src/api/cache.ts`, `src/config/credentials.ts`, and
|
|
6
|
+
* `src/config/profiles.ts`. The 3-consumer trigger fires at M21 close
|
|
7
|
+
* (mirrors R45 / R48 / R51 cadence — "lift when a third consumer
|
|
8
|
+
* lands"). Pure boilerplate consolidation; no behaviour change.
|
|
9
|
+
*
|
|
10
|
+
* Kept narrow on purpose. New filesystem-shaped helpers (e.g., a
|
|
11
|
+
* shared `wrapFsError` factory in R-NEW-3) land here only when their
|
|
12
|
+
* own consumer-count thresholds fire.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Returns `true` when `err` is a Node fs error with `code === 'ENOENT'`.
|
|
16
|
+
*
|
|
17
|
+
* v0.3 post-M23 audit (R-NEW-16): refactored from the open-coded
|
|
18
|
+
* type-guard pattern to call the shared {@link errorCode} helper.
|
|
19
|
+
* Behaviour preserved (returns `false` for non-object errors,
|
|
20
|
+
* non-string codes, and missing-code errors); the lift is mechanical.
|
|
21
|
+
*/
|
|
22
|
+
export declare const isENOENT: (err: unknown) => boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Formats a `stat.mode` numeric field as an octal `'0NNN'` string —
|
|
25
|
+
* the canonical shape for `chmod`-compatible output in security
|
|
26
|
+
* diagnostics + cache-permission refusal messages.
|
|
27
|
+
*
|
|
28
|
+
* v0.3-M22 close R-NEW-7 lift: the same formatter was duplicated
|
|
29
|
+
* character-identical across `src/api/cache.ts` + `src/config/
|
|
30
|
+
* credentials.ts` + `src/api/probes.ts` (M22 cache_writability
|
|
31
|
+
* probe was the third named consumer). Mirrors the R-NEW-1
|
|
32
|
+
* `isENOENT` lift cadence — pure fs-helper, no behaviour change.
|
|
33
|
+
*/
|
|
34
|
+
export declare const formatMode: (mode: number) => string;
|
|
35
|
+
//# sourceMappingURL=fs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,OAAO,KAAG,OACX,CAAC;AAE9B;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,MACS,CAAC"}
|
package/dist/utils/fs.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Filesystem helpers shared across modules that talk to `node:fs`.
|
|
3
|
+
*
|
|
4
|
+
* v0.3-M21 Part 2 R-NEW-1: the 5-line `isENOENT` helper was duplicated
|
|
5
|
+
* verbatim in `src/api/cache.ts`, `src/config/credentials.ts`, and
|
|
6
|
+
* `src/config/profiles.ts`. The 3-consumer trigger fires at M21 close
|
|
7
|
+
* (mirrors R45 / R48 / R51 cadence — "lift when a third consumer
|
|
8
|
+
* lands"). Pure boilerplate consolidation; no behaviour change.
|
|
9
|
+
*
|
|
10
|
+
* Kept narrow on purpose. New filesystem-shaped helpers (e.g., a
|
|
11
|
+
* shared `wrapFsError` factory in R-NEW-3) land here only when their
|
|
12
|
+
* own consumer-count thresholds fire.
|
|
13
|
+
*/
|
|
14
|
+
import { errorCode } from './errors.js';
|
|
15
|
+
/**
|
|
16
|
+
* Returns `true` when `err` is a Node fs error with `code === 'ENOENT'`.
|
|
17
|
+
*
|
|
18
|
+
* v0.3 post-M23 audit (R-NEW-16): refactored from the open-coded
|
|
19
|
+
* type-guard pattern to call the shared {@link errorCode} helper.
|
|
20
|
+
* Behaviour preserved (returns `false` for non-object errors,
|
|
21
|
+
* non-string codes, and missing-code errors); the lift is mechanical.
|
|
22
|
+
*/
|
|
23
|
+
export const isENOENT = (err) => errorCode(err) === 'ENOENT';
|
|
24
|
+
/**
|
|
25
|
+
* Formats a `stat.mode` numeric field as an octal `'0NNN'` string —
|
|
26
|
+
* the canonical shape for `chmod`-compatible output in security
|
|
27
|
+
* diagnostics + cache-permission refusal messages.
|
|
28
|
+
*
|
|
29
|
+
* v0.3-M22 close R-NEW-7 lift: the same formatter was duplicated
|
|
30
|
+
* character-identical across `src/api/cache.ts` + `src/config/
|
|
31
|
+
* credentials.ts` + `src/api/probes.ts` (M22 cache_writability
|
|
32
|
+
* probe was the third named consumer). Mirrors the R-NEW-1
|
|
33
|
+
* `isENOENT` lift cadence — pure fs-helper, no behaviour change.
|
|
34
|
+
*/
|
|
35
|
+
export const formatMode = (mode) => `0${(mode & 0o777).toString(8).padStart(3, '0')}`;
|
|
36
|
+
//# sourceMappingURL=fs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAY,EAAW,EAAE,CAChD,SAAS,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC;AAE9B;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE,CACjD,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared JSON-shape type-guards (`docs/v0.3-plan.md` §22 R-NEW-27
|
|
3
|
+
* lift, post-M24 close-docs audit).
|
|
4
|
+
*
|
|
5
|
+
* Before this lift, six structurally-identical `isObject` /
|
|
6
|
+
* `isJsonObject` / `isPlainObject` guards existed across the
|
|
7
|
+
* codebase (4 production + 2 test). The pattern accumulated
|
|
8
|
+
* silently from M2 (fixtures + e2e infrastructure) through M24
|
|
9
|
+
* (item-history-projection JSON parsing). M24's developer added
|
|
10
|
+
* a fresh local copy rather than discovering the existing 5 — the
|
|
11
|
+
* same miss + mass-migrate cadence as R-NEW-14/15/16 (error
|
|
12
|
+
* utilities) and R-NEW-19 (safeParse → unwrapOrThrow).
|
|
13
|
+
*
|
|
14
|
+
* Consumers narrow `unknown` to `Readonly<Record<string, unknown>>`
|
|
15
|
+
* before reading keyed fields off untrusted external payloads
|
|
16
|
+
* (Monday wire responses, JSON-from-disk cassettes, e2e fixture
|
|
17
|
+
* server bodies). `Readonly` is the more defensive choice — none
|
|
18
|
+
* of the existing consumers mutate the guarded value, and any
|
|
19
|
+
* downstream code that needs a mutable shape casts explicitly.
|
|
20
|
+
*/
|
|
21
|
+
/**
|
|
22
|
+
* Type-guard for "value is a plain JSON object" — narrows
|
|
23
|
+
* `unknown` to `Readonly<Record<string, unknown>>`. Returns
|
|
24
|
+
* false for null, arrays, and primitives.
|
|
25
|
+
*/
|
|
26
|
+
export declare const isPlainObject: (v: unknown) => v is Readonly<Record<string, unknown>>;
|
|
27
|
+
export interface ParseJsonArgOptions {
|
|
28
|
+
/**
|
|
29
|
+
* Free-form message prefix. Lands in `error.message` as
|
|
30
|
+
* `${context} (${errorMessage(err)})` on parse failure.
|
|
31
|
+
* Verb-specific phrasing (e.g. `'monday raw: GraphQL
|
|
32
|
+
* variables are not valid JSON'`, `'--settings: malformed
|
|
33
|
+
* JSON'`, `'--config must be a valid JSON-encoded string'`).
|
|
34
|
+
*/
|
|
35
|
+
readonly context: string;
|
|
36
|
+
/**
|
|
37
|
+
* Optional `details` map echoed on the surfaced `UsageError`.
|
|
38
|
+
* Each call site contributes verb-specific keys (e.g.
|
|
39
|
+
* `source` for `monday raw`, `column_type` + `raw` for
|
|
40
|
+
* `board column-create`, `board_id` + `hint` for `webhook
|
|
41
|
+
* create`). Schema is per-verb; the helper passes through
|
|
42
|
+
* verbatim.
|
|
43
|
+
*/
|
|
44
|
+
readonly details?: Readonly<Record<string, unknown>>;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Parses a JSON-encoded argv string. Returns the parsed value
|
|
48
|
+
* (`unknown` — caller narrows via downstream zod / type-guard);
|
|
49
|
+
* on `SyntaxError` (or any other thrown value from `JSON.parse`)
|
|
50
|
+
* throws `UsageError` with the supplied context, the underlying
|
|
51
|
+
* error as `cause`, and the supplied `details`.
|
|
52
|
+
*
|
|
53
|
+
* Use at every argv-parse-boundary that consumes user-supplied
|
|
54
|
+
* JSON (`--vars`, `--settings`, `--config`, future
|
|
55
|
+
* `--<field>-json` flags). Do NOT use for response-side parsing
|
|
56
|
+
* (Monday wire returns) — those go through `unwrapOrThrow` +
|
|
57
|
+
* a zod schema.
|
|
58
|
+
*/
|
|
59
|
+
export declare const parseJsonArg: (raw: string, options: ParseJsonArgOptions) => unknown;
|
|
60
|
+
//# sourceMappingURL=json.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/utils/json.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,aAAa,GACxB,GAAG,OAAO,KACT,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACkB,CAAC;AAqC3D,MAAM,WAAW,mBAAmB;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACtD;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,GACvB,KAAK,MAAM,EACX,SAAS,mBAAmB,KAC3B,OAcF,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared JSON-shape type-guards (`docs/v0.3-plan.md` §22 R-NEW-27
|
|
3
|
+
* lift, post-M24 close-docs audit).
|
|
4
|
+
*
|
|
5
|
+
* Before this lift, six structurally-identical `isObject` /
|
|
6
|
+
* `isJsonObject` / `isPlainObject` guards existed across the
|
|
7
|
+
* codebase (4 production + 2 test). The pattern accumulated
|
|
8
|
+
* silently from M2 (fixtures + e2e infrastructure) through M24
|
|
9
|
+
* (item-history-projection JSON parsing). M24's developer added
|
|
10
|
+
* a fresh local copy rather than discovering the existing 5 — the
|
|
11
|
+
* same miss + mass-migrate cadence as R-NEW-14/15/16 (error
|
|
12
|
+
* utilities) and R-NEW-19 (safeParse → unwrapOrThrow).
|
|
13
|
+
*
|
|
14
|
+
* Consumers narrow `unknown` to `Readonly<Record<string, unknown>>`
|
|
15
|
+
* before reading keyed fields off untrusted external payloads
|
|
16
|
+
* (Monday wire responses, JSON-from-disk cassettes, e2e fixture
|
|
17
|
+
* server bodies). `Readonly` is the more defensive choice — none
|
|
18
|
+
* of the existing consumers mutate the guarded value, and any
|
|
19
|
+
* downstream code that needs a mutable shape casts explicitly.
|
|
20
|
+
*/
|
|
21
|
+
/**
|
|
22
|
+
* Type-guard for "value is a plain JSON object" — narrows
|
|
23
|
+
* `unknown` to `Readonly<Record<string, unknown>>`. Returns
|
|
24
|
+
* false for null, arrays, and primitives.
|
|
25
|
+
*/
|
|
26
|
+
export const isPlainObject = (v) => typeof v === 'object' && v !== null && !Array.isArray(v);
|
|
27
|
+
/**
|
|
28
|
+
* `parseJsonArg` (R-NEW-42 lift, post-M27-close drift sweep).
|
|
29
|
+
*
|
|
30
|
+
* Three sites in `src/commands/*` consume a JSON-encoded argv
|
|
31
|
+
* string + reject malformed JSON as `usage_error`:
|
|
32
|
+
*
|
|
33
|
+
* - `monday raw --vars <json>` / `--vars-file <path>`
|
|
34
|
+
* (`src/commands/raw/index.ts`)
|
|
35
|
+
* - `monday board column-create --settings <json>`
|
|
36
|
+
* (`src/commands/board/column-create.ts`)
|
|
37
|
+
* - `monday webhook create --config <json>`
|
|
38
|
+
* (`src/commands/webhook/create.ts`, M27 IMPL)
|
|
39
|
+
*
|
|
40
|
+
* Each site pre-lift wrapped `JSON.parse` in try/catch + threw
|
|
41
|
+
* `UsageError` with a verb-specific message + `cause: err` +
|
|
42
|
+
* verb-specific `details`. The shape is structurally identical;
|
|
43
|
+
* the only variation is the message prefix + which detail-keys
|
|
44
|
+
* land. M27 IMPL pushed the count to 3, crossing the R7/R8
|
|
45
|
+
* 3-consumer threshold; this lift ships at the post-M27-close
|
|
46
|
+
* drift sweep mirroring R-NEW-38's same-cadence lift at
|
|
47
|
+
* `c71a96d`.
|
|
48
|
+
*
|
|
49
|
+
* Behavioural note: pre-lift, `webhook/create.ts` did NOT
|
|
50
|
+
* interpolate the underlying `JSON.parse` error message
|
|
51
|
+
* (just the static `'--config must be a valid JSON-encoded
|
|
52
|
+
* string'` text). The other two sites used `errorMessage(err)`
|
|
53
|
+
* to surface the SyntaxError detail. The lift normalises to
|
|
54
|
+
* always interpolate — better diagnostic value, no
|
|
55
|
+
* agent-facing contract change (the `error.code` stays
|
|
56
|
+
* `usage_error`; only `error.message` widens).
|
|
57
|
+
*/
|
|
58
|
+
import { UsageError } from './errors.js';
|
|
59
|
+
import { errorMessage } from './errors.js';
|
|
60
|
+
/**
|
|
61
|
+
* Parses a JSON-encoded argv string. Returns the parsed value
|
|
62
|
+
* (`unknown` — caller narrows via downstream zod / type-guard);
|
|
63
|
+
* on `SyntaxError` (or any other thrown value from `JSON.parse`)
|
|
64
|
+
* throws `UsageError` with the supplied context, the underlying
|
|
65
|
+
* error as `cause`, and the supplied `details`.
|
|
66
|
+
*
|
|
67
|
+
* Use at every argv-parse-boundary that consumes user-supplied
|
|
68
|
+
* JSON (`--vars`, `--settings`, `--config`, future
|
|
69
|
+
* `--<field>-json` flags). Do NOT use for response-side parsing
|
|
70
|
+
* (Monday wire returns) — those go through `unwrapOrThrow` +
|
|
71
|
+
* a zod schema.
|
|
72
|
+
*/
|
|
73
|
+
export const parseJsonArg = (raw, options) => {
|
|
74
|
+
try {
|
|
75
|
+
return JSON.parse(raw);
|
|
76
|
+
}
|
|
77
|
+
catch (err) {
|
|
78
|
+
throw new UsageError(`${options.context} (${errorMessage(err)})`, {
|
|
79
|
+
cause: err,
|
|
80
|
+
...(options.details === undefined
|
|
81
|
+
? {}
|
|
82
|
+
: { details: options.details }),
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=json.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/utils/json.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,CAAU,EAC8B,EAAE,CAC1C,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAsB3C;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,GAAW,EACX,OAA4B,EACnB,EAAE;IACX,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,UAAU,CAClB,GAAG,OAAO,CAAC,OAAO,KAAK,YAAY,CAAC,GAAG,CAAC,GAAG,EAC3C;YACE,KAAK,EAAE,GAAG;YACV,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS;gBAC/B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;SAClC,CACF,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Meta, Warning } from './envelope.js';
|
|
1
|
+
import type { ColumnHead, Complexity, DataSource, Meta, Warning } from './envelope.js';
|
|
2
2
|
/**
|
|
3
3
|
* NDJSON renderer for collections (`cli-design.md` §6.3).
|
|
4
4
|
*
|
|
@@ -20,7 +20,7 @@ import type { Meta, Warning } from './envelope.js';
|
|
|
20
20
|
* processing without waiting for the whole walk, not so the
|
|
21
21
|
* presentation layer can drop bytes.
|
|
22
22
|
*
|
|
23
|
-
*
|
|
23
|
+
* Three surfaces:
|
|
24
24
|
*
|
|
25
25
|
* - `renderNdjson` (collect-then-emit) — used when the caller
|
|
26
26
|
* already has the full data array. Single function, no streaming
|
|
@@ -34,6 +34,14 @@ import type { Meta, Warning } from './envelope.js';
|
|
|
34
34
|
* (M7), `item search` (M18), `update list` (M18). Was previously
|
|
35
35
|
* a private helper in `src/commands/item/list.ts`; lifted at the
|
|
36
36
|
* 3-consumer trigger.
|
|
37
|
+
*
|
|
38
|
+
* - `buildStreamingTrailerMeta` (R53, post-v0.2 cleanup-window lift)
|
|
39
|
+
* — sibling to `startNdjsonStream`. Builds the canonical
|
|
40
|
+
* §6.3 trailer Meta from the walker result + the three
|
|
41
|
+
* source/cache/api inputs. Same three consumers; consolidates
|
|
42
|
+
* the ~15-line `buildMeta(...)` boilerplate that was repeated
|
|
43
|
+
* across each call site, with cursor-vs-page + column-bearing-
|
|
44
|
+
* vs-not divergence handled via optional inputs.
|
|
37
45
|
*/
|
|
38
46
|
export interface NdjsonInput {
|
|
39
47
|
readonly data: readonly unknown[];
|
|
@@ -55,7 +63,9 @@ export declare const renderNdjson: (input: NdjsonInput, stream: NodeJS.WritableS
|
|
|
55
63
|
* (typically `ctx.stdout`).
|
|
56
64
|
* - `secrets` — token bytes the redactor scrubs from every emitted
|
|
57
65
|
* line (per `.claude/rules/security.md` "value-scanning filter").
|
|
58
|
-
* Caller passes `collectSecrets(ctx.env)
|
|
66
|
+
* Caller passes `collectSecrets(ctx.env, ctx.runtimeSecrets)`
|
|
67
|
+
* (the v0.3-M21 §7.4.3 redaction-runtime extension folds
|
|
68
|
+
* credentials-cache `access_token` values in via the second arg).
|
|
59
69
|
* - `project` — per-item projection callback. Decouples the helper
|
|
60
70
|
* from per-noun output shape: item list/search projects raw
|
|
61
71
|
* Monday rows through `projectFromRaw`; update list runs items
|
|
@@ -89,4 +99,56 @@ export interface NdjsonStreamHandle<T> {
|
|
|
89
99
|
readonly writeTrailer: (meta: Meta) => void;
|
|
90
100
|
}
|
|
91
101
|
export declare const startNdjsonStream: <T>(inputs: NdjsonStreamInputs<T>) => NdjsonStreamHandle<T>;
|
|
102
|
+
/**
|
|
103
|
+
* Inputs to `buildStreamingTrailerMeta` (R53 lift, v0.2-plan §22).
|
|
104
|
+
* Sibling to `startNdjsonStream` — both implement §6.3.
|
|
105
|
+
*
|
|
106
|
+
* Three NDJSON consumers (item list / item search / update list)
|
|
107
|
+
* end up calling `buildMeta(...)` with structurally near-identical
|
|
108
|
+
* inputs, varying only on whether the noun carries `next_cursor`
|
|
109
|
+
* (cursor-walked vs page-walked) and `meta.columns` (column-bearing
|
|
110
|
+
* or not). The helper takes the walker-shaped `result` block + the
|
|
111
|
+
* three meta source/cache/api inputs + an optional `columns` slot,
|
|
112
|
+
* builds the canonical-key-order Meta via `buildMeta`, and returns
|
|
113
|
+
* it ready for `stream.writeTrailer`.
|
|
114
|
+
*
|
|
115
|
+
* Five fields total — within the >4-parameter heuristic that
|
|
116
|
+
* deferred R44 / R49 / R50, since `ctx` and `result` are
|
|
117
|
+
* structurally complete units (not flat scalars to count).
|
|
118
|
+
*
|
|
119
|
+
* Per-consumer divergence the helper preserves:
|
|
120
|
+
* - cursor-walked consumers (item list / item search) populate
|
|
121
|
+
* `result.nextCursor`; the trailer carries `next_cursor`.
|
|
122
|
+
* - page-walked consumers (update list) omit `result.nextCursor`;
|
|
123
|
+
* the trailer drops `next_cursor` entirely (buildMeta convention:
|
|
124
|
+
* undefined input → key absent from output).
|
|
125
|
+
* - column-bearing consumers (item list / item search) populate
|
|
126
|
+
* `columns`; non-bearing consumers (update list) omit it; the
|
|
127
|
+
* trailer mirrors the input shape on a per-consumer basis.
|
|
128
|
+
*
|
|
129
|
+
* The complexity slot is always required: the cursor-walker exposes
|
|
130
|
+
* it directly on `result.complexity`; the page-walker exposes it
|
|
131
|
+
* via `result.lastResponse.complexity`. Each consumer extracts at
|
|
132
|
+
* the call site; the helper takes the post-extraction value.
|
|
133
|
+
*/
|
|
134
|
+
export interface StreamingTrailerInputs {
|
|
135
|
+
readonly ctx: {
|
|
136
|
+
readonly cliVersion: string;
|
|
137
|
+
readonly requestId: string;
|
|
138
|
+
readonly clock: () => Date;
|
|
139
|
+
};
|
|
140
|
+
readonly apiVersion: string;
|
|
141
|
+
readonly source: DataSource;
|
|
142
|
+
readonly cacheAgeSeconds: number | null;
|
|
143
|
+
readonly result: {
|
|
144
|
+
readonly hasMore: boolean;
|
|
145
|
+
readonly totalReturned: number;
|
|
146
|
+
readonly complexity: Complexity | null;
|
|
147
|
+
/** Omit for page-walked consumers; trailer drops `next_cursor`. */
|
|
148
|
+
readonly nextCursor?: string | null;
|
|
149
|
+
};
|
|
150
|
+
/** Omit for non-column-bearing nouns; trailer drops `columns`. */
|
|
151
|
+
readonly columns?: Readonly<Record<string, ColumnHead>>;
|
|
152
|
+
}
|
|
153
|
+
export declare const buildStreamingTrailerMeta: (inputs: StreamingTrailerInputs) => Meta;
|
|
92
154
|
//# sourceMappingURL=ndjson.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ndjson.d.ts","sourceRoot":"","sources":["../../../src/utils/output/ndjson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"ndjson.d.ts","sourceRoot":"","sources":["../../../src/utils/output/ndjson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,IAAI,EACJ,OAAO,EACR,MAAM,eAAe,CAAC;AAIvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;CACvC;AAED,eAAO,MAAM,YAAY,GACvB,OAAO,WAAW,EAClB,QAAQ,MAAM,CAAC,cAAc,KAC5B,IAKF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC;CACxC;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CAC7C;AAgBD,eAAO,MAAM,iBAAiB,GAAI,CAAC,EACjC,QAAQ,kBAAkB,CAAC,CAAC,CAAC,KAC5B,kBAAkB,CAAC,CAAC,CAatB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,GAAG,EAAE;QACZ,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;KAC5B,CAAC;IACF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;QACvC,mEAAmE;QACnE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACrC,CAAC;IACF,kEAAkE;IAClE,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;CACzD;AAED,eAAO,MAAM,yBAAyB,GACpC,QAAQ,sBAAsB,KAC7B,IAoBC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { buildMeta } from './envelope.js';
|
|
1
2
|
import { redact } from '../redact.js';
|
|
2
3
|
export const renderNdjson = (input, stream) => {
|
|
3
4
|
for (const resource of input.data) {
|
|
@@ -30,4 +31,24 @@ export const startNdjsonStream = (inputs) => {
|
|
|
30
31
|
},
|
|
31
32
|
};
|
|
32
33
|
};
|
|
34
|
+
export const buildStreamingTrailerMeta = (inputs) => buildMeta({
|
|
35
|
+
api_version: inputs.apiVersion,
|
|
36
|
+
cli_version: inputs.ctx.cliVersion,
|
|
37
|
+
request_id: inputs.ctx.requestId,
|
|
38
|
+
source: inputs.source,
|
|
39
|
+
retrieved_at: inputs.ctx.clock().toISOString(),
|
|
40
|
+
cache_age_seconds: inputs.cacheAgeSeconds,
|
|
41
|
+
complexity: inputs.result.complexity,
|
|
42
|
+
has_more: inputs.result.hasMore,
|
|
43
|
+
total_returned: inputs.result.totalReturned,
|
|
44
|
+
// Conditional spreads preserve `exactOptionalPropertyTypes`'s
|
|
45
|
+
// "undefined ≠ absent" rule: passing the keys with explicit
|
|
46
|
+
// `undefined` would not compile against the optional `?:` slots
|
|
47
|
+
// in `MetaInput`, even though `buildMeta` would have stripped
|
|
48
|
+
// them anyway.
|
|
49
|
+
...(inputs.result.nextCursor === undefined
|
|
50
|
+
? {}
|
|
51
|
+
: { next_cursor: inputs.result.nextCursor }),
|
|
52
|
+
...(inputs.columns === undefined ? {} : { columns: inputs.columns }),
|
|
53
|
+
});
|
|
33
54
|
//# sourceMappingURL=ndjson.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ndjson.js","sourceRoot":"","sources":["../../../src/utils/output/ndjson.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ndjson.js","sourceRoot":"","sources":["../../../src/utils/output/ndjson.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redact.d.ts","sourceRoot":"","sources":["../../src/utils/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;
|
|
1
|
+
{"version":3,"file":"redact.d.ts","sourceRoot":"","sources":["../../src/utils/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAwCH,MAAM,WAAW,aAAa;IAC5B,gEAAgE;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,uEAAuE;IACvE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,yDAAyD;IACzD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAkID;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM,GAAI,OAAO,OAAO,EAAE,UAAS,aAAkB,KAAG,OASpE,CAAC"}
|
package/dist/utils/redact.js
CHANGED
|
@@ -25,10 +25,19 @@
|
|
|
25
25
|
* with a `[Circular]` marker — never the original value, never a
|
|
26
26
|
* thrown error that could leak in a stack trace.
|
|
27
27
|
*/
|
|
28
|
+
// `access_token` joins the list at v0.3-M21 pre-flight per cli-design
|
|
29
|
+
// §7.4.3 — the credentials cache (§7.4.1) keys per-profile entries
|
|
30
|
+
// under `access_token: <opaque-monday-token>`, so any path that
|
|
31
|
+
// emits a credentials-cache excerpt (debug bundle, error envelopes
|
|
32
|
+
// rooted in a credentials-read failure) scrubs the value via this
|
|
33
|
+
// list. The runtime value-scanning extension that loads + folds
|
|
34
|
+
// credentials values into the secret-bag lands at M21 implementation
|
|
35
|
+
// alongside the `monday auth login` body.
|
|
28
36
|
const DEFAULT_SENSITIVE_KEYS = [
|
|
29
37
|
'apiToken',
|
|
30
38
|
'Authorization',
|
|
31
39
|
'MONDAY_API_TOKEN',
|
|
40
|
+
'access_token',
|
|
32
41
|
];
|
|
33
42
|
// Negative lookahead `(?!s)` excludes plural forms (`tokens`,
|
|
34
43
|
// `secrets`, `passwords`, `api_keys`) — those are container key
|
|
@@ -125,6 +134,28 @@ const redactInternal = (value, ctx) => {
|
|
|
125
134
|
const result = {};
|
|
126
135
|
for (const [key, child] of Object.entries(value)) {
|
|
127
136
|
if (isSensitiveKey(key, ctx.extraKeys, ctx.extraPattern)) {
|
|
137
|
+
// Default: redact. Only booleans, finite numbers, and `null`
|
|
138
|
+
// are preserved verbatim — these cannot encode a token byte
|
|
139
|
+
// sequence in JSON output and are the carrier types for
|
|
140
|
+
// structural-presence shapes like `set: {MONDAY_API_TOKEN:
|
|
141
|
+
// true}` (M22 `monday status` env-var-pickup probe per
|
|
142
|
+
// cli-design §11.5.2). Symbols, functions, bigints, and
|
|
143
|
+
// `undefined` redact wholesale because:
|
|
144
|
+
// - Symbol descriptions can encode secret bytes
|
|
145
|
+
// (`Symbol("tok-…")`),
|
|
146
|
+
// - function source can encode secret bytes,
|
|
147
|
+
// - bigints could theoretically encode a numeric token,
|
|
148
|
+
// - `undefined` is omitted by `JSON.stringify` (no visible
|
|
149
|
+
// side effect), but consistency: anything that isn't a
|
|
150
|
+
// bool/number/null defaults to redact.
|
|
151
|
+
// Codex M22 W8 ratified the allowlist shape so the
|
|
152
|
+
// loosening doesn't leak via unusual scalar types.
|
|
153
|
+
if (typeof child === 'boolean' ||
|
|
154
|
+
typeof child === 'number' ||
|
|
155
|
+
child === null) {
|
|
156
|
+
result[key] = child;
|
|
157
|
+
continue;
|
|
158
|
+
}
|
|
128
159
|
result[key] = ctx.placeholder;
|
|
129
160
|
continue;
|
|
130
161
|
}
|
package/dist/utils/redact.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redact.js","sourceRoot":"","sources":["../../src/utils/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,MAAM,sBAAsB,GAAsB;IAChD,UAAU;IACV,eAAe;IACf,kBAAkB;
|
|
1
|
+
{"version":3,"file":"redact.js","sourceRoot":"","sources":["../../src/utils/redact.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "monday-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Agent-first CLI for Monday.com — read boards, file backlog items, transition statuses, and post comments from the terminal. Built for AI coding agents (Claude Code, Codex) with humans as a welcome second audience.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -69,6 +69,7 @@
|
|
|
69
69
|
"dotenv": "^17.0.0",
|
|
70
70
|
"graphql": "^16.8.2",
|
|
71
71
|
"ora": "^9.0.0",
|
|
72
|
+
"smol-toml": "^1.6.1",
|
|
72
73
|
"zod": "^4.0.0"
|
|
73
74
|
},
|
|
74
75
|
"devDependencies": {
|