@unbrained/pm-cli 2026.6.8 → 2026.6.10
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 +74 -11
- package/dist/cli/bootstrap-args.js +4 -2
- package/dist/cli/bootstrap-args.js.map +1 -1
- package/dist/cli/commands/aggregate.d.ts +7 -0
- package/dist/cli/commands/aggregate.js +53 -12
- package/dist/cli/commands/aggregate.js.map +1 -1
- package/dist/cli/commands/close.d.ts +1 -0
- package/dist/cli/commands/close.js +106 -3
- package/dist/cli/commands/close.js.map +1 -1
- package/dist/cli/commands/completion.js +20 -7
- package/dist/cli/commands/completion.js.map +1 -1
- package/dist/cli/commands/context.d.ts +9 -0
- package/dist/cli/commands/context.js +149 -20
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/commands/create.d.ts +1 -0
- package/dist/cli/commands/create.js +5 -3
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/commands/extension.js +4 -2
- package/dist/cli/commands/extension.js.map +1 -1
- package/dist/cli/commands/health.js +44 -6
- package/dist/cli/commands/health.js.map +1 -1
- package/dist/cli/commands/history.js +6 -5
- package/dist/cli/commands/history.js.map +1 -1
- package/dist/cli/commands/linked-test-parsers.d.ts +1 -0
- package/dist/cli/commands/linked-test-parsers.js +289 -2
- package/dist/cli/commands/linked-test-parsers.js.map +1 -1
- package/dist/cli/commands/reindex.d.ts +1 -0
- package/dist/cli/commands/reindex.js +33 -4
- package/dist/cli/commands/reindex.js.map +1 -1
- package/dist/cli/commands/test.d.ts +6 -0
- package/dist/cli/commands/test.js +46 -5
- package/dist/cli/commands/test.js.map +1 -1
- package/dist/cli/extension-command-help.d.ts +1 -0
- package/dist/cli/extension-command-help.js +42 -2
- package/dist/cli/extension-command-help.js.map +1 -1
- package/dist/cli/extension-command-options.d.ts +2 -0
- package/dist/cli/extension-command-options.js +89 -17
- package/dist/cli/extension-command-options.js.map +1 -1
- package/dist/cli/main.js +26 -26
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/register-list-query.js +3 -2
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-mutation.js +4 -2
- package/dist/cli/register-mutation.js.map +1 -1
- package/dist/cli/register-operations.js +15 -6
- package/dist/cli/register-operations.js.map +1 -1
- package/dist/cli/registration-helpers.js +9 -2
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/chunks/activity-5QLX6DHN.js +16 -0
- package/dist/cli-bundle/chunks/{activity-Q7XMIZIH.js → activity-W6TS5F2L.js} +11 -11
- package/dist/cli-bundle/chunks/{aggregate-GBSHSXOB.js → aggregate-NNJLKGEK.js} +64 -24
- package/dist/cli-bundle/chunks/aggregate-NNJLKGEK.js.map +7 -0
- package/dist/cli-bundle/chunks/{aggregate-HKQJZUBG.js → aggregate-UK2WJ4Z3.js} +65 -25
- package/dist/cli-bundle/chunks/aggregate-UK2WJ4Z3.js.map +1 -0
- package/dist/cli-bundle/chunks/{append-3RFOU7P5.js → append-7BS36Z2L.js} +8 -8
- package/dist/cli-bundle/chunks/{append-OM74OJVT.js → append-DHGTLUZW.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-SDLEYY6A.js → chunk-2MKBPWMK.js} +6 -8
- package/dist/cli-bundle/chunks/{chunk-SDLEYY6A.js.map → chunk-2MKBPWMK.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-Z2HXAFFH.js → chunk-344GDQTH.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-AEMKH5WQ.js → chunk-3VTWCBXL.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-XLSQ3QLT.js → chunk-4CYHWHZU.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-JS47EKLP.js → chunk-4H2NDEGJ.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-QF4OPBAG.js → chunk-5HH6QRH5.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-5NVJA7IW.js → chunk-5OMABP7I.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-YEFOCDIK.js → chunk-6ADVKPVV.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-SM3RMWGO.js → chunk-6KQS23TX.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-ETZZU5QF.js → chunk-6N46IM44.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-EPWT7BEA.js → chunk-6OSG3EMX.js} +157 -12
- package/dist/cli-bundle/chunks/chunk-6OSG3EMX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-5WO2VKFA.js → chunk-73PSHEMT.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-J4DKAGTM.js → chunk-7DUVDW7C.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-2BYKYPWY.js → chunk-7GYMMDDW.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QFVASU44.js → chunk-7TW64BS5.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-VXBUXLVD.js → chunk-A6XVYNQJ.js} +13 -6
- package/dist/cli-bundle/chunks/chunk-A6XVYNQJ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-KP4KIUQT.js → chunk-ANVZCNL5.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-HOA3GMB6.js → chunk-BE5G7HEL.js} +14 -8
- package/dist/cli-bundle/chunks/chunk-BE5G7HEL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-QWNUDGFQ.js → chunk-CMEHZD6G.js} +163 -11
- package/dist/cli-bundle/chunks/chunk-CMEHZD6G.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-7NQIY7Z6.js → chunk-CTW7QAHM.js} +6 -5
- package/dist/cli-bundle/chunks/chunk-CTW7QAHM.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-UEXNNF3K.js → chunk-D6JZBUZ6.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-F33AQIB4.js → chunk-DEYNERFX.js} +19 -7
- package/dist/cli-bundle/chunks/chunk-DEYNERFX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-R4XIE7NQ.js → chunk-DMDEC4QP.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-KN4WSESY.js → chunk-DTRIVUTN.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-KS2U7BZ3.js → chunk-EAQLLID6.js} +16 -6
- package/dist/cli-bundle/chunks/chunk-EAQLLID6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-HP35AVFS.js → chunk-EIS32UA4.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-F2PVV7IX.js +528 -0
- package/dist/cli-bundle/chunks/chunk-F2PVV7IX.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-DV27WDA7.js → chunk-GF5XIBUH.js} +70 -9
- package/dist/cli-bundle/chunks/chunk-GF5XIBUH.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-BFJPMUF5.js → chunk-GP6SHEAI.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-URJEZOLB.js → chunk-GRHPU6EM.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-K62SNVVE.js → chunk-I2FM2SMO.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-F33VC5EX.js → chunk-IEQ3N7WP.js} +12 -5
- package/dist/cli-bundle/chunks/chunk-IEQ3N7WP.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-AXBUHLW7.js → chunk-K45NAJV2.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-NLVCMVC7.js → chunk-K7SXBA75.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-OVSSE2JP.js → chunk-KHBRV5JU.js} +14 -12
- package/dist/cli-bundle/chunks/chunk-KHBRV5JU.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-D7WK2PKB.js → chunk-KMMUDSSB.js} +112 -7
- package/dist/cli-bundle/chunks/chunk-KMMUDSSB.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ALSRBNYB.js → chunk-KRZQGRVL.js} +14 -7
- package/dist/cli-bundle/chunks/chunk-KRZQGRVL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-PQDH3S54.js → chunk-LUJQJR7G.js} +71 -69
- package/dist/cli-bundle/chunks/{chunk-PQDH3S54.js.map → chunk-LUJQJR7G.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-NDSMKB2I.js → chunk-LYL32FT6.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-ODN53S6H.js → chunk-MF6KSSMF.js} +11 -14
- package/dist/cli-bundle/chunks/chunk-MF6KSSMF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-Z55JACL2.js → chunk-O64EYNHF.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-3TXWDGPU.js → chunk-OQGJSCZZ.js} +522 -37
- package/dist/cli-bundle/chunks/chunk-OQGJSCZZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-FO2TYSQZ.js → chunk-OROMGSBP.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-3E3MDBTB.js → chunk-OSGWBWLK.js} +76 -74
- package/dist/cli-bundle/chunks/{chunk-3E3MDBTB.js.map → chunk-OSGWBWLK.js.map} +3 -3
- package/dist/cli-bundle/chunks/{chunk-7WXGR44E.js → chunk-OVNSQHDG.js} +19 -7
- package/dist/cli-bundle/chunks/chunk-OVNSQHDG.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-XZS4MV37.js → chunk-PYULT32I.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-M7UBTVFT.js → chunk-Q6PSD5DZ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-QQPZYP73.js → chunk-QGIWURY3.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-KCGMABHM.js → chunk-QJ2OIEOC.js} +68 -7
- package/dist/cli-bundle/chunks/chunk-QJ2OIEOC.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-XEKZCBCS.js → chunk-SNASEDXB.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-4WYBLB6J.js → chunk-T6QLB34N.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NGEEXR2R.js → chunk-TALBUVWF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-FGRJZVXD.js → chunk-TV6FZGVK.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-MSH23UWO.js → chunk-TXWMLDMG.js} +13 -7
- package/dist/cli-bundle/chunks/chunk-TXWMLDMG.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-TXKENAQP.js → chunk-TZLGCTA5.js} +5 -4
- package/dist/cli-bundle/chunks/chunk-TZLGCTA5.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-4TI3532H.js → chunk-UDWUDUJI.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-N4SQZ7L3.js → chunk-UMWF6ZAS.js} +12 -5
- package/dist/cli-bundle/chunks/chunk-UMWF6ZAS.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-BKQMJXWY.js → chunk-UNH3KSHG.js} +4 -6
- package/dist/cli-bundle/chunks/{chunk-BKQMJXWY.js.map → chunk-UNH3KSHG.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-CBJXWXI5.js → chunk-UY26RIBR.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TBLBEOEX.js → chunk-VSS3CSTF.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-2YPVCD7T.js → chunk-WBU257Z4.js} +13 -11
- package/dist/cli-bundle/chunks/chunk-WBU257Z4.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-YJAKN2N2.js → chunk-WNMRICXH.js} +489 -32
- package/dist/cli-bundle/chunks/chunk-WNMRICXH.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-WSWOQP3Z.js +518 -0
- package/dist/cli-bundle/chunks/chunk-WSWOQP3Z.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-OTY2YEH5.js → chunk-WWEFBBVF.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-UMMJAJB2.js → chunk-X3IPJU2O.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-KBKJVXUS.js → chunk-X5YC5DZM.js} +111 -6
- package/dist/cli-bundle/chunks/chunk-X5YC5DZM.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-KVXIQDJG.js → chunk-XH6RA5A5.js} +15 -15
- package/dist/cli-bundle/chunks/chunk-XH6RA5A5.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-2HMD3JM2.js → chunk-XRE4CTNP.js} +11 -14
- package/dist/cli-bundle/chunks/chunk-XRE4CTNP.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-RISLL7XH.js → chunk-XSCGU4WT.js} +15 -5
- package/dist/cli-bundle/chunks/{chunk-RISLL7XH.js.map → chunk-XSCGU4WT.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-L3LYL3ID.js → chunk-ZH7C7ZVX.js} +14 -14
- package/dist/cli-bundle/chunks/chunk-ZH7C7ZVX.js.map +7 -0
- package/dist/cli-bundle/chunks/{claim-NHBIIBOW.js → claim-3TY5LE54.js} +10 -10
- package/dist/cli-bundle/chunks/{claim-RNEBQCOO.js → claim-LM4YY6QQ.js} +10 -10
- package/dist/cli-bundle/chunks/{close-ZMXL2WDS.js → close-CSD4LEMT.js} +8 -8
- package/dist/cli-bundle/chunks/close-SIQCDOBR.js +13 -0
- package/dist/cli-bundle/chunks/{close-many-CDPQGQUB.js → close-many-B5SHDX6W.js} +17 -18
- package/dist/cli-bundle/chunks/{close-many-CDPQGQUB.js.map → close-many-B5SHDX6W.js.map} +1 -1
- package/dist/cli-bundle/chunks/{close-many-IQV5C2SI.js → close-many-WRXB5KVY.js} +15 -16
- package/dist/cli-bundle/chunks/{close-many-IQV5C2SI.js.map → close-many-WRXB5KVY.js.map} +1 -1
- package/dist/cli-bundle/chunks/{comments-J5Q4IJPH.js → comments-A5ALOYTG.js} +10 -10
- package/dist/cli-bundle/chunks/{comments-EFVBHWPT.js → comments-BDDEK3VW.js} +10 -10
- package/dist/cli-bundle/chunks/{config-72253M2O.js → config-W2NHDNQT.js} +8 -8
- package/dist/cli-bundle/chunks/{config-VFYA6BMI.js → config-YUYBMJOW.js} +8 -8
- package/dist/cli-bundle/chunks/{context-AVLO4IFH.js → context-LRJ74NSU.js} +147 -36
- package/dist/cli-bundle/chunks/context-LRJ74NSU.js.map +7 -0
- package/dist/cli-bundle/chunks/{context-WMSI2D65.js → context-R2QLOJCK.js} +148 -37
- package/dist/cli-bundle/chunks/context-R2QLOJCK.js.map +1 -0
- package/dist/cli-bundle/chunks/{contracts-D4BN3VSQ.js → contracts-47X7RYUF.js} +4 -4
- package/dist/cli-bundle/chunks/{contracts-RGPOBLPL.js → contracts-HJHR4NCD.js} +4 -4
- package/dist/cli-bundle/chunks/{copy-H6TXHK7S.js → copy-B7HFOWFB.js} +7 -7
- package/dist/cli-bundle/chunks/{copy-WXE3OOLZ.js → copy-P4UVYZ7M.js} +7 -7
- package/dist/cli-bundle/chunks/{create-PUAIJEZ7.js → create-5ERJF64D.js} +13 -13
- package/dist/cli-bundle/chunks/create-TXNRPS4K.js +27 -0
- package/dist/cli-bundle/chunks/{delete-WBME6WG5.js → delete-LX3LGBCH.js} +7 -7
- package/dist/cli-bundle/chunks/{delete-PKR2JHLH.js → delete-S3WVK6LP.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-4BQEDV4L.js → deps-GWSNH7OZ.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-KWHQRO75.js → deps-YSM4LZQD.js} +7 -7
- package/dist/cli-bundle/chunks/{docs-SCNBUGSV.js → docs-7RYFBHQD.js} +9 -9
- package/dist/cli-bundle/chunks/{docs-364GT3ZR.js → docs-TG6JMVMY.js} +9 -9
- package/dist/cli-bundle/chunks/{extension-KK2UPXJD.js → extension-R3LUKMX7.js} +5 -5
- package/dist/cli-bundle/chunks/{extension-CRE7JM47.js → extension-VNMRKIHI.js} +5 -5
- package/dist/cli-bundle/chunks/{files-66EHM5ZR.js → files-KAKU57OT.js} +9 -9
- package/dist/cli-bundle/chunks/{files-3GESQAWL.js → files-QB3EYPMO.js} +9 -9
- package/dist/cli-bundle/chunks/{gc-MOQDND5J.js → gc-B747VM4M.js} +3 -3
- package/dist/cli-bundle/chunks/{gc-D5IWOKQH.js → gc-KNUPLPSW.js} +3 -3
- package/dist/cli-bundle/chunks/{get-7J2ZCBV5.js → get-GMGLIQ5I.js} +11 -11
- package/dist/cli-bundle/chunks/{get-WXSLXV3K.js → get-SBL6NHYQ.js} +11 -11
- package/dist/cli-bundle/chunks/{health-B6AEM7BV.js → health-IG43Z4KL.js} +47 -19
- package/dist/cli-bundle/chunks/health-IG43Z4KL.js.map +1 -0
- package/dist/cli-bundle/chunks/{health-YMZGOMVX.js → health-WWZJ5KJS.js} +46 -18
- package/dist/cli-bundle/chunks/health-WWZJ5KJS.js.map +7 -0
- package/dist/cli-bundle/chunks/history-6UKSZTRT.js +20 -0
- package/dist/cli-bundle/chunks/{history-TJTO5GCR.js → history-XCWRXBXC.js} +10 -10
- package/dist/cli-bundle/chunks/{history-compact-CKNN6UKW.js → history-compact-IDH7E7VN.js} +11 -11
- package/dist/cli-bundle/chunks/{history-compact-N2Q7IR3T.js → history-compact-KICKUCR7.js} +11 -11
- package/dist/cli-bundle/chunks/history-redact-HKYBTK6X.js +19 -0
- package/dist/cli-bundle/chunks/{history-redact-JUXUOH54.js → history-redact-JJWH3QWK.js} +11 -11
- package/dist/cli-bundle/chunks/{history-repair-TDBBSRVK.js → history-repair-7HWBZKXN.js} +11 -11
- package/dist/cli-bundle/chunks/{history-repair-CCCPBNTF.js → history-repair-N5HXKJOI.js} +11 -11
- package/dist/cli-bundle/chunks/init-27JLDUO2.js +17 -0
- package/dist/cli-bundle/chunks/{init-6ZPKD3YN.js → init-OQA3TWIS.js} +9 -9
- package/dist/cli-bundle/chunks/{learnings-WYNTYQ5T.js → learnings-L7VQUSVI.js} +10 -10
- package/dist/cli-bundle/chunks/{learnings-U7U2FNIO.js → learnings-Z4GAIZQ5.js} +10 -10
- package/dist/cli-bundle/chunks/list-6U3CJVXS.js +19 -0
- package/dist/cli-bundle/chunks/{list-JGP7ODML.js → list-W5ROBC5U.js} +10 -11
- package/dist/cli-bundle/chunks/{notes-P25YVTEG.js → notes-JJDOEDFK.js} +10 -10
- package/dist/cli-bundle/chunks/{notes-QIF6A7XS.js → notes-SDCK7BEN.js} +10 -10
- package/dist/cli-bundle/chunks/{plan-RACB5PI6.js → plan-H5HYHMBB.js} +13 -13
- package/dist/cli-bundle/chunks/{plan-SSBJFWXA.js → plan-W2B5RYR3.js} +13 -13
- package/dist/cli-bundle/chunks/{register-list-query-GQAEIG4K.js → register-list-query-QGRFMDWA.js} +20 -20
- package/dist/cli-bundle/chunks/register-list-query-QGRFMDWA.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-list-query-5IXDPUZ6.js → register-list-query-V4S23735.js} +21 -21
- package/dist/cli-bundle/chunks/register-list-query-V4S23735.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-FAS4YG63.js → register-mutation-I57PLUHA.js} +36 -35
- package/dist/cli-bundle/chunks/register-mutation-I57PLUHA.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-YZCUILGO.js → register-mutation-ZPZNJXSA.js} +35 -34
- package/dist/cli-bundle/chunks/register-mutation-ZPZNJXSA.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-S2BOLUPF.js → register-operations-KAMLXAF5.js} +42 -37
- package/dist/cli-bundle/chunks/register-operations-KAMLXAF5.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-operations-IBYWNJN5.js → register-operations-YEN4YEZ2.js} +41 -36
- package/dist/cli-bundle/chunks/register-operations-YEN4YEZ2.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-setup-JRZ4UMWZ.js → register-setup-BZ3TNE3G.js} +15 -15
- package/dist/cli-bundle/chunks/{register-setup-ABA2JPWO.js → register-setup-WLFL3OUF.js} +15 -15
- package/dist/cli-bundle/chunks/restore-GNI2W5CN.js +17 -0
- package/dist/cli-bundle/chunks/{restore-K72ZNPEP.js → restore-RGFSPG4K.js} +11 -11
- package/dist/cli-bundle/chunks/{schema-UL4B2JX5.js → schema-CCDU3RLC.js} +8 -8
- package/dist/cli-bundle/chunks/{schema-3VKRDBLC.js → schema-KZASL323.js} +8 -8
- package/dist/cli-bundle/chunks/{search-632WJ7GO.js → search-7KSOLI2E.js} +10 -11
- package/dist/cli-bundle/chunks/{search-632WJ7GO.js.map → search-7KSOLI2E.js.map} +1 -1
- package/dist/cli-bundle/chunks/{search-EQDHSE4G.js → search-DTL7CO22.js} +12 -13
- package/dist/cli-bundle/chunks/{search-EQDHSE4G.js.map → search-DTL7CO22.js.map} +1 -1
- package/dist/cli-bundle/chunks/{stats-WLJ3XBF5.js → stats-IOXQMGI6.js} +7 -7
- package/dist/cli-bundle/chunks/{stats-O4UTMJMC.js → stats-QNV7B2CE.js} +7 -7
- package/dist/cli-bundle/chunks/{telemetry-EUVHFSQU.js → telemetry-IV5C6JOM.js} +4 -4
- package/dist/cli-bundle/chunks/{telemetry-NRVWX25E.js → telemetry-NHR5RFXT.js} +4 -4
- package/dist/cli-bundle/chunks/test-4Z37CXW4.js +32 -0
- package/dist/cli-bundle/chunks/{test-GXUBQNUC.js → test-PIL2CEEB.js} +14 -14
- package/dist/cli-bundle/chunks/{test-all-UTFXC7S2.js → test-all-GRLYHBNP.js} +14 -14
- package/dist/cli-bundle/chunks/{test-all-XM6OKI3L.js → test-all-MFN4MYCV.js} +14 -14
- package/dist/cli-bundle/chunks/{test-runs-IK6E2HNX.js → test-runs-7LRFWWCA.js} +5 -5
- package/dist/cli-bundle/chunks/{test-runs-7FHCPEA3.js → test-runs-7WCSC3TY.js} +5 -5
- package/dist/cli-bundle/chunks/update-I4G34LKJ.js +21 -0
- package/dist/cli-bundle/chunks/{update-U4B4OMHZ.js → update-VI5DBZ3G.js} +15 -15
- package/dist/cli-bundle/chunks/{update-many-5KD33MKY.js → update-many-LOTAYUTN.js} +22 -23
- package/dist/cli-bundle/chunks/{update-many-5KD33MKY.js.map → update-many-LOTAYUTN.js.map} +1 -1
- package/dist/cli-bundle/chunks/{update-many-N3YTM7K4.js → update-many-UYMTVF42.js} +24 -25
- package/dist/cli-bundle/chunks/{update-many-N3YTM7K4.js.map → update-many-UYMTVF42.js.map} +1 -1
- package/dist/cli-bundle/chunks/{upgrade-FFXGO43H.js → upgrade-LT2MLLPS.js} +5 -5
- package/dist/cli-bundle/chunks/{upgrade-5SRFLUNW.js → upgrade-ZZSC7CLV.js} +5 -5
- package/dist/cli-bundle/chunks/{validate-T3LPWSZG.js → validate-3XRORNMP.js} +16 -16
- package/dist/cli-bundle/chunks/{validate-CRWXZILW.js → validate-IQIQSKUX.js} +16 -16
- package/dist/cli-bundle/main.js +157 -62
- package/dist/cli-bundle/main.js.map +2 -2
- package/dist/core/diagnostics/remediation.js +12 -2
- package/dist/core/diagnostics/remediation.js.map +1 -1
- package/dist/core/extensions/extension-policy.d.ts +14 -1
- package/dist/core/extensions/extension-policy.js +38 -3
- package/dist/core/extensions/extension-policy.js.map +1 -1
- package/dist/core/extensions/extension-types.d.ts +99 -2
- package/dist/core/extensions/extension-types.js +28 -2
- package/dist/core/extensions/extension-types.js.map +1 -1
- package/dist/core/extensions/flag-value-types.d.ts +29 -0
- package/dist/core/extensions/flag-value-types.js +78 -0
- package/dist/core/extensions/flag-value-types.js.map +1 -0
- package/dist/core/extensions/item-field-types.d.ts +22 -0
- package/dist/core/extensions/item-field-types.js +43 -0
- package/dist/core/extensions/item-field-types.js.map +1 -0
- package/dist/core/extensions/item-fields.js +4 -11
- package/dist/core/extensions/item-fields.js.map +1 -1
- package/dist/core/extensions/loader.d.ts +16 -1
- package/dist/core/extensions/loader.js +202 -18
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/history/replay.d.ts +1 -1
- package/dist/core/history/replay.js +13 -4
- package/dist/core/history/replay.js.map +1 -1
- package/dist/core/output/mutation-projection.d.ts +2 -0
- package/dist/core/output/mutation-projection.js +9 -2
- package/dist/core/output/mutation-projection.js.map +1 -1
- package/dist/core/output/output.d.ts +2 -0
- package/dist/core/output/output.js +7 -3
- package/dist/core/output/output.js.map +1 -1
- package/dist/core/packages/manifest.d.ts +1 -1
- package/dist/core/packages/manifest.js +12 -2
- package/dist/core/packages/manifest.js.map +1 -1
- package/dist/core/shared/command-types.d.ts +1 -0
- package/dist/core/shared/command-types.js +2 -2
- package/dist/core/shared/command-types.js.map +1 -1
- package/dist/core/shared/constants.js +7 -4
- package/dist/core/shared/constants.js.map +1 -1
- package/dist/core/store/item-store.d.ts +1 -1
- package/dist/core/store/item-store.js +3 -3
- package/dist/core/store/item-store.js.map +1 -1
- package/dist/core/store/settings-read-cache.d.ts +15 -0
- package/dist/core/store/settings-read-cache.js +72 -0
- package/dist/core/store/settings-read-cache.js.map +1 -0
- package/dist/core/store/settings-validator.d.ts +4 -1
- package/dist/core/store/settings-validator.js +14 -2
- package/dist/core/store/settings-validator.js.map +1 -1
- package/dist/core/store/settings.js +166 -16
- package/dist/core/store/settings.js.map +1 -1
- package/dist/core/telemetry/runtime.d.ts +1 -0
- package/dist/core/telemetry/runtime.js +3 -3
- package/dist/core/telemetry/runtime.js.map +1 -1
- package/dist/core/test/run-selectors.d.ts +27 -0
- package/dist/core/test/run-selectors.js +110 -0
- package/dist/core/test/run-selectors.js.map +1 -0
- package/dist/mcp/server.js +105 -40
- package/dist/mcp/server.js.map +1 -1
- package/dist/sdk/cli-contracts/commander-mutation-options.js +3 -2
- package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-option-contracts.js +3 -2
- package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +29 -2
- package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
- package/dist/sdk/cli-contracts.js +37 -5
- package/dist/sdk/cli-contracts.js.map +1 -1
- package/dist/sdk/index.d.ts +7 -2
- package/dist/sdk/index.js +3 -3
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/runtime.d.ts +6 -0
- package/dist/sdk/runtime.js +51 -3
- package/dist/sdk/runtime.js.map +1 -1
- package/dist/sdk/testing.d.ts +55 -1
- package/dist/sdk/testing.js +92 -2
- package/dist/sdk/testing.js.map +1 -1
- package/dist/types.d.ts +4 -1
- package/dist/types.js +4 -2
- package/dist/types.js.map +1 -1
- package/docs/AGENT_GUIDE.md +7 -1
- package/docs/ARCHITECTURE.md +7 -0
- package/docs/COMMANDS.md +37 -3
- package/docs/CONFIGURATION.md +1 -1
- package/docs/EXTENSIONS.md +59 -53
- package/docs/SDK.md +104 -0
- package/docs/TESTING.md +60 -0
- package/docs/schemas/extension-manifest.schema.json +120 -0
- package/package.json +2 -2
- package/packages/pm-beads/extensions/beads/manifest.json +10 -0
- package/packages/pm-calendar/extensions/calendar/manifest.json +10 -0
- package/packages/pm-command-kit/README.md +72 -0
- package/packages/pm-command-kit/extensions/command-kit/index.js +181 -0
- package/packages/pm-command-kit/extensions/command-kit/index.ts +176 -0
- package/packages/pm-command-kit/extensions/command-kit/manifest.json +22 -0
- package/packages/pm-command-kit/package.json +53 -0
- package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +10 -0
- package/packages/pm-guide-shell/extensions/guide-shell/manifest.json +10 -0
- package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/manifest.json +10 -0
- package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/manifest.json +10 -0
- package/packages/pm-search-advanced/extensions/search-advanced/index.js +6 -0
- package/packages/pm-search-advanced/extensions/search-advanced/index.ts +6 -0
- package/packages/pm-search-advanced/extensions/search-advanced/manifest.json +10 -0
- package/packages/pm-search-advanced/extensions/search-advanced/runtime.js +1 -0
- package/packages/pm-search-advanced/extensions/search-advanced/runtime.ts +1 -0
- package/packages/pm-templates/extensions/templates/manifest.json +10 -0
- package/packages/pm-todos/extensions/todos/manifest.json +10 -0
- package/dist/cli-bundle/chunks/activity-A3QKFSSF.js +0 -16
- package/dist/cli-bundle/chunks/aggregate-GBSHSXOB.js.map +0 -7
- package/dist/cli-bundle/chunks/aggregate-HKQJZUBG.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-2HMD3JM2.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-2YPVCD7T.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-3TXWDGPU.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-7NQIY7Z6.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-7WXGR44E.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ALSRBNYB.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-D7WK2PKB.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-DV27WDA7.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-EAOG77HM.js +0 -56
- package/dist/cli-bundle/chunks/chunk-EAOG77HM.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-EPWT7BEA.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-F33AQIB4.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-F33VC5EX.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-HOA3GMB6.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-KBKJVXUS.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-KCGMABHM.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-KS2U7BZ3.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-KVXIQDJG.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-L3LYL3ID.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-MSH23UWO.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-N4SQZ7L3.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-NUKHZZNM.js +0 -252
- package/dist/cli-bundle/chunks/chunk-NUKHZZNM.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ODN53S6H.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-OVSSE2JP.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-QWNUDGFQ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-TXKENAQP.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-VXBUXLVD.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-XNGMIVQY.js +0 -242
- package/dist/cli-bundle/chunks/chunk-XNGMIVQY.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-XSLQSXAH.js +0 -53
- package/dist/cli-bundle/chunks/chunk-XSLQSXAH.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-YJAKN2N2.js.map +0 -1
- package/dist/cli-bundle/chunks/close-UNTFXVM3.js +0 -13
- package/dist/cli-bundle/chunks/context-AVLO4IFH.js.map +0 -7
- package/dist/cli-bundle/chunks/context-WMSI2D65.js.map +0 -1
- package/dist/cli-bundle/chunks/create-EZWAMUKR.js +0 -27
- package/dist/cli-bundle/chunks/health-B6AEM7BV.js.map +0 -1
- package/dist/cli-bundle/chunks/health-YMZGOMVX.js.map +0 -7
- package/dist/cli-bundle/chunks/history-ZERISU2L.js +0 -20
- package/dist/cli-bundle/chunks/history-redact-GODBYT5A.js +0 -19
- package/dist/cli-bundle/chunks/init-CBZHXBR3.js +0 -17
- package/dist/cli-bundle/chunks/list-7MTPPZHC.js +0 -20
- package/dist/cli-bundle/chunks/register-list-query-5IXDPUZ6.js.map +0 -1
- package/dist/cli-bundle/chunks/register-list-query-GQAEIG4K.js.map +0 -7
- package/dist/cli-bundle/chunks/register-mutation-FAS4YG63.js.map +0 -1
- package/dist/cli-bundle/chunks/register-mutation-YZCUILGO.js.map +0 -7
- package/dist/cli-bundle/chunks/register-operations-IBYWNJN5.js.map +0 -7
- package/dist/cli-bundle/chunks/register-operations-S2BOLUPF.js.map +0 -1
- package/dist/cli-bundle/chunks/restore-3JRX27QW.js +0 -17
- package/dist/cli-bundle/chunks/test-XN7RJL5Z.js +0 -32
- package/dist/cli-bundle/chunks/update-LFBSEW3N.js +0 -21
- /package/dist/cli-bundle/chunks/{activity-A3QKFSSF.js.map → activity-5QLX6DHN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-Q7XMIZIH.js.map → activity-W6TS5F2L.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-3RFOU7P5.js.map → append-7BS36Z2L.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-OM74OJVT.js.map → append-DHGTLUZW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Z2HXAFFH.js.map → chunk-344GDQTH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AEMKH5WQ.js.map → chunk-3VTWCBXL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XLSQ3QLT.js.map → chunk-4CYHWHZU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JS47EKLP.js.map → chunk-4H2NDEGJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QF4OPBAG.js.map → chunk-5HH6QRH5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5NVJA7IW.js.map → chunk-5OMABP7I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YEFOCDIK.js.map → chunk-6ADVKPVV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SM3RMWGO.js.map → chunk-6KQS23TX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ETZZU5QF.js.map → chunk-6N46IM44.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5WO2VKFA.js.map → chunk-73PSHEMT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-J4DKAGTM.js.map → chunk-7DUVDW7C.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2BYKYPWY.js.map → chunk-7GYMMDDW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QFVASU44.js.map → chunk-7TW64BS5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KP4KIUQT.js.map → chunk-ANVZCNL5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UEXNNF3K.js.map → chunk-D6JZBUZ6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-R4XIE7NQ.js.map → chunk-DMDEC4QP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KN4WSESY.js.map → chunk-DTRIVUTN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HP35AVFS.js.map → chunk-EIS32UA4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BFJPMUF5.js.map → chunk-GP6SHEAI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-URJEZOLB.js.map → chunk-GRHPU6EM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-K62SNVVE.js.map → chunk-I2FM2SMO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AXBUHLW7.js.map → chunk-K45NAJV2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NLVCMVC7.js.map → chunk-K7SXBA75.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NDSMKB2I.js.map → chunk-LYL32FT6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Z55JACL2.js.map → chunk-O64EYNHF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FO2TYSQZ.js.map → chunk-OROMGSBP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XZS4MV37.js.map → chunk-PYULT32I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-M7UBTVFT.js.map → chunk-Q6PSD5DZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QQPZYP73.js.map → chunk-QGIWURY3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XEKZCBCS.js.map → chunk-SNASEDXB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4WYBLB6J.js.map → chunk-T6QLB34N.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NGEEXR2R.js.map → chunk-TALBUVWF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FGRJZVXD.js.map → chunk-TV6FZGVK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4TI3532H.js.map → chunk-UDWUDUJI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-CBJXWXI5.js.map → chunk-UY26RIBR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TBLBEOEX.js.map → chunk-VSS3CSTF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OTY2YEH5.js.map → chunk-WWEFBBVF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UMMJAJB2.js.map → chunk-X3IPJU2O.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-NHBIIBOW.js.map → claim-3TY5LE54.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-RNEBQCOO.js.map → claim-LM4YY6QQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-ZMXL2WDS.js.map → close-CSD4LEMT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-UNTFXVM3.js.map → close-SIQCDOBR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-J5Q4IJPH.js.map → comments-A5ALOYTG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-EFVBHWPT.js.map → comments-BDDEK3VW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{config-72253M2O.js.map → config-W2NHDNQT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{config-VFYA6BMI.js.map → config-YUYBMJOW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{contracts-D4BN3VSQ.js.map → contracts-47X7RYUF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{contracts-RGPOBLPL.js.map → contracts-HJHR4NCD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-H6TXHK7S.js.map → copy-B7HFOWFB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-WXE3OOLZ.js.map → copy-P4UVYZ7M.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-PUAIJEZ7.js.map → create-5ERJF64D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-EZWAMUKR.js.map → create-TXNRPS4K.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-WBME6WG5.js.map → delete-LX3LGBCH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-PKR2JHLH.js.map → delete-S3WVK6LP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-4BQEDV4L.js.map → deps-GWSNH7OZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-KWHQRO75.js.map → deps-YSM4LZQD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-SCNBUGSV.js.map → docs-7RYFBHQD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-364GT3ZR.js.map → docs-TG6JMVMY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-KK2UPXJD.js.map → extension-R3LUKMX7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-CRE7JM47.js.map → extension-VNMRKIHI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-66EHM5ZR.js.map → files-KAKU57OT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-3GESQAWL.js.map → files-QB3EYPMO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-MOQDND5J.js.map → gc-B747VM4M.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-D5IWOKQH.js.map → gc-KNUPLPSW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{get-7J2ZCBV5.js.map → get-GMGLIQ5I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{get-WXSLXV3K.js.map → get-SBL6NHYQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-ZERISU2L.js.map → history-6UKSZTRT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-TJTO5GCR.js.map → history-XCWRXBXC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-CKNN6UKW.js.map → history-compact-IDH7E7VN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-N2Q7IR3T.js.map → history-compact-KICKUCR7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-GODBYT5A.js.map → history-redact-HKYBTK6X.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-JUXUOH54.js.map → history-redact-JJWH3QWK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-TDBBSRVK.js.map → history-repair-7HWBZKXN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-CCCPBNTF.js.map → history-repair-N5HXKJOI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-CBZHXBR3.js.map → init-27JLDUO2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-6ZPKD3YN.js.map → init-OQA3TWIS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-WYNTYQ5T.js.map → learnings-L7VQUSVI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-U7U2FNIO.js.map → learnings-Z4GAIZQ5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-7MTPPZHC.js.map → list-6U3CJVXS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-JGP7ODML.js.map → list-W5ROBC5U.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-P25YVTEG.js.map → notes-JJDOEDFK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-QIF6A7XS.js.map → notes-SDCK7BEN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-RACB5PI6.js.map → plan-H5HYHMBB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-SSBJFWXA.js.map → plan-W2B5RYR3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-setup-JRZ4UMWZ.js.map → register-setup-BZ3TNE3G.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-setup-ABA2JPWO.js.map → register-setup-WLFL3OUF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-3JRX27QW.js.map → restore-GNI2W5CN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-K72ZNPEP.js.map → restore-RGFSPG4K.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-UL4B2JX5.js.map → schema-CCDU3RLC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-3VKRDBLC.js.map → schema-KZASL323.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-WLJ3XBF5.js.map → stats-IOXQMGI6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-O4UTMJMC.js.map → stats-QNV7B2CE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-EUVHFSQU.js.map → telemetry-IV5C6JOM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-NRVWX25E.js.map → telemetry-NHR5RFXT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-XN7RJL5Z.js.map → test-4Z37CXW4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-GXUBQNUC.js.map → test-PIL2CEEB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-all-UTFXC7S2.js.map → test-all-GRLYHBNP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-all-XM6OKI3L.js.map → test-all-MFN4MYCV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-IK6E2HNX.js.map → test-runs-7LRFWWCA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-7FHCPEA3.js.map → test-runs-7WCSC3TY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-LFBSEW3N.js.map → update-I4G34LKJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-U4B4OMHZ.js.map → update-VI5DBZ3G.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{upgrade-FFXGO43H.js.map → upgrade-LT2MLLPS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{upgrade-5SRFLUNW.js.map → upgrade-ZZSC7CLV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{validate-T3LPWSZG.js.map → validate-3XRORNMP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{validate-CRWXZILW.js.map → validate-IQIQSKUX.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../cli/registration-helpers.ts"],"sourcesContent":["import type { Command } from \"commander\";\nimport { pathExists } from \"../core/fs/fs-utils.js\";\nimport { normalizeStatusInput } from \"../core/item/status.js\";\nimport { refreshSearchArtifactsForMutation } from \"../core/search/cache.js\";\nimport { shouldRunSearchRefreshInForeground } from \"../core/search/background-refresh.js\";\nimport { EXIT_CODE } from \"../core/shared/constants.js\";\nimport { PmCliError } from \"../core/shared/errors.js\";\nimport { printError, printResult, writeStdout } from \"../core/output/output.js\";\nimport { getSettingsPath, resolvePmRoot } from \"../core/store/paths.js\";\nimport { readSettings } from \"../core/store/settings.js\";\nimport {\n setActiveCommandResult,\n} from \"../core/extensions/index.js\";\nimport type { GlobalOptions } from \"../core/shared/command-types.js\";\nimport type { ItemStatus } from \"../types/index.js\";\nimport {\n ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS,\n CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS,\n CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n CREATE_COMMANDER_STRING_OPTION_CONTRACTS,\n LIST_COMMANDER_STRING_OPTION_CONTRACTS,\n SEARCH_COMMANDER_STRING_OPTION_CONTRACTS,\n UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS,\n UPDATE_COMMANDER_STRING_OPTION_CONTRACTS,\n readFirstValueFromCommanderOptions,\n readFirstStringFromCommanderOptions,\n readStringArrayFromCommanderOptions,\n} from \"../sdk/cli-contracts.js\";\nimport type {\n ContextOptions,\n CreateCommandOptions,\n AggregateOptions,\n ListOptions,\n} from \"./commands/index.js\";\nimport type { runList, runActivity } from \"./commands/index.js\";\n\nexport {\n printError,\n printResult,\n writeStdout,\n};\n\nconst RESOLVED_GLOBAL_OPTIONS = Symbol(\"pm.resolvedGlobalOptions\");\n\ntype CommandWithResolvedGlobals = Command & {\n [RESOLVED_GLOBAL_OPTIONS]?: GlobalOptions;\n};\n\ninterface CommandOptionsReader {\n optsWithGlobals?: () => Record<string, unknown>;\n opts?: () => Record<string, unknown>;\n}\n\nfunction commandOptionsReader(command: unknown): CommandOptionsReader {\n return typeof command === \"object\" && command !== null ? command as CommandOptionsReader : {};\n}\n\nexport function setResolvedGlobalOptions(command: Command, globalOptions: GlobalOptions): void {\n (command as CommandWithResolvedGlobals)[RESOLVED_GLOBAL_OPTIONS] = { ...globalOptions };\n}\n\nexport function clearResolvedGlobalOptions(command: Command): void {\n delete (command as CommandWithResolvedGlobals)[RESOLVED_GLOBAL_OPTIONS];\n}\n\nexport function getGlobalOptions(command: Command): GlobalOptions {\n const resolved = (command as CommandWithResolvedGlobals)[RESOLVED_GLOBAL_OPTIONS];\n if (resolved) {\n return { ...resolved };\n }\n const reader = commandOptionsReader(command);\n const opts = typeof reader.optsWithGlobals === \"function\"\n ? reader.optsWithGlobals()\n : typeof reader.opts === \"function\"\n ? reader.opts()\n : {};\n return {\n json: opts.json === true ? true : undefined,\n quiet: Boolean(opts.quiet),\n noChangedFields: opts.changedFields === false,\n path: typeof opts.pmPath === \"string\"\n ? opts.pmPath\n : typeof opts.path === \"string\"\n ? opts.path\n : undefined,\n noExtensions: opts.extensions === false,\n noPager: Boolean(opts.noPager),\n profile: Boolean(opts.profile),\n };\n}\n\nexport function getCommandPath(command: Command): string {\n const parts: string[] = [];\n let current: Command | null = command;\n while (current?.parent) {\n parts.unshift(current.name());\n current = current.parent;\n }\n return parts.join(\" \");\n}\n\nexport async function applyDefaultOutputFormat(globalOptions: GlobalOptions): Promise<GlobalOptions> {\n if (globalOptions.json === true) {\n return globalOptions;\n }\n const pmRoot = resolvePmRoot(process.cwd(), globalOptions.path);\n if (!(await pathExists(getSettingsPath(pmRoot)))) {\n return globalOptions;\n }\n const settings = await readSettings(pmRoot);\n return {\n ...globalOptions,\n defaultOutputFormat: settings.output.default_format,\n };\n}\n\nexport function collect(value: string, previous: string[] | undefined): string[] {\n const next = previous ?? [];\n next.push(value);\n return next;\n}\n\nfunction pushOptionalValueFlag(args: string[], flag: string, value: unknown): void {\n if (typeof value !== \"string\") {\n return;\n }\n const trimmed = value.trim();\n if (trimmed.length === 0) {\n return;\n }\n args.push(flag, trimmed);\n}\n\nfunction pushOptionalBooleanFlag(args: string[], flag: string, value: unknown): void {\n if (value === true) {\n args.push(flag);\n }\n}\n\nfunction pushRepeatableValueFlag(args: string[], flag: string, values: unknown): void {\n if (!Array.isArray(values)) {\n return;\n }\n for (const value of values) {\n if (typeof value !== \"string\") {\n continue;\n }\n const trimmed = value.trim();\n if (trimmed.length === 0) {\n continue;\n }\n args.push(flag, trimmed);\n }\n}\n\nexport function buildBackgroundTestCommandArgs(id: string, options: Record<string, unknown>): string[] {\n const args: string[] = [\"test\", id, \"--run\", \"--json\", \"--progress\"];\n pushRepeatableValueFlag(args, \"--add\", options.add);\n pushRepeatableValueFlag(args, \"--remove\", options.remove);\n pushOptionalValueFlag(args, \"--timeout\", options.timeout);\n pushRepeatableValueFlag(args, \"--env-set\", options.envSet);\n pushRepeatableValueFlag(args, \"--env-clear\", options.envClear);\n pushOptionalBooleanFlag(args, \"--shared-host-safe\", options.sharedHostSafe);\n pushOptionalValueFlag(args, \"--pm-context\", options.pmContext);\n pushOptionalBooleanFlag(args, \"--override-linked-pm-context\", options.overrideLinkedPmContext);\n pushOptionalBooleanFlag(args, \"--fail-on-context-mismatch\", options.failOnContextMismatch);\n pushOptionalBooleanFlag(args, \"--fail-on-skipped\", options.failOnSkipped);\n pushOptionalBooleanFlag(args, \"--fail-on-empty-test-run\", options.failOnEmptyTestRun);\n pushOptionalBooleanFlag(args, \"--require-assertions-for-pm\", options.requireAssertionsForPm);\n pushOptionalBooleanFlag(args, \"--check-context\", options.checkContext);\n pushOptionalBooleanFlag(args, \"--auto-pm-context\", options.autoPmContext);\n pushOptionalValueFlag(args, \"--author\", options.author);\n pushOptionalValueFlag(args, \"--message\", options.message);\n pushOptionalBooleanFlag(args, \"--force\", options.force);\n return args;\n}\n\nexport function buildBackgroundTestAllCommandArgs(options: Record<string, unknown>): string[] {\n const args: string[] = [\"test-all\", \"--json\", \"--progress\"];\n pushOptionalValueFlag(args, \"--status\", options.status);\n pushOptionalValueFlag(args, \"--limit\", options.limit);\n pushOptionalValueFlag(args, \"--offset\", options.offset);\n pushOptionalValueFlag(args, \"--timeout\", options.timeout);\n pushRepeatableValueFlag(args, \"--env-set\", options.envSet);\n pushRepeatableValueFlag(args, \"--env-clear\", options.envClear);\n pushOptionalBooleanFlag(args, \"--shared-host-safe\", options.sharedHostSafe);\n pushOptionalValueFlag(args, \"--pm-context\", options.pmContext);\n pushOptionalBooleanFlag(args, \"--override-linked-pm-context\", options.overrideLinkedPmContext);\n pushOptionalBooleanFlag(args, \"--fail-on-context-mismatch\", options.failOnContextMismatch);\n pushOptionalBooleanFlag(args, \"--fail-on-skipped\", options.failOnSkipped);\n pushOptionalBooleanFlag(args, \"--fail-on-empty-test-run\", options.failOnEmptyTestRun);\n pushOptionalBooleanFlag(args, \"--require-assertions-for-pm\", options.requireAssertionsForPm);\n pushOptionalBooleanFlag(args, \"--check-context\", options.checkContext);\n pushOptionalBooleanFlag(args, \"--auto-pm-context\", options.autoPmContext);\n return args;\n}\n\nexport function formatHookWarnings(warnings: string[]): string {\n return warnings.join(\",\");\n}\n\nexport function normalizeCreateOptions(\n commandOptions: Record<string, unknown>,\n options: { requireType?: boolean } = {},\n): CreateCommandOptions {\n const readCreateString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n commandOptions,\n CREATE_COMMANDER_STRING_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n const readCreateList = (target: string): string[] | undefined =>\n readStringArrayFromCommanderOptions(\n commandOptions,\n CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n\n const type = readCreateString(\"type\");\n if (options.requireType !== false && type === undefined) {\n throw new PmCliError(\n \"Missing required option --type <value>. Why required: create resolves runtime schema fields/workflow from item type. Retry: add --type <built-in or configured custom type> (example: --type Task).\",\n EXIT_CODE.USAGE,\n );\n }\n\n const normalized: Record<string, unknown> = {\n title: readCreateString(\"title\"),\n description: readCreateString(\"description\"),\n type,\n template: readCreateString(\"template\"),\n createMode: readCreateString(\"createMode\"),\n schedulePreset: readCreateString(\"schedulePreset\"),\n status: readCreateString(\"status\"),\n priority: readCreateString(\"priority\"),\n tags: readCreateString(\"tags\"),\n addTags: readCreateList(\"addTags\"),\n body: readCreateString(\"body\"),\n deadline: readCreateString(\"deadline\"),\n estimatedMinutes: readCreateString(\"estimatedMinutes\"),\n acceptanceCriteria: readCreateString(\"acceptanceCriteria\"),\n definitionOfReady: readCreateString(\"definitionOfReady\"),\n order: readCreateString(\"order\"),\n rank: readCreateString(\"rank\"),\n goal: readCreateString(\"goal\"),\n objective: readCreateString(\"objective\"),\n value: readCreateString(\"value\"),\n impact: readCreateString(\"impact\"),\n outcome: readCreateString(\"outcome\"),\n whyNow: readCreateString(\"whyNow\"),\n author: readCreateString(\"author\"),\n message: readCreateString(\"message\"),\n assignee: readCreateString(\"assignee\"),\n parent: readCreateString(\"parent\"),\n reviewer: readCreateString(\"reviewer\"),\n risk: readCreateString(\"risk\"),\n confidence: readCreateString(\"confidence\"),\n sprint: readCreateString(\"sprint\"),\n release: readCreateString(\"release\"),\n blockedBy: readCreateString(\"blockedBy\"),\n blockedReason: readCreateString(\"blockedReason\"),\n unblockNote: readCreateString(\"unblockNote\"),\n reporter: readCreateString(\"reporter\"),\n severity: readCreateString(\"severity\"),\n environment: readCreateString(\"environment\"),\n reproSteps: readCreateString(\"reproSteps\"),\n resolution: readCreateString(\"resolution\"),\n expectedResult: readCreateString(\"expectedResult\"),\n actualResult: readCreateString(\"actualResult\"),\n affectedVersion: readCreateString(\"affectedVersion\"),\n fixedVersion: readCreateString(\"fixedVersion\"),\n component: readCreateString(\"component\"),\n regression: readCreateString(\"regression\"),\n customerImpact: readCreateString(\"customerImpact\"),\n dep: readCreateList(\"dep\"),\n comment: readCreateList(\"comment\"),\n note: readCreateList(\"note\"),\n learning: readCreateList(\"learning\"),\n file: readCreateList(\"file\"),\n test: readCreateList(\"test\"),\n doc: readCreateList(\"doc\"),\n reminder: readCreateList(\"reminder\"),\n event: readCreateList(\"event\"),\n typeOption: readCreateList(\"typeOption\"),\n field: readCreateList(\"field\"),\n unset: readCreateList(\"unset\"),\n clearDeps: commandOptions.clearDeps === true ? true : undefined,\n clearComments: commandOptions.clearComments === true ? true : undefined,\n clearNotes: commandOptions.clearNotes === true ? true : undefined,\n clearLearnings: commandOptions.clearLearnings === true ? true : undefined,\n clearFiles: commandOptions.clearFiles === true ? true : undefined,\n clearTests: commandOptions.clearTests === true ? true : undefined,\n clearDocs: commandOptions.clearDocs === true ? true : undefined,\n clearReminders: commandOptions.clearReminders === true ? true : undefined,\n clearEvents: commandOptions.clearEvents === true ? true : undefined,\n clearTypeOptions: commandOptions.clearTypeOptions === true ? true : undefined,\n };\n for (const [key, value] of Object.entries(commandOptions)) {\n if (Object.hasOwn(normalized, key)) {\n continue;\n }\n normalized[key] = value;\n }\n return normalized as CreateCommandOptions;\n}\n\nexport function normalizeUpdateOptions(commandOptions: Record<string, unknown>): Record<string, unknown> {\n const readUpdateString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n commandOptions,\n UPDATE_COMMANDER_STRING_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n const readUpdateList = (target: string): string[] | undefined =>\n readStringArrayFromCommanderOptions(\n commandOptions,\n UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n\n const normalized: Record<string, unknown> = {\n title: readUpdateString(\"title\"),\n description: readUpdateString(\"description\"),\n body: readUpdateString(\"body\"),\n status: readUpdateString(\"status\"),\n closeReason: readUpdateString(\"closeReason\"),\n priority: readUpdateString(\"priority\"),\n type: readUpdateString(\"type\"),\n tags: readUpdateString(\"tags\"),\n addTags: readUpdateList(\"addTags\"),\n removeTags: readUpdateList(\"removeTags\"),\n deadline: readUpdateString(\"deadline\"),\n estimatedMinutes: readUpdateString(\"estimatedMinutes\"),\n acceptanceCriteria: readUpdateString(\"acceptanceCriteria\"),\n definitionOfReady: readUpdateString(\"definitionOfReady\"),\n order: readUpdateString(\"order\"),\n rank: readUpdateString(\"rank\"),\n goal: readUpdateString(\"goal\"),\n objective: readUpdateString(\"objective\"),\n value: readUpdateString(\"value\"),\n impact: readUpdateString(\"impact\"),\n outcome: readUpdateString(\"outcome\"),\n whyNow: readUpdateString(\"whyNow\"),\n author: readUpdateString(\"author\"),\n message: readUpdateString(\"message\"),\n force: Boolean(commandOptions.force),\n allowAuditUpdate:\n commandOptions.allowAuditUpdate === true || commandOptions.allow_audit_update === true ? true : undefined,\n allowAuditDepUpdate:\n commandOptions.allowAuditDepUpdate === true || commandOptions.allow_audit_dep_update === true ? true : undefined,\n assignee: readUpdateString(\"assignee\"),\n parent: readUpdateString(\"parent\"),\n reviewer: readUpdateString(\"reviewer\"),\n risk: readUpdateString(\"risk\"),\n confidence: readUpdateString(\"confidence\"),\n sprint: readUpdateString(\"sprint\"),\n release: readUpdateString(\"release\"),\n blockedBy: readUpdateString(\"blockedBy\"),\n blockedReason: readUpdateString(\"blockedReason\"),\n unblockNote: readUpdateString(\"unblockNote\"),\n reporter: readUpdateString(\"reporter\"),\n severity: readUpdateString(\"severity\"),\n environment: readUpdateString(\"environment\"),\n reproSteps: readUpdateString(\"reproSteps\"),\n resolution: readUpdateString(\"resolution\"),\n expectedResult: readUpdateString(\"expectedResult\"),\n actualResult: readUpdateString(\"actualResult\"),\n affectedVersion: readUpdateString(\"affectedVersion\"),\n fixedVersion: readUpdateString(\"fixedVersion\"),\n component: readUpdateString(\"component\"),\n regression: readUpdateString(\"regression\"),\n customerImpact: readUpdateString(\"customerImpact\"),\n dep: readUpdateList(\"dep\"),\n depRemove: readUpdateList(\"depRemove\"),\n replaceDeps: commandOptions.replaceDeps === true ? true : undefined,\n replaceTests: commandOptions.replaceTests === true ? true : undefined,\n comment: readUpdateList(\"comment\"),\n note: readUpdateList(\"note\"),\n learning: readUpdateList(\"learning\"),\n file: readUpdateList(\"file\"),\n test: readUpdateList(\"test\"),\n doc: readUpdateList(\"doc\"),\n reminder: readUpdateList(\"reminder\"),\n event: readUpdateList(\"event\"),\n typeOption: readUpdateList(\"typeOption\"),\n field: readUpdateList(\"field\"),\n unset: readUpdateList(\"unset\"),\n clearDeps: commandOptions.clearDeps === true ? true : undefined,\n clearComments: commandOptions.clearComments === true ? true : undefined,\n clearNotes: commandOptions.clearNotes === true ? true : undefined,\n clearLearnings: commandOptions.clearLearnings === true ? true : undefined,\n clearFiles: commandOptions.clearFiles === true ? true : undefined,\n clearTests: commandOptions.clearTests === true ? true : undefined,\n clearDocs: commandOptions.clearDocs === true ? true : undefined,\n clearReminders: commandOptions.clearReminders === true ? true : undefined,\n clearEvents: commandOptions.clearEvents === true ? true : undefined,\n clearTypeOptions: commandOptions.clearTypeOptions === true ? true : undefined,\n };\n for (const [key, value] of Object.entries(commandOptions)) {\n if (Object.hasOwn(normalized, key)) {\n continue;\n }\n normalized[key] = value;\n }\n return normalized;\n}\n\nconst UPDATE_MANY_CONTROL_OPTION_KEYS = new Set<string>([\n \"filterStatus\",\n \"filterType\",\n \"filterTag\",\n \"filterPriority\",\n \"filterDeadlineBefore\",\n \"filterDeadlineAfter\",\n \"filterUpdatedAfter\",\n \"filterUpdatedBefore\",\n \"filterCreatedAfter\",\n \"filterCreatedBefore\",\n \"filterAssignee\",\n \"filterAssigneeFilter\",\n \"filterAssignee_filter\",\n \"filterParent\",\n \"filterSprint\",\n \"filterRelease\",\n \"ids\",\n \"limit\",\n \"offset\",\n \"dryRun\",\n \"rollback\",\n \"checkpoint\",\n]);\n\nexport function extractUpdateManyMutationOptionSource(commandOptions: Record<string, unknown>): Record<string, unknown> {\n const mutationOptions: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(commandOptions)) {\n if (UPDATE_MANY_CONTROL_OPTION_KEYS.has(key)) {\n continue;\n }\n mutationOptions[key] = value;\n }\n return mutationOptions;\n}\n\nfunction readListOptionString(options: Record<string, unknown>, target: string): string | undefined {\n const contract = LIST_COMMANDER_STRING_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n };\n const stringValue = readFirstStringFromCommanderOptions(options, contract);\n if (stringValue !== undefined) {\n return stringValue;\n }\n for (const key of contract.keys) {\n const value = options[key];\n if (target === \"ids\" && typeof value === \"string\") {\n return value;\n }\n if (typeof value === \"number\" && Number.isFinite(value)) {\n return String(value);\n }\n }\n return undefined;\n}\n\nexport function normalizeListOptions(options: Record<string, unknown>): ListOptions {\n const normalized: Record<string, unknown> = {\n status: readListOptionString(options, \"status\"),\n type: readListOptionString(options, \"type\"),\n tag: readListOptionString(options, \"tag\"),\n priority: readListOptionString(options, \"priority\"),\n deadlineBefore: readListOptionString(options, \"deadlineBefore\"),\n deadlineAfter: readListOptionString(options, \"deadlineAfter\"),\n updatedAfter: readListOptionString(options, \"updatedAfter\"),\n updatedBefore: readListOptionString(options, \"updatedBefore\"),\n createdAfter: readListOptionString(options, \"createdAfter\"),\n createdBefore: readListOptionString(options, \"createdBefore\"),\n ids: readListOptionString(options, \"ids\"),\n assignee: readListOptionString(options, \"assignee\"),\n assigneeFilter: readListOptionString(options, \"assigneeFilter\"),\n parent: readListOptionString(options, \"parent\"),\n sprint: readListOptionString(options, \"sprint\"),\n release: readListOptionString(options, \"release\"),\n limit: readListOptionString(options, \"limit\"),\n offset: readListOptionString(options, \"offset\"),\n includeBody: options.includeBody === true ? true : undefined,\n compact: options.compact === true ? true : undefined,\n brief: options.brief === true ? true : undefined,\n full: options.full === true ? true : undefined,\n fields: readListOptionString(options, \"fields\"),\n sort: readListOptionString(options, \"sort\"),\n order: readListOptionString(options, \"order\"),\n tree: options.tree === true ? true : undefined,\n treeDepth: readListOptionString(options, \"treeDepth\"),\n };\n for (const [key, value] of Object.entries(options)) {\n if (Object.hasOwn(normalized, key)) {\n continue;\n }\n normalized[key] = value;\n }\n return normalized as ListOptions;\n}\n\nexport function normalizeAggregateOptions(options: Record<string, unknown>): AggregateOptions {\n return {\n groupBy: typeof options.groupBy === \"string\" ? options.groupBy : undefined,\n count: options.count === true ? true : undefined,\n sum: typeof options.sum === \"string\" ? options.sum : undefined,\n avg: typeof options.avg === \"string\" ? options.avg : undefined,\n includeUnparented: options.includeUnparented === true || options.include_unparented === true,\n status: typeof options.status === \"string\" ? options.status : undefined,\n type: readListOptionString(options, \"type\"),\n tag: readListOptionString(options, \"tag\"),\n priority: readListOptionString(options, \"priority\"),\n deadlineBefore: readListOptionString(options, \"deadlineBefore\"),\n deadlineAfter: readListOptionString(options, \"deadlineAfter\"),\n assignee: readListOptionString(options, \"assignee\"),\n assigneeFilter: readListOptionString(options, \"assigneeFilter\"),\n parent: readListOptionString(options, \"parent\"),\n sprint: readListOptionString(options, \"sprint\"),\n release: readListOptionString(options, \"release\"),\n };\n}\n\ntype ListCommandResult = Awaited<ReturnType<typeof runList>>;\n\nexport function printListJsonStream(commandName: string, result: ListCommandResult, globalOptions: GlobalOptions): void {\n setActiveCommandResult(result);\n if (globalOptions.quiet) {\n return;\n }\n const warnings = Array.isArray(result.warnings) ? result.warnings : [];\n const metaPayload: Record<string, unknown> = {\n type: \"meta\",\n command: commandName,\n count: result.count,\n now: result.now,\n filters: result.filters,\n };\n if (warnings.length > 0) {\n metaPayload.warnings = warnings;\n }\n if (!writeStdout(`${JSON.stringify(metaPayload)}\\n`)) {\n return;\n }\n for (const item of result.items) {\n if (!writeStdout(`${JSON.stringify({ type: \"item\", command: commandName, item })}\\n`)) {\n return;\n }\n }\n writeStdout(`${JSON.stringify({ type: \"end\", command: commandName, count: result.count })}\\n`);\n}\n\ntype ActivityCommandResult = Awaited<ReturnType<typeof runActivity>>;\n\nexport function printActivityJsonStream(\n result: ActivityCommandResult,\n options: {\n id?: string;\n op?: string;\n author?: string;\n from?: string;\n to?: string;\n limit?: string;\n },\n globalOptions: GlobalOptions,\n): void {\n setActiveCommandResult(result);\n if (globalOptions.quiet) {\n return;\n }\n const metaPayload = {\n type: \"meta\",\n command: \"activity\",\n count: result.count,\n filters: {\n id: options.id ?? null,\n op: options.op ?? null,\n author: options.author ?? null,\n from: options.from ?? null,\n to: options.to ?? null,\n limit: options.limit ?? null,\n },\n };\n if (!writeStdout(`${JSON.stringify(metaPayload)}\\n`)) {\n return;\n }\n const entries = result.compact && result.compact_activity ? result.compact_activity : result.activity;\n for (const entry of entries) {\n if (!writeStdout(`${JSON.stringify({ type: \"entry\", command: \"activity\", entry })}\\n`)) {\n return;\n }\n }\n writeStdout(`${JSON.stringify({ type: \"end\", command: \"activity\", count: result.count })}\\n`);\n}\n\nexport function normalizeSearchOptions(options: Record<string, unknown>): Record<string, unknown> {\n const readSearchString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n options,\n SEARCH_COMMANDER_STRING_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n const readSearchStringOrNumber = (target: string): string | number | undefined => {\n const candidate = readFirstValueFromCommanderOptions(\n options,\n SEARCH_COMMANDER_STRING_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n if (typeof candidate === \"string\") {\n return candidate;\n }\n if (typeof candidate === \"number\" && Number.isFinite(candidate)) {\n return candidate;\n }\n return undefined;\n };\n const fields = readSearchString(\"fields\");\n const compactRequested = options.compact === true;\n const fullRequested = options.full === true;\n const defaultCompact = !compactRequested && !fullRequested && fields === undefined;\n const mode = options.semantic === true ? \"semantic\"\n : options.hybrid === true ? \"hybrid\"\n : readSearchString(\"mode\");\n const normalized: Record<string, unknown> = {\n mode,\n semanticWeight: readSearchStringOrNumber(\"semanticWeight\"),\n includeLinked: options.includeLinked === true ? true : undefined,\n titleExact: options.titleExact === true ? true : undefined,\n phraseExact: options.phraseExact === true ? true : undefined,\n status: readSearchString(\"status\"),\n type: readSearchString(\"type\"),\n tag: readSearchString(\"tag\"),\n priority: readSearchString(\"priority\"),\n deadlineBefore: readSearchString(\"deadlineBefore\"),\n deadlineAfter: readSearchString(\"deadlineAfter\"),\n limit: readSearchString(\"limit\"),\n fields,\n compact: compactRequested || defaultCompact ? true : undefined,\n full: fullRequested ? true : undefined,\n };\n for (const [key, value] of Object.entries(options)) {\n if (Object.hasOwn(normalized, key)) {\n continue;\n }\n normalized[key] = value;\n }\n return normalized;\n}\n\nexport function normalizeSearchKeywordsInput(keywords: string[]): string {\n const query = keywords\n .map((entry) => entry.trim())\n .filter((entry) => entry.length > 0)\n .join(\" \");\n if (query.length === 0) {\n throw new PmCliError(\"Search query must not be empty\", EXIT_CODE.USAGE);\n }\n return query;\n}\n\n\nexport function normalizeActivityOptions(options: Record<string, unknown>): {\n id?: string;\n op?: string;\n author?: string;\n from?: string;\n to?: string;\n limit?: string;\n compact?: boolean;\n} {\n const readActivityString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n options,\n ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n return {\n id: readActivityString(\"id\"),\n op: readActivityString(\"op\"),\n author: readActivityString(\"author\"),\n from: readActivityString(\"from\"),\n to: readActivityString(\"to\"),\n limit: readActivityString(\"limit\"),\n compact: options.full === true ? false : options.compact === false ? false : true,\n };\n}\n\nexport function resolveActivityStreamMode(raw: unknown): boolean {\n if (raw === true) {\n return true;\n }\n if (raw === false || raw === undefined || raw === null) {\n return false;\n }\n if (typeof raw === \"string\") {\n const normalized = raw.trim().toLowerCase();\n if (\n normalized.length === 0 ||\n normalized === \"rows\" ||\n normalized === \"ndjson\" ||\n normalized === \"jsonl\" ||\n normalized === \"true\" ||\n normalized === \"1\" ||\n normalized === \"yes\" ||\n normalized === \"on\"\n ) {\n return true;\n }\n if (normalized === \"false\" || normalized === \"off\" || normalized === \"none\" || normalized === \"0\") {\n return false;\n }\n }\n throw new PmCliError(\"Activity --stream accepts rows|ndjson|jsonl (or no value)\", EXIT_CODE.USAGE);\n}\n\nexport function normalizeContextOptions(options: Record<string, unknown>): ContextOptions {\n const readContextString = (target: string): string | undefined =>\n readFirstStringFromCommanderOptions(\n options,\n CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS.find((entry) => entry.target === target) ?? {\n target,\n keys: [target],\n },\n );\n const sectionRaw = options.section;\n const section: string[] | undefined = Array.isArray(sectionRaw)\n ? (sectionRaw as string[]).filter((v) => typeof v === \"string\" && v.trim().length > 0)\n : typeof sectionRaw === \"string\" && sectionRaw.trim().length > 0\n ? [sectionRaw]\n : undefined;\n const normalized: Record<string, unknown> = {\n date: readContextString(\"date\"),\n from: readContextString(\"from\"),\n to: readContextString(\"to\"),\n past: options.past === true ? true : undefined,\n type: readContextString(\"type\"),\n tag: readContextString(\"tag\"),\n priority: readContextString(\"priority\"),\n assignee: readContextString(\"assignee\"),\n assigneeFilter: readContextString(\"assigneeFilter\"),\n sprint: readContextString(\"sprint\"),\n release: readContextString(\"release\"),\n limit: readContextString(\"limit\"),\n format: readContextString(\"format\"),\n depth: readContextString(\"depth\"),\n section: section && section.length > 0 ? section : undefined,\n activityLimit: readContextString(\"activityLimit\"),\n staleThreshold: readContextString(\"staleThreshold\"),\n };\n for (const [key, value] of Object.entries(options)) {\n if (Object.hasOwn(normalized, key)) {\n continue;\n }\n normalized[key] = value;\n }\n return normalized as ContextOptions;\n}\n\nfunction collectMutationItemIds(result: unknown): string[] {\n if (!result || typeof result !== \"object\") {\n return [];\n }\n const record = result as Record<string, unknown>;\n const ids = new Set<string>();\n const pushId = (value: unknown): void => {\n if (typeof value !== \"string\") {\n return;\n }\n const normalized = value.trim();\n if (normalized.length === 0) {\n return;\n }\n ids.add(normalized);\n };\n\n pushId(record.id);\n\n const item = record.item;\n if (item && typeof item === \"object\") {\n pushId((item as { id?: unknown }).id);\n }\n\n const explicitIds = record.ids;\n if (Array.isArray(explicitIds)) {\n for (const candidate of explicitIds) {\n pushId(candidate);\n }\n }\n\n const items = record.items;\n if (Array.isArray(items)) {\n for (const candidate of items) {\n if (!candidate || typeof candidate !== \"object\") {\n continue;\n }\n pushId((candidate as { id?: unknown }).id);\n }\n }\n\n return [...ids].sort((left, right) => left.localeCompare(right));\n}\n\nexport async function invalidateSearchCachesForMutation(globalOptions: GlobalOptions, result?: unknown): Promise<void> {\n const pmRoot = resolvePmRoot(process.cwd(), globalOptions.path);\n const refreshResult = await refreshSearchArtifactsForMutation(pmRoot, collectMutationItemIds(result), {\n background: !shouldRunSearchRefreshInForeground(),\n });\n if (globalOptions.profile && refreshResult.warnings.length > 0) {\n printError(`profile:search_refresh_warnings=${formatHookWarnings(refreshResult.warnings)}`);\n }\n}\n"],"names":[],"mappings":"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","debugId":"61aa7e55-919b-5f8e-8f56-c90b9e815366"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../cli/commands/close.ts"],"sourcesContent":["import { pathExists } from \"../../core/fs/fs-utils.js\";\nimport { toItemRecord } from \"../../core/item/item-record.js\";\nimport { isTerminalStatus } from \"../../core/item/status.js\";\nimport { resolveItemTypeRegistry } from \"../../core/item/type-registry.js\";\nimport { resolveRuntimeStatusRegistry, type RuntimeStatusRegistry } from \"../../core/schema/runtime-schema.js\";\nimport { EXIT_CODE } from \"../../core/shared/constants.js\";\nimport type { GlobalOptions } from \"../../core/shared/command-types.js\";\nimport { PmCliError } from \"../../core/shared/errors.js\";\nimport { listAllFrontMatterLight, mutateItem } from \"../../core/store/item-store.js\";\nimport { getSettingsPath, resolvePmRoot } from \"../../core/store/paths.js\";\nimport { readSettings } from \"../../core/store/settings.js\";\nimport type { ItemFrontMatter } from \"../../types/index.js\";\n\nexport interface CloseCommandOptions {\n author?: string;\n message?: string;\n validateClose?: string;\n force?: boolean;\n // pm-fl0c #11 (2026-05-28): allow setting the three closure validation\n // fields inline on `pm close` so agents do not have to issue a prior\n // `pm update` just to satisfy --validate-close warn|strict. These map 1:1\n // to ItemFrontMatter.{resolution,expected_result,actual_result}.\n resolution?: string;\n expectedResult?: string;\n actualResult?: string;\n}\n\nexport interface CloseResult {\n item: Record<string, unknown>;\n changed_fields: string[];\n warnings: string[];\n}\n\nfunction toAuthor(candidate: string | undefined, defaultAuthor: string): string {\n const resolved = candidate ?? process.env.PM_AUTHOR ?? defaultAuthor;\n const trimmed = resolved.trim();\n return trimmed || \"unknown\";\n}\n\nfunction normalizeCloseReason(reasonText: string | undefined, required: boolean): string | undefined {\n const reason = (reasonText ?? \"\").trim();\n if (reason.length > 0) {\n return reason;\n }\n if (required) {\n throw new PmCliError(\n \"Close reason text is required because governance.require_close_reason is enabled\",\n EXIT_CODE.USAGE,\n {\n code: \"close_reason_required\",\n required: \"Provide a one-line closing summary as the positional text or via --reason.\",\n why: \"governance.require_close_reason is enabled, so every close must record why the item is done.\",\n examples: [\n 'pm close <id> \"Done: <what changed and why>\"',\n 'pm close <id> --reason \"<closing summary>\"',\n ],\n nextSteps: [\n \"Re-run the close with a closing summary.\",\n \"To stop requiring reasons, run: pm config set governance-require-close-reason --policy disabled\",\n ],\n },\n );\n }\n return undefined;\n}\n\ntype ValidateCloseMode = \"off\" | \"warn\" | \"strict\";\n\nconst CLOSE_VALIDATION_FIELDS: Array<{ key: keyof Pick<ItemFrontMatter, \"resolution\" | \"expected_result\" | \"actual_result\">; label: string }> = [\n { key: \"resolution\", label: \"resolution\" },\n { key: \"expected_result\", label: \"expected_result\" },\n { key: \"actual_result\", label: \"actual_result\" },\n];\n\nfunction parseValidateCloseMode(raw: string | undefined): ValidateCloseMode | undefined {\n if (raw === undefined) {\n return undefined;\n }\n const normalized = raw.trim().toLowerCase();\n if (normalized.length === 0 || normalized === \"warn\") {\n return \"warn\";\n }\n if (normalized === \"off\" || normalized === \"none\" || normalized === \"disabled\") {\n return \"off\";\n }\n if (normalized === \"strict\") {\n return \"strict\";\n }\n throw new PmCliError(`Invalid --validate-close mode \"${raw}\" (expected \"off\", \"warn\", or \"strict\")`, EXIT_CODE.USAGE);\n}\n\nfunction findMissingCloseValidationFields(frontMatter: ItemFrontMatter): string[] {\n const missing: string[] = [];\n for (const field of CLOSE_VALIDATION_FIELDS) {\n const rawValue = frontMatter[field.key];\n if (typeof rawValue !== \"string\" || rawValue.trim().length === 0) {\n missing.push(field.label);\n }\n }\n return missing;\n}\n\nasync function findActiveChildIds(\n pmRoot: string,\n settings: Awaited<ReturnType<typeof readSettings>>,\n parentId: string,\n statusRegistry: RuntimeStatusRegistry,\n): Promise<string[]> {\n const typeRegistry = resolveItemTypeRegistry(settings);\n const items = await listAllFrontMatterLight(\n pmRoot,\n settings.item_format,\n typeRegistry.type_to_folder,\n undefined,\n settings.schema,\n );\n return items\n .filter((item) => item.parent === parentId && !isTerminalStatus(item.status, statusRegistry))\n .map((item) => item.id)\n .sort((left, right) => left.localeCompare(right));\n}\n\nexport async function runClose(\n id: string,\n closeReasonText: string | undefined,\n options: CloseCommandOptions,\n global: GlobalOptions,\n): Promise<CloseResult> {\n const pmRoot = resolvePmRoot(process.cwd(), global.path);\n if (!(await pathExists(getSettingsPath(pmRoot)))) {\n throw new PmCliError(`Tracker is not initialized at ${pmRoot}. Run pm init first.`, EXIT_CODE.NOT_FOUND);\n }\n\n const settings = await readSettings(pmRoot);\n const statusRegistry = resolveRuntimeStatusRegistry(settings.schema);\n const author = toAuthor(options.author, settings.author_default);\n const closeReason = normalizeCloseReason(closeReasonText, settings.governance.require_close_reason);\n const validateCloseMode = parseValidateCloseMode(options.validateClose) ?? settings.governance.close_validation_default;\n // C3 (pm-fu5d): scan for active children even under minimal governance so\n // closing a parent is never silently orphaning — off mode emits an\n // informational note instead of the warn/strict validation warning.\n const activeChildIds = await findActiveChildIds(pmRoot, settings, id, statusRegistry);\n\n const result = await mutateItem({\n pmRoot,\n settings,\n id,\n op: \"close\",\n author,\n message: options.message,\n force: options.force,\n mutate(document) {\n if (isTerminalStatus(document.metadata.status, statusRegistry) && !options.force) {\n throw new PmCliError(`Item ${document.metadata.id} is already terminal; use --force to close again.`, EXIT_CODE.CONFLICT);\n }\n const mutationWarnings: string[] = [];\n // pm-fl0c #11: apply inline closure fields BEFORE the validation pass so\n // a single `pm close <id> \"reason\" --resolution \"...\"` call satisfies\n // strict validation without a prior pm update. Only meaningful trimmed\n // text writes; an empty/whitespace value is a no-op rather than a clear.\n const inlineCloseFields: Array<{ option: string | undefined; key: \"resolution\" | \"expected_result\" | \"actual_result\" }> = [\n { option: options.resolution, key: \"resolution\" },\n { option: options.expectedResult, key: \"expected_result\" },\n { option: options.actualResult, key: \"actual_result\" },\n ];\n for (const { option, key } of inlineCloseFields) {\n if (typeof option !== \"string\") continue;\n const trimmed = option.trim();\n if (trimmed.length === 0) continue;\n document.metadata[key] = trimmed;\n }\n if (validateCloseMode !== \"off\") {\n const missingFields = findMissingCloseValidationFields(document.metadata);\n if (missingFields.length > 0) {\n if (validateCloseMode === \"strict\") {\n throw new PmCliError(\n `Cannot close item ${document.metadata.id}: missing ${missingFields.join(\", \")}. Populate fields or use --validate-close warn.`,\n EXIT_CODE.USAGE,\n );\n }\n mutationWarnings.push(`close_validation_missing_fields:${document.metadata.id}:${missingFields.join(\",\")}`);\n }\n if (activeChildIds.length > 0) {\n if (validateCloseMode === \"strict\") {\n throw new PmCliError(\n `Cannot close item ${document.metadata.id}: active child items remain open (${activeChildIds.join(\", \")}). Close, cancel, or re-parent them first, or use --validate-close warn.`,\n EXIT_CODE.USAGE,\n );\n }\n mutationWarnings.push(`close_validation_active_children:${document.metadata.id}:${activeChildIds.join(\",\")}`);\n }\n } else if (activeChildIds.length > 0) {\n // C3: minimal governance (validate-close off) should still tell the\n // agent it just closed a parent with open children, without blocking.\n mutationWarnings.push(`closed_with_active_children:${document.metadata.id}:${activeChildIds.join(\",\")}`);\n }\n\n document.metadata.status = statusRegistry.close_status;\n const changedFields = [\"status\"];\n if (closeReason !== undefined) {\n document.metadata.close_reason = closeReason;\n changedFields.push(\"close_reason\");\n } else if (document.metadata.close_reason !== undefined) {\n delete document.metadata.close_reason;\n changedFields.push(\"close_reason\");\n }\n for (const { option, key } of inlineCloseFields) {\n if (typeof option === \"string\" && option.trim().length > 0) {\n changedFields.push(key);\n }\n }\n if (document.metadata.assignee !== undefined) {\n delete document.metadata.assignee;\n changedFields.push(\"assignee\");\n }\n\n // C4 (pm-fu5d): a terminal item is no longer blocked. Clear every active\n // blocker signal independently — scalar blocked_by, blocked_reason, and the\n // blocked_by dependency edges (kept consistent with the kyd6 invariant) —\n // even if only some are present (e.g. an orphaned edge or a stale\n // blocked_reason left by manual edits), so closed work stops surfacing in\n // blockers views, and annotate the cleanup.\n const previousBlockedBy =\n typeof document.metadata.blocked_by === \"string\" ? document.metadata.blocked_by.trim() : \"\";\n const existingDeps = document.metadata.dependencies ?? [];\n const blockedByEdge = existingDeps.find((dep) => dep.kind === \"blocked_by\");\n const hadBlockedReason = document.metadata.blocked_reason !== undefined;\n if (previousBlockedBy.length > 0 || blockedByEdge !== undefined || hadBlockedReason) {\n if (previousBlockedBy.length > 0) {\n delete document.metadata.blocked_by;\n changedFields.push(\"blocked_by\");\n }\n if (hadBlockedReason) {\n delete document.metadata.blocked_reason;\n changedFields.push(\"blocked_reason\");\n }\n if (blockedByEdge !== undefined) {\n const remainingDeps = existingDeps.filter((dep) => dep.kind !== \"blocked_by\");\n if (remainingDeps.length > 0) {\n document.metadata.dependencies = remainingDeps;\n } else {\n delete document.metadata.dependencies;\n }\n changedFields.push(\"dependencies\");\n }\n const reportedBlocker = previousBlockedBy || blockedByEdge?.id || \"unknown\";\n mutationWarnings.push(`closed_cleared_blocked_by:${document.metadata.id}:${reportedBlocker}`);\n }\n\n return {\n changedFields,\n ...(mutationWarnings.length > 0 ? { warnings: mutationWarnings } : {}),\n };\n },\n });\n\n return {\n item: toItemRecord(result.item),\n changed_fields: result.changedFields,\n warnings: result.warnings,\n };\n}\n"],"names":[],"mappings":"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","debugId":"d0a74b9e-6c92-5e49-8668-68c79b7185d9"}
|