@unbrained/pm-cli 2026.6.12 → 2026.6.16
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 +103 -0
- package/README.md +2 -2
- package/dist/cli/bootstrap-args.d.ts +29 -0
- package/dist/cli/bootstrap-args.js +11 -4
- package/dist/cli/bootstrap-args.js.map +1 -1
- package/dist/cli/commander-usage.d.ts +12 -0
- package/dist/cli/commander-usage.js +18 -7
- package/dist/cli/commander-usage.js.map +1 -1
- package/dist/cli/commands/activity.d.ts +19 -0
- package/dist/cli/commands/activity.js +12 -2
- package/dist/cli/commands/activity.js.map +1 -1
- package/dist/cli/commands/aggregate.d.ts +58 -0
- package/dist/cli/commands/aggregate.js +48 -15
- package/dist/cli/commands/aggregate.js.map +1 -1
- package/dist/cli/commands/annotation-command.d.ts +6 -1
- package/dist/cli/commands/annotation-command.js +72 -2
- package/dist/cli/commands/annotation-command.js.map +1 -1
- package/dist/cli/commands/append.js +4 -3
- package/dist/cli/commands/append.js.map +1 -1
- package/dist/cli/commands/close-many.d.ts +20 -0
- package/dist/cli/commands/close-many.js +14 -23
- package/dist/cli/commands/close-many.js.map +1 -1
- package/dist/cli/commands/close.js +37 -4
- package/dist/cli/commands/close.js.map +1 -1
- package/dist/cli/commands/comments-audit.js +3 -2
- package/dist/cli/commands/comments-audit.js.map +1 -1
- package/dist/cli/commands/comments.d.ts +2 -0
- package/dist/cli/commands/comments.js +49 -23
- package/dist/cli/commands/comments.js.map +1 -1
- package/dist/cli/commands/completion.js +269 -8
- package/dist/cli/commands/completion.js.map +1 -1
- package/dist/cli/commands/config.d.ts +51 -1
- package/dist/cli/commands/config.js +50 -12
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/context.d.ts +79 -1
- package/dist/cli/commands/context.js +151 -25
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/commands/contracts.d.ts +80 -1
- package/dist/cli/commands/contracts.js +54 -4
- package/dist/cli/commands/contracts.js.map +1 -1
- package/dist/cli/commands/create.d.ts +49 -0
- package/dist/cli/commands/create.js +112 -7
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/commands/dedupe-audit.d.ts +33 -0
- package/dist/cli/commands/dedupe-audit.js +18 -14
- package/dist/cli/commands/dedupe-audit.js.map +1 -1
- package/dist/cli/commands/deps.js +7 -4
- package/dist/cli/commands/deps.js.map +1 -1
- package/dist/cli/commands/event-validation-messages.js +3 -3
- package/dist/cli/commands/event-validation-messages.js.map +1 -1
- package/dist/cli/commands/extension/bundled-catalog.d.ts +7 -0
- package/dist/cli/commands/extension/bundled-catalog.js +19 -15
- package/dist/cli/commands/extension/bundled-catalog.js.map +1 -1
- package/dist/cli/commands/extension/install-sources.d.ts +41 -1
- package/dist/cli/commands/extension/install-sources.js +26 -8
- package/dist/cli/commands/extension/install-sources.js.map +1 -1
- package/dist/cli/commands/extension/shared.d.ts +5 -0
- package/dist/cli/commands/extension/shared.js +9 -3
- package/dist/cli/commands/extension/shared.js.map +1 -1
- package/dist/cli/commands/extension.d.ts +133 -1
- package/dist/cli/commands/extension.js +127 -9
- package/dist/cli/commands/extension.js.map +1 -1
- package/dist/cli/commands/files.d.ts +30 -1
- package/dist/cli/commands/files.js +21 -2
- package/dist/cli/commands/files.js.map +1 -1
- package/dist/cli/commands/focus.d.ts +11 -0
- package/dist/cli/commands/focus.js +86 -0
- package/dist/cli/commands/focus.js.map +1 -0
- package/dist/cli/commands/get.d.ts +9 -2
- package/dist/cli/commands/get.js +34 -6
- package/dist/cli/commands/get.js.map +1 -1
- package/dist/cli/commands/guide.d.ts +5 -0
- package/dist/cli/commands/guide.js +6 -3
- package/dist/cli/commands/guide.js.map +1 -1
- package/dist/cli/commands/health.d.ts +109 -0
- package/dist/cli/commands/health.js +87 -35
- package/dist/cli/commands/health.js.map +1 -1
- package/dist/cli/commands/history-compact.js +27 -36
- package/dist/cli/commands/history-compact.js.map +1 -1
- package/dist/cli/commands/history-redact.d.ts +46 -0
- package/dist/cli/commands/history-redact.js +99 -67
- package/dist/cli/commands/history-redact.js.map +1 -1
- package/dist/cli/commands/history-repair.js +34 -37
- package/dist/cli/commands/history-repair.js.map +1 -1
- package/dist/cli/commands/history.js +6 -2
- package/dist/cli/commands/history.js.map +1 -1
- package/dist/cli/commands/index.d.ts +1 -0
- package/dist/cli/commands/index.js +3 -2
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init-agent-guidance.d.ts +54 -0
- package/dist/cli/commands/init-agent-guidance.js +31 -4
- package/dist/cli/commands/init-agent-guidance.js.map +1 -1
- package/dist/cli/commands/init.d.ts +36 -1
- package/dist/cli/commands/init.js +38 -5
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/learnings.js +4 -3
- package/dist/cli/commands/learnings.js.map +1 -1
- package/dist/cli/commands/linked-test-parsers.d.ts +5 -0
- package/dist/cli/commands/linked-test-parsers.js +5 -2
- package/dist/cli/commands/linked-test-parsers.js.map +1 -1
- package/dist/cli/commands/list-filter-shared.d.ts +8 -0
- package/dist/cli/commands/list-filter-shared.js +70 -0
- package/dist/cli/commands/list-filter-shared.js.map +1 -0
- package/dist/cli/commands/list.d.ts +116 -0
- package/dist/cli/commands/list.js +194 -6
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/normalize.js +16 -2
- package/dist/cli/commands/normalize.js.map +1 -1
- package/dist/cli/commands/notes.js +4 -3
- package/dist/cli/commands/notes.js.map +1 -1
- package/dist/cli/commands/plan.js +3 -2
- package/dist/cli/commands/plan.js.map +1 -1
- package/dist/cli/commands/reindex.d.ts +83 -0
- package/dist/cli/commands/reindex.js +45 -10
- package/dist/cli/commands/reindex.js.map +1 -1
- package/dist/cli/commands/restore.d.ts +40 -1
- package/dist/cli/commands/restore.js +27 -2
- package/dist/cli/commands/restore.js.map +1 -1
- package/dist/cli/commands/schema.d.ts +18 -0
- package/dist/cli/commands/schema.js +30 -3
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/search.d.ts +289 -1
- package/dist/cli/commands/search.js +367 -60
- package/dist/cli/commands/search.js.map +1 -1
- package/dist/cli/commands/stats.d.ts +38 -0
- package/dist/cli/commands/stats.js +38 -10
- package/dist/cli/commands/stats.js.map +1 -1
- package/dist/cli/commands/telemetry.js +5 -3
- package/dist/cli/commands/telemetry.js.map +1 -1
- package/dist/cli/commands/templates.d.ts +18 -0
- package/dist/cli/commands/templates.js +9 -2
- package/dist/cli/commands/templates.js.map +1 -1
- package/dist/cli/commands/test-all.d.ts +5 -0
- package/dist/cli/commands/test-all.js +9 -3
- package/dist/cli/commands/test-all.js.map +1 -1
- package/dist/cli/commands/test.d.ts +70 -1
- package/dist/cli/commands/test.js +84 -3
- package/dist/cli/commands/test.js.map +1 -1
- package/dist/cli/commands/update-many.d.ts +34 -1
- package/dist/cli/commands/update-many.js +60 -31
- package/dist/cli/commands/update-many.js.map +1 -1
- package/dist/cli/commands/update.d.ts +71 -0
- package/dist/cli/commands/update.js +74 -8
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/upgrade.d.ts +28 -1
- package/dist/cli/commands/upgrade.js +17 -4
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/cli/commands/validate.d.ts +114 -0
- package/dist/cli/commands/validate.js +154 -9
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/error-guidance.d.ts +30 -0
- package/dist/cli/error-guidance.js +68 -6
- package/dist/cli/error-guidance.js.map +1 -1
- package/dist/cli/extension-command-options.js +9 -7
- package/dist/cli/extension-command-options.js.map +1 -1
- package/dist/cli/help-content.d.ts +8 -0
- package/dist/cli/help-content.js +30 -6
- package/dist/cli/help-content.js.map +1 -1
- package/dist/cli/help-json-payload.d.ts +19 -1
- package/dist/cli/help-json-payload.js +16 -7
- package/dist/cli/help-json-payload.js.map +1 -1
- package/dist/cli/main.d.ts +223 -0
- package/dist/cli/main.js +214 -46
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/register-list-query.js +62 -5
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-mutation.d.ts +16 -0
- package/dist/cli/register-mutation.js +210 -40
- package/dist/cli/register-mutation.js.map +1 -1
- package/dist/cli/register-operations.d.ts +8 -0
- package/dist/cli/register-operations.js +33 -11
- package/dist/cli/register-operations.js.map +1 -1
- package/dist/cli/register-setup.js +9 -6
- package/dist/cli/register-setup.js.map +1 -1
- package/dist/cli/registration-helpers.d.ts +4 -0
- package/dist/cli/registration-helpers.js +124 -38
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/chunks/activity-5P2KQCTH.js +18 -0
- package/dist/cli-bundle/chunks/{activity-XADJOG6G.js → activity-MJGTX4LO.js} +13 -11
- package/dist/cli-bundle/chunks/{aggregate-OD36DJU5.js → aggregate-MH3GROKB.js} +54 -25
- package/dist/cli-bundle/chunks/aggregate-MH3GROKB.js.map +7 -0
- package/dist/cli-bundle/chunks/{aggregate-6OTS3AOO.js → aggregate-OUGCDFNC.js} +55 -26
- package/dist/cli-bundle/chunks/aggregate-OUGCDFNC.js.map +1 -0
- package/dist/cli-bundle/chunks/{append-JYWO4P7W.js → append-2Q4BPUBW.js} +10 -10
- package/dist/cli-bundle/chunks/{append-JYWO4P7W.js.map → append-2Q4BPUBW.js.map} +2 -2
- package/dist/cli-bundle/chunks/{append-KG55G7S3.js → append-VCRUG2W6.js} +11 -11
- package/dist/cli-bundle/chunks/append-VCRUG2W6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-IGVJRZ6H.js → chunk-2IUJBMKS.js} +10 -9
- package/dist/cli-bundle/chunks/{chunk-IGVJRZ6H.js.map → chunk-2IUJBMKS.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ATEES5SX.js → chunk-2JEGCDYT.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-XUC4C4PT.js → chunk-3WAULYOY.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-UIG4TW2H.js → chunk-3XOXWOGA.js} +359 -19
- package/dist/cli-bundle/chunks/chunk-3XOXWOGA.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-3KLPFWZ4.js → chunk-4KBK4BA3.js} +16 -34
- package/dist/cli-bundle/chunks/chunk-4KBK4BA3.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-OLKBSY4N.js → chunk-4VLB4JH2.js} +51 -8
- package/dist/cli-bundle/chunks/chunk-4VLB4JH2.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-ZMW77VWV.js → chunk-656HPQPO.js} +27 -12
- package/dist/cli-bundle/chunks/chunk-656HPQPO.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-CW6E4NAT.js → chunk-667XI4UJ.js} +309 -20
- package/dist/cli-bundle/chunks/chunk-667XI4UJ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-5SCT2JCT.js → chunk-6BV7ENQL.js} +9 -8
- package/dist/cli-bundle/chunks/chunk-6BV7ENQL.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-6EFCFPNE.js +35 -0
- package/dist/cli-bundle/chunks/chunk-6EFCFPNE.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-VFUZV5EB.js → chunk-6NQXMGYU.js} +19 -8
- package/dist/cli-bundle/chunks/chunk-6NQXMGYU.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GKIZW7SM.js → chunk-764O7EUA.js} +223 -50
- package/dist/cli-bundle/chunks/chunk-764O7EUA.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-QJMGRZO2.js → chunk-7AGIXLNK.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-7EILPFMA.js +404 -0
- package/dist/cli-bundle/chunks/chunk-7EILPFMA.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-HI7STVF2.js → chunk-7K2MXFMX.js} +14 -32
- package/dist/cli-bundle/chunks/chunk-7K2MXFMX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-TNAP7EJX.js → chunk-7L5VOUYP.js} +6 -17
- package/dist/cli-bundle/chunks/chunk-7L5VOUYP.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-7ZGKNHUL.js +61 -0
- package/dist/cli-bundle/chunks/chunk-7ZGKNHUL.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-7IYFN5R7.js → chunk-A576QZDL.js} +223 -50
- package/dist/cli-bundle/chunks/chunk-A576QZDL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-KBPQHXWG.js → chunk-AERT7KT3.js} +5 -5
- package/dist/cli-bundle/chunks/chunk-ASM4DVRW.js +58 -0
- package/dist/cli-bundle/chunks/chunk-ASM4DVRW.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-KWAXVAXX.js → chunk-B5Q7XC4K.js} +117 -37
- package/dist/cli-bundle/chunks/chunk-B5Q7XC4K.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-EWFY7SLA.js → chunk-BJWTFOZM.js} +74 -14
- package/dist/cli-bundle/chunks/chunk-BJWTFOZM.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-XJDGS74Y.js → chunk-CBMETQ2U.js} +105 -31
- package/dist/cli-bundle/chunks/chunk-CBMETQ2U.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ESANVZF4.js → chunk-E6J2PEK6.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-VSRZRLG3.js → chunk-F2GC6L3N.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-I7NYDZDV.js → chunk-F7WSO5UX.js} +7 -18
- package/dist/cli-bundle/chunks/chunk-F7WSO5UX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-VAOUX6TK.js → chunk-FTAZLAR7.js} +8 -5
- package/dist/cli-bundle/chunks/{chunk-VAOUX6TK.js.map → chunk-FTAZLAR7.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-OASDW5UI.js → chunk-FXNT5LPX.js} +77 -9
- package/dist/cli-bundle/chunks/chunk-FXNT5LPX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-WUNFKP7M.js → chunk-G2YVUY7I.js} +14 -9
- package/dist/cli-bundle/chunks/chunk-G2YVUY7I.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-L5EPZQIC.js → chunk-G3CEIXTV.js} +68 -19
- package/dist/cli-bundle/chunks/chunk-G3CEIXTV.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-UUWGCWBU.js → chunk-GAVE4MYM.js} +37 -63
- package/dist/cli-bundle/chunks/chunk-GAVE4MYM.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-SXKNJPQ7.js → chunk-GQ4JKNMV.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-SXKNJPQ7.js.map → chunk-GQ4JKNMV.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-73ZPG2I3.js → chunk-GYMG7AG6.js} +36 -62
- package/dist/cli-bundle/chunks/chunk-GYMG7AG6.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-35P4GT6E.js → chunk-H6EH6ENJ.js} +362 -22
- package/dist/cli-bundle/chunks/chunk-H6EH6ENJ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-F75JSIOZ.js → chunk-HDIDUME4.js} +45 -13
- package/dist/cli-bundle/chunks/chunk-HDIDUME4.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-XWMF3POR.js → chunk-HPELHUTG.js} +122 -45
- package/dist/cli-bundle/chunks/chunk-HPELHUTG.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-QKW5D45B.js → chunk-II7OGE3V.js} +20 -9
- package/dist/cli-bundle/chunks/chunk-II7OGE3V.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-4HFU4UO2.js → chunk-ILHLIA47.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-4HFU4UO2.js.map → chunk-ILHLIA47.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-P5BJOMBB.js → chunk-IMQG4VR3.js} +118 -74
- package/dist/cli-bundle/chunks/chunk-IMQG4VR3.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-AX4GEVQC.js → chunk-IQVB3YDD.js} +88 -22
- package/dist/cli-bundle/chunks/chunk-IQVB3YDD.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-I53JBTJW.js → chunk-KQ3LAMDO.js} +45 -13
- package/dist/cli-bundle/chunks/chunk-KQ3LAMDO.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-A6LXQFO7.js → chunk-KTVETP66.js} +334 -253
- package/dist/cli-bundle/chunks/chunk-KTVETP66.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-DY6C42S6.js → chunk-KZYVTOG5.js} +26 -11
- package/dist/cli-bundle/chunks/chunk-KZYVTOG5.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-HGLC63AU.js → chunk-L6FJPOT4.js} +11 -10
- package/dist/cli-bundle/chunks/{chunk-HGLC63AU.js.map → chunk-L6FJPOT4.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-FY4SPXSC.js → chunk-LV5FFQ7M.js} +354 -266
- package/dist/cli-bundle/chunks/chunk-LV5FFQ7M.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-PNYAAB4S.js → chunk-LWGMDLQ6.js} +8 -3
- package/dist/cli-bundle/chunks/chunk-LWGMDLQ6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-XTKJSVWH.js → chunk-M23HXJL3.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-S26FESD4.js → chunk-MJZUZ2QE.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-I2IJY2NL.js → chunk-NCIBNERT.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-I2IJY2NL.js.map → chunk-NCIBNERT.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-TK5VZFHY.js → chunk-NIQHNDBZ.js} +76 -8
- package/dist/cli-bundle/chunks/chunk-NIQHNDBZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-C6SAP27O.js → chunk-O46LTCXQ.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-YW6Q3RYZ.js → chunk-OCTQJP42.js} +19 -8
- package/dist/cli-bundle/chunks/{chunk-YW6Q3RYZ.js.map → chunk-OCTQJP42.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-WPDMBIX6.js → chunk-OLTYNVJR.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-IUKD4W6Z.js → chunk-OY3P2I6B.js} +13 -8
- package/dist/cli-bundle/chunks/chunk-OY3P2I6B.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-SO55HRA5.js → chunk-PZD7WPUC.js} +69 -20
- package/dist/cli-bundle/chunks/chunk-PZD7WPUC.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-HHHJ2GI3.js → chunk-Q5RLUCP3.js} +74 -14
- package/dist/cli-bundle/chunks/chunk-Q5RLUCP3.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-S2ZLDYGS.js → chunk-RKKIH2ZQ.js} +116 -36
- package/dist/cli-bundle/chunks/chunk-RKKIH2ZQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-GWZSYR6X.js → chunk-SPYPC5CB.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-GWZSYR6X.js.map → chunk-SPYPC5CB.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-7AMK6DOW.js → chunk-SY4GKIWT.js} +88 -22
- package/dist/cli-bundle/chunks/chunk-SY4GKIWT.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ZLMIWZUG.js → chunk-SY4PZWIZ.js} +7 -4
- package/dist/cli-bundle/chunks/{chunk-ZLMIWZUG.js.map → chunk-SY4PZWIZ.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-R2OUQVBK.js → chunk-T5VU7ROQ.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-37CYVF73.js → chunk-TIRZIQRP.js} +121 -44
- package/dist/cli-bundle/chunks/chunk-TIRZIQRP.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-7UGSRQCL.js → chunk-TUB3DZAZ.js} +107 -33
- package/dist/cli-bundle/chunks/chunk-TUB3DZAZ.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-UAR2VNCK.js +394 -0
- package/dist/cli-bundle/chunks/chunk-UAR2VNCK.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-P5U5EOMA.js → chunk-UBMCSJXX.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-ZYNJNPYD.js → chunk-UUKORJSN.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-R4VWYWRN.js → chunk-W3HFLORZ.js} +7 -2
- package/dist/cli-bundle/chunks/chunk-W3HFLORZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-VPEAS7PS.js → chunk-WZCQVABQ.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-X3W5ESZQ.js +32 -0
- package/dist/cli-bundle/chunks/chunk-X3W5ESZQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-4YFAGDRH.js → chunk-XLNNCKTN.js} +322 -19
- package/dist/cli-bundle/chunks/chunk-XLNNCKTN.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-RXAP6JL5.js → chunk-XNOY7TCB.js} +118 -74
- package/dist/cli-bundle/chunks/chunk-XNOY7TCB.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-Y3YKK7CY.js → chunk-YGRPBFMA.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QNJSITCX.js → chunk-YXTLI4XP.js} +20 -9
- package/dist/cli-bundle/chunks/chunk-YXTLI4XP.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-FDH2X65L.js → chunk-Z3MUNQRV.js} +52 -9
- package/dist/cli-bundle/chunks/chunk-Z3MUNQRV.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-XMBI6TNW.js → chunk-ZJRDVYZI.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-CCX4RSYZ.js → chunk-ZONXMSVB.js} +10 -9
- package/dist/cli-bundle/chunks/chunk-ZONXMSVB.js.map +1 -0
- package/dist/cli-bundle/chunks/{claim-2RDYMCTP.js → claim-4APLUXJW.js} +10 -10
- package/dist/cli-bundle/chunks/{claim-MJ7DZFC3.js → claim-NEO7AGWH.js} +10 -10
- package/dist/cli-bundle/chunks/{close-XLEKIQSW.js → close-3QABBNGU.js} +8 -8
- package/dist/cli-bundle/chunks/close-ILMZR3D7.js +13 -0
- package/dist/cli-bundle/chunks/{close-many-AOD4HSAZ.js → close-many-MIZLTYGL.js} +32 -20
- package/dist/cli-bundle/chunks/close-many-MIZLTYGL.js.map +1 -0
- package/dist/cli-bundle/chunks/{close-many-XKAQY5CQ.js → close-many-Q7Y5AHQI.js} +31 -19
- package/dist/cli-bundle/chunks/close-many-Q7Y5AHQI.js.map +7 -0
- package/dist/cli-bundle/chunks/{comments-RN5TG4ZN.js → comments-DAIQPOMU.js} +55 -31
- package/dist/cli-bundle/chunks/comments-DAIQPOMU.js.map +1 -0
- package/dist/cli-bundle/chunks/{comments-B4RWWDJT.js → comments-IWFSVM4P.js} +54 -30
- package/dist/cli-bundle/chunks/comments-IWFSVM4P.js.map +7 -0
- package/dist/cli-bundle/chunks/{config-3JXJ3XZ7.js → config-IOJELD6O.js} +45 -19
- package/dist/cli-bundle/chunks/config-IOJELD6O.js.map +1 -0
- package/dist/cli-bundle/chunks/{config-FZ4UDC4B.js → config-PXTMAYV3.js} +44 -18
- package/dist/cli-bundle/chunks/config-PXTMAYV3.js.map +7 -0
- package/dist/cli-bundle/chunks/{context-QBPO3BFM.js → context-QHJSCJW4.js} +128 -39
- package/dist/cli-bundle/chunks/context-QHJSCJW4.js.map +1 -0
- package/dist/cli-bundle/chunks/{context-L36PIN35.js → context-XZS2VFKU.js} +127 -38
- package/dist/cli-bundle/chunks/context-XZS2VFKU.js.map +7 -0
- package/dist/cli-bundle/chunks/{contracts-2G66IGIA.js → contracts-B7U4OJTV.js} +54 -10
- package/dist/cli-bundle/chunks/contracts-B7U4OJTV.js.map +1 -0
- package/dist/cli-bundle/chunks/{contracts-PJCHYSO5.js → contracts-NSBVLXQ3.js} +54 -10
- package/dist/cli-bundle/chunks/contracts-NSBVLXQ3.js.map +7 -0
- package/dist/cli-bundle/chunks/{copy-FWIVTLBO.js → copy-Q64T5FD4.js} +7 -7
- package/dist/cli-bundle/chunks/{copy-ALU5WMHA.js → copy-SG34LCMU.js} +7 -7
- package/dist/cli-bundle/chunks/create-F5HZX2S4.js +30 -0
- package/dist/cli-bundle/chunks/{create-5433DP3G.js → create-IPAX2SNL.js} +16 -13
- package/dist/cli-bundle/chunks/{delete-Y2SGJBGY.js → delete-TLXR7LJ2.js} +7 -7
- package/dist/cli-bundle/chunks/{delete-IYTIYAJS.js → delete-VH3L7DZ6.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-CZ4PTVXU.js → deps-J3HBBLDB.js} +9 -10
- package/dist/cli-bundle/chunks/{deps-CZ4PTVXU.js.map → deps-J3HBBLDB.js.map} +2 -2
- package/dist/cli-bundle/chunks/{deps-6TSPOSGU.js → deps-XV6JJ6IN.js} +10 -11
- package/dist/cli-bundle/chunks/deps-XV6JJ6IN.js.map +1 -0
- package/dist/cli-bundle/chunks/{docs-MXLGZUIT.js → docs-GWDEB7JH.js} +9 -9
- package/dist/cli-bundle/chunks/{docs-I3BAF5WH.js → docs-RCLNSKID.js} +9 -9
- package/dist/cli-bundle/chunks/{extension-Q34OEWO5.js → extension-5RN65LHT.js} +7 -5
- package/dist/cli-bundle/chunks/{extension-WH2FOIOZ.js → extension-7KO2NX2A.js} +7 -5
- package/dist/cli-bundle/chunks/{files-GUXUM2MB.js → files-3TCQHUHA.js} +25 -11
- package/dist/cli-bundle/chunks/files-3TCQHUHA.js.map +1 -0
- package/dist/cli-bundle/chunks/{files-FYP3MDPX.js → files-5FDUPSEA.js} +24 -10
- package/dist/cli-bundle/chunks/files-5FDUPSEA.js.map +7 -0
- package/dist/cli-bundle/chunks/focus-7AQMNRSU.js +109 -0
- package/dist/cli-bundle/chunks/focus-7AQMNRSU.js.map +7 -0
- package/dist/cli-bundle/chunks/focus-HQXBYPKM.js +106 -0
- package/dist/cli-bundle/chunks/focus-HQXBYPKM.js.map +1 -0
- package/dist/cli-bundle/chunks/{gc-KGQG66SA.js → gc-2FGKYRJ4.js} +3 -3
- package/dist/cli-bundle/chunks/{gc-FENB2ESG.js → gc-5B6ABL3Z.js} +3 -3
- package/dist/cli-bundle/chunks/{get-PCHS7RA6.js → get-FUMVOJQD.js} +43 -16
- package/dist/cli-bundle/chunks/get-FUMVOJQD.js.map +1 -0
- package/dist/cli-bundle/chunks/{get-QARTE6BL.js → get-H5BZTW4A.js} +42 -15
- package/dist/cli-bundle/chunks/get-H5BZTW4A.js.map +7 -0
- package/dist/cli-bundle/chunks/{health-E4D7KGHD.js → health-JSVOR6B4.js} +75 -49
- package/dist/cli-bundle/chunks/health-JSVOR6B4.js.map +1 -0
- package/dist/cli-bundle/chunks/{health-7MTXAVR2.js → health-LE2ZQGSM.js} +74 -48
- package/dist/cli-bundle/chunks/health-LE2ZQGSM.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-7WUAEWHW.js → history-QO4JVJJP.js} +10 -10
- package/dist/cli-bundle/chunks/history-SSXGGTVZ.js +20 -0
- package/dist/cli-bundle/chunks/{history-compact-LW27IPFK.js → history-compact-ID74DOUI.js} +37 -46
- package/dist/cli-bundle/chunks/history-compact-ID74DOUI.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-compact-3EJ3L2O7.js → history-compact-SDFRPZ4V.js} +38 -47
- package/dist/cli-bundle/chunks/history-compact-SDFRPZ4V.js.map +1 -0
- package/dist/cli-bundle/chunks/history-redact-VBH44Y7F.js +21 -0
- package/dist/cli-bundle/chunks/{history-redact-G72A4EJ4.js → history-redact-Z4P5MM3G.js} +13 -11
- package/dist/cli-bundle/chunks/{history-repair-OSQOKJ3E.js → history-repair-ANHEYWKF.js} +43 -48
- package/dist/cli-bundle/chunks/history-repair-ANHEYWKF.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-repair-SBK7P34V.js → history-repair-CKE7GLZR.js} +44 -49
- package/dist/cli-bundle/chunks/history-repair-CKE7GLZR.js.map +1 -0
- package/dist/cli-bundle/chunks/init-7FBQO77A.js +19 -0
- package/dist/cli-bundle/chunks/{init-S5WEGUJY.js → init-K6MSMB37.js} +11 -9
- package/dist/cli-bundle/chunks/{learnings-XK3P4ZDR.js → learnings-VIS3NOQV.js} +13 -12
- package/dist/cli-bundle/chunks/learnings-VIS3NOQV.js.map +7 -0
- package/dist/cli-bundle/chunks/{learnings-HQXSSKZ5.js → learnings-YYNB64GN.js} +14 -13
- package/dist/cli-bundle/chunks/learnings-YYNB64GN.js.map +1 -0
- package/dist/cli-bundle/chunks/list-7UE44A2R.js +29 -0
- package/dist/cli-bundle/chunks/list-UHMA3N2K.js +33 -0
- package/dist/cli-bundle/chunks/{notes-5T6P7C5V.js → notes-2HRMV67I.js} +14 -13
- package/dist/cli-bundle/chunks/notes-2HRMV67I.js.map +1 -0
- package/dist/cli-bundle/chunks/{notes-U5FZCSBT.js → notes-IN3UMA7W.js} +13 -12
- package/dist/cli-bundle/chunks/notes-IN3UMA7W.js.map +7 -0
- package/dist/cli-bundle/chunks/{plan-2YTQYWGM.js → plan-I3SVH7FV.js} +16 -15
- package/dist/cli-bundle/chunks/plan-I3SVH7FV.js.map +1 -0
- package/dist/cli-bundle/chunks/{plan-7IVSICR6.js → plan-PAWCCAPW.js} +15 -14
- package/dist/cli-bundle/chunks/plan-PAWCCAPW.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-list-query-4UPMHONX.js → register-list-query-N7Z7RTDM.js} +31 -22
- package/dist/cli-bundle/chunks/register-list-query-N7Z7RTDM.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-list-query-7VOW2C3W.js → register-list-query-OTIK4DVA.js} +32 -23
- package/dist/cli-bundle/chunks/register-list-query-OTIK4DVA.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-FARSGYRD.js → register-mutation-UFZK6Q57.js} +216 -66
- package/dist/cli-bundle/chunks/register-mutation-UFZK6Q57.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-mutation-LJDNVREU.js → register-mutation-XFORLS6D.js} +210 -67
- package/dist/cli-bundle/chunks/register-mutation-XFORLS6D.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-operations-HCJKDUA6.js → register-operations-6ZCLKRBG.js} +53 -39
- package/dist/cli-bundle/chunks/register-operations-6ZCLKRBG.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-FFTYAL42.js → register-operations-ITE7JTH3.js} +54 -40
- package/dist/cli-bundle/chunks/register-operations-ITE7JTH3.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-setup-6AVIUOCC.js → register-setup-7RKGE4BQ.js} +18 -21
- package/dist/cli-bundle/chunks/register-setup-7RKGE4BQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-setup-KVNLO5OJ.js → register-setup-7UKEFKT6.js} +17 -20
- package/dist/cli-bundle/chunks/register-setup-7UKEFKT6.js.map +7 -0
- package/dist/cli-bundle/chunks/{restore-M6AFHMV4.js → restore-NNVPBBVJ.js} +13 -11
- package/dist/cli-bundle/chunks/restore-XXXLQ2XC.js +19 -0
- package/dist/cli-bundle/chunks/{schema-AINZ2IMM.js → schema-3HCLXCFX.js} +27 -9
- package/dist/cli-bundle/chunks/schema-3HCLXCFX.js.map +7 -0
- package/dist/cli-bundle/chunks/{schema-76HDZJCC.js → schema-3YKCQ3VO.js} +28 -10
- package/dist/cli-bundle/chunks/schema-3YKCQ3VO.js.map +1 -0
- package/dist/cli-bundle/chunks/{search-JMLFQEPJ.js → search-NQ42NC6A.js} +328 -71
- package/dist/cli-bundle/chunks/search-NQ42NC6A.js.map +7 -0
- package/dist/cli-bundle/chunks/{search-NL3TSCYB.js → search-V7PZ2ICH.js} +328 -71
- package/dist/cli-bundle/chunks/search-V7PZ2ICH.js.map +1 -0
- package/dist/cli-bundle/chunks/{stats-BKXCBIGT.js → stats-7KD4PJC5.js} +41 -16
- package/dist/cli-bundle/chunks/stats-7KD4PJC5.js.map +7 -0
- package/dist/cli-bundle/chunks/{stats-UBD56TGK.js → stats-GRHO6RFB.js} +42 -17
- package/dist/cli-bundle/chunks/stats-GRHO6RFB.js.map +1 -0
- package/dist/cli-bundle/chunks/{telemetry-ZJXK3H7X.js → telemetry-H5GLXNG5.js} +6 -6
- package/dist/cli-bundle/chunks/telemetry-H5GLXNG5.js.map +7 -0
- package/dist/cli-bundle/chunks/{telemetry-N454RHG5.js → telemetry-TRRYZXWT.js} +7 -7
- package/dist/cli-bundle/chunks/telemetry-TRRYZXWT.js.map +1 -0
- package/dist/cli-bundle/chunks/test-6CZNIIGA.js +34 -0
- package/dist/cli-bundle/chunks/{test-BQAKIXAT.js → test-7GVQ3VMN.js} +16 -14
- package/dist/cli-bundle/chunks/{test-all-7LV3I6S5.js → test-all-3LF2OZD2.js} +23 -16
- package/dist/cli-bundle/chunks/test-all-3LF2OZD2.js.map +7 -0
- package/dist/cli-bundle/chunks/{test-all-TDYCCBA4.js → test-all-ODVADHV6.js} +24 -17
- package/dist/cli-bundle/chunks/test-all-ODVADHV6.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-runs-E64M6XS3.js → test-runs-LYT6ZTNQ.js} +62 -65
- package/dist/cli-bundle/chunks/test-runs-LYT6ZTNQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-runs-LXZLULCI.js → test-runs-RVP6VWN7.js} +61 -64
- package/dist/cli-bundle/chunks/test-runs-RVP6VWN7.js.map +7 -0
- package/dist/cli-bundle/chunks/update-MPGM6SBE.js +28 -0
- package/dist/cli-bundle/chunks/update-UN75XW3C.js +24 -0
- package/dist/cli-bundle/chunks/{update-many-F4IKDWZB.js → update-many-FCU6RKTO.js} +80 -34
- package/dist/cli-bundle/chunks/update-many-FCU6RKTO.js.map +1 -0
- package/dist/cli-bundle/chunks/{update-many-NTWZ5YT3.js → update-many-XSEQJ24X.js} +79 -33
- package/dist/cli-bundle/chunks/update-many-XSEQJ24X.js.map +7 -0
- package/dist/cli-bundle/chunks/{upgrade-37F7JKES.js → upgrade-A6TL3INC.js} +22 -8
- package/dist/cli-bundle/chunks/upgrade-A6TL3INC.js.map +7 -0
- package/dist/cli-bundle/chunks/{upgrade-L32JA4TZ.js → upgrade-FOB5LHO5.js} +23 -9
- package/dist/cli-bundle/chunks/upgrade-FOB5LHO5.js.map +1 -0
- package/dist/cli-bundle/chunks/{validate-46KCRHL7.js → validate-7BLDG3AT.js} +222 -31
- package/dist/cli-bundle/chunks/validate-7BLDG3AT.js.map +1 -0
- package/dist/cli-bundle/chunks/{validate-CRFMPTYD.js → validate-EHL3MI2V.js} +236 -31
- package/dist/cli-bundle/chunks/validate-EHL3MI2V.js.map +7 -0
- package/dist/cli-bundle/main.js +305 -140
- package/dist/cli-bundle/main.js.map +3 -3
- package/dist/cli.d.ts +10 -0
- package/dist/cli.js +21 -8
- package/dist/cli.js.map +1 -1
- package/dist/core/diagnostics/remediation.js +7 -2
- package/dist/core/diagnostics/remediation.js.map +1 -1
- package/dist/core/extensions/extension-capability-aliases.js +7 -33
- package/dist/core/extensions/extension-capability-aliases.js.map +1 -1
- package/dist/core/extensions/extension-policy.js +14 -15
- package/dist/core/extensions/extension-policy.js.map +1 -1
- package/dist/core/extensions/item-fields.js +4 -5
- package/dist/core/extensions/item-fields.js.map +1 -1
- package/dist/core/extensions/loader.d.ts +75 -1
- package/dist/core/extensions/loader.js +56 -32
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/governance/content-fields.d.ts +84 -0
- package/dist/core/governance/content-fields.js +182 -0
- package/dist/core/governance/content-fields.js.map +1 -0
- package/dist/core/governance/issue-codes.d.ts +51 -0
- package/dist/core/governance/issue-codes.js +95 -0
- package/dist/core/governance/issue-codes.js.map +1 -0
- package/dist/core/governance/metadata-coverage.d.ts +168 -0
- package/dist/core/governance/metadata-coverage.js +362 -0
- package/dist/core/governance/metadata-coverage.js.map +1 -0
- package/dist/core/history/history-rewrite.d.ts +22 -0
- package/dist/core/history/history-rewrite.js +38 -2
- package/dist/core/history/history-rewrite.js.map +1 -1
- package/dist/core/history/history.d.ts +7 -0
- package/dist/core/history/history.js +6 -2
- package/dist/core/history/history.js.map +1 -1
- package/dist/core/io/body-file.d.ts +14 -0
- package/dist/core/io/body-file.js +47 -0
- package/dist/core/io/body-file.js.map +1 -0
- package/dist/core/item/item-format.d.ts +46 -1
- package/dist/core/item/item-format.js +51 -60
- package/dist/core/item/item-format.js.map +1 -1
- package/dist/core/item/parse.d.ts +9 -0
- package/dist/core/item/parse.js +10 -16
- package/dist/core/item/parse.js.map +1 -1
- package/dist/core/item/type-registry.d.ts +1 -0
- package/dist/core/item/type-registry.js +8 -10
- package/dist/core/item/type-registry.js.map +1 -1
- package/dist/core/lock/lock.d.ts +26 -0
- package/dist/core/lock/lock.js +10 -2
- package/dist/core/lock/lock.js.map +1 -1
- package/dist/core/output/output.d.ts +7 -0
- package/dist/core/output/output.js +6 -2
- package/dist/core/output/output.js.map +1 -1
- package/dist/core/schema/item-types-file.d.ts +25 -2
- package/dist/core/schema/item-types-file.js +78 -6
- package/dist/core/schema/item-types-file.js.map +1 -1
- package/dist/core/schema/runtime-schema.d.ts +7 -0
- package/dist/core/schema/runtime-schema.js +23 -16
- package/dist/core/schema/runtime-schema.js.map +1 -1
- package/dist/core/search/background-refresh.js +3 -3
- package/dist/core/search/background-refresh.js.map +1 -1
- package/dist/core/search/cache.d.ts +19 -1
- package/dist/core/search/cache.js +11 -3
- package/dist/core/search/cache.js.map +1 -1
- package/dist/core/search/corpus.d.ts +36 -2
- package/dist/core/search/corpus.js +120 -24
- package/dist/core/search/corpus.js.map +1 -1
- package/dist/core/search/providers.d.ts +19 -0
- package/dist/core/search/providers.js +19 -2
- package/dist/core/search/providers.js.map +1 -1
- package/dist/core/sentry/instrument.d.ts +1 -0
- package/dist/core/sentry/instrument.js +6 -2
- package/dist/core/sentry/instrument.js.map +1 -1
- package/dist/core/session/session-state.d.ts +16 -0
- package/dist/core/session/session-state.js +48 -0
- package/dist/core/session/session-state.js.map +1 -0
- package/dist/core/shared/constants.d.ts +8 -0
- package/dist/core/shared/constants.js +11 -2
- package/dist/core/shared/constants.js.map +1 -1
- package/dist/core/shared/errors.d.ts +3 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/core/shared/errors.js.map +1 -1
- package/dist/core/shared/text-normalization.js +4 -3
- package/dist/core/shared/text-normalization.js.map +1 -1
- package/dist/core/shared/time.d.ts +13 -0
- package/dist/core/shared/time.js +19 -7
- package/dist/core/shared/time.js.map +1 -1
- package/dist/core/store/item-store.d.ts +11 -0
- package/dist/core/store/item-store.js +16 -23
- package/dist/core/store/item-store.js.map +1 -1
- package/dist/core/store/settings-validator.d.ts +2 -0
- package/dist/core/store/settings-validator.js +25 -2
- package/dist/core/store/settings-validator.js.map +1 -1
- package/dist/core/store/settings.d.ts +60 -1
- package/dist/core/store/settings.js +100 -46
- package/dist/core/store/settings.js.map +1 -1
- package/dist/core/telemetry/observability.js +10 -8
- package/dist/core/telemetry/observability.js.map +1 -1
- package/dist/core/telemetry/runtime.d.ts +272 -1
- package/dist/core/telemetry/runtime.js +358 -37
- package/dist/core/telemetry/runtime.js.map +1 -1
- package/dist/core/test/background-runs.d.ts +35 -0
- package/dist/core/test/background-runs.js +72 -61
- package/dist/core/test/background-runs.js.map +1 -1
- package/dist/core/test/run-selectors.js +5 -4
- package/dist/core/test/run-selectors.js.map +1 -1
- package/dist/core/validate/estimate-defaults.d.ts +39 -0
- package/dist/core/validate/estimate-defaults.js +117 -0
- package/dist/core/validate/estimate-defaults.js.map +1 -0
- package/dist/core/validate/fix-planning.d.ts +21 -3
- package/dist/core/validate/fix-planning.js +31 -4
- package/dist/core/validate/fix-planning.js.map +1 -1
- package/dist/core/validate/missing-link-owners.d.ts +64 -0
- package/dist/core/validate/missing-link-owners.js +98 -0
- package/dist/core/validate/missing-link-owners.js.map +1 -0
- package/dist/mcp/server.d.ts +62 -0
- package/dist/mcp/server.js +71 -8
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tool-definitions.js +17 -4
- package/dist/mcp/tool-definitions.js.map +1 -1
- package/dist/sdk/cli-contracts/commander-types.js +13 -2
- package/dist/sdk/cli-contracts/commander-types.js.map +1 -1
- package/dist/sdk/cli-contracts/enum-contracts.d.ts +2 -2
- package/dist/sdk/cli-contracts/enum-contracts.js +4 -2
- package/dist/sdk/cli-contracts/enum-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-option-contracts.js +110 -2
- package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +83 -8
- package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
- package/dist/sdk/cli-contracts.d.ts +28 -0
- package/dist/sdk/cli-contracts.js +164 -11
- package/dist/sdk/cli-contracts.js.map +1 -1
- package/dist/types.d.ts +17 -1
- package/dist/types.js +3 -3
- package/dist/types.js.map +1 -1
- package/docs/AGENT_GUIDE.md +15 -3
- package/docs/CLAUDE_CODE_PLUGIN.md +2 -2
- package/docs/COMMANDS.md +136 -7
- package/docs/CONFIGURATION.md +52 -0
- package/docs/TESTING.md +6 -4
- package/package.json +6 -4
- package/packages/pm-calendar/extensions/calendar/runtime.js +6 -0
- package/packages/pm-calendar/extensions/calendar/runtime.ts +12 -0
- package/packages/pm-todos/extensions/todos/runtime.ts +5 -0
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/README.md +6 -14
- package/plugins/pm-claude/commands/pm-init.md +1 -1
- package/plugins/pm-codex/README.md +1 -1
- package/scripts/bundle-cli.mjs +46 -37
- package/scripts/finalize-build.mjs +20 -9
- package/scripts/prepare-build-cache.mjs +27 -16
- package/dist/cli-bundle/chunks/activity-XZIUPGZH.js +0 -16
- package/dist/cli-bundle/chunks/aggregate-6OTS3AOO.js.map +0 -1
- package/dist/cli-bundle/chunks/aggregate-OD36DJU5.js.map +0 -7
- package/dist/cli-bundle/chunks/append-KG55G7S3.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-35P4GT6E.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-37CYVF73.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-3KLPFWZ4.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-4JCSYR6F.js +0 -138
- package/dist/cli-bundle/chunks/chunk-4JCSYR6F.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-4YFAGDRH.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-5SCT2JCT.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-73ZPG2I3.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-7AMK6DOW.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-7IYFN5R7.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-7UGSRQCL.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-A6LXQFO7.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-AVGHVVF7.js +0 -128
- package/dist/cli-bundle/chunks/chunk-AVGHVVF7.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-AX4GEVQC.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-CCX4RSYZ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-CW6E4NAT.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-DY6C42S6.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-EWFY7SLA.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-F75JSIOZ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-FDH2X65L.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-FY4SPXSC.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-GKIZW7SM.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-HHHJ2GI3.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-HI7STVF2.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-I53JBTJW.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-I7NYDZDV.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-IUKD4W6Z.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-KWAXVAXX.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-L5EPZQIC.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-OASDW5UI.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-OLKBSY4N.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-P5BJOMBB.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-PNYAAB4S.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-QKW5D45B.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-QNJSITCX.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-R4VWYWRN.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-RXAP6JL5.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-S2ZLDYGS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-SO55HRA5.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-TK5VZFHY.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-TNAP7EJX.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-UIG4TW2H.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-UUWGCWBU.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-VFUZV5EB.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-WUNFKP7M.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-XJDGS74Y.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-XWMF3POR.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-ZMW77VWV.js.map +0 -1
- package/dist/cli-bundle/chunks/close-4FMAPEMY.js +0 -13
- package/dist/cli-bundle/chunks/close-many-AOD4HSAZ.js.map +0 -1
- package/dist/cli-bundle/chunks/close-many-XKAQY5CQ.js.map +0 -7
- package/dist/cli-bundle/chunks/comments-B4RWWDJT.js.map +0 -7
- package/dist/cli-bundle/chunks/comments-RN5TG4ZN.js.map +0 -1
- package/dist/cli-bundle/chunks/config-3JXJ3XZ7.js.map +0 -1
- package/dist/cli-bundle/chunks/config-FZ4UDC4B.js.map +0 -7
- package/dist/cli-bundle/chunks/context-L36PIN35.js.map +0 -7
- package/dist/cli-bundle/chunks/context-QBPO3BFM.js.map +0 -1
- package/dist/cli-bundle/chunks/contracts-2G66IGIA.js.map +0 -1
- package/dist/cli-bundle/chunks/contracts-PJCHYSO5.js.map +0 -7
- package/dist/cli-bundle/chunks/create-VWLWS34Z.js +0 -27
- package/dist/cli-bundle/chunks/deps-6TSPOSGU.js.map +0 -1
- package/dist/cli-bundle/chunks/files-FYP3MDPX.js.map +0 -7
- package/dist/cli-bundle/chunks/files-GUXUM2MB.js.map +0 -1
- package/dist/cli-bundle/chunks/get-PCHS7RA6.js.map +0 -1
- package/dist/cli-bundle/chunks/get-QARTE6BL.js.map +0 -7
- package/dist/cli-bundle/chunks/health-7MTXAVR2.js.map +0 -7
- package/dist/cli-bundle/chunks/health-E4D7KGHD.js.map +0 -1
- package/dist/cli-bundle/chunks/history-L2FQFRTU.js +0 -20
- package/dist/cli-bundle/chunks/history-compact-3EJ3L2O7.js.map +0 -1
- package/dist/cli-bundle/chunks/history-compact-LW27IPFK.js.map +0 -7
- package/dist/cli-bundle/chunks/history-redact-QWQCX5DZ.js +0 -19
- package/dist/cli-bundle/chunks/history-repair-OSQOKJ3E.js.map +0 -7
- package/dist/cli-bundle/chunks/history-repair-SBK7P34V.js.map +0 -1
- package/dist/cli-bundle/chunks/init-4BKRHGWW.js +0 -17
- package/dist/cli-bundle/chunks/learnings-HQXSSKZ5.js.map +0 -1
- package/dist/cli-bundle/chunks/learnings-XK3P4ZDR.js.map +0 -7
- package/dist/cli-bundle/chunks/list-6CL3XFT6.js +0 -23
- package/dist/cli-bundle/chunks/list-BYNN4ZEO.js +0 -19
- package/dist/cli-bundle/chunks/notes-5T6P7C5V.js.map +0 -1
- package/dist/cli-bundle/chunks/notes-U5FZCSBT.js.map +0 -7
- package/dist/cli-bundle/chunks/plan-2YTQYWGM.js.map +0 -1
- package/dist/cli-bundle/chunks/plan-7IVSICR6.js.map +0 -7
- package/dist/cli-bundle/chunks/register-list-query-4UPMHONX.js.map +0 -7
- package/dist/cli-bundle/chunks/register-list-query-7VOW2C3W.js.map +0 -1
- package/dist/cli-bundle/chunks/register-mutation-FARSGYRD.js.map +0 -7
- package/dist/cli-bundle/chunks/register-mutation-LJDNVREU.js.map +0 -1
- package/dist/cli-bundle/chunks/register-operations-FFTYAL42.js.map +0 -1
- package/dist/cli-bundle/chunks/register-operations-HCJKDUA6.js.map +0 -7
- package/dist/cli-bundle/chunks/register-setup-6AVIUOCC.js.map +0 -1
- package/dist/cli-bundle/chunks/register-setup-KVNLO5OJ.js.map +0 -7
- package/dist/cli-bundle/chunks/restore-CHIOQAQL.js +0 -17
- package/dist/cli-bundle/chunks/schema-76HDZJCC.js.map +0 -1
- package/dist/cli-bundle/chunks/schema-AINZ2IMM.js.map +0 -7
- package/dist/cli-bundle/chunks/search-JMLFQEPJ.js.map +0 -7
- package/dist/cli-bundle/chunks/search-NL3TSCYB.js.map +0 -1
- package/dist/cli-bundle/chunks/stats-BKXCBIGT.js.map +0 -7
- package/dist/cli-bundle/chunks/stats-UBD56TGK.js.map +0 -1
- package/dist/cli-bundle/chunks/telemetry-N454RHG5.js.map +0 -1
- package/dist/cli-bundle/chunks/telemetry-ZJXK3H7X.js.map +0 -7
- package/dist/cli-bundle/chunks/test-O74JFUH5.js +0 -32
- package/dist/cli-bundle/chunks/test-all-7LV3I6S5.js.map +0 -7
- package/dist/cli-bundle/chunks/test-all-TDYCCBA4.js.map +0 -1
- package/dist/cli-bundle/chunks/test-runs-E64M6XS3.js.map +0 -1
- package/dist/cli-bundle/chunks/test-runs-LXZLULCI.js.map +0 -7
- package/dist/cli-bundle/chunks/update-36JM7YZT.js +0 -21
- package/dist/cli-bundle/chunks/update-I246PCLO.js +0 -25
- package/dist/cli-bundle/chunks/update-many-F4IKDWZB.js.map +0 -1
- package/dist/cli-bundle/chunks/update-many-NTWZ5YT3.js.map +0 -7
- package/dist/cli-bundle/chunks/upgrade-37F7JKES.js.map +0 -7
- package/dist/cli-bundle/chunks/upgrade-L32JA4TZ.js.map +0 -1
- package/dist/cli-bundle/chunks/validate-46KCRHL7.js.map +0 -1
- package/dist/cli-bundle/chunks/validate-CRFMPTYD.js.map +0 -7
- /package/dist/cli-bundle/chunks/{activity-XZIUPGZH.js.map → activity-5P2KQCTH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-XADJOG6G.js.map → activity-MJGTX4LO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ATEES5SX.js.map → chunk-2JEGCDYT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XUC4C4PT.js.map → chunk-3WAULYOY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QJMGRZO2.js.map → chunk-7AGIXLNK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KBPQHXWG.js.map → chunk-AERT7KT3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ESANVZF4.js.map → chunk-E6J2PEK6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VSRZRLG3.js.map → chunk-F2GC6L3N.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XTKJSVWH.js.map → chunk-M23HXJL3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-S26FESD4.js.map → chunk-MJZUZ2QE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-C6SAP27O.js.map → chunk-O46LTCXQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WPDMBIX6.js.map → chunk-OLTYNVJR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-R2OUQVBK.js.map → chunk-T5VU7ROQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-P5U5EOMA.js.map → chunk-UBMCSJXX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ZYNJNPYD.js.map → chunk-UUKORJSN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VPEAS7PS.js.map → chunk-WZCQVABQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Y3YKK7CY.js.map → chunk-YGRPBFMA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XMBI6TNW.js.map → chunk-ZJRDVYZI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-2RDYMCTP.js.map → claim-4APLUXJW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-MJ7DZFC3.js.map → claim-NEO7AGWH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-XLEKIQSW.js.map → close-3QABBNGU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-4FMAPEMY.js.map → close-ILMZR3D7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-FWIVTLBO.js.map → copy-Q64T5FD4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-ALU5WMHA.js.map → copy-SG34LCMU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-VWLWS34Z.js.map → create-F5HZX2S4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-5433DP3G.js.map → create-IPAX2SNL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-Y2SGJBGY.js.map → delete-TLXR7LJ2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-IYTIYAJS.js.map → delete-VH3L7DZ6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-MXLGZUIT.js.map → docs-GWDEB7JH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-I3BAF5WH.js.map → docs-RCLNSKID.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-Q34OEWO5.js.map → extension-5RN65LHT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-WH2FOIOZ.js.map → extension-7KO2NX2A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-KGQG66SA.js.map → gc-2FGKYRJ4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-FENB2ESG.js.map → gc-5B6ABL3Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-7WUAEWHW.js.map → history-QO4JVJJP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-L2FQFRTU.js.map → history-SSXGGTVZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-QWQCX5DZ.js.map → history-redact-VBH44Y7F.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-G72A4EJ4.js.map → history-redact-Z4P5MM3G.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-4BKRHGWW.js.map → init-7FBQO77A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-S5WEGUJY.js.map → init-K6MSMB37.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-BYNN4ZEO.js.map → list-7UE44A2R.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-6CL3XFT6.js.map → list-UHMA3N2K.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-M6AFHMV4.js.map → restore-NNVPBBVJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-CHIOQAQL.js.map → restore-XXXLQ2XC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-O74JFUH5.js.map → test-6CZNIIGA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-BQAKIXAT.js.map → test-7GVQ3VMN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-I246PCLO.js.map → update-MPGM6SBE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-36JM7YZT.js.map → update-UN75XW3C.js.map} +0 -0
package/dist/cli-bundle/chunks/{register-mutation-FARSGYRD.js → register-mutation-UFZK6Q57.js}
RENAMED
|
@@ -6,31 +6,73 @@ import {
|
|
|
6
6
|
invalidateSearchCachesForMutation,
|
|
7
7
|
normalizeCreateOptions,
|
|
8
8
|
normalizeUpdateOptions
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-TIRZIQRP.js";
|
|
10
10
|
import {
|
|
11
11
|
CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS,
|
|
12
12
|
UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS
|
|
13
|
-
} from "./chunk-
|
|
14
|
-
import "./chunk-
|
|
13
|
+
} from "./chunk-H6EH6ENJ.js";
|
|
14
|
+
import "./chunk-TUB3DZAZ.js";
|
|
15
15
|
import {
|
|
16
16
|
printError,
|
|
17
17
|
printResult,
|
|
18
18
|
writeStdout
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
19
|
+
} from "./chunk-SPYPC5CB.js";
|
|
20
|
+
import "./chunk-4KBK4BA3.js";
|
|
21
|
+
import "./chunk-WZCQVABQ.js";
|
|
22
|
+
import "./chunk-GYMG7AG6.js";
|
|
23
|
+
import "./chunk-6BV7ENQL.js";
|
|
24
|
+
import "./chunk-OY3P2I6B.js";
|
|
25
25
|
import {
|
|
26
26
|
BUILTIN_ITEM_TYPE_VALUES,
|
|
27
27
|
EXIT_CODE,
|
|
28
28
|
PmCliError
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-LV5FFQ7M.js";
|
|
30
30
|
|
|
31
31
|
// dist/cli/register-mutation.js
|
|
32
32
|
import { Option } from "commander";
|
|
33
33
|
|
|
34
|
+
// dist/core/io/body-file.js
|
|
35
|
+
import { readFile } from "node:fs/promises";
|
|
36
|
+
!(function() {
|
|
37
|
+
try {
|
|
38
|
+
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
39
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "0f24c814-7ca3-557a-90fa-187e399521e9");
|
|
40
|
+
} catch (e2) {
|
|
41
|
+
}
|
|
42
|
+
})();
|
|
43
|
+
var defaultBodyFileReader = (path) => readFile(path, "utf8");
|
|
44
|
+
async function resolveBodyFileContent(bodyFile, inlineBody, readFileImpl = defaultBodyFileReader) {
|
|
45
|
+
if (inlineBody !== void 0) {
|
|
46
|
+
throw new PmCliError("--body and --body-file are mutually exclusive; provide the body inline with --body or from a file with --body-file, not both.", EXIT_CODE.USAGE, {
|
|
47
|
+
code: "body_file_conflicts_with_body",
|
|
48
|
+
required: "Choose exactly one body source.",
|
|
49
|
+
why: "Both --body and --body-file set the item body; allowing both would make the effective body ambiguous.",
|
|
50
|
+
nextSteps: ["Re-run with only --body <text> or only --body-file <path>."]
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
const path = bodyFile.trim();
|
|
54
|
+
if (path.length === 0) {
|
|
55
|
+
throw new PmCliError("--body-file requires a file path.", EXIT_CODE.USAGE, {
|
|
56
|
+
code: "body_file_missing_path",
|
|
57
|
+
required: "Pass a readable file path: --body-file <path>.",
|
|
58
|
+
why: "An empty --body-file value has no file to read the body from."
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
try {
|
|
62
|
+
return await readFileImpl(path);
|
|
63
|
+
} catch (error) {
|
|
64
|
+
const errno = error?.code;
|
|
65
|
+
const isDirectory = errno === "EISDIR";
|
|
66
|
+
const detail = errno ? ` (${errno})` : "";
|
|
67
|
+
throw new PmCliError(isDirectory ? `--body-file "${path}" is a directory, not a file. Point it at a readable file.` : `--body-file could not read "${path}"${detail}. Check that the file exists and is readable.`, EXIT_CODE.NOT_FOUND, {
|
|
68
|
+
code: "body_file_unreadable",
|
|
69
|
+
required: "Point --body-file at an existing, readable file.",
|
|
70
|
+
why: `The body content is loaded from the file at the supplied path, so an unreadable path cannot produce a body${errno ? ` (underlying error: ${errno})` : ""}.`,
|
|
71
|
+
nextSteps: [`Verify the path: ls -l "${path}"`, "Or pass the body inline with --body <text>."]
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
34
76
|
// dist/core/shared/option-alias-visibility.js
|
|
35
77
|
!(function() {
|
|
36
78
|
try {
|
|
@@ -66,7 +108,7 @@ function isPureSnakeCaseAlias(canonicalFlagSpec, aliasFlagSpec) {
|
|
|
66
108
|
!(function() {
|
|
67
109
|
try {
|
|
68
110
|
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
69
|
-
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "
|
|
111
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "77fb8735-3d70-59c2-86f3-3e6462688b5d");
|
|
70
112
|
} catch (e2) {
|
|
71
113
|
}
|
|
72
114
|
})();
|
|
@@ -100,6 +142,62 @@ function parseSchemaOrderOption(raw) {
|
|
|
100
142
|
}
|
|
101
143
|
throw new PmCliError("--order must be a finite integer.", EXIT_CODE.USAGE);
|
|
102
144
|
}
|
|
145
|
+
function parsePositiveIntOption(flag) {
|
|
146
|
+
return (value) => {
|
|
147
|
+
const parsed = Number(value);
|
|
148
|
+
if (!Number.isInteger(parsed) || parsed < 1) {
|
|
149
|
+
throw new PmCliError(`${flag} must be a positive integer (1-based index).`, EXIT_CODE.USAGE);
|
|
150
|
+
}
|
|
151
|
+
return parsed;
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
function registerBulkContentAndGovernanceFilters(command, action) {
|
|
155
|
+
command.option("--filter-has-notes", `Select only items that have notes before ${action}`).option("--filter-no-notes", `Select only items that have no notes before ${action}`).option("--filter-has-learnings", `Select only items that have learnings before ${action}`).option("--filter-no-learnings", `Select only items that have no learnings before ${action}`).option("--filter-has-files", `Select only items that have linked files before ${action}`).option("--filter-no-files", `Select only items that have no linked files before ${action}`).option("--filter-has-docs", `Select only items that have linked docs before ${action}`).option("--filter-no-docs", `Select only items that have no linked docs before ${action}`).option("--filter-has-tests", `Select only items that have linked tests before ${action}`).option("--filter-no-tests", `Select only items that have no linked tests before ${action}`).option("--filter-has-comments", `Select only items that have comments before ${action}`).option("--filter-no-comments", `Select only items that have no comments before ${action}`).option("--filter-has-deps", `Select only items that have dependencies before ${action}`).option("--filter-no-deps", `Select only items that have no dependencies before ${action}`).option("--filter-has-body", `Select only items that have a non-empty body before ${action}`).option("--filter-empty-body", `Select only items with an empty body before ${action}`).option("--filter-has-linked-command", `Select only items whose linked tests carry a runnable command before ${action}`).option("--filter-no-linked-command", `Select only items whose linked tests carry no runnable command before ${action}`).option("--filter-reviewer-missing", `Select only items missing reviewer before ${action}`).option("--filter-risk-missing", `Select only items missing risk before ${action}`).option("--filter-confidence-missing", `Select only items missing confidence before ${action}`).option("--filter-sprint-missing", `Select only items missing sprint before ${action}`).option("--filter-release-missing", `Select only items missing release before ${action}`);
|
|
156
|
+
}
|
|
157
|
+
var BULK_CONTENT_FILTER_CONFLICTS = [
|
|
158
|
+
["filterHasNotes", "filterNoNotes", "--filter-has-notes", "--filter-no-notes"],
|
|
159
|
+
["filterHasLearnings", "filterNoLearnings", "--filter-has-learnings", "--filter-no-learnings"],
|
|
160
|
+
["filterHasFiles", "filterNoFiles", "--filter-has-files", "--filter-no-files"],
|
|
161
|
+
["filterHasDocs", "filterNoDocs", "--filter-has-docs", "--filter-no-docs"],
|
|
162
|
+
["filterHasTests", "filterNoTests", "--filter-has-tests", "--filter-no-tests"],
|
|
163
|
+
["filterHasComments", "filterNoComments", "--filter-has-comments", "--filter-no-comments"],
|
|
164
|
+
["filterHasDeps", "filterNoDeps", "--filter-has-deps", "--filter-no-deps"],
|
|
165
|
+
["filterHasBody", "filterEmptyBody", "--filter-has-body", "--filter-empty-body"],
|
|
166
|
+
["filterHasLinkedCommand", "filterNoLinkedCommand", "--filter-has-linked-command", "--filter-no-linked-command"]
|
|
167
|
+
];
|
|
168
|
+
function mapBulkContentAndGovernanceFilters(options) {
|
|
169
|
+
const presence = (key) => options[key] === true ? true : void 0;
|
|
170
|
+
for (const [hasKey, noKey, hasFlag, noFlag] of BULK_CONTENT_FILTER_CONFLICTS) {
|
|
171
|
+
if (options[hasKey] === true && options[noKey] === true) {
|
|
172
|
+
throw new PmCliError(`Cannot combine ${hasFlag} with ${noFlag} for the same field.`, EXIT_CODE.USAGE);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
return {
|
|
176
|
+
filterReviewerMissing: presence("filterReviewerMissing"),
|
|
177
|
+
filterRiskMissing: presence("filterRiskMissing"),
|
|
178
|
+
filterConfidenceMissing: presence("filterConfidenceMissing"),
|
|
179
|
+
filterSprintMissing: presence("filterSprintMissing"),
|
|
180
|
+
filterReleaseMissing: presence("filterReleaseMissing"),
|
|
181
|
+
hasNotes: presence("filterHasNotes"),
|
|
182
|
+
hasLearnings: presence("filterHasLearnings"),
|
|
183
|
+
hasFiles: presence("filterHasFiles"),
|
|
184
|
+
hasDocs: presence("filterHasDocs"),
|
|
185
|
+
hasTests: presence("filterHasTests"),
|
|
186
|
+
hasComments: presence("filterHasComments"),
|
|
187
|
+
hasDeps: presence("filterHasDeps"),
|
|
188
|
+
hasBody: presence("filterHasBody"),
|
|
189
|
+
hasLinkedCommand: presence("filterHasLinkedCommand"),
|
|
190
|
+
noNotes: presence("filterNoNotes"),
|
|
191
|
+
noLearnings: presence("filterNoLearnings"),
|
|
192
|
+
noFiles: presence("filterNoFiles"),
|
|
193
|
+
noDocs: presence("filterNoDocs"),
|
|
194
|
+
noTests: presence("filterNoTests"),
|
|
195
|
+
noComments: presence("filterNoComments"),
|
|
196
|
+
noDeps: presence("filterNoDeps"),
|
|
197
|
+
emptyBody: presence("filterEmptyBody"),
|
|
198
|
+
noLinkedCommand: presence("filterNoLinkedCommand")
|
|
199
|
+
};
|
|
200
|
+
}
|
|
103
201
|
function registerCommanderOptionContracts(command, contracts) {
|
|
104
202
|
for (const contract of contracts) {
|
|
105
203
|
if (contract.required) {
|
|
@@ -120,10 +218,38 @@ function registerCommanderOptionContracts(command, contracts) {
|
|
|
120
218
|
}
|
|
121
219
|
}
|
|
122
220
|
}
|
|
221
|
+
function buildUpdateManyListOptions(options) {
|
|
222
|
+
const readString = (key) => typeof options[key] === "string" ? options[key] : void 0;
|
|
223
|
+
return {
|
|
224
|
+
type: readString("filterType"),
|
|
225
|
+
tag: readString("filterTag"),
|
|
226
|
+
priority: readString("filterPriority"),
|
|
227
|
+
deadlineBefore: readString("filterDeadlineBefore"),
|
|
228
|
+
deadlineAfter: readString("filterDeadlineAfter"),
|
|
229
|
+
updatedAfter: readString("filterUpdatedAfter"),
|
|
230
|
+
updatedBefore: readString("filterUpdatedBefore"),
|
|
231
|
+
createdAfter: readString("filterCreatedAfter"),
|
|
232
|
+
createdBefore: readString("filterCreatedBefore"),
|
|
233
|
+
ids: readString("ids"),
|
|
234
|
+
assignee: readString("filterAssignee"),
|
|
235
|
+
assigneeFilter: readString("filterAssigneeFilter") ?? readString("filterAssignee_filter"),
|
|
236
|
+
parent: readString("filterParent"),
|
|
237
|
+
sprint: readString("filterSprint"),
|
|
238
|
+
release: readString("filterRelease"),
|
|
239
|
+
filterAcMissing: options.filterAcMissing === true ? true : void 0,
|
|
240
|
+
filterEstimatesMissing: options.filterEstimatesMissing === true || options.filterEstimateMissing === true ? true : void 0,
|
|
241
|
+
filterResolutionMissing: options.filterResolutionMissing === true ? true : void 0,
|
|
242
|
+
filterMetadataMissing: options.filterMetadataMissing === true ? true : void 0,
|
|
243
|
+
...mapBulkContentAndGovernanceFilters(options),
|
|
244
|
+
limit: readString("limit"),
|
|
245
|
+
offset: readString("offset"),
|
|
246
|
+
includeBody: true
|
|
247
|
+
};
|
|
248
|
+
}
|
|
123
249
|
function registerMutationCommands(program) {
|
|
124
250
|
const createCommand = program.command("create").argument("[typeOrTitle]", 'Item title, or item type when a title follows (e.g. `pm create task "Fix bug"`)').argument("[title]", "Item title when the first argument is an item type").description("Create a new project management item.");
|
|
125
251
|
registerCommanderOptionContracts(createCommand, CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS);
|
|
126
|
-
createCommand.option("--clear-deps", "Clear dependency entries").option("--clear-comments", "Clear comments").option("--clear-notes", "Clear notes").option("--clear-learnings", "Clear learnings").option("--clear-files", "Clear linked files").option("--clear-tests", "Clear linked tests").option("--clear-docs", "Clear linked docs").option("--clear-reminders", "Clear reminders").option("--clear-events", "Clear events").option("--clear-type-options", "Clear type options").action(async (typeOrTitle, secondTitle, options, command) => {
|
|
252
|
+
createCommand.option("--body-file <path>", "Load the item markdown body from a file (mutually exclusive with --body)").option("--clear-deps", "Clear dependency entries").option("--clear-comments", "Clear comments").option("--clear-notes", "Clear notes").option("--clear-learnings", "Clear learnings").option("--clear-files", "Clear linked files").option("--clear-tests", "Clear linked tests").option("--clear-docs", "Clear linked docs").option("--clear-reminders", "Clear reminders").option("--clear-events", "Clear events").option("--clear-type-options", "Clear type options").action(async (typeOrTitle, secondTitle, options, command) => {
|
|
127
253
|
const globalOptions = getGlobalOptions(command);
|
|
128
254
|
const startedAt = Date.now();
|
|
129
255
|
let positionalType;
|
|
@@ -132,7 +258,12 @@ function registerMutationCommands(program) {
|
|
|
132
258
|
positionalType = typeOrTitle;
|
|
133
259
|
positionalTitle = secondTitle;
|
|
134
260
|
} else if (typeof typeOrTitle === "string" && typeOrTitle.length > 0) {
|
|
135
|
-
|
|
261
|
+
const explicitTitleProvided = typeof options.title === "string" && options.title.trim().length > 0;
|
|
262
|
+
if (explicitTitleProvided && options.type === void 0) {
|
|
263
|
+
positionalType = typeOrTitle;
|
|
264
|
+
} else {
|
|
265
|
+
positionalTitle = typeOrTitle;
|
|
266
|
+
}
|
|
136
267
|
}
|
|
137
268
|
if (positionalType === void 0 && typeof positionalTitle === "string" && positionalTitle.length > 0 && options.title === void 0 && options.type === void 0 && BUILTIN_TYPE_NAME_LOOKUP.has(positionalTitle.trim().toLowerCase())) {
|
|
138
269
|
const matchedType = positionalTitle.trim();
|
|
@@ -154,8 +285,12 @@ function registerMutationCommands(program) {
|
|
|
154
285
|
if (typeof positionalTitle === "string" && positionalTitle.length > 0 && options.title === void 0) {
|
|
155
286
|
options.title = positionalTitle;
|
|
156
287
|
}
|
|
288
|
+
if (typeof options.bodyFile === "string") {
|
|
289
|
+
options.body = await resolveBodyFileContent(options.bodyFile, options.body !== void 0 ? String(options.body) : void 0);
|
|
290
|
+
delete options.bodyFile;
|
|
291
|
+
}
|
|
157
292
|
const normalized = normalizeCreateOptions(options, { requireType: false });
|
|
158
|
-
const { runCreate } = await import("./create-
|
|
293
|
+
const { runCreate } = await import("./create-F5HZX2S4.js");
|
|
159
294
|
const result = await runCreate(normalized, globalOptions);
|
|
160
295
|
await invalidateSearchCachesForMutation(globalOptions, result);
|
|
161
296
|
printResult(result, globalOptions);
|
|
@@ -166,7 +301,7 @@ function registerMutationCommands(program) {
|
|
|
166
301
|
program.command("copy").argument("<id>", "Source item id").option("--title <value>", "Optional title override for the copied item").option("--author <value>", "Mutation author").option("--message <value>", "History message").description("Copy an item into a new item id while resetting lifecycle fields.").action(async (id, options, command) => {
|
|
167
302
|
const globalOptions = getGlobalOptions(command);
|
|
168
303
|
const startedAt = Date.now();
|
|
169
|
-
const { runCopy } = await import("./copy-
|
|
304
|
+
const { runCopy } = await import("./copy-Q64T5FD4.js");
|
|
170
305
|
const result = await runCopy(id, {
|
|
171
306
|
title: typeof options.title === "string" ? options.title : void 0,
|
|
172
307
|
author: typeof options.author === "string" ? options.author : void 0,
|
|
@@ -178,15 +313,29 @@ function registerMutationCommands(program) {
|
|
|
178
313
|
printError(`profile:command=copy took_ms=${Date.now() - startedAt}`);
|
|
179
314
|
}
|
|
180
315
|
});
|
|
316
|
+
program.command("focus").argument("[id]", "Item id to focus (omit to show current focus)").option("--clear", "Clear the focused item").description("Set/clear/show the session focused item that new items default --parent to.").action(async (id, options, command) => {
|
|
317
|
+
const globalOptions = getGlobalOptions(command);
|
|
318
|
+
const startedAt = Date.now();
|
|
319
|
+
const { runFocus } = await import("./focus-7AQMNRSU.js");
|
|
320
|
+
const result = await runFocus(id, { clear: options.clear === true }, globalOptions);
|
|
321
|
+
printResult(result, globalOptions);
|
|
322
|
+
if (globalOptions.profile) {
|
|
323
|
+
printError(`profile:command=focus took_ms=${Date.now() - startedAt}`);
|
|
324
|
+
}
|
|
325
|
+
});
|
|
181
326
|
const updateCommand = program.command("update").argument("<id>", "Item id").description("Update item fields and metadata.");
|
|
182
327
|
registerCommanderOptionContracts(updateCommand, UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS);
|
|
183
|
-
updateCommand.option("--replace-deps", "Atomically replace dependency entries with the provided --dep values").option("--replace-tests", "Atomically replace linked test entries with the provided --test values").option("--clear-deps", "Clear dependency entries").option("--clear-comments", "Clear comments").option("--clear-notes", "Clear notes").option("--clear-learnings", "Clear learnings").option("--clear-files", "Clear linked files").option("--clear-tests", "Clear linked tests").option("--clear-docs", "Clear linked docs").option("--clear-reminders", "Clear reminders").option("--clear-events", "Clear events").option("--clear-type-options", "Clear type options").option("--allow-audit-update", "Allow non-owner metadata-only audit updates without requiring --force").option("--allow-audit-dep-update", "Allow non-owner append-only dependency updates without requiring --force").option("--force", "Force ownership override");
|
|
328
|
+
updateCommand.option("--body-file <path>", "Load the item markdown body from a file (mutually exclusive with --body)").option("--replace-deps", "Atomically replace dependency entries with the provided --dep values").option("--replace-tests", "Atomically replace linked test entries with the provided --test values").option("--clear-deps", "Clear dependency entries").option("--clear-comments", "Clear comments").option("--clear-notes", "Clear notes").option("--clear-learnings", "Clear learnings").option("--clear-files", "Clear linked files").option("--clear-tests", "Clear linked tests").option("--clear-docs", "Clear linked docs").option("--clear-reminders", "Clear reminders").option("--clear-events", "Clear events").option("--clear-type-options", "Clear type options").option("--allow-audit-update", "Allow non-owner metadata-only audit updates without requiring --force").option("--allow-audit-dep-update", "Allow non-owner append-only dependency updates without requiring --force").option("--force", "Force ownership override");
|
|
184
329
|
addHiddenOption(updateCommand, "--allow_audit_update", "Alias for --allow-audit-update", false);
|
|
185
330
|
addHiddenOption(updateCommand, "--allow_audit_dep_update", "Alias for --allow-audit-dep-update", false);
|
|
186
331
|
updateCommand.action(async (id, options, command) => {
|
|
187
332
|
const globalOptions = getGlobalOptions(command);
|
|
188
333
|
const startedAt = Date.now();
|
|
189
|
-
|
|
334
|
+
if (typeof options.bodyFile === "string") {
|
|
335
|
+
options.body = await resolveBodyFileContent(options.bodyFile, options.body !== void 0 ? String(options.body) : void 0);
|
|
336
|
+
delete options.bodyFile;
|
|
337
|
+
}
|
|
338
|
+
const { runUpdate } = await import("./update-UN75XW3C.js");
|
|
190
339
|
const result = await runUpdate(id, normalizeUpdateOptions(options), globalOptions);
|
|
191
340
|
await invalidateSearchCachesForMutation(globalOptions, result);
|
|
192
341
|
printResult(result, globalOptions);
|
|
@@ -194,7 +343,9 @@ function registerMutationCommands(program) {
|
|
|
194
343
|
printError(`profile:command=update took_ms=${Date.now() - startedAt}`);
|
|
195
344
|
}
|
|
196
345
|
});
|
|
197
|
-
const updateManyCommand = program.command("update-many").description("Bulk-update matched items with dry-run plans and rollback checkpoints.").option("--filter-status <value>", "Filter by status before applying updates").option("--filter-type <value>", "Filter by item type before applying updates").option("--filter-tag <value>", "Filter by tag before applying updates").option("--filter-priority <value>", "Filter by priority before applying updates").option("--filter-deadline-before <value>", "Filter by deadline upper bound before applying updates").option("--filter-deadline-after <value>", "Filter by deadline lower bound before applying updates").option("--filter-updated-after <value>", "Filter by updated_at lower bound before applying updates (ISO/relative)").option("--filter-updated-before <value>", "Filter by updated_at upper bound before applying updates (ISO/relative)").option("--filter-created-after <value>", "Filter by created_at lower bound before applying updates (ISO/relative)").option("--filter-created-before <value>", "Filter by created_at upper bound before applying updates (ISO/relative)").option("--filter-assignee <value>", "Filter by assignee before applying updates").option("--filter-assignee-filter <value>", "Filter assignee presence: assigned|unassigned before applying updates").option("--filter-parent <value>", "Filter by parent item ID before applying updates").option("--filter-sprint <value>", "Filter by sprint before applying updates").option("--filter-release <value>", "Filter by release before applying updates").option("--
|
|
346
|
+
const updateManyCommand = program.command("update-many").description("Bulk-update matched items with dry-run plans and rollback checkpoints.").option("--filter-status <value>", "Filter by status before applying updates").option("--filter-type <value>", "Filter by item type before applying updates").option("--filter-tag <value>", "Filter by tag before applying updates").option("--filter-priority <value>", "Filter by priority before applying updates").option("--filter-deadline-before <value>", "Filter by deadline upper bound before applying updates").option("--filter-deadline-after <value>", "Filter by deadline lower bound before applying updates").option("--filter-updated-after <value>", "Filter by updated_at lower bound before applying updates (ISO/relative)").option("--filter-updated-before <value>", "Filter by updated_at upper bound before applying updates (ISO/relative)").option("--filter-created-after <value>", "Filter by created_at lower bound before applying updates (ISO/relative)").option("--filter-created-before <value>", "Filter by created_at upper bound before applying updates (ISO/relative)").option("--filter-assignee <value>", "Filter by assignee before applying updates").option("--filter-assignee-filter <value>", "Filter assignee presence: assigned|unassigned before applying updates").option("--filter-parent <value>", "Filter by parent item ID before applying updates").option("--filter-sprint <value>", "Filter by sprint before applying updates").option("--filter-release <value>", "Filter by release before applying updates").option("--filter-ac-missing", "Select only items missing acceptance_criteria (bulk backfill)").option("--filter-estimates-missing", "Select only items missing estimated_minutes (bulk backfill)").option("--filter-resolution-missing", "Select only terminal items missing resolution (bulk backfill)").option("--filter-metadata-missing", "Select only items missing any tracked metadata (AC, estimate, or resolution)");
|
|
347
|
+
registerBulkContentAndGovernanceFilters(updateManyCommand, "applying updates");
|
|
348
|
+
updateManyCommand.option("--ids <value>", "Restrict to an explicit comma-separated ID allowlist (intersected with other filters)").option("--limit <n>", "Limit matched item count before apply/preview").option("--offset <n>", "Skip first n matched rows before apply/preview").option("--dry-run", "Preview per-item diffs and checkpoint intent without mutating").option("--rollback <value>", "Rollback a prior update-many checkpoint ID").option("--no-checkpoint", "Disable checkpoint creation during apply mode").option("--title, -t <value>", "Set title").option("--description, -d <value>", "Set description").option("--body, -b <value>", "Set body (allow empty string)").option("--status, -s <value>", "Set status (use close command for closed)").option("--priority, -p <value>", "Set priority").option("--type <value>", "Set type").option("--tags <value>", "Set comma-separated tags (replaces existing). Use --add-tags / --remove-tags to mutate additively.").option("--add-tags <value>", "Add tags additively without replacing existing (repeatable; CSV accepted)", collect).option("--remove-tags <value>", "Remove tags from the existing list (repeatable; CSV accepted)", collect).option("--deadline <value>", "Set deadline (ISO/date string or relative)").option("--estimate, --estimated-minutes <value>", "Set estimated minutes").option("--acceptance-criteria <value>", "Set acceptance criteria").option("--ac <value>", "Alias for --acceptance-criteria").option("--definition-of-ready <value>", "Set definition of ready").option("--order <value>", "Set planning order/rank integer").option("--rank <value>", "Alias for --order").option("--goal <value>", "Set goal identifier").option("--objective <value>", "Set objective identifier").option("--value <value>", "Set business value summary").option("--impact <value>", "Set business impact summary").option("--outcome <value>", "Set expected outcome summary").option("--why-now <value>", "Set why-now rationale").option("--assignee <value>", "Set assignee").option("--parent <value>", "Set parent item ID").option("--reviewer <value>", "Set reviewer").option("--risk <value>", "Set risk level").option("--confidence <value>", "Set confidence level").option("--sprint <value>", "Set sprint identifier").option("--release <value>", "Set release identifier").option("--blocked-by <value>", "Set blocked-by item ID or reason").option("--blocked-reason <value>", "Set blocked reason").option("--unblock-note <value>", "Set unblock rationale note").option("--reporter <value>", "Set issue reporter").option("--severity <value>", "Set issue severity").option("--environment <value>", "Set issue environment context").option("--repro-steps <value>", "Set issue reproduction steps").option("--resolution <value>", "Set issue resolution summary").option("--expected-result <value>", "Set issue expected behavior").option("--expected <value>", "Short alias for --expected-result").option("--actual-result <value>", "Set issue observed behavior").option("--actual <value>", "Short alias for --actual-result").option("--affected-version <value>", "Set affected version identifier").option("--fixed-version <value>", "Set fixed version identifier").option("--component <value>", "Set issue component ownership").option("--regression <value>", "Set regression marker: true|false|1|0").option("--customer-impact <value>", "Set customer impact summary").option("--dep <value>", "Add dependency entry id=<id>,kind=<kind>,author=<author>,created_at=<timestamp>", collect).option("--dep-remove <value>", "Remove dependency entries by id/kind/author/timestamp signature", collect).option("--replace-deps", "Atomically replace dependency entries with provided --dep values").option("--replace-tests", "Atomically replace linked tests with provided --test values").option("--comment <value>", "Add comment seed author=<value>,created_at=<iso|now>,text=<value>", collect).option("--note <value>", "Add note seed author=<value>,created_at=<iso|now>,text=<value>", collect).option("--learning <value>", "Add learning seed author=<value>,created_at=<iso|now>,text=<value>", collect).option("--file <value>", "Add linked file path=<value>,scope=<project|global>,note=<text>", collect).option("--test <value>", "Add linked test command=<value>,path=<value>,scope=<project|global>", collect).option("--doc <value>", "Add linked doc path=<value>,scope=<project|global>,note=<text>", collect).option("--reminder <value>", "Add reminder entry at=<iso|relative>|date=<iso|relative>,text=<text>|title=<text>", collect).option("--event <value>", "Add event entry start=<iso|relative>,end=<iso|relative>,recur_*", collect).option("--type-option <value>", "Set type options key=value (repeatable)", collect).option("--unset <field>", "Clear scalar metadata field by name (repeatable)", collect).option("--clear-deps", "Clear dependency entries").option("--clear-comments", "Clear comments").option("--clear-notes", "Clear notes").option("--clear-learnings", "Clear learnings").option("--clear-files", "Clear linked files").option("--clear-tests", "Clear linked tests").option("--clear-docs", "Clear linked docs").option("--clear-reminders", "Clear reminders").option("--clear-events", "Clear events").option("--clear-type-options", "Clear type options").option("--allow-audit-update", "Allow non-owner metadata-only audit updates without requiring --force").option("--allow-audit-dep-update", "Allow non-owner append-only dependency updates without requiring --force").option("--author <value>", "Mutation author").option("--message <value>", "Mutation message").option("--force", "Force ownership override");
|
|
198
349
|
for (const [flags, description] of [
|
|
199
350
|
["--filter-assignee_filter <value>", "Alias for --filter-assignee-filter"],
|
|
200
351
|
["--estimated_minutes <value>", "Alias for --estimated-minutes"],
|
|
@@ -211,7 +362,8 @@ function registerMutationCommands(program) {
|
|
|
211
362
|
["--fixed_version <value>", "Alias for --fixed-version"],
|
|
212
363
|
["--customer_impact <value>", "Alias for --customer-impact"],
|
|
213
364
|
["--allow_audit_update", "Alias for --allow-audit-update"],
|
|
214
|
-
["--allow_audit_dep_update", "Alias for --allow-audit-dep-update"]
|
|
365
|
+
["--allow_audit_dep_update", "Alias for --allow-audit-dep-update"],
|
|
366
|
+
["--filter-estimate-missing", "Alias for --filter-estimates-missing"]
|
|
215
367
|
]) {
|
|
216
368
|
addHiddenOption(updateManyCommand, flags, description, false);
|
|
217
369
|
}
|
|
@@ -226,29 +378,10 @@ function registerMutationCommands(program) {
|
|
|
226
378
|
updateManyCommand.action(async (options, command) => {
|
|
227
379
|
const globalOptions = getGlobalOptions(command);
|
|
228
380
|
const startedAt = Date.now();
|
|
229
|
-
const { runUpdateMany } = await import("./update-many-
|
|
381
|
+
const { runUpdateMany } = await import("./update-many-XSEQJ24X.js");
|
|
230
382
|
const result = await runUpdateMany({
|
|
231
383
|
status: typeof options.filterStatus === "string" ? options.filterStatus : void 0,
|
|
232
|
-
list:
|
|
233
|
-
type: typeof options.filterType === "string" ? options.filterType : void 0,
|
|
234
|
-
tag: typeof options.filterTag === "string" ? options.filterTag : void 0,
|
|
235
|
-
priority: typeof options.filterPriority === "string" ? options.filterPriority : void 0,
|
|
236
|
-
deadlineBefore: typeof options.filterDeadlineBefore === "string" ? options.filterDeadlineBefore : void 0,
|
|
237
|
-
deadlineAfter: typeof options.filterDeadlineAfter === "string" ? options.filterDeadlineAfter : void 0,
|
|
238
|
-
updatedAfter: typeof options.filterUpdatedAfter === "string" ? options.filterUpdatedAfter : void 0,
|
|
239
|
-
updatedBefore: typeof options.filterUpdatedBefore === "string" ? options.filterUpdatedBefore : void 0,
|
|
240
|
-
createdAfter: typeof options.filterCreatedAfter === "string" ? options.filterCreatedAfter : void 0,
|
|
241
|
-
createdBefore: typeof options.filterCreatedBefore === "string" ? options.filterCreatedBefore : void 0,
|
|
242
|
-
ids: typeof options.ids === "string" ? options.ids : void 0,
|
|
243
|
-
assignee: typeof options.filterAssignee === "string" ? options.filterAssignee : void 0,
|
|
244
|
-
assigneeFilter: typeof options.filterAssigneeFilter === "string" ? options.filterAssigneeFilter : typeof options.filterAssignee_filter === "string" ? options.filterAssignee_filter : void 0,
|
|
245
|
-
parent: typeof options.filterParent === "string" ? options.filterParent : void 0,
|
|
246
|
-
sprint: typeof options.filterSprint === "string" ? options.filterSprint : void 0,
|
|
247
|
-
release: typeof options.filterRelease === "string" ? options.filterRelease : void 0,
|
|
248
|
-
limit: typeof options.limit === "string" ? options.limit : void 0,
|
|
249
|
-
offset: typeof options.offset === "string" ? options.offset : void 0,
|
|
250
|
-
includeBody: true
|
|
251
|
-
},
|
|
384
|
+
list: buildUpdateManyListOptions(options),
|
|
252
385
|
update: normalizeUpdateOptions(extractUpdateManyMutationOptionSource(options)),
|
|
253
386
|
dryRun: options.dryRun === true ? true : void 0,
|
|
254
387
|
rollback: typeof options.rollback === "string" ? options.rollback : void 0,
|
|
@@ -260,13 +393,13 @@ function registerMutationCommands(program) {
|
|
|
260
393
|
printError(`profile:command=update-many took_ms=${Date.now() - startedAt}`);
|
|
261
394
|
}
|
|
262
395
|
});
|
|
263
|
-
const closeCommand = program.command("close").argument("<id>", "Item id").argument("[text]", "Close reason text (alias: --reason)").option("--reason <value>", "Close reason text (alias for positional <text>)").option("--close-reason <value>", "Close reason text (alias for positional <text>)").option("--duplicate-of <id>", "Close as a duplicate of the canonical item id and auto-fill duplicate closure metadata").option("--author <value>", "Mutation author").option("--message <value>", "History message").option("--validate-close [mode]", 'Validate closure metadata before close: "off", "warn", or "strict" (default: settings governance preset)').option("--resolution <value>", "Set the closure resolution summary inline (same field --validate-close strict checks; previously required a prior pm update)").option("--expected-result <value>", "Set the expected-result note inline (closure validation field)").option("--expected <value>", "Short alias for --expected-result").option("--actual-result <value>", "Set the actual-result note inline (closure validation field)").option("--actual <value>", "Short alias for --actual-result").option("--force", "Force ownership override").description("Close an item. Close reason requirement follows governance.require_close_reason.");
|
|
396
|
+
const closeCommand = program.command("close").argument("<id>", "Item id").argument("[text]", "Close reason text (alias: --reason)").option("-r, --reason <value>", "Close reason text (alias for positional <text>)").option("--close-reason <value>", "Close reason text (alias for positional <text>)").option("-d, --duplicate-of <id>", "Close as a duplicate of the canonical item id and auto-fill duplicate closure metadata").option("--author <value>", "Mutation author").option("-m, --message <value>", "History message").option("--validate-close [mode]", 'Validate closure metadata before close: "off", "warn", or "strict" (default: settings governance preset)').option("--resolution <value>", "Set the closure resolution summary inline (same field --validate-close strict checks; previously required a prior pm update)").option("--expected-result <value>", "Set the expected-result note inline (closure validation field)").option("--expected <value>", "Short alias for --expected-result").option("--actual-result <value>", "Set the actual-result note inline (closure validation field)").option("--actual <value>", "Short alias for --actual-result").option("--force", "Force ownership override").description("Close an item. Close reason requirement follows governance.require_close_reason.");
|
|
264
397
|
addHiddenOption(closeCommand, "--expected_result <value>", "Alias for --expected-result", false);
|
|
265
398
|
addHiddenOption(closeCommand, "--actual_result <value>", "Alias for --actual-result", false);
|
|
266
399
|
closeCommand.action(async (id, text, options, command) => {
|
|
267
400
|
const globalOptions = getGlobalOptions(command);
|
|
268
401
|
const startedAt = Date.now();
|
|
269
|
-
const { runClose } = await import("./close-
|
|
402
|
+
const { runClose } = await import("./close-ILMZR3D7.js");
|
|
270
403
|
const reasonFromOption = typeof options.reason === "string" && options.reason.trim().length > 0 && options.reason || typeof options.closeReason === "string" && options.closeReason.trim().length > 0 && options.closeReason || void 0;
|
|
271
404
|
const resolvedText = typeof text === "string" && text.length > 0 ? text : reasonFromOption;
|
|
272
405
|
const pickInlineString = (...candidates) => {
|
|
@@ -293,7 +426,9 @@ function registerMutationCommands(program) {
|
|
|
293
426
|
printError(`profile:command=close took_ms=${Date.now() - startedAt}`);
|
|
294
427
|
}
|
|
295
428
|
});
|
|
296
|
-
const closeManyCommand = program.command("close-many").description("Bulk-close matched items with a shared reason and full runClose semantics (dry-run + rollback checkpoint).").option("--filter-status <value>", "Filter by status before closing").option("--filter-type <value>", "Filter by item type before closing").option("--filter-tag <value>", "Filter by tag before closing").option("--filter-priority <value>", "Filter by priority before closing").option("--filter-deadline-before <value>", "Filter by deadline upper bound before closing").option("--filter-deadline-after <value>", "Filter by deadline lower bound before closing").option("--filter-updated-after <value>", "Filter by updated_at lower bound before closing (ISO/relative)").option("--filter-updated-before <value>", "Filter by updated_at upper bound before closing (ISO/relative)").option("--filter-created-after <value>", "Filter by created_at lower bound before closing (ISO/relative)").option("--filter-created-before <value>", "Filter by created_at upper bound before closing (ISO/relative)").option("--filter-assignee <value>", "Filter by assignee before closing").option("--filter-assignee-filter <value>", "Filter assignee presence: assigned|unassigned before closing").option("--filter-parent <value>", "Filter by parent item ID before closing").option("--filter-sprint <value>", "Filter by sprint before closing").option("--filter-release <value>", "Filter by release before closing")
|
|
429
|
+
const closeManyCommand = program.command("close-many").description("Bulk-close matched items with a shared reason and full runClose semantics (dry-run + rollback checkpoint).").option("--filter-status <value>", "Filter by status before closing").option("--filter-type <value>", "Filter by item type before closing").option("--filter-tag <value>", "Filter by tag before closing").option("--filter-priority <value>", "Filter by priority before closing").option("--filter-deadline-before <value>", "Filter by deadline upper bound before closing").option("--filter-deadline-after <value>", "Filter by deadline lower bound before closing").option("--filter-updated-after <value>", "Filter by updated_at lower bound before closing (ISO/relative)").option("--filter-updated-before <value>", "Filter by updated_at upper bound before closing (ISO/relative)").option("--filter-created-after <value>", "Filter by created_at lower bound before closing (ISO/relative)").option("--filter-created-before <value>", "Filter by created_at upper bound before closing (ISO/relative)").option("--filter-assignee <value>", "Filter by assignee before closing").option("--filter-assignee-filter <value>", "Filter assignee presence: assigned|unassigned before closing").option("--filter-parent <value>", "Filter by parent item ID before closing").option("--filter-sprint <value>", "Filter by sprint before closing").option("--filter-release <value>", "Filter by release before closing");
|
|
430
|
+
registerBulkContentAndGovernanceFilters(closeManyCommand, "closing");
|
|
431
|
+
closeManyCommand.option("--ids <value>", "Restrict to an explicit comma-separated ID allowlist (intersected with other filters)").option("--limit <n>", "Limit matched item count before apply/preview").option("--offset <n>", "Skip first n matched rows before apply/preview").option("--reason <value>", "Shared close reason applied to matched items (required when governance.require_close_reason is enabled)").option("--resolution <value>", "Shared closure resolution applied to every matched item (closure-validation field)").option("--expected-result <value>", "Shared expected-result note (closure-validation field)").option("--expected <value>", "Short alias for --expected-result").option("--actual-result <value>", "Shared actual-result note (closure-validation field)").option("--actual <value>", "Short alias for --actual-result").option("--validate-close [mode]", 'Validate closure metadata per item: "off", "warn", or "strict" (default: settings governance preset)').option("--author <value>", "Mutation author").option("--message <value>", "History message").option("--force", "Re-close already-terminal matches and override ownership").option("--dry-run", "Preview matched items + per-item skip/active-child plan without mutating").option("--rollback <value>", "Rollback a prior close-many checkpoint ID").option("--no-checkpoint", "Disable checkpoint creation during apply mode");
|
|
297
432
|
addHiddenOption(closeManyCommand, "--filter-assignee_filter <value>", "Alias for --filter-assignee-filter", false);
|
|
298
433
|
addHiddenOption(closeManyCommand, "--expected_result <value>", "Alias for --expected-result", false);
|
|
299
434
|
addHiddenOption(closeManyCommand, "--actual_result <value>", "Alias for --actual-result", false);
|
|
@@ -308,7 +443,7 @@ function registerMutationCommands(program) {
|
|
|
308
443
|
}
|
|
309
444
|
return void 0;
|
|
310
445
|
};
|
|
311
|
-
const { runCloseMany } = await import("./close-many-
|
|
446
|
+
const { runCloseMany } = await import("./close-many-Q7Y5AHQI.js");
|
|
312
447
|
const result = await runCloseMany({
|
|
313
448
|
status: typeof options.filterStatus === "string" ? options.filterStatus : void 0,
|
|
314
449
|
list: {
|
|
@@ -327,6 +462,7 @@ function registerMutationCommands(program) {
|
|
|
327
462
|
parent: typeof options.filterParent === "string" ? options.filterParent : void 0,
|
|
328
463
|
sprint: typeof options.filterSprint === "string" ? options.filterSprint : void 0,
|
|
329
464
|
release: typeof options.filterRelease === "string" ? options.filterRelease : void 0,
|
|
465
|
+
...mapBulkContentAndGovernanceFilters(options),
|
|
330
466
|
limit: typeof options.limit === "string" ? options.limit : void 0,
|
|
331
467
|
offset: typeof options.offset === "string" ? options.offset : void 0
|
|
332
468
|
},
|
|
@@ -351,7 +487,7 @@ function registerMutationCommands(program) {
|
|
|
351
487
|
program.command("delete").argument("<id>", "Item id").option("--author <value>", "Mutation author").option("--message <value>", "History message").option("--force", "Force ownership override").option("--dry-run", "Preview the item file that would be deleted without mutating").description("Delete an item and record the change in history.").action(async (id, options, command) => {
|
|
352
488
|
const globalOptions = getGlobalOptions(command);
|
|
353
489
|
const startedAt = Date.now();
|
|
354
|
-
const { runDelete } = await import("./delete-
|
|
490
|
+
const { runDelete } = await import("./delete-VH3L7DZ6.js");
|
|
355
491
|
const result = await runDelete(id, {
|
|
356
492
|
author: typeof options.author === "string" ? options.author : void 0,
|
|
357
493
|
message: typeof options.message === "string" ? options.message : void 0,
|
|
@@ -380,7 +516,7 @@ function registerMutationCommands(program) {
|
|
|
380
516
|
if (resolvedBody === void 0) {
|
|
381
517
|
throw new PmCliError("Missing append text. Provide it as positional [text], --body <value>, or --text <value> (use - for stdin).", EXIT_CODE.USAGE);
|
|
382
518
|
}
|
|
383
|
-
const { runAppend } = await import("./append-
|
|
519
|
+
const { runAppend } = await import("./append-2Q4BPUBW.js");
|
|
384
520
|
const result = await runAppend(id, {
|
|
385
521
|
body: resolvedBody,
|
|
386
522
|
author: typeof options.author === "string" ? options.author : void 0,
|
|
@@ -396,7 +532,7 @@ function registerMutationCommands(program) {
|
|
|
396
532
|
program.command("restore").argument("<id>", "Item id").argument("<target>", "Restore target timestamp or version number").option("--author <value>", "Mutation author").option("--message <value>", "History message").option("--force", "Force ownership/lock override").description("Restore an item to an earlier timestamp or version.").action(async (id, target, options, command) => {
|
|
397
533
|
const globalOptions = getGlobalOptions(command);
|
|
398
534
|
const startedAt = Date.now();
|
|
399
|
-
const { runRestore } = await import("./restore-
|
|
535
|
+
const { runRestore } = await import("./restore-XXXLQ2XC.js");
|
|
400
536
|
const result = await runRestore(id, target, {
|
|
401
537
|
author: typeof options.author === "string" ? options.author : void 0,
|
|
402
538
|
message: typeof options.message === "string" ? options.message : void 0,
|
|
@@ -445,7 +581,7 @@ function registerMutationCommands(program) {
|
|
|
445
581
|
planCommand.action(async (subcommand, id, stepRef, reorderToken, options, command) => {
|
|
446
582
|
const globalOptions = getGlobalOptions(command);
|
|
447
583
|
const startedAt = Date.now();
|
|
448
|
-
const { runPlan, PLAN_SUBCOMMANDS } = await import("./plan-
|
|
584
|
+
const { runPlan, PLAN_SUBCOMMANDS } = await import("./plan-PAWCCAPW.js");
|
|
449
585
|
const normalizedSubcommand = (subcommand ?? "").trim().toLowerCase();
|
|
450
586
|
if (!normalizedSubcommand) {
|
|
451
587
|
throw new PmCliError(`pm plan requires a subcommand. Allowed: ${PLAN_SUBCOMMANDS.join(", ")}`, EXIT_CODE.USAGE, {
|
|
@@ -529,7 +665,7 @@ function registerMutationCommands(program) {
|
|
|
529
665
|
program.command("history-redact").argument("<id>", "Item id").option("--literal <value>", "Literal string to redact (repeatable)", collect).option("--regex <value>", "Regex pattern to redact (repeatable; accepts /pattern/flags or raw pattern)", collect).option("--replacement <value>", 'Replacement string (default: "[redacted]")').option("--dry-run", "Preview redaction impact without writing item/history files").option("--author <value>", "Mutation author").option("--message <value>", "Audit history message for the redaction marker entry").option("--force", "Force ownership/lock override").description("Redact sensitive literals/patterns from an item history stream and recompute hashes.").action(async (id, options, command) => {
|
|
530
666
|
const globalOptions = getGlobalOptions(command);
|
|
531
667
|
const startedAt = Date.now();
|
|
532
|
-
const { runHistoryRedact } = await import("./history-redact-
|
|
668
|
+
const { runHistoryRedact } = await import("./history-redact-VBH44Y7F.js");
|
|
533
669
|
const literal = Array.isArray(options.literal) ? options.literal : void 0;
|
|
534
670
|
const regex = Array.isArray(options.regex) ? options.regex : void 0;
|
|
535
671
|
const result = await runHistoryRedact(id, {
|
|
@@ -552,7 +688,7 @@ function registerMutationCommands(program) {
|
|
|
552
688
|
program.command("history-repair").argument("[id]", "Item id (omit with --all)").option("--all", "Scan every stream for drift and repair each drifted stream in one audited pass").option("--dry-run", "Preview the re-anchor impact without writing the history file").option("--author <value>", "Mutation author").option("--message <value>", "Audit history message for the repair marker entry").option("--force", "Force ownership/lock override").description("Re-anchor a drifted item history chain (recompute hashes, reconcile with the on-disk item) and record an audit marker. Use --all to repair every drifted stream.").action(async (id, options, command) => {
|
|
553
689
|
const globalOptions = getGlobalOptions(command);
|
|
554
690
|
const startedAt = Date.now();
|
|
555
|
-
const { runHistoryRepair, runHistoryRepairAll, assertHistoryRepairTarget } = await import("./history-repair-
|
|
691
|
+
const { runHistoryRepair, runHistoryRepairAll, assertHistoryRepairTarget } = await import("./history-repair-ANHEYWKF.js");
|
|
556
692
|
const all = options.all === true;
|
|
557
693
|
assertHistoryRepairTarget(id, all);
|
|
558
694
|
const repairOptions = {
|
|
@@ -578,7 +714,7 @@ function registerMutationCommands(program) {
|
|
|
578
714
|
program.command("history-compact").argument("<id>", "Item id").option("--before <value>", "Compact entries strictly before this version number or ISO timestamp").option("--dry-run", "Preview compaction impact without writing the history file").option("--author <value>", "Mutation author").option("--message <value>", "Audit history message for the compaction marker entry").option("--force", "Force ownership/lock override").description("Compact an item history stream into a synthetic baseline plus retained tail entries.").action(async (id, options, command) => {
|
|
579
715
|
const globalOptions = getGlobalOptions(command);
|
|
580
716
|
const startedAt = Date.now();
|
|
581
|
-
const { runHistoryCompact } = await import("./history-compact-
|
|
717
|
+
const { runHistoryCompact } = await import("./history-compact-ID74DOUI.js");
|
|
582
718
|
const result = await runHistoryCompact(id, {
|
|
583
719
|
before: typeof options.before === "string" ? options.before : void 0,
|
|
584
720
|
dryRun: options.dryRun === true,
|
|
@@ -596,7 +732,7 @@ function registerMutationCommands(program) {
|
|
|
596
732
|
schemaCommand.action(async (subcommand, name, options, command) => {
|
|
597
733
|
const globalOptions = getGlobalOptions(command);
|
|
598
734
|
const startedAt = Date.now();
|
|
599
|
-
const { runSchemaAddType, runSchemaRemoveType, runSchemaAddStatus, runSchemaRemoveStatus, runSchemaList, runSchemaShow, runSchemaShowStatus, formatSchemaAddTypeHuman, formatSchemaRemoveTypeHuman, formatSchemaAddStatusHuman, formatSchemaRemoveStatusHuman, formatSchemaListHuman, formatSchemaShowHuman, formatSchemaShowStatusHuman, SCHEMA_SUBCOMMANDS } = await import("./schema-
|
|
735
|
+
const { runSchemaAddType, runSchemaRemoveType, runSchemaAddStatus, runSchemaRemoveStatus, runSchemaList, runSchemaShow, runSchemaShowStatus, formatSchemaAddTypeHuman, formatSchemaRemoveTypeHuman, formatSchemaAddStatusHuman, formatSchemaRemoveStatusHuman, formatSchemaListHuman, formatSchemaShowHuman, formatSchemaShowStatusHuman, SCHEMA_SUBCOMMANDS } = await import("./schema-3HCLXCFX.js");
|
|
600
736
|
let normalizedSubcommand = (subcommand ?? "").trim().toLowerCase();
|
|
601
737
|
let typeName = name;
|
|
602
738
|
if (!normalizedSubcommand) {
|
|
@@ -613,8 +749,14 @@ function registerMutationCommands(program) {
|
|
|
613
749
|
]
|
|
614
750
|
});
|
|
615
751
|
}
|
|
616
|
-
const aliases =
|
|
617
|
-
|
|
752
|
+
const aliases = (
|
|
753
|
+
/* c8 ignore next -- --alias is registered with commander `collect`, so it is always an array here; the string arm is a defensive guard for non-CLI (programmatic) callers */
|
|
754
|
+
typeof options.alias === "string" ? [options.alias] : Array.isArray(options.alias) ? options.alias : void 0
|
|
755
|
+
);
|
|
756
|
+
const roles = (
|
|
757
|
+
/* c8 ignore next -- --role is registered with commander `collect`, so it is always an array here; the string arm is a defensive guard for non-CLI (programmatic) callers */
|
|
758
|
+
typeof options.role === "string" ? [options.role] : Array.isArray(options.role) ? options.role : void 0
|
|
759
|
+
);
|
|
618
760
|
const defaultStatus = typeof options.defaultStatus === "string" ? options.defaultStatus : typeof options.default_status === "string" ? options.default_status : void 0;
|
|
619
761
|
const order = parseSchemaOrderOption(options.order);
|
|
620
762
|
if (!SCHEMA_SUBCOMMANDS.includes(normalizedSubcommand) && typeName === void 0) {
|
|
@@ -674,9 +816,11 @@ function registerMutationCommands(program) {
|
|
|
674
816
|
printError(`profile:command=schema took_ms=${Date.now() - startedAt}`);
|
|
675
817
|
}
|
|
676
818
|
});
|
|
677
|
-
program.command("comments").argument("<id>", "Item id").argument("[text]", "Optional comment text shorthand (equivalent to --add)").option("--add <text>", "Add one comment entry (plain text fallback, text=<value>, markdown pairs, or - for stdin; CSV-like key fragments are preserved as plain text unless text is explicit)").option("--stdin", "Read comment text from stdin (supports multiline markdown)").option("--file <path>", "Read comment text from file (supports multiline markdown)").option("--limit <n>", "Return only latest n comments").option("--author [value]", "Comment author (optional; falls back to PM_AUTHOR/settings)").option("--message <value>", "History message").option("--allow-audit-comment", "Allow non-owner append-only comment audits without requiring --force").option("--force", "Force ownership override").description("List or
|
|
819
|
+
program.command("comments").argument("<id>", "Item id").argument("[text]", "Optional comment text shorthand (equivalent to --add)").option("--add <text>", "Add one comment entry (plain text fallback, text=<value>, markdown pairs, or - for stdin; CSV-like key fragments are preserved as plain text unless text is explicit)").option("--stdin", "Read comment text from stdin (supports multiline markdown)").option("--file <path>", "Read comment text from file (supports multiline markdown)").option("--edit <index>", "Replace the comment at 1-based <index> (replacement text from positional [text], --add, --stdin, or --file)", parsePositiveIntOption("--edit")).option("--delete <index>", "Delete the comment at 1-based <index>", parsePositiveIntOption("--delete")).option("--limit <n>", "Return only latest n comments").option("--author [value]", "Comment author (optional; falls back to PM_AUTHOR/settings)").option("--message <value>", "History message").option("--allow-audit-comment", "Allow non-owner append-only comment audits (add/edit/delete) without requiring --force").option("--force", "Force ownership override").description("List, add, edit, or delete comments for an item.").action(async (id, text, options, command) => {
|
|
678
820
|
const globalOptions = getGlobalOptions(command);
|
|
679
821
|
const startedAt = Date.now();
|
|
822
|
+
const editIndex = typeof options.edit === "number" ? options.edit : void 0;
|
|
823
|
+
const deleteIndex = typeof options.delete === "number" ? options.delete : void 0;
|
|
680
824
|
const addFromOption = typeof options.add === "string" ? options.add : void 0;
|
|
681
825
|
const addFromPositional = typeof text === "string" ? text : void 0;
|
|
682
826
|
const readFromStdin = options.stdin === true;
|
|
@@ -689,18 +833,21 @@ function registerMutationCommands(program) {
|
|
|
689
833
|
throw new PmCliError("Specify comment text with exactly one source: positional [text], --add, --stdin, or --file", EXIT_CODE.USAGE);
|
|
690
834
|
}
|
|
691
835
|
const add = addFromOption ?? addFromPositional;
|
|
692
|
-
const { runComments } = await import("./comments-
|
|
836
|
+
const { runComments } = await import("./comments-IWFSVM4P.js");
|
|
693
837
|
const result = await runComments(id, {
|
|
694
838
|
add,
|
|
695
839
|
stdin: readFromStdin,
|
|
696
840
|
file: readFromFile,
|
|
841
|
+
edit: editIndex,
|
|
842
|
+
delete: deleteIndex,
|
|
697
843
|
limit: typeof options.limit === "string" ? options.limit : void 0,
|
|
698
844
|
author: typeof options.author === "string" ? options.author : void 0,
|
|
699
845
|
message: typeof options.message === "string" ? options.message : void 0,
|
|
700
846
|
allowAuditComment: Boolean(options.allowAuditComment),
|
|
701
847
|
force: Boolean(options.force)
|
|
702
848
|
}, globalOptions);
|
|
703
|
-
|
|
849
|
+
const isMutation = typeof add === "string" || readFromStdin || readFromFile !== void 0 || editIndex !== void 0 || deleteIndex !== void 0;
|
|
850
|
+
if (isMutation) {
|
|
704
851
|
await invalidateSearchCachesForMutation(globalOptions, result);
|
|
705
852
|
}
|
|
706
853
|
printResult(result, globalOptions);
|
|
@@ -717,7 +864,7 @@ function registerMutationCommands(program) {
|
|
|
717
864
|
throw new PmCliError("Specify note text either as positional [text] or with --add, not both", EXIT_CODE.USAGE);
|
|
718
865
|
}
|
|
719
866
|
const add = addFromOption ?? addFromPositional;
|
|
720
|
-
const { runNotes } = await import("./notes-
|
|
867
|
+
const { runNotes } = await import("./notes-IN3UMA7W.js");
|
|
721
868
|
const result = await runNotes(id, {
|
|
722
869
|
add,
|
|
723
870
|
limit: typeof options.limit === "string" ? options.limit : void 0,
|
|
@@ -743,7 +890,7 @@ function registerMutationCommands(program) {
|
|
|
743
890
|
throw new PmCliError("Specify learning text either as positional [text] or with --add, not both", EXIT_CODE.USAGE);
|
|
744
891
|
}
|
|
745
892
|
const add = addFromOption ?? addFromPositional;
|
|
746
|
-
const { runLearnings } = await import("./learnings-
|
|
893
|
+
const { runLearnings } = await import("./learnings-VIS3NOQV.js");
|
|
747
894
|
const result = await runLearnings(id, {
|
|
748
895
|
add,
|
|
749
896
|
limit: typeof options.limit === "string" ? options.limit : void 0,
|
|
@@ -768,7 +915,7 @@ function registerMutationCommands(program) {
|
|
|
768
915
|
const addGlobValues = Array.isArray(options.addGlob) ? options.addGlob : [];
|
|
769
916
|
const removeValues = Array.isArray(options.remove) ? options.remove : [];
|
|
770
917
|
const migrateValues = Array.isArray(options.migrate) ? options.migrate : [];
|
|
771
|
-
const { runFiles } = await import("./files-
|
|
918
|
+
const { runFiles } = await import("./files-5FDUPSEA.js");
|
|
772
919
|
const result = await runFiles(id, {
|
|
773
920
|
add: addValues,
|
|
774
921
|
addGlob: addGlobValues,
|
|
@@ -795,7 +942,7 @@ function registerMutationCommands(program) {
|
|
|
795
942
|
const globalOptions = getGlobalOptions(command);
|
|
796
943
|
const startedAt = Date.now();
|
|
797
944
|
const mergedOptions = { ...command.optsWithGlobals(), ...options };
|
|
798
|
-
const { runFilesDiscover } = await import("./files-
|
|
945
|
+
const { runFilesDiscover } = await import("./files-5FDUPSEA.js");
|
|
799
946
|
const result = await runFilesDiscover(id, {
|
|
800
947
|
apply: Boolean(mergedOptions.apply),
|
|
801
948
|
note: typeof mergedOptions.note === "string" ? mergedOptions.note : void 0,
|
|
@@ -819,7 +966,7 @@ function registerMutationCommands(program) {
|
|
|
819
966
|
const addGlobValues = Array.isArray(options.addGlob) ? options.addGlob : [];
|
|
820
967
|
const removeValues = Array.isArray(options.remove) ? options.remove : [];
|
|
821
968
|
const migrateValues = Array.isArray(options.migrate) ? options.migrate : [];
|
|
822
|
-
const { runDocs } = await import("./docs-
|
|
969
|
+
const { runDocs } = await import("./docs-GWDEB7JH.js");
|
|
823
970
|
const result = await runDocs(id, {
|
|
824
971
|
add: addValues,
|
|
825
972
|
addGlob: addGlobValues,
|
|
@@ -844,11 +991,11 @@ function registerMutationCommands(program) {
|
|
|
844
991
|
program.command("deps").argument("<id>", "Item id").option("--format <value>", "Output format (tree or graph)", "tree").option("--max-depth <value>", "Maximum dependency traversal depth (0 keeps only the root)").option("--collapse <value>", "Collapse mode (none or repeated)", "none").option("--summary", "Return counts only without full tree/graph payload").description("Show dependency relationships for an item.").action(async (id, options, command) => {
|
|
845
992
|
const globalOptions = getGlobalOptions(command);
|
|
846
993
|
const startedAt = Date.now();
|
|
847
|
-
const { runDeps } = await import("./deps-
|
|
994
|
+
const { runDeps } = await import("./deps-J3HBBLDB.js");
|
|
848
995
|
const result = await runDeps(id, {
|
|
849
|
-
format:
|
|
996
|
+
format: options.format,
|
|
850
997
|
maxDepth: typeof options.maxDepth === "string" ? options.maxDepth : void 0,
|
|
851
|
-
collapse:
|
|
998
|
+
collapse: options.collapse,
|
|
852
999
|
summary: options.summary === true
|
|
853
1000
|
}, globalOptions);
|
|
854
1001
|
printResult(result, globalOptions);
|
|
@@ -858,6 +1005,9 @@ function registerMutationCommands(program) {
|
|
|
858
1005
|
});
|
|
859
1006
|
}
|
|
860
1007
|
export {
|
|
1008
|
+
parsePositiveIntOption,
|
|
1009
|
+
parseSchemaOrderOption,
|
|
1010
|
+
registerCommanderOptionContracts,
|
|
861
1011
|
registerMutationCommands
|
|
862
1012
|
};
|
|
863
|
-
//# sourceMappingURL=register-mutation-
|
|
1013
|
+
//# sourceMappingURL=register-mutation-UFZK6Q57.js.map
|