@unbrained/pm-cli 2026.6.6 → 2026.6.7
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 +37 -0
- package/README.md +5 -1
- package/dist/cli/commander-usage.js +74 -4
- package/dist/cli/commander-usage.js.map +1 -1
- package/dist/cli/commands/aggregate.d.ts +8 -0
- package/dist/cli/commands/aggregate.js +84 -7
- package/dist/cli/commands/aggregate.js.map +1 -1
- package/dist/cli/commands/calendar.js +10 -3
- package/dist/cli/commands/calendar.js.map +1 -1
- package/dist/cli/commands/close-many.js +13 -10
- package/dist/cli/commands/close-many.js.map +1 -1
- package/dist/cli/commands/close.d.ts +1 -1
- package/dist/cli/commands/close.js +20 -10
- package/dist/cli/commands/close.js.map +1 -1
- package/dist/cli/commands/completion.js +68 -13
- package/dist/cli/commands/completion.js.map +1 -1
- package/dist/cli/commands/config.d.ts +5 -4
- package/dist/cli/commands/config.js +50 -2
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/contracts.js +4 -3
- package/dist/cli/commands/contracts.js.map +1 -1
- package/dist/cli/commands/copy.d.ts +14 -0
- package/dist/cli/commands/copy.js +153 -0
- package/dist/cli/commands/copy.js.map +1 -0
- package/dist/cli/commands/extension/doctor.js +62 -2
- package/dist/cli/commands/extension/doctor.js.map +1 -1
- package/dist/cli/commands/extension/install-sources.d.ts +8 -0
- package/dist/cli/commands/extension/install-sources.js +82 -2
- package/dist/cli/commands/extension/install-sources.js.map +1 -1
- package/dist/cli/commands/extension.d.ts +29 -0
- package/dist/cli/commands/extension.js +61 -2
- package/dist/cli/commands/extension.js.map +1 -1
- package/dist/cli/commands/get.d.ts +9 -0
- package/dist/cli/commands/get.js +23 -2
- package/dist/cli/commands/get.js.map +1 -1
- package/dist/cli/commands/history-compact.d.ts +39 -0
- package/dist/cli/commands/history-compact.js +262 -0
- package/dist/cli/commands/history-compact.js.map +1 -0
- package/dist/cli/commands/index.d.ts +2 -0
- package/dist/cli/commands/index.js +4 -2
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/list.d.ts +2 -0
- package/dist/cli/commands/list.js +87 -9
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/reindex.js +8 -4
- package/dist/cli/commands/reindex.js.map +1 -1
- package/dist/cli/commands/search.d.ts +1 -0
- package/dist/cli/commands/search.js +232 -35
- package/dist/cli/commands/search.js.map +1 -1
- package/dist/cli/error-guidance.js +26 -2
- package/dist/cli/error-guidance.js.map +1 -1
- package/dist/cli/extension-command-help.d.ts +1 -0
- package/dist/cli/extension-command-help.js +3 -2
- package/dist/cli/extension-command-help.js.map +1 -1
- package/dist/cli/help-content.js +10 -2
- package/dist/cli/help-content.js.map +1 -1
- package/dist/cli/main.d.ts +3 -0
- package/dist/cli/main.js +13 -21
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/register-list-query.js +19 -4
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-mutation.js +52 -17
- package/dist/cli/register-mutation.js.map +1 -1
- package/dist/cli/register-operations.js +31 -7
- package/dist/cli/register-operations.js.map +1 -1
- package/dist/cli/register-setup.js +5 -5
- package/dist/cli/register-setup.js.map +1 -1
- package/dist/cli/registration-helpers.js +21 -3
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/chunks/activity-5UROHJ3D.js +16 -0
- package/dist/cli-bundle/chunks/{activity-JM6DTDND.js → activity-YVB3QRTE.js} +11 -11
- package/dist/cli-bundle/chunks/{aggregate-VNAHUNNF.js → aggregate-LH66F75F.js} +87 -17
- package/dist/cli-bundle/chunks/aggregate-LH66F75F.js.map +7 -0
- package/dist/cli-bundle/chunks/{aggregate-GI7WSZPH.js → aggregate-OHSWFQJM.js} +88 -18
- package/dist/cli-bundle/chunks/aggregate-OHSWFQJM.js.map +1 -0
- package/dist/cli-bundle/chunks/{append-WMKRXKCE.js → append-2PPYFAG5.js} +8 -8
- package/dist/cli-bundle/chunks/{append-7H5N64R2.js → append-AUGT5W6J.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-6P6GGMOG.js → chunk-2IF7WLB7.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-T3LC5LKB.js → chunk-2IXCHCLM.js} +5 -6
- package/dist/cli-bundle/chunks/chunk-2IXCHCLM.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-KAG77BY3.js → chunk-2OJHLWBZ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-GXSUPCBV.js → chunk-3A2CMEM7.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-UM2GBHS4.js → chunk-3EOBJOF4.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-Q7SPNHLW.js → chunk-42LOFGJS.js} +91 -16
- package/dist/cli-bundle/chunks/chunk-42LOFGJS.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-PRJCELV4.js → chunk-4CHEG6UK.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-4LL6TK5B.js → chunk-4GHZR3BA.js} +56 -28
- package/dist/cli-bundle/chunks/chunk-4GHZR3BA.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-OZ7NSQHL.js → chunk-5AXMRKN5.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-GCOQW437.js → chunk-6J4K6JLA.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-2RSPZI5H.js → chunk-6RZXO5M2.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-KJ33AOCY.js → chunk-AVJD6VTA.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-TCD3R2PF.js → chunk-B2KZGPM2.js} +39 -8
- package/dist/cli-bundle/chunks/chunk-B2KZGPM2.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-I6BNFU5X.js → chunk-B5RF3IP7.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-RZN6VURO.js → chunk-C5W2UH56.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-3LB74A67.js → chunk-CKLBZHS7.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-KWU6HG75.js → chunk-CLD3XNCH.js} +91 -10
- package/dist/cli-bundle/chunks/chunk-CLD3XNCH.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-QO7EBBOM.js → chunk-FHHBD7PN.js} +38 -7
- package/dist/cli-bundle/chunks/chunk-FHHBD7PN.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-3VAM3NNM.js → chunk-FY6Z3FYY.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-RWPSOIEE.js → chunk-GNIUOLZ2.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-MITFDD35.js → chunk-GPXQBR3H.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-2VBQ6ZXS.js → chunk-GUZBNB3G.js} +27 -5
- package/dist/cli-bundle/chunks/chunk-GUZBNB3G.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-I2HSTRJF.js → chunk-H7EO3QA3.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-77GFDHGF.js → chunk-HLC3KTLP.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-OVQCEJPG.js → chunk-HMMMWBK2.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-KJE2FOS4.js → chunk-HRMHZ4RV.js} +26 -4
- package/dist/cli-bundle/chunks/chunk-HRMHZ4RV.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-XLTD2HN3.js → chunk-HV5SSZXF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-GU2ZJ2VV.js → chunk-IMCJBN2Q.js} +23 -14
- package/dist/cli-bundle/chunks/chunk-IMCJBN2Q.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-2HVRUSQA.js → chunk-KNGVP5WJ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-ECCMVXGM.js → chunk-KR6R465K.js} +304 -215
- package/dist/cli-bundle/chunks/chunk-KR6R465K.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-3BWOVLTH.js → chunk-LI65XLJR.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-NUZ5HKR4.js → chunk-LIN2BPJ7.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-LMTOY5HE.js +112 -0
- package/dist/cli-bundle/chunks/chunk-LMTOY5HE.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-N7ACFE26.js → chunk-LQHBENVW.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-23YFZ3IG.js → chunk-LXO6V66E.js} +14 -14
- package/dist/cli-bundle/chunks/{chunk-PDDFYW4X.js → chunk-M2PW7EZU.js} +26 -7
- package/dist/cli-bundle/chunks/chunk-M2PW7EZU.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-PIU6RSL3.js → chunk-MOYM2C3J.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-PROOHX4K.js → chunk-MWRS7Z4P.js} +94 -13
- package/dist/cli-bundle/chunks/chunk-MWRS7Z4P.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-FRAUKRU2.js → chunk-NHR2QXXZ.js} +24 -15
- package/dist/cli-bundle/chunks/chunk-NHR2QXXZ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-IJGCZSIQ.js → chunk-NQL32HQ5.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-52MAOQ6J.js → chunk-O7HSSFCC.js} +65 -16
- package/dist/cli-bundle/chunks/chunk-O7HSSFCC.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-6ER6DXH5.js → chunk-OKSKJKHX.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-IOR7LGF4.js → chunk-QQL5QSTZ.js} +88 -7
- package/dist/cli-bundle/chunks/chunk-QQL5QSTZ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-2VVCGBNV.js → chunk-R3V3YCMH.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-UBOPJT3S.js → chunk-RVPTZKBC.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-WKY2IBOQ.js → chunk-SFFVGNHC.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-WSMOSYRD.js → chunk-SQPKRA54.js} +14 -14
- package/dist/cli-bundle/chunks/chunk-THDEID2Z.js +115 -0
- package/dist/cli-bundle/chunks/chunk-THDEID2Z.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-W7XABV4H.js → chunk-TINUJMWN.js} +92 -17
- package/dist/cli-bundle/chunks/chunk-TINUJMWN.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-YL2DJGYS.js → chunk-TNPBPNII.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-XTGLRY2Y.js → chunk-TP4DDY27.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-AY43SBIN.js → chunk-TYJJOTUA.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-LCM63IXU.js → chunk-UAQOQ7IE.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-BQHUILZS.js → chunk-UEWA73ZZ.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-PO3GSVFV.js → chunk-UIIQC5YO.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-U5SXYXSY.js → chunk-UJUT6AHZ.js} +241 -35
- package/dist/cli-bundle/chunks/chunk-UJUT6AHZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-HZGUAH22.js → chunk-UT6WFXW2.js} +6 -7
- package/dist/cli-bundle/chunks/chunk-UT6WFXW2.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-LB3RUL2N.js → chunk-UYQ7HXH4.js} +10 -6
- package/dist/cli-bundle/chunks/chunk-UYQ7HXH4.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-R6UFP2GE.js → chunk-V6EYFTRL.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-3FI4SEFT.js → chunk-WAA7UI6M.js} +58 -30
- package/dist/cli-bundle/chunks/chunk-WAA7UI6M.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-AO442XLN.js → chunk-WCQZBDDH.js} +10 -6
- package/dist/cli-bundle/chunks/{chunk-AO442XLN.js.map → chunk-WCQZBDDH.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-SKJWX3QB.js → chunk-WR5567FH.js} +87 -6
- package/dist/cli-bundle/chunks/chunk-WR5567FH.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-XSJCLN2R.js → chunk-WYEXLDDY.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-5SFCOO6B.js → chunk-X4IZKYHP.js} +234 -28
- package/dist/cli-bundle/chunks/chunk-X4IZKYHP.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-E5FJNAZA.js → chunk-X7UHMKPE.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-WOPXVEZP.js → chunk-XS3O2TFJ.js} +27 -8
- package/dist/cli-bundle/chunks/chunk-XS3O2TFJ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-TPH5XEVD.js → chunk-XYNT7UFP.js} +303 -207
- package/dist/cli-bundle/chunks/chunk-XYNT7UFP.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-GGYWB3Y2.js → chunk-YBZW2QQ7.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-ME2YH6FN.js → chunk-YO3THIJF.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-5FDATVEZ.js → chunk-YPH4ESA2.js} +66 -17
- package/dist/cli-bundle/chunks/chunk-YPH4ESA2.js.map +1 -0
- package/dist/cli-bundle/chunks/{claim-X2P4IB7J.js → claim-BJ4QMPJC.js} +10 -10
- package/dist/cli-bundle/chunks/{claim-4DBF6RVG.js → claim-KW743OSW.js} +10 -10
- package/dist/cli-bundle/chunks/close-P4ZBKODL.js +13 -0
- package/dist/cli-bundle/chunks/{close-PTYFA45H.js → close-SYHSRZDC.js} +8 -8
- package/dist/cli-bundle/chunks/{close-many-7CGIDPTJ.js → close-many-DBLEYFOY.js} +29 -26
- package/dist/cli-bundle/chunks/close-many-DBLEYFOY.js.map +7 -0
- package/dist/cli-bundle/chunks/{close-many-ERFO6LHR.js → close-many-LAC5VR4G.js} +30 -27
- package/dist/cli-bundle/chunks/close-many-LAC5VR4G.js.map +1 -0
- package/dist/cli-bundle/chunks/{comments-QKBYCWKD.js → comments-JEO6HHVM.js} +10 -10
- package/dist/cli-bundle/chunks/{comments-OONGABK5.js → comments-YT2PQ5DD.js} +10 -10
- package/dist/cli-bundle/chunks/{config-6FXCQKIF.js → config-RZRVS3ZV.js} +127 -11
- package/dist/cli-bundle/chunks/config-RZRVS3ZV.js.map +1 -0
- package/dist/cli-bundle/chunks/{config-U4RZ4CQB.js → config-YJSAAADD.js} +128 -12
- package/dist/cli-bundle/chunks/config-YJSAAADD.js.map +7 -0
- package/dist/cli-bundle/chunks/{context-FYYJGFWS.js → context-LGYEEKAW.js} +14 -14
- package/dist/cli-bundle/chunks/{context-FYYJGFWS.js.map → context-LGYEEKAW.js.map} +2 -2
- package/dist/cli-bundle/chunks/{context-YMJ3Z2HQ.js → context-ZUH5IOOI.js} +15 -15
- package/dist/cli-bundle/chunks/context-ZUH5IOOI.js.map +1 -0
- package/dist/cli-bundle/chunks/{contracts-RFSPGVVJ.js → contracts-YXJ6NXKH.js} +7 -5
- package/dist/cli-bundle/chunks/contracts-YXJ6NXKH.js.map +7 -0
- package/dist/cli-bundle/chunks/{contracts-QDB6OMLQ.js → contracts-ZIBXROPE.js} +8 -6
- package/dist/cli-bundle/chunks/contracts-ZIBXROPE.js.map +1 -0
- package/dist/cli-bundle/chunks/copy-BZALX5MQ.js +182 -0
- package/dist/cli-bundle/chunks/copy-BZALX5MQ.js.map +1 -0
- package/dist/cli-bundle/chunks/copy-YPWEIAPD.js +185 -0
- package/dist/cli-bundle/chunks/copy-YPWEIAPD.js.map +7 -0
- package/dist/cli-bundle/chunks/create-4DS2QWQC.js +27 -0
- package/dist/cli-bundle/chunks/{create-I5L4EYYZ.js → create-CF7EVRX7.js} +13 -13
- package/dist/cli-bundle/chunks/{delete-7HPGI4GZ.js → delete-KR4VBWVE.js} +7 -7
- package/dist/cli-bundle/chunks/{delete-VXUPH5RS.js → delete-XLZRTRKR.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-JSRRWC3Z.js → deps-2YTXD3VM.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-SCZIFK2Z.js → deps-GZMFMTGS.js} +7 -7
- package/dist/cli-bundle/chunks/{docs-GJK6K4VP.js → docs-SLROFEQ4.js} +9 -9
- package/dist/cli-bundle/chunks/{docs-WW4N3MBM.js → docs-ZHISRR2D.js} +9 -9
- package/dist/cli-bundle/chunks/{extension-J7IBMFTD.js → extension-3C7OOI4F.js} +8 -6
- package/dist/cli-bundle/chunks/{extension-VDY2U33M.js → extension-XYCUXICD.js} +8 -6
- package/dist/cli-bundle/chunks/{files-ISZJGILQ.js → files-FUWF2FYJ.js} +9 -9
- package/dist/cli-bundle/chunks/{files-WKOD326U.js → files-J4I5IU4O.js} +9 -9
- package/dist/cli-bundle/chunks/{gc-JDVJ6OQ2.js → gc-34NXSNSN.js} +3 -3
- package/dist/cli-bundle/chunks/{gc-ULPVWMTN.js → gc-SPIIZX3A.js} +3 -3
- package/dist/cli-bundle/chunks/{get-RV37HT3G.js → get-SZKNRHMA.js} +34 -12
- package/dist/cli-bundle/chunks/get-SZKNRHMA.js.map +1 -0
- package/dist/cli-bundle/chunks/{get-WXU6WI5P.js → get-VITKYP6S.js} +33 -11
- package/dist/cli-bundle/chunks/get-VITKYP6S.js.map +7 -0
- package/dist/cli-bundle/chunks/{health-6L6EH4WR.js → health-4SNTA2TF.js} +12 -11
- package/dist/cli-bundle/chunks/{health-6L6EH4WR.js.map → health-4SNTA2TF.js.map} +1 -1
- package/dist/cli-bundle/chunks/{health-LOI2HHKB.js → health-7G3EPM57.js} +14 -13
- package/dist/cli-bundle/chunks/{health-LOI2HHKB.js.map → health-7G3EPM57.js.map} +1 -1
- package/dist/cli-bundle/chunks/{history-PKN67D5O.js → history-SDAWYZR3.js} +10 -10
- package/dist/cli-bundle/chunks/history-YDUEILKP.js +20 -0
- package/dist/cli-bundle/chunks/history-compact-DMW536VH.js +287 -0
- package/dist/cli-bundle/chunks/history-compact-DMW536VH.js.map +1 -0
- package/dist/cli-bundle/chunks/history-compact-POTZGG7K.js +290 -0
- package/dist/cli-bundle/chunks/history-compact-POTZGG7K.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-redact-V4FOJGS7.js → history-redact-EPJ7GENL.js} +11 -11
- package/dist/cli-bundle/chunks/history-redact-KASLLPE7.js +19 -0
- package/dist/cli-bundle/chunks/{history-repair-SDMHR7JT.js → history-repair-IJ7LLBET.js} +11 -11
- package/dist/cli-bundle/chunks/{history-repair-HIBCBIKK.js → history-repair-YNESJRT6.js} +11 -11
- package/dist/cli-bundle/chunks/init-IGSS4GNH.js +17 -0
- package/dist/cli-bundle/chunks/{init-P56QYWJF.js → init-YHVBTEET.js} +9 -8
- package/dist/cli-bundle/chunks/{learnings-GDFRG5J7.js → learnings-4YBMIVCZ.js} +10 -10
- package/dist/cli-bundle/chunks/{learnings-MIXSESLK.js → learnings-T4PF24YN.js} +10 -10
- package/dist/cli-bundle/chunks/{list-FGOWQMSM.js → list-3KEVBOYW.js} +10 -10
- package/dist/cli-bundle/chunks/list-E44O2K64.js +20 -0
- package/dist/cli-bundle/chunks/{notes-4XVSH2AZ.js → notes-FLUCNJSH.js} +10 -10
- package/dist/cli-bundle/chunks/{notes-5UK3GEH2.js → notes-GJKALVZM.js} +10 -10
- package/dist/cli-bundle/chunks/{plan-SLMODHWX.js → plan-T5MMZLI3.js} +13 -13
- package/dist/cli-bundle/chunks/{plan-DUMBV3QB.js → plan-YYMIL3HV.js} +13 -13
- package/dist/cli-bundle/chunks/{register-list-query-POCFZ5JW.js → register-list-query-I65EZ3HB.js} +29 -25
- package/dist/cli-bundle/chunks/register-list-query-I65EZ3HB.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-list-query-WST76HSQ.js → register-list-query-OECMHO4G.js} +28 -24
- package/dist/cli-bundle/chunks/register-list-query-OECMHO4G.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-mutation-N5GSUZJV.js → register-mutation-2FLXORLR.js} +65 -47
- package/dist/cli-bundle/chunks/register-mutation-2FLXORLR.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-OA675SOU.js → register-mutation-5GPDEKHR.js} +64 -46
- package/dist/cli-bundle/chunks/register-mutation-5GPDEKHR.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-GNHBE5I3.js → register-operations-BNGAUMGK.js} +58 -35
- package/dist/cli-bundle/chunks/register-operations-BNGAUMGK.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-operations-N3PMHXH5.js → register-operations-GQKT35H5.js} +57 -34
- package/dist/cli-bundle/chunks/register-operations-GQKT35H5.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-setup-JIMPKJKV.js → register-setup-DNDCGZ4O.js} +18 -18
- package/dist/cli-bundle/chunks/{register-setup-JIMPKJKV.js.map → register-setup-DNDCGZ4O.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-setup-ZHJI2DI3.js → register-setup-EJY44FPH.js} +17 -17
- package/dist/cli-bundle/chunks/{register-setup-ZHJI2DI3.js.map → register-setup-EJY44FPH.js.map} +2 -2
- package/dist/cli-bundle/chunks/{restore-PBL6T5TW.js → restore-DDJGVZIN.js} +11 -11
- package/dist/cli-bundle/chunks/restore-SJSASGZP.js +17 -0
- package/dist/cli-bundle/chunks/{schema-2NOO6NGB.js → schema-B7NQ6XVP.js} +8 -8
- package/dist/cli-bundle/chunks/{schema-EBI4NLUO.js → schema-HEGYH6CE.js} +8 -8
- package/dist/cli-bundle/chunks/{search-JPUQTVCY.js → search-DVVQ4UO2.js} +421 -42
- package/dist/cli-bundle/chunks/search-DVVQ4UO2.js.map +1 -0
- package/dist/cli-bundle/chunks/{search-OA6JX27A.js → search-JNEZJV7H.js} +427 -41
- package/dist/cli-bundle/chunks/search-JNEZJV7H.js.map +7 -0
- package/dist/cli-bundle/chunks/{stats-CV54BAWY.js → stats-7JDIJRDH.js} +7 -7
- package/dist/cli-bundle/chunks/{stats-XYB6KTFG.js → stats-SYTJRR4Z.js} +7 -7
- package/dist/cli-bundle/chunks/{telemetry-LMJ7PFUO.js → telemetry-4HHWD5Y7.js} +4 -4
- package/dist/cli-bundle/chunks/{telemetry-NCMEPJNR.js → telemetry-EGWP7ZUX.js} +4 -4
- package/dist/cli-bundle/chunks/{test-WBROAJIE.js → test-IIELLSZX.js} +14 -13
- package/dist/cli-bundle/chunks/test-ML5RLWXE.js +32 -0
- package/dist/cli-bundle/chunks/{test-all-NTOZ7C3M.js → test-all-7DNCMML7.js} +14 -13
- package/dist/cli-bundle/chunks/{test-all-NTOZ7C3M.js.map → test-all-7DNCMML7.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-all-N6NSRDTV.js → test-all-IHTUJRRC.js} +16 -15
- package/dist/cli-bundle/chunks/{test-all-N6NSRDTV.js.map → test-all-IHTUJRRC.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-runs-V6A7LPWZ.js → test-runs-5FEMBV3A.js} +5 -5
- package/dist/cli-bundle/chunks/{test-runs-WMVTQU3Y.js → test-runs-RNKZ37PS.js} +5 -5
- package/dist/cli-bundle/chunks/update-6C67X4KS.js +21 -0
- package/dist/cli-bundle/chunks/update-VF26YPT3.js +25 -0
- package/dist/cli-bundle/chunks/{update-many-KGGEYABR.js → update-many-BSZZZYXY.js} +22 -22
- package/dist/cli-bundle/chunks/{update-many-EM6OXYGO.js → update-many-BWKJJEBF.js} +22 -22
- package/dist/cli-bundle/chunks/{upgrade-LXPOQKFV.js → upgrade-RSE5PC44.js} +7 -6
- package/dist/cli-bundle/chunks/{upgrade-LXPOQKFV.js.map → upgrade-RSE5PC44.js.map} +1 -1
- package/dist/cli-bundle/chunks/{upgrade-BLI7XBAJ.js → upgrade-YWI5DJFA.js} +5 -4
- package/dist/cli-bundle/chunks/{upgrade-BLI7XBAJ.js.map → upgrade-YWI5DJFA.js.map} +1 -1
- package/dist/cli-bundle/chunks/{validate-AGOAUOVW.js → validate-NK3WKB7C.js} +18 -17
- package/dist/cli-bundle/chunks/{validate-AGOAUOVW.js.map → validate-NK3WKB7C.js.map} +1 -1
- package/dist/cli-bundle/chunks/{validate-L5J6A7YO.js → validate-UCEOB7S6.js} +20 -19
- package/dist/cli-bundle/chunks/{validate-L5J6A7YO.js.map → validate-UCEOB7S6.js.map} +1 -1
- package/dist/cli-bundle/main.js +127 -43
- package/dist/cli-bundle/main.js.map +3 -3
- package/dist/core/config/nested-settings.d.ts +8 -6
- package/dist/core/config/nested-settings.js +71 -5
- package/dist/core/config/nested-settings.js.map +1 -1
- package/dist/core/config/positional-value.js +4 -2
- package/dist/core/config/positional-value.js.map +1 -1
- package/dist/core/extensions/extension-types.d.ts +36 -0
- package/dist/core/extensions/extension-types.js +2 -2
- package/dist/core/extensions/extension-types.js.map +1 -1
- package/dist/core/extensions/loader.js +46 -5
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/history/drift-scan.d.ts +3 -4
- package/dist/core/history/drift-scan.js +71 -18
- package/dist/core/history/drift-scan.js.map +1 -1
- package/dist/core/item/id.js +4 -5
- package/dist/core/item/id.js.map +1 -1
- package/dist/core/item/item-format.js +7 -3
- package/dist/core/item/item-format.js.map +1 -1
- package/dist/core/item/toon-decode.d.ts +7 -0
- package/dist/core/item/toon-decode.js +11 -2
- package/dist/core/item/toon-decode.js.map +1 -1
- package/dist/core/item/type-registry.js +25 -7
- package/dist/core/item/type-registry.js.map +1 -1
- package/dist/core/search/cache.js +5 -3
- package/dist/core/search/cache.js.map +1 -1
- package/dist/core/search/corpus.d.ts +6 -0
- package/dist/core/search/corpus.js +22 -9
- package/dist/core/search/corpus.js.map +1 -1
- package/dist/core/search/embedding-batches.js +10 -7
- package/dist/core/search/embedding-batches.js.map +1 -1
- package/dist/core/search/relevance.d.ts +29 -0
- package/dist/core/search/relevance.js +226 -0
- package/dist/core/search/relevance.js.map +1 -0
- package/dist/core/search/vector-stores.d.ts +3 -0
- package/dist/core/search/vector-stores.js +23 -10
- package/dist/core/search/vector-stores.js.map +1 -1
- package/dist/core/shared/constants.js +15 -2
- package/dist/core/shared/constants.js.map +1 -1
- package/dist/core/shared/errors.d.ts +6 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/core/shared/errors.js.map +1 -1
- package/dist/core/shared/primitives.d.ts +8 -0
- package/dist/core/shared/primitives.js +29 -2
- package/dist/core/shared/primitives.js.map +1 -1
- package/dist/core/shared/time.js +42 -6
- package/dist/core/shared/time.js.map +1 -1
- package/dist/core/store/paths.js +25 -7
- package/dist/core/store/paths.js.map +1 -1
- package/dist/core/store/settings-validator.d.ts +11 -0
- 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 +109 -12
- package/dist/core/store/settings.js.map +1 -1
- package/dist/core/telemetry/runtime.js +85 -4
- package/dist/core/telemetry/runtime.js.map +1 -1
- package/dist/mcp/server.js +36 -9
- package/dist/mcp/server.js.map +1 -1
- package/dist/sdk/cli-contracts/commander-types.d.ts +1 -0
- 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 +6 -2
- package/dist/sdk/cli-contracts/enum-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-option-contracts.js +7 -2
- package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +31 -2
- package/dist/sdk/cli-contracts/tool-parameter-tables.js.map +1 -1
- package/dist/sdk/cli-contracts.d.ts +3 -1
- package/dist/sdk/cli-contracts.js +36 -6
- package/dist/sdk/cli-contracts.js.map +1 -1
- package/dist/sdk/index.d.ts +2 -2
- package/dist/sdk/index.js +3 -3
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/testing.d.ts +51 -1
- package/dist/sdk/testing.js +93 -2
- package/dist/sdk/testing.js.map +1 -1
- package/dist/types.d.ts +14 -0
- package/dist/types.js +2 -2
- package/dist/types.js.map +1 -1
- package/docs/CLAUDE_CODE_PLUGIN.md +2 -2
- package/docs/CODEX_PLUGIN.md +1 -1
- package/docs/COMMANDS.md +9 -2
- package/docs/CONFIGURATION.md +22 -1
- package/docs/EXTENSIONS.md +22 -9
- package/docs/QUICKSTART.md +1 -1
- package/docs/SDK.md +66 -0
- package/docs/TESTING.md +14 -0
- package/package.json +2 -1
- package/packages/pm-governance-audit/README.md +14 -0
- package/packages/pm-governance-audit/extensions/governance-audit/index.js +39 -1
- package/packages/pm-governance-audit/extensions/governance-audit/index.ts +40 -2
- package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +1 -1
- package/packages/pm-governance-audit/package.json +4 -2
- package/packages/pm-lifecycle-hooks/README.md +21 -0
- package/packages/pm-search-advanced/README.md +38 -0
- package/packages/pm-search-advanced/extensions/search-advanced/index.js +17 -0
- package/packages/pm-search-advanced/extensions/search-advanced/index.ts +17 -0
- package/packages/pm-search-advanced/extensions/search-advanced/runtime.js +216 -1
- package/packages/pm-search-advanced/extensions/search-advanced/runtime.ts +271 -2
- package/plugins/pm-claude/README.md +4 -4
- package/plugins/pm-codex/README.md +1 -1
- package/dist/cli-bundle/chunks/activity-CVXTCHYY.js +0 -16
- package/dist/cli-bundle/chunks/aggregate-GI7WSZPH.js.map +0 -1
- package/dist/cli-bundle/chunks/aggregate-VNAHUNNF.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-2VBQ6ZXS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-3FI4SEFT.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-4LL6TK5B.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-52MAOQ6J.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-5FDATVEZ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-5SFCOO6B.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-ECCMVXGM.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-FRAUKRU2.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-GU2ZJ2VV.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-HZGUAH22.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-IOR7LGF4.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-KJE2FOS4.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-KWU6HG75.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-LB3RUL2N.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-PDDFYW4X.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-PROOHX4K.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-Q7SPNHLW.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-QO7EBBOM.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-SKJWX3QB.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-T3LC5LKB.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-TCD3R2PF.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-TPH5XEVD.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-U5SXYXSY.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-W7XABV4H.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-WOPXVEZP.js.map +0 -1
- package/dist/cli-bundle/chunks/close-3HDWDA3L.js +0 -13
- package/dist/cli-bundle/chunks/close-many-7CGIDPTJ.js.map +0 -7
- package/dist/cli-bundle/chunks/close-many-ERFO6LHR.js.map +0 -1
- package/dist/cli-bundle/chunks/config-6FXCQKIF.js.map +0 -1
- package/dist/cli-bundle/chunks/config-U4RZ4CQB.js.map +0 -7
- package/dist/cli-bundle/chunks/context-YMJ3Z2HQ.js.map +0 -1
- package/dist/cli-bundle/chunks/contracts-QDB6OMLQ.js.map +0 -1
- package/dist/cli-bundle/chunks/contracts-RFSPGVVJ.js.map +0 -7
- package/dist/cli-bundle/chunks/create-JTZNCTQC.js +0 -27
- package/dist/cli-bundle/chunks/get-RV37HT3G.js.map +0 -1
- package/dist/cli-bundle/chunks/get-WXU6WI5P.js.map +0 -7
- package/dist/cli-bundle/chunks/history-2BA3T5AE.js +0 -20
- package/dist/cli-bundle/chunks/history-redact-JBZNXHGR.js +0 -19
- package/dist/cli-bundle/chunks/init-HIVSNX3O.js +0 -16
- package/dist/cli-bundle/chunks/list-MUSQNMTD.js +0 -20
- package/dist/cli-bundle/chunks/register-list-query-POCFZ5JW.js.map +0 -1
- package/dist/cli-bundle/chunks/register-list-query-WST76HSQ.js.map +0 -7
- package/dist/cli-bundle/chunks/register-mutation-N5GSUZJV.js.map +0 -1
- package/dist/cli-bundle/chunks/register-mutation-OA675SOU.js.map +0 -7
- package/dist/cli-bundle/chunks/register-operations-GNHBE5I3.js.map +0 -1
- package/dist/cli-bundle/chunks/register-operations-N3PMHXH5.js.map +0 -7
- package/dist/cli-bundle/chunks/restore-D4RGNX33.js +0 -17
- package/dist/cli-bundle/chunks/search-JPUQTVCY.js.map +0 -1
- package/dist/cli-bundle/chunks/search-OA6JX27A.js.map +0 -7
- package/dist/cli-bundle/chunks/test-MXX3E5JL.js +0 -31
- package/dist/cli-bundle/chunks/update-OSV3NAQB.js +0 -25
- package/dist/cli-bundle/chunks/update-YRXSUGYQ.js +0 -21
- /package/dist/cli-bundle/chunks/{activity-CVXTCHYY.js.map → activity-5UROHJ3D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-JM6DTDND.js.map → activity-YVB3QRTE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-WMKRXKCE.js.map → append-2PPYFAG5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-7H5N64R2.js.map → append-AUGT5W6J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6P6GGMOG.js.map → chunk-2IF7WLB7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KAG77BY3.js.map → chunk-2OJHLWBZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GXSUPCBV.js.map → chunk-3A2CMEM7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UM2GBHS4.js.map → chunk-3EOBJOF4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PRJCELV4.js.map → chunk-4CHEG6UK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OZ7NSQHL.js.map → chunk-5AXMRKN5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GCOQW437.js.map → chunk-6J4K6JLA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2RSPZI5H.js.map → chunk-6RZXO5M2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KJ33AOCY.js.map → chunk-AVJD6VTA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-I6BNFU5X.js.map → chunk-B5RF3IP7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RZN6VURO.js.map → chunk-C5W2UH56.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3LB74A67.js.map → chunk-CKLBZHS7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3VAM3NNM.js.map → chunk-FY6Z3FYY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RWPSOIEE.js.map → chunk-GNIUOLZ2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-MITFDD35.js.map → chunk-GPXQBR3H.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-I2HSTRJF.js.map → chunk-H7EO3QA3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-77GFDHGF.js.map → chunk-HLC3KTLP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OVQCEJPG.js.map → chunk-HMMMWBK2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XLTD2HN3.js.map → chunk-HV5SSZXF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2HVRUSQA.js.map → chunk-KNGVP5WJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3BWOVLTH.js.map → chunk-LI65XLJR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NUZ5HKR4.js.map → chunk-LIN2BPJ7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-N7ACFE26.js.map → chunk-LQHBENVW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-23YFZ3IG.js.map → chunk-LXO6V66E.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PIU6RSL3.js.map → chunk-MOYM2C3J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IJGCZSIQ.js.map → chunk-NQL32HQ5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6ER6DXH5.js.map → chunk-OKSKJKHX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2VVCGBNV.js.map → chunk-R3V3YCMH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UBOPJT3S.js.map → chunk-RVPTZKBC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WKY2IBOQ.js.map → chunk-SFFVGNHC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WSMOSYRD.js.map → chunk-SQPKRA54.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YL2DJGYS.js.map → chunk-TNPBPNII.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XTGLRY2Y.js.map → chunk-TP4DDY27.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AY43SBIN.js.map → chunk-TYJJOTUA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LCM63IXU.js.map → chunk-UAQOQ7IE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BQHUILZS.js.map → chunk-UEWA73ZZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PO3GSVFV.js.map → chunk-UIIQC5YO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-R6UFP2GE.js.map → chunk-V6EYFTRL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XSJCLN2R.js.map → chunk-WYEXLDDY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-E5FJNAZA.js.map → chunk-X7UHMKPE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GGYWB3Y2.js.map → chunk-YBZW2QQ7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ME2YH6FN.js.map → chunk-YO3THIJF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-X2P4IB7J.js.map → claim-BJ4QMPJC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-4DBF6RVG.js.map → claim-KW743OSW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-3HDWDA3L.js.map → close-P4ZBKODL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-PTYFA45H.js.map → close-SYHSRZDC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-QKBYCWKD.js.map → comments-JEO6HHVM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-OONGABK5.js.map → comments-YT2PQ5DD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-JTZNCTQC.js.map → create-4DS2QWQC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-I5L4EYYZ.js.map → create-CF7EVRX7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-7HPGI4GZ.js.map → delete-KR4VBWVE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-VXUPH5RS.js.map → delete-XLZRTRKR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-JSRRWC3Z.js.map → deps-2YTXD3VM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-SCZIFK2Z.js.map → deps-GZMFMTGS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-GJK6K4VP.js.map → docs-SLROFEQ4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-WW4N3MBM.js.map → docs-ZHISRR2D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-J7IBMFTD.js.map → extension-3C7OOI4F.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-VDY2U33M.js.map → extension-XYCUXICD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-ISZJGILQ.js.map → files-FUWF2FYJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-WKOD326U.js.map → files-J4I5IU4O.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-JDVJ6OQ2.js.map → gc-34NXSNSN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-ULPVWMTN.js.map → gc-SPIIZX3A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-PKN67D5O.js.map → history-SDAWYZR3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-2BA3T5AE.js.map → history-YDUEILKP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-V4FOJGS7.js.map → history-redact-EPJ7GENL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-JBZNXHGR.js.map → history-redact-KASLLPE7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-SDMHR7JT.js.map → history-repair-IJ7LLBET.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-HIBCBIKK.js.map → history-repair-YNESJRT6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-HIVSNX3O.js.map → init-IGSS4GNH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-P56QYWJF.js.map → init-YHVBTEET.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-GDFRG5J7.js.map → learnings-4YBMIVCZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-MIXSESLK.js.map → learnings-T4PF24YN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-FGOWQMSM.js.map → list-3KEVBOYW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-MUSQNMTD.js.map → list-E44O2K64.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-4XVSH2AZ.js.map → notes-FLUCNJSH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-5UK3GEH2.js.map → notes-GJKALVZM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-SLMODHWX.js.map → plan-T5MMZLI3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-DUMBV3QB.js.map → plan-YYMIL3HV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-PBL6T5TW.js.map → restore-DDJGVZIN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-D4RGNX33.js.map → restore-SJSASGZP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-2NOO6NGB.js.map → schema-B7NQ6XVP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-EBI4NLUO.js.map → schema-HEGYH6CE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-CV54BAWY.js.map → stats-7JDIJRDH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-XYB6KTFG.js.map → stats-SYTJRR4Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-LMJ7PFUO.js.map → telemetry-4HHWD5Y7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-NCMEPJNR.js.map → telemetry-EGWP7ZUX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-WBROAJIE.js.map → test-IIELLSZX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-MXX3E5JL.js.map → test-ML5RLWXE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-V6A7LPWZ.js.map → test-runs-5FEMBV3A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-WMVTQU3Y.js.map → test-runs-RNKZ37PS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-YRXSUGYQ.js.map → update-6C67X4KS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-OSV3NAQB.js.map → update-VF26YPT3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-KGGEYABR.js.map → update-many-BSZZZYXY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-EM6OXYGO.js.map → update-many-BWKJJEBF.js.map} +0 -0
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../../cli/commands/upgrade.ts"],
|
|
4
4
|
"sourcesContent": ["import { execFile } from \"node:child_process\";\nimport fs from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { promisify } from \"node:util\";\nimport {\n readManagedExtensionState,\n runExtension,\n type ExtensionScope,\n type ManagedExtensionRecord,\n type ManagedExtensionSource,\n} from \"./extension.js\";\nimport { resolveExtensionRoots } from \"../../core/extensions/loader.js\";\nimport { pathExists } from \"../../core/fs/fs-utils.js\";\nimport type { GlobalOptions } from \"../../core/shared/command-types.js\";\nimport { EXIT_CODE } from \"../../core/shared/constants.js\";\nimport { PmCliError } from \"../../core/shared/errors.js\";\nimport { resolvePmRoot } from \"../../core/store/paths.js\";\nimport { resolvePmPackageRootFromModule } from \"../../core/packages/root.js\";\n\nconst execFileAsync = promisify(execFile);\nconst DEFAULT_CLI_PACKAGE = \"@unbrained/pm-cli\";\nconst DEFAULT_TAG = \"latest\";\n\nexport interface UpgradeCommandOptions {\n dryRun?: boolean;\n cliOnly?: boolean;\n packagesOnly?: boolean;\n project?: boolean;\n local?: boolean;\n global?: boolean;\n repair?: boolean;\n tag?: string;\n packageName?: string;\n commandRunner?: UpgradeCommandRunner;\n}\n\nexport interface UpgradeCommandRunnerResult {\n stdout: string;\n stderr: string;\n}\n\nexport type UpgradeCommandRunner = (\n command: string,\n args: string[],\n options?: { cwd?: string },\n) => Promise<UpgradeCommandRunnerResult>;\n\nexport interface UpgradeCliResult {\n requested: boolean;\n status: \"planned\" | \"updated\" | \"failed\" | \"skipped\";\n package: string;\n target: string;\n command: string[];\n before_version?: string;\n after_version?: string;\n repair: boolean;\n reason?: string;\n error?: string;\n}\n\nexport interface UpgradePackageResult {\n name: string;\n directory: string;\n scope: ExtensionScope;\n source: ManagedExtensionSource;\n status: \"planned\" | \"updated\" | \"failed\" | \"skipped\";\n command: string[];\n previous_version: string;\n installed_version?: string;\n reason?: string;\n error?: string;\n}\n\nexport interface UpgradeResult {\n ok: boolean;\n action: \"upgrade\";\n dry_run: boolean;\n scope: ExtensionScope;\n target?: string;\n cli: UpgradeCliResult;\n packages: UpgradePackageResult[];\n summary: {\n requested_cli: boolean;\n requested_packages: boolean;\n planned: number;\n updated: number;\n skipped: number;\n failed: number;\n };\n}\n\nfunction resolveScope(options: UpgradeCommandOptions): ExtensionScope {\n const projectLike = options.project === true || options.local === true;\n const global = options.global === true;\n if (projectLike && global) {\n throw new PmCliError('Options \"--project/--local\" and \"--global\" are mutually exclusive.', EXIT_CODE.USAGE);\n }\n return global ? \"global\" : \"project\";\n}\n\nfunction normalizeTarget(value: string): string {\n return value.trim().toLowerCase();\n}\n\nfunction packageRecordMatchesTarget(record: ManagedExtensionRecord, target: string): boolean {\n const normalizedTarget = normalizeTarget(target);\n const values = [\n record.name,\n record.directory,\n record.source.input,\n record.source.location,\n record.source.package,\n record.source.repository,\n record.source.owner && record.source.repo ? `${record.source.owner}/${record.source.repo}` : undefined,\n ];\n return values.some((value) => typeof value === \"string\" && normalizeTarget(value) === normalizedTarget);\n}\n\nfunction resolveRoots(scope: ExtensionScope, global: GlobalOptions): {\n selected_root: string;\n} {\n const pmRoot = resolvePmRoot(process.cwd(), global.path);\n const roots = resolveExtensionRoots(pmRoot, process.cwd());\n return {\n selected_root: scope === \"global\" ? roots.global : roots.project,\n };\n}\n\nasync function defaultCommandRunner(\n command: string,\n args: string[],\n options?: { cwd?: string },\n): Promise<UpgradeCommandRunnerResult> {\n try {\n const result = await execFileAsync(command, args, {\n cwd: options?.cwd,\n encoding: \"utf8\",\n });\n return {\n stdout: result.stdout ?? \"\",\n stderr: result.stderr ?? \"\",\n };\n } catch (error: unknown) {\n const stderr = typeof error === \"object\" && error !== null && \"stderr\" in error\n ? String((error as { stderr?: unknown }).stderr ?? \"\")\n : \"\";\n const message = stderr.trim().length > 0 ? stderr.trim() : error instanceof Error ? error.message : String(error);\n throw new PmCliError(`Command failed: ${command} ${args.join(\" \")}\\n${message}`, EXIT_CODE.GENERIC_FAILURE);\n }\n}\n\nasync function readCurrentVersion(): Promise<string | undefined> {\n const packageJsonPath = path.join(resolvePmPackageRootFromModule(import.meta.url, [\"../../..\"]), \"package.json\");\n try {\n const parsed = JSON.parse(await fs.readFile(packageJsonPath, \"utf8\")) as { version?: unknown };\n return typeof parsed.version === \"string\" ? parsed.version : undefined;\n } catch {\n return undefined;\n }\n}\n\nfunction resolveTag(options: UpgradeCommandOptions): string {\n return typeof options.tag === \"string\" && options.tag.trim().length > 0 ? options.tag.trim() : DEFAULT_TAG;\n}\n\nfunction resolveCliPackage(options: UpgradeCommandOptions): string {\n return typeof options.packageName === \"string\" && options.packageName.trim().length > 0\n ? options.packageName.trim()\n : DEFAULT_CLI_PACKAGE;\n}\n\nasync function upgradeCli(options: UpgradeCommandOptions, dryRun: boolean): Promise<UpgradeCliResult> {\n const runner = options.commandRunner ?? defaultCommandRunner;\n const packageName = resolveCliPackage(options);\n const tag = resolveTag(options);\n const target = `${packageName}@${tag}`;\n const command = [\"npm\", \"install\", \"-g\", target];\n if (options.repair === true) {\n command.push(\"--force\");\n }\n const beforeVersion = await readCurrentVersion();\n const planned: UpgradeCliResult = {\n requested: true,\n status: \"planned\",\n package: packageName,\n target,\n command,\n before_version: beforeVersion,\n repair: options.repair === true,\n };\n if (dryRun) {\n return planned;\n }\n try {\n await runner(command[0]!, command.slice(1));\n const verified = await runner(\"pm\", [\"--version\"]);\n return {\n ...planned,\n status: \"updated\",\n after_version: verified.stdout.trim() || undefined,\n };\n } catch (error: unknown) {\n return {\n ...planned,\n status: \"failed\",\n error: error instanceof Error ? error.message : String(error),\n };\n }\n}\n\nfunction isLocalNpmSpec(spec: string): boolean {\n return path.isAbsolute(spec) || spec.startsWith(\".\") || spec.startsWith(\"..\") || spec.startsWith(\"file:\");\n}\n\nfunction resolvePackageInstallSource(source: ManagedExtensionSource, tag: string): string {\n if (source.kind === \"npm\") {\n const rawSpec = source.input.startsWith(\"npm:\") ? source.input.slice(\"npm:\".length).trim() : source.input.trim();\n if (!isLocalNpmSpec(rawSpec) && source.package && source.package.trim().length > 0) {\n return `npm:${source.package.trim()}@${tag}`;\n }\n return source.input.startsWith(\"npm:\") ? source.input : `npm:${source.input}`;\n }\n return source.input;\n}\n\nasync function resolveRunnablePackageSource(source: ManagedExtensionSource, tag: string): Promise<string> {\n const installSource = resolvePackageInstallSource(source, tag);\n if (source.kind !== \"local\") {\n return installSource;\n }\n if (await pathExists(installSource)) {\n return installSource;\n }\n if (await pathExists(source.location)) {\n return source.location;\n }\n return installSource;\n}\n\nfunction packageCommandFor(source: ManagedExtensionSource, installSource: string, scope: ExtensionScope, ref?: string): string[] {\n const command = [\"pm\", \"install\", installSource, scope === \"global\" ? \"--global\" : \"--project\"];\n if (source.kind === \"github\" && ref && ref.trim().length > 0) {\n command.push(\"--ref\", ref.trim());\n }\n return command;\n}\n\nasync function readManagedRecords(scope: ExtensionScope, global: GlobalOptions): Promise<ManagedExtensionRecord[]> {\n const roots = resolveRoots(scope, global);\n const managedState = await readManagedExtensionState(roots.selected_root);\n return managedState.state.entries.filter((entry) => entry.scope === scope);\n}\n\nasync function refreshManagedRecord(\n scope: ExtensionScope,\n global: GlobalOptions,\n record: ManagedExtensionRecord,\n): Promise<ManagedExtensionRecord | undefined> {\n const records = await readManagedRecords(scope, global);\n return records.find((candidate) => packageRecordMatchesTarget(candidate, record.name)) ??\n records.find((candidate) => normalizeTarget(candidate.directory) === normalizeTarget(record.directory));\n}\n\nasync function upgradePackageRecord(\n record: ManagedExtensionRecord,\n options: UpgradeCommandOptions,\n global: GlobalOptions,\n scope: ExtensionScope,\n dryRun: boolean,\n): Promise<UpgradePackageResult> {\n const tag = resolveTag(options);\n const installSource = await resolveRunnablePackageSource(record.source, tag);\n const command = packageCommandFor(record.source, installSource, scope, record.source.ref);\n const planned: UpgradePackageResult = {\n name: record.name,\n directory: record.directory,\n scope,\n source: record.source,\n status: \"planned\",\n command,\n previous_version: record.manifest_version,\n };\n if (dryRun) {\n return planned;\n }\n try {\n await runExtension(\n installSource,\n {\n install: true,\n project: scope === \"project\",\n global: scope === \"global\",\n ref: record.source.kind === \"github\" ? record.source.ref : undefined,\n },\n global,\n );\n const refreshed = await refreshManagedRecord(scope, global, record);\n return {\n ...planned,\n status: \"updated\",\n installed_version: refreshed?.manifest_version,\n };\n } catch (error: unknown) {\n return {\n ...planned,\n status: \"failed\",\n error: error instanceof Error ? error.message : String(error),\n };\n }\n}\n\nfunction summarize(\n cli: UpgradeCliResult,\n packages: UpgradePackageResult[],\n includeCli: boolean,\n includePackages: boolean,\n): UpgradeResult[\"summary\"] {\n const statuses = [includeCli ? cli.status : undefined, ...packages.map((entry) => entry.status)].filter(\n (value): value is UpgradeCliResult[\"status\"] => typeof value === \"string\",\n );\n return {\n requested_cli: includeCli,\n requested_packages: includePackages,\n planned: statuses.filter((status) => status === \"planned\").length,\n updated: statuses.filter((status) => status === \"updated\").length,\n skipped: statuses.filter((status) => status === \"skipped\").length,\n failed: statuses.filter((status) => status === \"failed\").length,\n };\n}\n\nexport async function runUpgrade(\n target: string | undefined,\n options: UpgradeCommandOptions,\n global: GlobalOptions,\n): Promise<UpgradeResult> {\n if (options.cliOnly === true && options.packagesOnly === true) {\n throw new PmCliError('Options \"--cli-only\" and \"--packages-only\" are mutually exclusive.', EXIT_CODE.USAGE);\n }\n\n const scope = resolveScope(options);\n const dryRun = options.dryRun === true;\n const normalizedTarget = typeof target === \"string\" && target.trim().length > 0 ? target.trim() : undefined;\n if (options.cliOnly === true && normalizedTarget) {\n throw new PmCliError('A package target cannot be used with \"--cli-only\".', EXIT_CODE.USAGE);\n }\n const includeCli = options.packagesOnly === true || normalizedTarget ? false : true;\n const includePackages = options.cliOnly === true ? false : true;\n const cli = includeCli\n ? await upgradeCli(options, dryRun)\n : {\n requested: false,\n status: \"skipped\",\n package: resolveCliPackage(options),\n target: `${resolveCliPackage(options)}@${resolveTag(options)}`,\n command: [\"npm\", \"install\", \"-g\", `${resolveCliPackage(options)}@${resolveTag(options)}`],\n repair: options.repair === true,\n reason: \"not_requested\",\n } as UpgradeCliResult;\n\n let packageRecords = includePackages ? await readManagedRecords(scope, global) : [];\n if (normalizedTarget) {\n packageRecords = packageRecords.filter((entry) => packageRecordMatchesTarget(entry, normalizedTarget));\n if (packageRecords.length === 0) {\n throw new PmCliError(`Managed package \"${normalizedTarget}\" was not found in ${scope} scope.`, EXIT_CODE.NOT_FOUND);\n }\n }\n\n const packages: UpgradePackageResult[] = [];\n for (const record of packageRecords) {\n packages.push(await upgradePackageRecord(record, options, global, scope, dryRun));\n }\n\n const summary = summarize(cli, packages, includeCli, includePackages);\n return {\n ok: summary.failed === 0,\n action: \"upgrade\",\n dry_run: dryRun,\n scope,\n target: normalizedTarget,\n cli,\n packages,\n summary,\n };\n}\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;AAAA,SAAS,gBAAgB;AACzB,OAAO,QAAQ;AACf,OAAO,UAAU;AACjB,SAAS,iBAAiB;;;;;;;;AAgB1B,IAAM,gBAAgB,UAAU,QAAQ;AACxC,IAAM,sBAAsB;AAC5B,IAAM,cAAc;AAsEpB,SAAS,aAAa,SAA8B;AAClD,QAAM,cAAc,QAAQ,YAAY,QAAQ,QAAQ,UAAU;AAClE,QAAMA,UAAS,QAAQ,WAAW;AAClC,MAAI,eAAeA,SAAQ;AACzB,UAAM,IAAI,WAAW,sEAAsE,UAAU,KAAK;EAC5G;AACA,SAAOA,UAAS,WAAW;AAC7B;AAEA,SAAS,gBAAgB,OAAa;AACpC,SAAO,MAAM,KAAI,EAAG,YAAW;AACjC;AAEA,SAAS,2BAA2B,QAAgC,QAAc;AAChF,QAAM,mBAAmB,gBAAgB,MAAM;AAC/C,QAAM,SAAS;IACb,OAAO;IACP,OAAO;IACP,OAAO,OAAO;IACd,OAAO,OAAO;IACd,OAAO,OAAO;IACd,OAAO,OAAO;IACd,OAAO,OAAO,SAAS,OAAO,OAAO,OAAO,GAAG,OAAO,OAAO,KAAK,IAAI,OAAO,OAAO,IAAI,KAAK;;AAE/F,SAAO,OAAO,KAAK,CAAC,UAAU,OAAO,UAAU,YAAY,gBAAgB,KAAK,MAAM,gBAAgB;AACxG;AAEA,SAAS,aAAa,OAAuBA,SAAqB;AAGhE,QAAM,SAAS,cAAc,QAAQ,IAAG,GAAIA,QAAO,IAAI;AACvD,QAAM,QAAQ,sBAAsB,QAAQ,QAAQ,IAAG,CAAE;AACzD,SAAO;IACL,eAAe,UAAU,WAAW,MAAM,SAAS,MAAM;;AAE7D;AAEA,eAAe,qBACb,SACA,MACA,SAA0B;AAE1B,MAAI;AACF,UAAM,SAAS,MAAM,cAAc,SAAS,MAAM;MAChD,KAAK,SAAS;MACd,UAAU;KACX;AACD,WAAO;MACL,QAAQ,OAAO,UAAU;MACzB,QAAQ,OAAO,UAAU;;EAE7B,SAAS,OAAgB;AACvB,UAAM,SAAS,OAAO,UAAU,YAAY,UAAU,QAAQ,YAAY,QACtE,OAAQ,MAA+B,UAAU,EAAE,IACnD;AACJ,UAAM,UAAU,OAAO,KAAI,EAAG,SAAS,IAAI,OAAO,KAAI,IAAK,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAChH,UAAM,IAAI,WAAW,mBAAmB,OAAO,IAAI,KAAK,KAAK,GAAG,CAAC;EAAK,OAAO,IAAI,UAAU,eAAe;EAC5G;AACF;AAEA,eAAe,qBAAkB;AAC/B,QAAM,kBAAkB,KAAK,KAAK,+BAA+B,YAAY,KAAK,CAAC,UAAU,CAAC,GAAG,cAAc;AAC/G,MAAI;AACF,UAAM,SAAS,KAAK,MAAM,MAAM,GAAG,SAAS,iBAAiB,MAAM,CAAC;AACpE,WAAO,OAAO,OAAO,YAAY,WAAW,OAAO,UAAU;EAC/D,QAAQ;AACN,WAAO;EACT;AACF;AAEA,SAAS,WAAW,SAA8B;AAChD,SAAO,OAAO,QAAQ,QAAQ,YAAY,QAAQ,IAAI,KAAI,EAAG,SAAS,IAAI,QAAQ,IAAI,KAAI,IAAK;AACjG;AAEA,SAAS,kBAAkB,SAA8B;AACvD,SAAO,OAAO,QAAQ,gBAAgB,YAAY,QAAQ,YAAY,KAAI,EAAG,SAAS,IAClF,QAAQ,YAAY,KAAI,IACxB;AACN;AAEA,eAAe,WAAW,SAAgC,QAAe;AACvE,QAAM,SAAS,QAAQ,iBAAiB;AACxC,QAAM,cAAc,kBAAkB,OAAO;AAC7C,QAAM,MAAM,WAAW,OAAO;AAC9B,QAAM,SAAS,GAAG,WAAW,IAAI,GAAG;AACpC,QAAM,UAAU,CAAC,OAAO,WAAW,MAAM,MAAM;AAC/C,MAAI,QAAQ,WAAW,MAAM;AAC3B,YAAQ,KAAK,SAAS;EACxB;AACA,QAAM,gBAAgB,MAAM,mBAAkB;AAC9C,QAAM,UAA4B;IAChC,WAAW;IACX,QAAQ;IACR,SAAS;IACT;IACA;IACA,gBAAgB;IAChB,QAAQ,QAAQ,WAAW;;AAE7B,MAAI,QAAQ;AACV,WAAO;EACT;AACA,MAAI;AACF,UAAM,OAAO,QAAQ,CAAC,GAAI,QAAQ,MAAM,CAAC,CAAC;AAC1C,UAAM,WAAW,MAAM,OAAO,MAAM,CAAC,WAAW,CAAC;AACjD,WAAO;MACL,GAAG;MACH,QAAQ;MACR,eAAe,SAAS,OAAO,KAAI,KAAM;;EAE7C,SAAS,OAAgB;AACvB,WAAO;MACL,GAAG;MACH,QAAQ;MACR,OAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;;EAEhE;AACF;AAEA,SAAS,eAAe,MAAY;AAClC,SAAO,KAAK,WAAW,IAAI,KAAK,KAAK,WAAW,GAAG,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,WAAW,OAAO;AAC1G;AAEA,SAAS,4BAA4B,QAAgC,KAAW;AAC9E,MAAI,OAAO,SAAS,OAAO;AACzB,UAAM,UAAU,OAAO,MAAM,WAAW,MAAM,IAAI,OAAO,MAAM,MAAM,OAAO,MAAM,EAAE,KAAI,IAAK,OAAO,MAAM,KAAI;AAC9G,QAAI,CAAC,eAAe,OAAO,KAAK,OAAO,WAAW,OAAO,QAAQ,KAAI,EAAG,SAAS,GAAG;AAClF,aAAO,OAAO,OAAO,QAAQ,KAAI,CAAE,IAAI,GAAG;IAC5C;AACA,WAAO,OAAO,MAAM,WAAW,MAAM,IAAI,OAAO,QAAQ,OAAO,OAAO,KAAK;EAC7E;AACA,SAAO,OAAO;AAChB;AAEA,eAAe,6BAA6B,QAAgC,KAAW;AACrF,QAAM,gBAAgB,4BAA4B,QAAQ,GAAG;AAC7D,MAAI,OAAO,SAAS,SAAS;AAC3B,WAAO;EACT;AACA,MAAI,MAAM,WAAW,aAAa,GAAG;AACnC,WAAO;EACT;AACA,MAAI,MAAM,WAAW,OAAO,QAAQ,GAAG;AACrC,WAAO,OAAO;EAChB;AACA,SAAO;AACT;AAEA,SAAS,kBAAkB,QAAgC,eAAuB,OAAuB,KAAY;AACnH,QAAM,UAAU,CAAC,MAAM,WAAW,eAAe,UAAU,WAAW,aAAa,WAAW;AAC9F,MAAI,OAAO,SAAS,YAAY,OAAO,IAAI,KAAI,EAAG,SAAS,GAAG;AAC5D,YAAQ,KAAK,SAAS,IAAI,KAAI,CAAE;EAClC;AACA,SAAO;AACT;AAEA,eAAe,mBAAmB,OAAuBA,SAAqB;AAC5E,QAAM,QAAQ,aAAa,OAAOA,OAAM;AACxC,QAAM,eAAe,MAAM,0BAA0B,MAAM,aAAa;AACxE,SAAO,aAAa,MAAM,QAAQ,OAAO,CAAC,UAAU,MAAM,UAAU,KAAK;AAC3E;AAEA,eAAe,qBACb,OACAA,SACA,QAA8B;AAE9B,QAAM,UAAU,MAAM,mBAAmB,OAAOA,OAAM;AACtD,SAAO,QAAQ,KAAK,CAAC,cAAc,2BAA2B,WAAW,OAAO,IAAI,CAAC,KACnF,QAAQ,KAAK,CAAC,cAAc,gBAAgB,UAAU,SAAS,MAAM,gBAAgB,OAAO,SAAS,CAAC;AAC1G;AAEA,eAAe,qBACb,QACA,SACAA,SACA,OACA,QAAe;AAEf,QAAM,MAAM,WAAW,OAAO;AAC9B,QAAM,gBAAgB,MAAM,6BAA6B,OAAO,QAAQ,GAAG;AAC3E,QAAM,UAAU,kBAAkB,OAAO,QAAQ,eAAe,OAAO,OAAO,OAAO,GAAG;AACxF,QAAM,UAAgC;IACpC,MAAM,OAAO;IACb,WAAW,OAAO;IAClB;IACA,QAAQ,OAAO;IACf,QAAQ;IACR;IACA,kBAAkB,OAAO;;AAE3B,MAAI,QAAQ;AACV,WAAO;EACT;AACA,MAAI;AACF,UAAM,aACJ,eACA;MACE,SAAS;MACT,SAAS,UAAU;MACnB,QAAQ,UAAU;MAClB,KAAK,OAAO,OAAO,SAAS,WAAW,OAAO,OAAO,MAAM;OAE7DA,OAAM;AAER,UAAM,YAAY,MAAM,qBAAqB,OAAOA,SAAQ,MAAM;AAClE,WAAO;MACL,GAAG;MACH,QAAQ;MACR,mBAAmB,WAAW;;EAElC,SAAS,OAAgB;AACvB,WAAO;MACL,GAAG;MACH,QAAQ;MACR,OAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;;EAEhE;AACF;AAEA,SAAS,UACP,KACA,UACA,YACA,iBAAwB;AAExB,QAAM,WAAW,CAAC,aAAa,IAAI,SAAS,QAAW,GAAG,SAAS,IAAI,CAAC,UAAU,MAAM,MAAM,CAAC,EAAE,OAC/F,CAAC,UAA+C,OAAO,UAAU,QAAQ;AAE3E,SAAO;IACL,eAAe;IACf,oBAAoB;IACpB,SAAS,SAAS,OAAO,CAAC,WAAW,WAAW,SAAS,EAAE;IAC3D,SAAS,SAAS,OAAO,CAAC,WAAW,WAAW,SAAS,EAAE;IAC3D,SAAS,SAAS,OAAO,CAAC,WAAW,WAAW,SAAS,EAAE;IAC3D,QAAQ,SAAS,OAAO,CAAC,WAAW,WAAW,QAAQ,EAAE;;AAE7D;AAEA,eAAsB,WACpB,QACA,SACAA,SAAqB;AAErB,MAAI,QAAQ,YAAY,QAAQ,QAAQ,iBAAiB,MAAM;AAC7D,UAAM,IAAI,WAAW,sEAAsE,UAAU,KAAK;EAC5G;AAEA,QAAM,QAAQ,aAAa,OAAO;AAClC,QAAM,SAAS,QAAQ,WAAW;AAClC,QAAM,mBAAmB,OAAO,WAAW,YAAY,OAAO,KAAI,EAAG,SAAS,IAAI,OAAO,KAAI,IAAK;AAClG,MAAI,QAAQ,YAAY,QAAQ,kBAAkB;AAChD,UAAM,IAAI,WAAW,sDAAsD,UAAU,KAAK;EAC5F;AACA,QAAM,aAAa,QAAQ,iBAAiB,QAAQ,mBAAmB,QAAQ;AAC/E,QAAM,kBAAkB,QAAQ,YAAY,OAAO,QAAQ;AAC3D,QAAM,MAAM,aACR,MAAM,WAAW,SAAS,MAAM,IAChC;IACE,WAAW;IACX,QAAQ;IACR,SAAS,kBAAkB,OAAO;IAClC,QAAQ,GAAG,kBAAkB,OAAO,CAAC,IAAI,WAAW,OAAO,CAAC;IAC5D,SAAS,CAAC,OAAO,WAAW,MAAM,GAAG,kBAAkB,OAAO,CAAC,IAAI,WAAW,OAAO,CAAC,EAAE;IACxF,QAAQ,QAAQ,WAAW;IAC3B,QAAQ;;AAGd,MAAI,iBAAiB,kBAAkB,MAAM,mBAAmB,OAAOA,OAAM,IAAI,CAAA;AACjF,MAAI,kBAAkB;AACpB,qBAAiB,eAAe,OAAO,CAAC,UAAU,2BAA2B,OAAO,gBAAgB,CAAC;AACrG,QAAI,eAAe,WAAW,GAAG;AAC/B,YAAM,IAAI,WAAW,oBAAoB,gBAAgB,sBAAsB,KAAK,WAAW,UAAU,SAAS;IACpH;EACF;AAEA,QAAM,WAAmC,CAAA;AACzC,aAAW,UAAU,gBAAgB;AACnC,aAAS,KAAK,MAAM,qBAAqB,QAAQ,SAASA,SAAQ,OAAO,MAAM,CAAC;EAClF;AAEA,QAAM,UAAU,UAAU,KAAK,UAAU,YAAY,eAAe;AACpE,SAAO;IACL,IAAI,QAAQ,WAAW;IACvB,QAAQ;IACR,SAAS;IACT;IACA,QAAQ;IACR;IACA;IACA;;AAEJ;",
|
|
6
6
|
"names": ["global"]
|
|
7
7
|
}
|
|
@@ -1,30 +1,31 @@
|
|
|
1
|
-
import {
|
|
2
|
-
extractReferencedPmItemIdsFromCommand
|
|
3
|
-
} from "./chunk-OZ7NSQHL.js";
|
|
4
1
|
import {
|
|
5
2
|
buildRemediationCommands,
|
|
6
3
|
scanHistoryDrift
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-O7HSSFCC.js";
|
|
5
|
+
import {
|
|
6
|
+
extractReferencedPmItemIdsFromCommand
|
|
7
|
+
} from "./chunk-5AXMRKN5.js";
|
|
8
|
+
import "./chunk-3EOBJOF4.js";
|
|
9
|
+
import "./chunk-LQHBENVW.js";
|
|
10
|
+
import "./chunk-HV5SSZXF.js";
|
|
11
|
+
import "./chunk-CKLBZHS7.js";
|
|
12
|
+
import "./chunk-HMMMWBK2.js";
|
|
13
|
+
import "./chunk-KR6R465K.js";
|
|
14
|
+
import "./chunk-THDEID2Z.js";
|
|
14
15
|
import "./chunk-3HUE7XOF.js";
|
|
15
16
|
import {
|
|
16
17
|
listAllFrontMatterWithBody
|
|
17
|
-
} from "./chunk-
|
|
18
|
-
import "./chunk-
|
|
18
|
+
} from "./chunk-TP4DDY27.js";
|
|
19
|
+
import "./chunk-2IXCHCLM.js";
|
|
19
20
|
import {
|
|
20
21
|
normalizeStatusInput
|
|
21
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-WCQZBDDH.js";
|
|
22
23
|
import {
|
|
23
24
|
resolveItemTypeRegistry
|
|
24
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-HRMHZ4RV.js";
|
|
25
26
|
import {
|
|
26
27
|
nowIso
|
|
27
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-FHHBD7PN.js";
|
|
28
29
|
import {
|
|
29
30
|
DEFAULT_VALIDATE_CLOSURE_LIKE_METADATA_FIELD_PATTERNS,
|
|
30
31
|
DEFAULT_VALIDATE_STALE_BLOCKER_REASON_PATTERNS,
|
|
@@ -38,7 +39,7 @@ import {
|
|
|
38
39
|
resolvePmRoot,
|
|
39
40
|
resolveRuntimeStatusRegistry,
|
|
40
41
|
toNonEmptyStringOrUndefined
|
|
41
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-UJUT6AHZ.js";
|
|
42
43
|
|
|
43
44
|
// dist/cli/commands/validate.js
|
|
44
45
|
import fs from "node:fs/promises";
|
|
@@ -1120,4 +1121,4 @@ async function runValidate(options, global2) {
|
|
|
1120
1121
|
export {
|
|
1121
1122
|
runValidate
|
|
1122
1123
|
};
|
|
1123
|
-
//# sourceMappingURL=validate-
|
|
1124
|
+
//# sourceMappingURL=validate-NK3WKB7C.js.map
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../../cli/commands/validate.ts"],
|
|
4
4
|
"sourcesContent": ["import fs from \"node:fs/promises\";\nimport { realpathSync } from \"node:fs\";\nimport type { Dirent } from \"node:fs\";\nimport { execFile } from \"node:child_process\";\nimport path from \"node:path\";\nimport { promisify } from \"node:util\";\nimport { buildRemediationCommands } from \"../../core/diagnostics/remediation.js\";\nimport { getActiveExtensionRegistrations } from \"../../core/extensions/index.js\";\nimport { pathExists } from \"../../core/fs/fs-utils.js\";\nimport { scanHistoryDrift } from \"../../core/history/drift-scan.js\";\nimport { normalizeStatusInput } from \"../../core/item/status.js\";\nimport { resolveItemTypeRegistry } from \"../../core/item/type-registry.js\";\nimport { resolveRuntimeStatusRegistry, type RuntimeStatusRegistry } from \"../../core/schema/runtime-schema.js\";\nimport {\n DEFAULT_VALIDATE_CLOSURE_LIKE_METADATA_FIELD_PATTERNS,\n DEFAULT_VALIDATE_STALE_BLOCKER_REASON_PATTERNS,\n EXIT_CODE,\n PM_DIRNAME,\n} from \"../../core/shared/constants.js\";\nimport type { GlobalOptions } from \"../../core/shared/command-types.js\";\nimport { PmCliError } from \"../../core/shared/errors.js\";\nimport { toNonEmptyStringOrUndefined } from \"../../core/shared/primitives.js\";\nimport { nowIso } from \"../../core/shared/time.js\";\nimport { listAllFrontMatterWithBody } from \"../../core/store/item-store.js\";\nimport { getSettingsPath, resolvePmRoot } from \"../../core/store/paths.js\";\nimport { readSettings } from \"../../core/store/settings.js\";\nimport type { ValidateMetadataProfile, ValidateMetadataRequiredField } from \"../../types/index.js\";\nimport { extractReferencedPmItemIdsFromCommand } from \"./test.js\";\n\ntype ValidateCheckName = \"metadata\" | \"resolution\" | \"lifecycle\" | \"files\" | \"command_references\" | \"history_drift\";\ntype ValidateStatus = \"ok\" | \"warn\" | \"error\";\ntype ValidateDependencyCycleSeverity = \"off\" | \"warn\" | \"error\";\ntype ValidateFileScanMode = \"default\" | \"tracked-all\" | \"tracked-all-strict\";\ntype ItemWithBody = Awaited<ReturnType<typeof listAllFrontMatterWithBody>>[number];\ntype FileCandidateSource = \"default-curated\" | \"tracked-git\" | \"tracked-all-fallback-default\";\n\nconst FILE_SCAN_DIRECTORIES = [\"src\", \"tests\", \"docs\"] as const;\nconst FILE_SCAN_ROOT_FILES = [\n \"README.md\",\n \"PRD.md\",\n \"CHANGELOG.md\",\n \"AGENTS.md\",\n \"CONTRIBUTING.md\",\n \"SECURITY.md\",\n \"CODE_OF_CONDUCT.md\",\n \"LICENSE\",\n] as const;\nconst DIRECTORY_IGNORE_SET = new Set([\"node_modules\", \".git\", \".cursor\", \".agents\", \"dist\", \"coverage\"]);\nconst RESOLUTION_FIELD_KEYS = [\"resolution\", \"expected_result\", \"actual_result\"] as const;\ntype ResolutionFieldKey = (typeof RESOLUTION_FIELD_KEYS)[number];\nconst VALIDATE_FILE_SCAN_MODES = [\"default\", \"tracked-all\", \"tracked-all-strict\"] as const;\nconst VALIDATE_METADATA_PROFILE_VALUES = [\"core\", \"strict\", \"custom\"] as const;\nconst VALIDATE_DEPENDENCY_CYCLE_SEVERITY_VALUES = [\"off\", \"warn\", \"error\"] as const;\nconst LIFECYCLE_PATTERN_FIELD_KEYS = [\"blocked_reason\", \"resolution\", \"actual_result\"] as const;\ntype LifecyclePatternFieldKey = (typeof LIFECYCLE_PATTERN_FIELD_KEYS)[number];\nconst CORE_METADATA_REQUIRED_FIELDS = [\"author\", \"acceptance_criteria\", \"estimated_minutes\", \"close_reason\"] as const;\nconst STRICT_METADATA_REQUIRED_FIELDS = [\n ...CORE_METADATA_REQUIRED_FIELDS,\n \"reviewer\",\n \"risk\",\n \"confidence\",\n \"sprint\",\n \"release\",\n] as const;\nconst SUPPORTED_METADATA_REQUIRED_FIELDS = [\n ...new Set([...STRICT_METADATA_REQUIRED_FIELDS]),\n] as ValidateMetadataRequiredField[];\nconst METADATA_REQUIRED_FIELD_ALIASES: Record<string, ValidateMetadataRequiredField> = {\n author: \"author\",\n acceptance_criteria: \"acceptance_criteria\",\n \"acceptance-criteria\": \"acceptance_criteria\",\n estimated_minutes: \"estimated_minutes\",\n \"estimated-minutes\": \"estimated_minutes\",\n estimate: \"estimated_minutes\",\n close_reason: \"close_reason\",\n \"close-reason\": \"close_reason\",\n reviewer: \"reviewer\",\n risk: \"risk\",\n confidence: \"confidence\",\n sprint: \"sprint\",\n release: \"release\",\n};\nconst METADATA_WARNING_TOKEN_BY_FIELD: Record<ValidateMetadataRequiredField, string> = {\n author: \"validate_metadata_missing_author\",\n acceptance_criteria: \"validate_metadata_missing_acceptance_criteria\",\n estimated_minutes: \"validate_metadata_missing_estimate\",\n close_reason: \"validate_metadata_missing_close_reason\",\n reviewer: \"validate_metadata_missing_reviewer\",\n risk: \"validate_metadata_missing_risk\",\n confidence: \"validate_metadata_missing_confidence\",\n sprint: \"validate_metadata_missing_sprint\",\n release: \"validate_metadata_missing_release\",\n};\nconst METADATA_COUNT_KEY_BY_FIELD: Record<ValidateMetadataRequiredField, string> = {\n author: \"missing_author\",\n acceptance_criteria: \"missing_acceptance_criteria\",\n estimated_minutes: \"missing_estimated_minutes\",\n close_reason: \"closed_missing_close_reason\",\n reviewer: \"missing_reviewer\",\n risk: \"missing_risk\",\n confidence: \"missing_confidence\",\n sprint: \"missing_sprint\",\n release: \"missing_release\",\n};\nconst METADATA_ITEM_IDS_KEY_BY_FIELD: Record<ValidateMetadataRequiredField, string> = {\n author: \"missing_author_item_ids\",\n acceptance_criteria: \"missing_acceptance_criteria_item_ids\",\n estimated_minutes: \"missing_estimated_minutes_item_ids\",\n close_reason: \"closed_missing_close_reason_item_ids\",\n reviewer: \"missing_reviewer_item_ids\",\n risk: \"missing_risk_item_ids\",\n confidence: \"missing_confidence_item_ids\",\n sprint: \"missing_sprint_item_ids\",\n release: \"missing_release_item_ids\",\n};\nconst METADATA_TRUNCATED_KEY_BY_FIELD: Record<ValidateMetadataRequiredField, string> = {\n author: \"missing_author_truncated\",\n acceptance_criteria: \"missing_acceptance_criteria_truncated\",\n estimated_minutes: \"missing_estimated_minutes_truncated\",\n close_reason: \"closed_missing_close_reason_truncated\",\n reviewer: \"missing_reviewer_truncated\",\n risk: \"missing_risk_truncated\",\n confidence: \"missing_confidence_truncated\",\n sprint: \"missing_sprint_truncated\",\n release: \"missing_release_truncated\",\n};\nconst GIT_LS_FILES_MAX_BUFFER = 32 * 1024 * 1024;\nconst FILE_LIST_SUMMARY_LIMIT = 40;\nconst DIAGNOSTIC_LIST_SUMMARY_LIMIT = 5;\nconst execFileAsync = promisify(execFile);\n\nexport interface ValidateCommandOptions {\n checkMetadata?: boolean;\n checkResolution?: boolean;\n checkLifecycle?: boolean;\n checkStaleBlockers?: boolean;\n dependencyCycleSeverity?: string;\n checkFiles?: boolean;\n includePmInternals?: boolean;\n verboseFileLists?: boolean;\n verboseDiagnostics?: boolean;\n checkHistoryDrift?: boolean;\n checkCommandReferences?: boolean;\n scanMode?: string;\n metadataProfile?: string;\n fixHints?: boolean;\n}\n\nexport interface ValidateCheck {\n name: ValidateCheckName;\n status: ValidateStatus;\n details: Record<string, unknown>;\n}\n\nexport interface ValidateResult {\n ok: boolean;\n has_warnings: boolean;\n checks: ValidateCheck[];\n warnings: string[];\n generated_at: string;\n}\n\nfunction normalizeRelativePath(value: string): string {\n return value.replaceAll(\"\\\\\", \"/\").replace(/^\\.\\/+/, \"\").replace(/^\\/+/, \"\");\n}\n\nfunction normalizeRelativeDirectoryPath(value: string): string {\n const normalized = normalizeRelativePath(value);\n return normalized.replace(/\\/+$/, \"\");\n}\n\n\n\nfunction toMeaningfulString(value: unknown): string | undefined {\n const normalized = toNonEmptyStringOrUndefined(value);\n if (!normalized) {\n return undefined;\n }\n const lowered = normalized.toLowerCase();\n if (lowered === \"none\" || lowered === \"null\" || lowered === \"n/a\" || lowered === \"na\") {\n return undefined;\n }\n return normalized;\n}\n\nfunction normalizeStatusForRegistry(status: string, statusRegistry: RuntimeStatusRegistry): string {\n return normalizeStatusInput(status, statusRegistry) ?? status;\n}\n\nfunction isTerminalStatus(status: string, statusRegistry: RuntimeStatusRegistry): boolean {\n return statusRegistry.terminal_statuses.has(normalizeStatusForRegistry(status, statusRegistry));\n}\n\ninterface ValidateMetadataPolicy {\n profile: ValidateMetadataProfile;\n profile_source: \"default\" | \"settings\" | \"option\";\n required_fields: ValidateMetadataRequiredField[];\n configured_custom_fields: ValidateMetadataRequiredField[];\n fallback_to_core: boolean;\n warnings: string[];\n}\n\ntype LifecyclePatternSource = \"default\" | \"settings\";\n\ninterface LifecyclePatternPolicy {\n stale_blocker_reason_patterns: string[];\n stale_blocker_reason_pattern_source: LifecyclePatternSource;\n closure_like_metadata_field_patterns: Record<LifecyclePatternFieldKey, string[]>;\n closure_like_metadata_field_pattern_sources: Record<LifecyclePatternFieldKey, LifecyclePatternSource>;\n}\n\ninterface LifecyclePatternSettingsSource {\n validation: {\n lifecycle_stale_blocker_reason_patterns: string[];\n lifecycle_closure_like_blocked_reason_patterns: string[];\n lifecycle_closure_like_resolution_patterns: string[];\n lifecycle_closure_like_actual_result_patterns: string[];\n };\n}\n\nfunction normalizeLifecyclePatternList(values: readonly string[] | undefined): string[] {\n return [...new Set((values ?? []).map((value) => value.trim().toLowerCase()).filter((value) => value.length > 0))].sort(\n (left, right) => left.localeCompare(right),\n );\n}\n\nfunction areSortedStringListsEqual(left: readonly string[], right: readonly string[]): boolean {\n if (left.length !== right.length) {\n return false;\n }\n return left.every((value, index) => value === right[index]);\n}\n\nfunction resolveLifecyclePatternPolicy(settings: LifecyclePatternSettingsSource): LifecyclePatternPolicy {\n const defaultStalePatterns = normalizeLifecyclePatternList(DEFAULT_VALIDATE_STALE_BLOCKER_REASON_PATTERNS);\n const defaultClosureLikePatterns = {\n blocked_reason: normalizeLifecyclePatternList(DEFAULT_VALIDATE_CLOSURE_LIKE_METADATA_FIELD_PATTERNS.blocked_reason),\n resolution: normalizeLifecyclePatternList(DEFAULT_VALIDATE_CLOSURE_LIKE_METADATA_FIELD_PATTERNS.resolution),\n actual_result: normalizeLifecyclePatternList(DEFAULT_VALIDATE_CLOSURE_LIKE_METADATA_FIELD_PATTERNS.actual_result),\n } satisfies Record<LifecyclePatternFieldKey, string[]>;\n const staleBlockerReasonPatterns = normalizeLifecyclePatternList(\n settings.validation.lifecycle_stale_blocker_reason_patterns,\n );\n const closureLikePatterns = {\n blocked_reason: normalizeLifecyclePatternList(settings.validation.lifecycle_closure_like_blocked_reason_patterns),\n resolution: normalizeLifecyclePatternList(settings.validation.lifecycle_closure_like_resolution_patterns),\n actual_result: normalizeLifecyclePatternList(settings.validation.lifecycle_closure_like_actual_result_patterns),\n } satisfies Record<LifecyclePatternFieldKey, string[]>;\n return {\n stale_blocker_reason_patterns: staleBlockerReasonPatterns,\n stale_blocker_reason_pattern_source: areSortedStringListsEqual(staleBlockerReasonPatterns, defaultStalePatterns)\n ? \"default\"\n : \"settings\",\n closure_like_metadata_field_patterns: closureLikePatterns,\n closure_like_metadata_field_pattern_sources: {\n blocked_reason: areSortedStringListsEqual(closureLikePatterns.blocked_reason, defaultClosureLikePatterns.blocked_reason)\n ? \"default\"\n : \"settings\",\n resolution: areSortedStringListsEqual(closureLikePatterns.resolution, defaultClosureLikePatterns.resolution)\n ? \"default\"\n : \"settings\",\n actual_result: areSortedStringListsEqual(closureLikePatterns.actual_result, defaultClosureLikePatterns.actual_result)\n ? \"default\"\n : \"settings\",\n },\n };\n}\n\nfunction resolveValidateMetadataProfile(value: string | undefined): ValidateMetadataProfile {\n const normalized = value?.trim().toLowerCase();\n if (!normalized || normalized.length === 0) {\n return \"core\";\n }\n if ((VALIDATE_METADATA_PROFILE_VALUES as readonly string[]).includes(normalized)) {\n return normalized as ValidateMetadataProfile;\n }\n throw new PmCliError(\n `Unknown --metadata-profile value \"${value}\". Supported values: ${VALIDATE_METADATA_PROFILE_VALUES.join(\", \")}.`,\n EXIT_CODE.USAGE,\n );\n}\n\nfunction resolveDependencyCycleSeverity(value: string | undefined): ValidateDependencyCycleSeverity {\n const normalized = value?.trim().toLowerCase();\n if (!normalized || normalized.length === 0) {\n return \"warn\";\n }\n if ((VALIDATE_DEPENDENCY_CYCLE_SEVERITY_VALUES as readonly string[]).includes(normalized)) {\n return normalized as ValidateDependencyCycleSeverity;\n }\n throw new PmCliError(\n `Unknown --dependency-cycle-severity value \"${value}\". Supported values: ${VALIDATE_DEPENDENCY_CYCLE_SEVERITY_VALUES.join(\", \")}.`,\n EXIT_CODE.USAGE,\n );\n}\n\nfunction normalizeMetadataRequiredFieldsFromSettings(\n values: readonly ValidateMetadataRequiredField[] | undefined,\n): ValidateMetadataRequiredField[] {\n const normalized = [...new Set((values ?? []).map((value) => value.trim().toLowerCase().replaceAll(\"-\", \"_\")))];\n return normalized\n .map((value) => METADATA_REQUIRED_FIELD_ALIASES[value])\n .filter((value): value is ValidateMetadataRequiredField => value !== undefined)\n .sort((left, right) => left.localeCompare(right));\n}\n\nfunction resolveValidateMetadataPolicy(\n profile: ValidateMetadataProfile,\n profileSource: \"default\" | \"settings\" | \"option\",\n configuredCustomFields: readonly ValidateMetadataRequiredField[],\n): ValidateMetadataPolicy {\n const normalizedCustomFields = normalizeMetadataRequiredFieldsFromSettings(configuredCustomFields);\n if (profile === \"core\") {\n return {\n profile,\n profile_source: profileSource,\n required_fields: [...CORE_METADATA_REQUIRED_FIELDS],\n configured_custom_fields: normalizedCustomFields,\n fallback_to_core: false,\n warnings: [],\n };\n }\n if (profile === \"strict\") {\n return {\n profile,\n profile_source: profileSource,\n required_fields: [...STRICT_METADATA_REQUIRED_FIELDS],\n configured_custom_fields: normalizedCustomFields,\n fallback_to_core: false,\n warnings: [],\n };\n }\n if (normalizedCustomFields.length > 0) {\n return {\n profile,\n profile_source: profileSource,\n required_fields: normalizedCustomFields,\n configured_custom_fields: normalizedCustomFields,\n fallback_to_core: false,\n warnings: [],\n };\n }\n return {\n profile,\n profile_source: profileSource,\n required_fields: [...CORE_METADATA_REQUIRED_FIELDS],\n configured_custom_fields: normalizedCustomFields,\n fallback_to_core: true,\n warnings: [\"validate_metadata_custom_profile_missing_required_fields:0\"],\n };\n}\n\nfunction isMetadataFieldMissing(\n item: ItemWithBody,\n field: ValidateMetadataRequiredField,\n statusRegistry: RuntimeStatusRegistry,\n): boolean {\n if (field === \"author\") {\n return !toNonEmptyStringOrUndefined(item.author);\n }\n if (field === \"acceptance_criteria\") {\n return !toNonEmptyStringOrUndefined(item.acceptance_criteria);\n }\n if (field === \"estimated_minutes\") {\n return !Number.isFinite(item.estimated_minutes);\n }\n if (field === \"close_reason\") {\n return normalizeStatusForRegistry(item.status, statusRegistry) === statusRegistry.close_status && !toNonEmptyStringOrUndefined(item.close_reason);\n }\n if (field === \"reviewer\") {\n return !toNonEmptyStringOrUndefined(item.reviewer);\n }\n if (field === \"risk\") {\n return !toNonEmptyStringOrUndefined(item.risk);\n }\n if (field === \"confidence\") {\n if (typeof item.confidence === \"number\") {\n return !Number.isFinite(item.confidence);\n }\n return !toNonEmptyStringOrUndefined(item.confidence);\n }\n if (field === \"sprint\") {\n return !toNonEmptyStringOrUndefined(item.sprint);\n }\n return !toNonEmptyStringOrUndefined(item.release);\n}\n\nfunction resolveFileScanMode(scanMode: string | undefined): ValidateFileScanMode {\n if (scanMode === undefined) {\n return \"default\";\n }\n const normalized = scanMode.trim().toLowerCase();\n if (normalized.length === 0) {\n return \"default\";\n }\n if (normalized === \"default\") {\n return \"default\";\n }\n if (normalized === \"tracked-all\" || normalized === \"tracked_all\") {\n return \"tracked-all\";\n }\n if (normalized === \"tracked-all-strict\" || normalized === \"tracked_all_strict\") {\n return \"tracked-all-strict\";\n }\n throw new PmCliError(\n `Unknown --scan-mode value \"${scanMode}\". Supported values: ${VALIDATE_FILE_SCAN_MODES.join(\", \")}.`,\n EXIT_CODE.USAGE,\n );\n}\n\nfunction resolveWorkspaceRoot(pmRoot: string): string {\n const resolvedPmRoot = path.resolve(pmRoot);\n const normalizedPmRoot = resolvedPmRoot.replaceAll(\"\\\\\", \"/\");\n if (normalizedPmRoot.endsWith(\"/.agents/pm\")) {\n return path.dirname(path.dirname(resolvedPmRoot));\n }\n const resolvedCwd = path.resolve(process.cwd());\n const canonicalPmRoot = realpathForWorkspaceRoot(resolvedPmRoot);\n const canonicalCwd = realpathForWorkspaceRoot(resolvedCwd);\n const relativeFromPmRoot = path.relative(canonicalPmRoot, canonicalCwd);\n const cwdInsidePmRoot =\n relativeFromPmRoot.length === 0 ||\n (!relativeFromPmRoot.startsWith(\"..\") && !path.isAbsolute(relativeFromPmRoot));\n if (cwdInsidePmRoot) {\n return resolvedPmRoot;\n }\n /* c8 ignore next 2 -- non-standard PM root layouts are integration-only edge cases. */\n return resolvedCwd;\n}\n\nfunction realpathForWorkspaceRoot(inputPath: string): string {\n try {\n return realpathSync.native(inputPath);\n } catch {\n return path.resolve(inputPath);\n }\n}\n\nasync function listFilesRecursive(basePath: string, relativePath: string, output: string[]): Promise<void> {\n const targetDirectory = relativePath.length > 0 ? path.join(basePath, relativePath) : basePath;\n let entries: Dirent[];\n try {\n entries = await fs.readdir(targetDirectory, { withFileTypes: true });\n } catch (error: unknown) {\n if (typeof error === \"object\" && error !== null && \"code\" in error && (error as { code?: string }).code === \"ENOENT\") {\n return;\n }\n throw error;\n }\n\n for (const entry of entries) {\n if (entry.name.startsWith(\".\")) {\n continue;\n }\n const childRelative = relativePath.length > 0 ? path.join(relativePath, entry.name) : entry.name;\n if (entry.isDirectory()) {\n if (DIRECTORY_IGNORE_SET.has(entry.name)) {\n continue;\n }\n await listFilesRecursive(basePath, childRelative, output);\n continue;\n }\n /* c8 ignore next 3 -- non-file dirent variants (symlink/socket) are filesystem-specific. */\n if (!entry.isFile()) {\n continue;\n }\n output.push(normalizeRelativePath(childRelative));\n }\n}\n\nasync function collectDefaultProjectFileCandidates(workspaceRoot: string): Promise<string[]> {\n const discovered: string[] = [];\n for (const directory of FILE_SCAN_DIRECTORIES) {\n await listFilesRecursive(workspaceRoot, directory, discovered);\n }\n for (const candidate of FILE_SCAN_ROOT_FILES) {\n const absolute = path.join(workspaceRoot, candidate);\n try {\n const stats = await fs.stat(absolute);\n /* c8 ignore start -- root-candidate presence depends on fixture workspace composition. */\n if (stats.isFile()) {\n discovered.push(normalizeRelativePath(candidate));\n }\n /* c8 ignore stop */\n } catch {\n // Ignore root-file candidates that are not present in this workspace.\n }\n }\n return [...new Set(discovered)].sort((left, right) => left.localeCompare(right));\n}\n\nasync function collectTrackedGitFileCandidates(workspaceRoot: string): Promise<string[] | null> {\n try {\n const { stdout } = await execFileAsync(\"git\", [\"ls-files\", \"-z\"], {\n cwd: workspaceRoot,\n encoding: \"utf8\",\n maxBuffer: GIT_LS_FILES_MAX_BUFFER,\n windowsHide: true,\n });\n const discovered = stdout\n .split(\"\\0\")\n .map((value) => normalizeRelativePath(value))\n .filter((value) => value.length > 0);\n return [...new Set(discovered)].sort((left, right) => left.localeCompare(right));\n } catch {\n /* c8 ignore start -- fallback path exercised only when git metadata is unavailable. */\n return null;\n /* c8 ignore stop */\n }\n}\n\ninterface FileCandidateCollection {\n requestedMode: ValidateFileScanMode;\n appliedMode: ValidateFileScanMode;\n source: FileCandidateSource;\n candidateFiles: string[];\n candidateTotal: number;\n candidateScanned: number;\n}\n\nfunction resolvePmInternalCandidatePrefixes(pmRoot: string, workspaceRoot: string): string[] {\n const prefixes = new Set<string>();\n const configuredDefault = normalizeRelativeDirectoryPath(PM_DIRNAME);\n if (configuredDefault.length > 0) {\n prefixes.add(configuredDefault);\n }\n const relativePmRoot = normalizeRelativeDirectoryPath(path.relative(workspaceRoot, pmRoot));\n if (relativePmRoot.length > 0 && !relativePmRoot.startsWith(\"..\")) {\n prefixes.add(relativePmRoot);\n }\n return [...prefixes].sort((left, right) => left.localeCompare(right));\n}\n\nfunction hasPathPrefix(candidate: string, prefixes: string[]): boolean {\n for (const prefix of prefixes) {\n if (candidate === prefix || candidate.startsWith(`${prefix}/`)) {\n return true;\n }\n }\n return false;\n}\n\nasync function collectProjectFileCandidates(\n workspaceRoot: string,\n scanMode: ValidateFileScanMode,\n): Promise<FileCandidateCollection> {\n if (scanMode === \"tracked-all\" || scanMode === \"tracked-all-strict\") {\n const trackedCandidates = await collectTrackedGitFileCandidates(workspaceRoot);\n if (trackedCandidates) {\n return {\n requestedMode: scanMode,\n appliedMode: scanMode,\n source: \"tracked-git\",\n candidateFiles: trackedCandidates,\n candidateTotal: trackedCandidates.length,\n candidateScanned: trackedCandidates.length,\n };\n }\n /* c8 ignore start -- deterministic fallback retained for non-git workspaces. */\n const fallbackCandidates = await collectDefaultProjectFileCandidates(workspaceRoot);\n return {\n requestedMode: scanMode,\n appliedMode: \"default\",\n source: \"tracked-all-fallback-default\",\n candidateFiles: fallbackCandidates,\n candidateTotal: fallbackCandidates.length,\n candidateScanned: fallbackCandidates.length,\n };\n /* c8 ignore stop */\n }\n\n const defaultCandidates = await collectDefaultProjectFileCandidates(workspaceRoot);\n return {\n requestedMode: scanMode,\n appliedMode: \"default\",\n source: \"default-curated\",\n candidateFiles: defaultCandidates,\n candidateTotal: defaultCandidates.length,\n candidateScanned: defaultCandidates.length,\n };\n}\n\nfunction summarizeList(values: string[], limit = DIAGNOSTIC_LIST_SUMMARY_LIMIT): { values: string[]; truncated: boolean } {\n /* c8 ignore start -- truncation behavior only surfaces with very large synthetic datasets. */\n if (values.length <= limit) {\n return { values, truncated: false };\n }\n return {\n values: values.slice(0, limit),\n truncated: true,\n };\n /* c8 ignore stop */\n}\n\nfunction summarizeFileList(\n values: string[],\n verboseFileLists: boolean,\n): {\n values: string[];\n truncated: boolean;\n total: number;\n} {\n if (verboseFileLists) {\n return {\n values,\n truncated: false,\n total: values.length,\n };\n }\n const summary = summarizeList(values, FILE_LIST_SUMMARY_LIMIT);\n return {\n values: summary.values,\n truncated: summary.truncated,\n total: values.length,\n };\n}\n\nconst RESOLUTION_REMEDIATION_FLAG_BY_FIELD: Record<ResolutionFieldKey, string> = {\n resolution: \"--resolution\",\n expected_result: \"--expected-result\",\n actual_result: \"--actual-result\",\n};\n\nconst RESOLUTION_REMEDIATION_PLACEHOLDER_BY_FIELD: Record<ResolutionFieldKey, string> = {\n resolution: \"Describe how this item was resolved\",\n expected_result: \"Describe the expected result\",\n actual_result: \"Describe the actual result\",\n};\n\nfunction buildResolutionRemediationCommand(row: { id: string; missing_fields: ResolutionFieldKey[] }): string {\n const fieldArguments = row.missing_fields\n .map((field) => `${RESOLUTION_REMEDIATION_FLAG_BY_FIELD[field]} \\\"${RESOLUTION_REMEDIATION_PLACEHOLDER_BY_FIELD[field]}\\\"`)\n .join(\" \");\n return `pm update ${row.id} ${fieldArguments} --message \\\"Backfill resolution metadata\\\"`;\n}\n\n/**\n * Attach a uniform, machine-executable `fix_hints` array to a validate check's\n * details when `--fix-hints` is requested. The resolution check's existing\n * per-row remediation commands (which already carry concrete item ids) are\n * aliased in so agents read one uniform field across every check; all other\n * checks derive one generic command per distinct warning code from the shared\n * remediation registry. Generic hints may contain `<id>`/`<field>`/`<path>`\n * placeholders the caller substitutes before running — they are templates, not\n * always directly executable as-is. Read-only: this only enriches the diagnostic\n * output, never mutates any item.\n */\nfunction attachValidateFixHints(check: ValidateCheck, checkWarnings: string[]): void {\n const existingResolutionHints = check.details?.missing_resolution_remediation_hints;\n const aliasedResolution = Array.isArray(existingResolutionHints) && existingResolutionHints.length > 0;\n const fixHints = aliasedResolution\n ? (existingResolutionHints as unknown[]).filter((hint): hint is string => typeof hint === \"string\")\n : buildRemediationCommands(checkWarnings);\n if (fixHints.length === 0) {\n return;\n }\n // The resolution check truncates its per-row hint list for low-token output;\n // carry that marker onto fix_hints so an agent knows the list is partial and\n // there are more items to repair beyond the ones shown.\n const truncated = aliasedResolution && check.details?.missing_resolution_remediation_hints_truncated === true;\n check.details = {\n ...check.details,\n fix_hints: fixHints,\n ...(truncated ? { fix_hints_truncated: true } : {}),\n };\n}\n\nfunction resolveRequestedChecks(options: ValidateCommandOptions): Set<ValidateCheckName> {\n const requested = new Set<ValidateCheckName>();\n if (options.checkMetadata) {\n requested.add(\"metadata\");\n }\n if (options.checkResolution) {\n requested.add(\"resolution\");\n }\n if (options.checkLifecycle || options.checkStaleBlockers) {\n requested.add(\"lifecycle\");\n }\n if (options.checkFiles) {\n requested.add(\"files\");\n }\n if (options.checkHistoryDrift) {\n requested.add(\"history_drift\");\n }\n if (options.checkCommandReferences) {\n requested.add(\"command_references\");\n }\n if (requested.size === 0) {\n requested.add(\"metadata\");\n requested.add(\"resolution\");\n requested.add(\"lifecycle\");\n requested.add(\"files\");\n requested.add(\"command_references\");\n requested.add(\"history_drift\");\n }\n return requested;\n}\n\nfunction buildMetadataCheck(\n items: ItemWithBody[],\n metadataPolicy: ValidateMetadataPolicy,\n statusRegistry: RuntimeStatusRegistry,\n verboseDiagnostics: boolean,\n): { check: ValidateCheck; warnings: string[] } {\n const missingByField = Object.fromEntries(\n SUPPORTED_METADATA_REQUIRED_FIELDS.map((field) => [field, [] as string[]]),\n ) as Record<ValidateMetadataRequiredField, string[]>;\n\n for (const item of items) {\n for (const field of SUPPORTED_METADATA_REQUIRED_FIELDS) {\n if (!isMetadataFieldMissing(item, field, statusRegistry)) {\n continue;\n }\n missingByField[field].push(item.id);\n }\n }\n\n const warningTokens = [...metadataPolicy.warnings];\n for (const field of metadataPolicy.required_fields) {\n const missingItems = missingByField[field];\n if (missingItems.length === 0) {\n continue;\n }\n warningTokens.push(`${METADATA_WARNING_TOKEN_BY_FIELD[field]}:${missingItems.length}`);\n }\n\n // Zero-suppress counts to reduce agent token cost (telemetry pm-tylj).\n // Only emit counts for the ACTIVE required fields of the resolved profile so a\n // looser profile (e.g. core) never reports missing reviewer/risk/sprint/etc.\n // Defensive guards (Gemini high #1, PR #78 follow-up): a future settings\n // shape could include an unsupported field in required_fields — fall back\n // to 0 instead of throwing TypeError, and skip writing when the count-key\n // mapping is undefined.\n const counts: Record<string, number> = {};\n for (const field of metadataPolicy.required_fields) {\n const value = missingByField[field]?.length ?? 0;\n const countKey = METADATA_COUNT_KEY_BY_FIELD[field];\n if (value > 0 && countKey) {\n counts[countKey] = value;\n }\n }\n const details: Record<string, unknown> = {\n checked_items: items.length,\n metadata_profile: metadataPolicy.profile,\n metadata_profile_source: metadataPolicy.profile_source,\n metadata_profile_fallback_to_core: metadataPolicy.fallback_to_core,\n required_fields: [...metadataPolicy.required_fields],\n supported_required_fields: [...SUPPORTED_METADATA_REQUIRED_FIELDS],\n counts,\n };\n if (metadataPolicy.configured_custom_fields.length > 0) {\n details.configured_custom_required_fields = [...metadataPolicy.configured_custom_fields];\n }\n\n // Only emit per-field item_ids/truncated keys for the ACTIVE required fields of\n // the resolved profile (and only when there are missing items). This stops a\n // looser profile (e.g. core) from emitting the identical full ID array for\n // reviewer/risk/confidence/sprint/release that it does not even require\n // (pm-edge #2 — ~150 redundant lines per validate run on minimal/core).\n // Defensive guard (Gemini high #2, PR #78 follow-up): same optional-chain\n // safety as the counts loop above — never throw if a future settings shape\n // includes an unsupported field.\n for (const field of metadataPolicy.required_fields) {\n const missing = missingByField[field];\n if (!missing || missing.length === 0) {\n continue;\n }\n const idsKey = METADATA_ITEM_IDS_KEY_BY_FIELD[field];\n const truncatedKey = METADATA_TRUNCATED_KEY_BY_FIELD[field];\n if (!idsKey || !truncatedKey) {\n continue;\n }\n const summarized = summarizeList(missing, verboseDiagnostics ? missing.length : DIAGNOSTIC_LIST_SUMMARY_LIMIT);\n details[idsKey] = summarized.values;\n details[truncatedKey] = summarized.truncated;\n }\n\n return {\n check: {\n name: \"metadata\",\n status: warningTokens.length === 0 ? \"ok\" : \"warn\",\n details,\n },\n warnings: warningTokens,\n };\n}\n\nfunction buildResolutionCheck(\n items: ItemWithBody[],\n statusRegistry: RuntimeStatusRegistry,\n verboseDiagnostics: boolean,\n): { check: ValidateCheck; warnings: string[] } {\n const terminalDoneStatuses = new Set<string>(statusRegistry.terminal_done_statuses);\n terminalDoneStatuses.add(statusRegistry.close_status);\n const closedItems = items.filter((item) => terminalDoneStatuses.has(normalizeStatusForRegistry(item.status, statusRegistry)));\n const missingResolutionRows: Array<{ id: string; missing_fields: ResolutionFieldKey[] }> = [];\n\n for (const item of closedItems) {\n const missingFields = RESOLUTION_FIELD_KEYS.filter((field) => !toNonEmptyStringOrUndefined(item[field]));\n if (missingFields.length === 0) {\n continue;\n }\n missingResolutionRows.push({\n id: item.id,\n missing_fields: missingFields,\n });\n }\n\n const warnings =\n missingResolutionRows.length > 0 ? [`validate_resolution_missing_fields:${missingResolutionRows.length}`] : [];\n const diagnosticLimit = verboseDiagnostics ? Number.POSITIVE_INFINITY : DIAGNOSTIC_LIST_SUMMARY_LIMIT;\n const summarizedRows = summarizeList(\n missingResolutionRows.map((row) => `${row.id}:${row.missing_fields.join(\",\")}`),\n diagnosticLimit,\n );\n const remediationHints = missingResolutionRows.map((row) => buildResolutionRemediationCommand(row));\n const summarizedHints = summarizeList(remediationHints, diagnosticLimit);\n return {\n check: {\n name: \"resolution\",\n status: warnings.length === 0 ? \"ok\" : \"warn\",\n details: {\n checked_closed_items: closedItems.length,\n missing_resolution_items: missingResolutionRows.length,\n missing_resolution_rows: summarizedRows.values,\n missing_resolution_rows_truncated: summarizedRows.truncated,\n missing_resolution_remediation_hints: summarizedHints.values,\n missing_resolution_remediation_hints_truncated: summarizedHints.truncated,\n },\n },\n warnings,\n };\n}\n\nfunction buildLifecycleDependencyGraph(activeItems: ItemWithBody[]): Map<string, string[]> {\n const activeItemIds = new Set(activeItems.map((item) => item.id));\n const graph = new Map<string, string[]>();\n const sortedItems = [...activeItems].sort((left, right) => left.id.localeCompare(right.id));\n for (const item of sortedItems) {\n const edges = new Set<string>();\n for (const dependency of item.dependencies ?? []) {\n const dependencyId = toMeaningfulString(dependency.id);\n if (!dependencyId || !activeItemIds.has(dependencyId)) {\n continue;\n }\n edges.add(dependencyId);\n }\n graph.set(item.id, [...edges].sort((left, right) => left.localeCompare(right)));\n }\n return graph;\n}\n\nfunction findLifecycleDependencyCycleComponents(graph: Map<string, string[]>): string[][] {\n let nextIndex = 0;\n const indexById = new Map<string, number>();\n const lowLinkById = new Map<string, number>();\n const stack: string[] = [];\n const inStack = new Set<string>();\n const components: string[][] = [];\n\n const visit = (id: string): void => {\n indexById.set(id, nextIndex);\n lowLinkById.set(id, nextIndex);\n nextIndex += 1;\n stack.push(id);\n inStack.add(id);\n\n for (const dependencyId of graph.get(id) ?? []) {\n if (!indexById.has(dependencyId)) {\n visit(dependencyId);\n lowLinkById.set(id, Math.min(lowLinkById.get(id)!, lowLinkById.get(dependencyId)!));\n } else if (inStack.has(dependencyId)) {\n lowLinkById.set(id, Math.min(lowLinkById.get(id)!, indexById.get(dependencyId)!));\n }\n }\n\n if (lowLinkById.get(id) !== indexById.get(id)) {\n return;\n }\n const component: string[] = [];\n while (stack.length > 0) {\n const member = stack.pop()!;\n inStack.delete(member);\n component.push(member);\n if (member === id) {\n break;\n }\n }\n component.sort((left, right) => left.localeCompare(right));\n components.push(component);\n };\n\n const sortedNodeIds = [...graph.keys()].sort((left, right) => left.localeCompare(right));\n for (const id of sortedNodeIds) {\n if (!indexById.has(id)) {\n visit(id);\n }\n }\n\n const cycleComponents = components.filter((component) => {\n if (component.length > 1) {\n return true;\n }\n const selfId = component[0];\n return (graph.get(selfId) ?? []).includes(selfId);\n });\n return cycleComponents.sort(\n (left, right) =>\n left[0].localeCompare(right[0]) ||\n left.length - right.length ||\n left.join(\",\").localeCompare(right.join(\",\")),\n );\n}\n\nfunction resolveLifecycleDependencyCycleSamplePath(component: string[], graph: Map<string, string[]>): string[] {\n const start = component[0];\n if (component.length === 1) {\n return [start, start];\n }\n const componentSet = new Set(component);\n const path: string[] = [start];\n const visited = new Set<string>([start]);\n\n const search = (current: string): boolean => {\n const neighbors = (graph.get(current) ?? []).filter((candidate) => componentSet.has(candidate));\n for (const next of neighbors) {\n if (next === start && path.length > 1) {\n path.push(start);\n return true;\n }\n if (visited.has(next)) {\n continue;\n }\n visited.add(next);\n path.push(next);\n if (search(next)) {\n return true;\n }\n path.pop();\n visited.delete(next);\n }\n return false;\n };\n\n if (search(start)) {\n return [...path];\n }\n return [...component, start];\n}\n\nfunction detectLifecycleDependencyCycles(activeItems: ItemWithBody[]): {\n cycle_count: number;\n cycle_item_ids: string[];\n cycle_sample_paths: string[];\n} {\n const graph = buildLifecycleDependencyGraph(activeItems);\n const cycleComponents = findLifecycleDependencyCycleComponents(graph);\n const cycleItemIds = [...new Set(cycleComponents.flat())].sort((left, right) => left.localeCompare(right));\n const cycleSamplePaths = cycleComponents.map((component) =>\n resolveLifecycleDependencyCycleSamplePath(component, graph).join(\"->\"),\n );\n return {\n cycle_count: cycleComponents.length,\n cycle_item_ids: cycleItemIds,\n cycle_sample_paths: cycleSamplePaths,\n };\n}\n\nfunction buildLifecycleCheck(\n items: ItemWithBody[],\n includeStaleBlockers: boolean,\n dependencyCycleSeverity: ValidateDependencyCycleSeverity,\n statusRegistry: RuntimeStatusRegistry,\n lifecyclePatternPolicy: LifecyclePatternPolicy,\n verboseDiagnostics: boolean,\n): { check: ValidateCheck; warnings: string[] } {\n const itemsById = new Map(items.map((item) => [item.id, item]));\n const blockedStatuses =\n statusRegistry.blocked_statuses.size > 0 ? statusRegistry.blocked_statuses : new Set<string>([\"blocked\"]);\n const activeItems = items.filter((item) => !isTerminalStatus(item.status, statusRegistry));\n const closureLikeRows: Array<{ id: string; fields: string[] }> = [];\n const terminalParentRows: Array<{ id: string; parent_id: string; parent_status: string }> = [];\n const staleBlockerRows: Array<{ id: string; status: string; reasons: string[] }> = [];\n\n for (const item of activeItems) {\n const closureLikeFields = Object.entries(lifecyclePatternPolicy.closure_like_metadata_field_patterns)\n .filter(([field, patterns]) => {\n const value = toMeaningfulString(item[field as keyof ItemWithBody]);\n if (!value) {\n return false;\n }\n const normalized = value.toLowerCase();\n return patterns.some((pattern) => normalized.includes(pattern));\n })\n .map(([field]) => field)\n .sort((left, right) => left.localeCompare(right));\n\n if (closureLikeFields.length > 0) {\n closureLikeRows.push({\n id: item.id,\n fields: closureLikeFields,\n });\n }\n\n const parentId = toMeaningfulString(item.parent);\n if (parentId) {\n const parent = itemsById.get(parentId);\n if (parent && isTerminalStatus(parent.status, statusRegistry)) {\n terminalParentRows.push({\n id: item.id,\n parent_id: parent.id,\n parent_status: parent.status,\n });\n }\n }\n\n if (includeStaleBlockers) {\n const blockedBy = toMeaningfulString(item.blocked_by);\n const blockedReason = toMeaningfulString(item.blocked_reason);\n const blockedReasonNormalized = blockedReason?.toLowerCase();\n const reasons: string[] = [];\n const normalizedStatus = normalizeStatusForRegistry(item.status, statusRegistry);\n\n if (!blockedStatuses.has(normalizedStatus)) {\n if (blockedBy) {\n reasons.push(\"non_blocked_status_has_blocked_by\");\n }\n if (blockedReason) {\n reasons.push(\"non_blocked_status_has_blocked_reason\");\n }\n } else {\n if (!blockedBy && !blockedReason) {\n reasons.push(\"blocked_status_missing_blocker_context\");\n }\n if (blockedReasonNormalized?.includes(\"no active blocker\")) {\n reasons.push(\"blocked_status_reason_reports_no_active_blocker\");\n }\n if (\n blockedReasonNormalized &&\n lifecyclePatternPolicy.stale_blocker_reason_patterns.some((pattern) => blockedReasonNormalized.includes(pattern))\n ) {\n reasons.push(\"blocked_status_reason_matches_stale_pattern\");\n }\n }\n\n if (reasons.length > 0) {\n staleBlockerRows.push({\n id: item.id,\n status: item.status,\n reasons: [...new Set(reasons)].sort((left, right) => left.localeCompare(right)),\n });\n }\n }\n }\n\n closureLikeRows.sort((left, right) => left.id.localeCompare(right.id));\n terminalParentRows.sort(\n (left, right) => left.id.localeCompare(right.id) || left.parent_id.localeCompare(right.parent_id),\n );\n staleBlockerRows.sort((left, right) => left.id.localeCompare(right.id));\n const dependencyCycleDiagnostics = detectLifecycleDependencyCycles(activeItems);\n\n const warnings: string[] = [];\n if (closureLikeRows.length > 0) {\n warnings.push(`validate_lifecycle_active_closure_like_metadata:${closureLikeRows.length}`);\n }\n if (terminalParentRows.length > 0) {\n warnings.push(`validate_lifecycle_active_terminal_parent:${terminalParentRows.length}`);\n }\n if (includeStaleBlockers && staleBlockerRows.length > 0) {\n warnings.push(`validate_lifecycle_stale_blockers:${staleBlockerRows.length}`);\n }\n if (dependencyCycleDiagnostics.cycle_count > 0 && dependencyCycleSeverity !== \"off\") {\n warnings.push(\n `${\n dependencyCycleSeverity === \"error\"\n ? \"validate_lifecycle_dependency_cycles_error\"\n : \"validate_lifecycle_dependency_cycles\"\n }:${dependencyCycleDiagnostics.cycle_count}`,\n );\n }\n\n const diagnosticLimit = verboseDiagnostics ? Number.POSITIVE_INFINITY : DIAGNOSTIC_LIST_SUMMARY_LIMIT;\n const summarizedClosureLikeRows = summarizeList(\n closureLikeRows.map((row) => `${row.id}:${row.fields.join(\",\")}`),\n diagnosticLimit,\n );\n const summarizedTerminalParentRows = summarizeList(\n terminalParentRows.map((row) => `${row.id}:${row.parent_id}:${row.parent_status}`),\n diagnosticLimit,\n );\n const summarizedStaleBlockerRows = summarizeList(\n staleBlockerRows.map((row) => `${row.id}:${row.status}:${row.reasons.join(\",\")}`),\n diagnosticLimit,\n );\n const summarizedDependencyCycleItemIds = summarizeList(dependencyCycleDiagnostics.cycle_item_ids, diagnosticLimit);\n const summarizedDependencyCycleSamplePaths = summarizeList(dependencyCycleDiagnostics.cycle_sample_paths, diagnosticLimit);\n\n return {\n check: {\n name: \"lifecycle\",\n status: dependencyCycleDiagnostics.cycle_count > 0 && dependencyCycleSeverity === \"error\"\n ? \"error\"\n : warnings.length === 0\n ? \"ok\"\n : \"warn\",\n details: {\n checked_active_items: activeItems.length,\n active_closure_like_metadata_items: closureLikeRows.length,\n active_closure_like_metadata_rows: summarizedClosureLikeRows.values,\n active_closure_like_metadata_rows_truncated: summarizedClosureLikeRows.truncated,\n active_terminal_parent_items: terminalParentRows.length,\n active_terminal_parent_rows: summarizedTerminalParentRows.values,\n active_terminal_parent_rows_truncated: summarizedTerminalParentRows.truncated,\n stale_blocker_checks_enabled: includeStaleBlockers,\n stale_blocker_items: staleBlockerRows.length,\n stale_blocker_rows: summarizedStaleBlockerRows.values,\n stale_blocker_rows_truncated: summarizedStaleBlockerRows.truncated,\n dependency_cycle_severity_policy: dependencyCycleSeverity,\n dependency_cycle_count: dependencyCycleDiagnostics.cycle_count,\n dependency_cycle_item_count: dependencyCycleDiagnostics.cycle_item_ids.length,\n dependency_cycle_item_ids: summarizedDependencyCycleItemIds.values,\n dependency_cycle_item_ids_truncated: summarizedDependencyCycleItemIds.truncated,\n dependency_cycle_sample_paths: summarizedDependencyCycleSamplePaths.values,\n dependency_cycle_sample_paths_truncated: summarizedDependencyCycleSamplePaths.truncated,\n stale_blocker_reason_patterns: [...lifecyclePatternPolicy.stale_blocker_reason_patterns],\n stale_blocker_reason_pattern_source: lifecyclePatternPolicy.stale_blocker_reason_pattern_source,\n closure_like_blocked_reason_patterns: [\n ...lifecyclePatternPolicy.closure_like_metadata_field_patterns.blocked_reason,\n ],\n closure_like_blocked_reason_pattern_source:\n lifecyclePatternPolicy.closure_like_metadata_field_pattern_sources.blocked_reason,\n closure_like_resolution_patterns: [...lifecyclePatternPolicy.closure_like_metadata_field_patterns.resolution],\n closure_like_resolution_pattern_source:\n lifecyclePatternPolicy.closure_like_metadata_field_pattern_sources.resolution,\n closure_like_actual_result_patterns: [...lifecyclePatternPolicy.closure_like_metadata_field_patterns.actual_result],\n closure_like_actual_result_pattern_source:\n lifecyclePatternPolicy.closure_like_metadata_field_pattern_sources.actual_result,\n },\n },\n warnings,\n };\n}\n\nasync function buildFilesCheck(\n items: ItemWithBody[],\n workspaceRoot: string,\n pmRoot: string,\n fileScanMode: ValidateFileScanMode,\n includePmInternals: boolean,\n verboseFileLists: boolean,\n): Promise<{ check: ValidateCheck; warnings: string[] }> {\n const linkedProjectPaths = new Set<string>();\n const missingLinkedPaths: string[] = [];\n\n for (const item of items) {\n const linkedArtifacts = [...(item.files ?? []), ...(item.docs ?? [])];\n for (const artifact of linkedArtifacts) {\n if (artifact.scope !== \"project\") {\n continue;\n }\n const normalizedPath = normalizeRelativePath(artifact.path);\n if (normalizedPath.length === 0) {\n continue;\n }\n linkedProjectPaths.add(normalizedPath);\n const absolutePath = path.isAbsolute(artifact.path) ? artifact.path : path.resolve(workspaceRoot, artifact.path);\n try {\n const stats = await fs.stat(absolutePath);\n if (!stats.isFile()) {\n missingLinkedPaths.push(normalizedPath);\n }\n } catch {\n missingLinkedPaths.push(normalizedPath);\n }\n }\n }\n\n const uniqueMissingLinkedPaths = [...new Set(missingLinkedPaths)].sort((left, right) => left.localeCompare(right));\n const fileCandidates = await collectProjectFileCandidates(workspaceRoot, fileScanMode);\n const strictTrackedAllMode = fileScanMode === \"tracked-all-strict\";\n const strictModeForcesPmInternals = strictTrackedAllMode && !includePmInternals;\n const includePmInternalsEffective = includePmInternals || strictTrackedAllMode;\n const pmInternalCandidatePrefixes = includePmInternalsEffective ? [] : resolvePmInternalCandidatePrefixes(pmRoot, workspaceRoot);\n const excludedPmInternalPaths =\n pmInternalCandidatePrefixes.length === 0\n ? []\n : fileCandidates.candidateFiles.filter((candidate) => hasPathPrefix(candidate, pmInternalCandidatePrefixes));\n const candidateFiles =\n pmInternalCandidatePrefixes.length === 0\n ? fileCandidates.candidateFiles\n : fileCandidates.candidateFiles.filter((candidate) => !hasPathPrefix(candidate, pmInternalCandidatePrefixes));\n const excludedPmInternalCount = excludedPmInternalPaths.length;\n const excludedByReason: Record<string, unknown> = {};\n if (excludedPmInternalCount > 0) {\n const summarizedPmInternalPaths = summarizeFileList(excludedPmInternalPaths, verboseFileLists);\n excludedByReason.pm_internals = {\n count: excludedPmInternalCount,\n paths: summarizedPmInternalPaths.values,\n paths_truncated: summarizedPmInternalPaths.truncated,\n paths_total: summarizedPmInternalPaths.total,\n };\n }\n const orphanedFiles = candidateFiles.filter((candidate) => !linkedProjectPaths.has(candidate));\n const warnings: string[] = [];\n if (strictModeForcesPmInternals) {\n warnings.push(\"validate_files_tracked_all_strict_forces_pm_internals\");\n }\n if (uniqueMissingLinkedPaths.length > 0) {\n warnings.push(`validate_files_missing_linked_paths:${uniqueMissingLinkedPaths.length}`);\n }\n if (orphanedFiles.length > 0) {\n warnings.push(`validate_files_orphaned_paths:${orphanedFiles.length}`);\n }\n const summarizedMissing = summarizeFileList(uniqueMissingLinkedPaths, verboseFileLists);\n const summarizedOrphaned = summarizeFileList(orphanedFiles, verboseFileLists);\n\n return {\n check: {\n name: \"files\",\n status: warnings.length === 0 ? \"ok\" : \"warn\",\n details: {\n workspace_root: workspaceRoot,\n scan_mode_requested: fileCandidates.requestedMode,\n scan_mode_applied: fileCandidates.appliedMode,\n strict_tracked_all_mode: strictTrackedAllMode,\n strict_mode_forces_pm_internals: strictModeForcesPmInternals,\n strict_mode_forces_pm_internals_notice: strictModeForcesPmInternals\n ? \"tracked-all-strict force-enables PM internals; pass --include-pm-internals to make inclusion explicit.\"\n : null,\n file_list_detail_mode: verboseFileLists ? \"full\" : \"summary\",\n file_list_summary_limit: FILE_LIST_SUMMARY_LIMIT,\n candidate_scan_source: fileCandidates.source,\n include_pm_internals: includePmInternalsEffective,\n include_pm_internals_requested: includePmInternals,\n pm_internal_candidate_prefixes: pmInternalCandidatePrefixes,\n pm_internal_excluded_count: excludedPmInternalCount,\n excluded_total: excludedPmInternalCount,\n excluded_by_reason: excludedByReason,\n linked_project_paths: linkedProjectPaths.size,\n candidate_total_raw: fileCandidates.candidateTotal,\n candidate_scanned_raw: fileCandidates.candidateScanned,\n candidate_total: candidateFiles.length,\n candidate_scanned: candidateFiles.length,\n scanned_candidate_files: candidateFiles.length,\n missing_linked_paths_count: uniqueMissingLinkedPaths.length,\n missing_linked_paths_total: summarizedMissing.total,\n missing_linked_paths: summarizedMissing.values,\n missing_linked_paths_truncated: summarizedMissing.truncated,\n orphaned_paths_count: orphanedFiles.length,\n orphaned_paths_total: summarizedOrphaned.total,\n orphaned_paths: summarizedOrphaned.values,\n orphaned_paths_truncated: summarizedOrphaned.truncated,\n },\n },\n warnings,\n };\n}\n\nasync function buildHistoryDriftCheck(\n pmRoot: string,\n items: ItemWithBody[],\n verboseDiagnostics: boolean,\n): Promise<{ check: ValidateCheck; warnings: string[] }> {\n const { missingStreams, unreadableStreams, hashMismatches, chainMismatches, driftedItems } = await scanHistoryDrift(\n pmRoot,\n items,\n );\n const warnings: string[] = [];\n if (missingStreams.length > 0) {\n warnings.push(`validate_history_drift_missing_streams:${missingStreams.length}`);\n }\n if (unreadableStreams.length > 0) {\n warnings.push(`validate_history_drift_unreadable_streams:${unreadableStreams.length}`);\n }\n if (hashMismatches.length > 0) {\n warnings.push(`validate_history_drift_hash_mismatches:${hashMismatches.length}`);\n }\n if (chainMismatches.length > 0) {\n warnings.push(`validate_history_drift_chain_mismatches:${chainMismatches.length}`);\n }\n const diagnosticLimit = verboseDiagnostics ? Number.POSITIVE_INFINITY : DIAGNOSTIC_LIST_SUMMARY_LIMIT;\n const summarizedDrifted = summarizeList(driftedItems, diagnosticLimit);\n return {\n check: {\n name: \"history_drift\",\n status: warnings.length === 0 ? \"ok\" : \"warn\",\n details: {\n checked_items: items.length,\n drifted_items_count: driftedItems.length,\n drifted_items: summarizedDrifted.values,\n drifted_items_truncated: summarizedDrifted.truncated,\n counts: {\n missing_streams: missingStreams.length,\n unreadable_streams: unreadableStreams.length,\n hash_mismatches: hashMismatches.length,\n chain_mismatches: chainMismatches.length,\n },\n },\n },\n warnings,\n };\n}\n\nfunction summarizeCommandReferenceRow(ownerId: string, referencedId: string, command: string): string {\n const normalizedCommand = command.trim().replaceAll(/\\s+/g, \" \");\n const commandPreview = normalizedCommand.length > 120 ? `${normalizedCommand.slice(0, 117)}...` : normalizedCommand;\n return `${ownerId}:${referencedId}:${commandPreview}`;\n}\n\nfunction buildCommandReferencesCheck(\n items: ItemWithBody[],\n idPrefix: string,\n verboseDiagnostics: boolean,\n): { check: ValidateCheck; warnings: string[] } {\n const knownIds = new Set(items.map((item) => item.id.toLowerCase()));\n let linkedCommandsScanned = 0;\n let referencedPmIdCount = 0;\n const referencedPmIds = new Set<string>();\n const staleReferenceRows: string[] = [];\n\n for (const item of items) {\n for (const linkedTest of item.tests ?? []) {\n if (typeof linkedTest.command !== \"string\" || linkedTest.command.trim().length === 0) {\n continue;\n }\n linkedCommandsScanned += 1;\n const referencedIds = extractReferencedPmItemIdsFromCommand(linkedTest.command, idPrefix);\n if (referencedIds.length === 0) {\n continue;\n }\n referencedPmIdCount += referencedIds.length;\n for (const referencedId of referencedIds) {\n referencedPmIds.add(referencedId);\n if (!knownIds.has(referencedId.toLowerCase())) {\n staleReferenceRows.push(summarizeCommandReferenceRow(item.id, referencedId, linkedTest.command));\n }\n }\n }\n }\n\n const uniqueStaleReferenceRows = [...new Set(staleReferenceRows)].sort((left, right) => left.localeCompare(right));\n const stalePmIds = [...new Set(uniqueStaleReferenceRows.map((row) => row.split(\":\")[1] ?? \"\"))]\n .filter((value) => value.length > 0)\n .sort((left, right) => left.localeCompare(right));\n const warnings =\n uniqueStaleReferenceRows.length > 0 ? [`validate_command_references_stale_pm_ids:${uniqueStaleReferenceRows.length}`] : [];\n const diagnosticLimit = verboseDiagnostics ? Number.POSITIVE_INFINITY : DIAGNOSTIC_LIST_SUMMARY_LIMIT;\n const summarizedRows = summarizeList(uniqueStaleReferenceRows, diagnosticLimit);\n const summarizedStalePmIds = summarizeList(stalePmIds, diagnosticLimit);\n const summarizedReferencedPmIds = summarizeList(\n [...referencedPmIds].sort((left, right) => left.localeCompare(right)),\n diagnosticLimit,\n );\n\n return {\n check: {\n name: \"command_references\",\n status: warnings.length === 0 ? \"ok\" : \"warn\",\n details: {\n checked_items: items.length,\n linked_commands_scanned: linkedCommandsScanned,\n referenced_pm_ids_count: referencedPmIdCount,\n unique_referenced_pm_ids_count: referencedPmIds.size,\n unique_referenced_pm_ids: summarizedReferencedPmIds.values,\n unique_referenced_pm_ids_truncated: summarizedReferencedPmIds.truncated,\n stale_pm_id_references_count: uniqueStaleReferenceRows.length,\n stale_pm_ids_count: stalePmIds.length,\n stale_pm_ids: summarizedStalePmIds.values,\n stale_pm_ids_truncated: summarizedStalePmIds.truncated,\n stale_pm_id_reference_rows: summarizedRows.values,\n stale_pm_id_reference_rows_truncated: summarizedRows.truncated,\n },\n },\n warnings,\n };\n}\n\nexport async function runValidate(options: ValidateCommandOptions, global: GlobalOptions): Promise<ValidateResult> {\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 typeRegistry = resolveItemTypeRegistry(settings, getActiveExtensionRegistrations());\n const itemReadWarnings: string[] = [];\n const items = await listAllFrontMatterWithBody(\n pmRoot,\n settings.item_format,\n typeRegistry.type_to_folder,\n itemReadWarnings,\n settings.schema,\n );\n const requestedChecks = resolveRequestedChecks(options);\n const metadataProfileSource: \"default\" | \"settings\" | \"option\" =\n typeof options.metadataProfile === \"string\" ? \"option\" : \"settings\";\n const metadataProfile = resolveValidateMetadataProfile(\n typeof options.metadataProfile === \"string\" ? options.metadataProfile : settings.validation.metadata_profile,\n );\n const metadataPolicy = resolveValidateMetadataPolicy(\n metadataProfile,\n metadataProfileSource,\n settings.validation.metadata_required_fields,\n );\n const lifecyclePatternPolicy = resolveLifecyclePatternPolicy(settings);\n const dependencyCycleSeverity = resolveDependencyCycleSeverity(options.dependencyCycleSeverity);\n const fileScanMode = resolveFileScanMode(options.scanMode);\n const workspaceRoot = resolveWorkspaceRoot(pmRoot);\n const checks: ValidateCheck[] = [];\n const warnings = [...new Set(itemReadWarnings)];\n const fixHintsEnabled = options.fixHints === true;\n const record = (built: { check: ValidateCheck; warnings: string[] }): void => {\n if (fixHintsEnabled) {\n attachValidateFixHints(built.check, built.warnings);\n }\n checks.push(built.check);\n warnings.push(...built.warnings);\n };\n\n if (requestedChecks.has(\"metadata\")) {\n record(buildMetadataCheck(items, metadataPolicy, statusRegistry, Boolean(options.verboseDiagnostics)));\n }\n if (requestedChecks.has(\"resolution\")) {\n record(buildResolutionCheck(items, statusRegistry, Boolean(options.verboseDiagnostics)));\n }\n if (requestedChecks.has(\"lifecycle\")) {\n record(\n buildLifecycleCheck(\n items,\n Boolean(options.checkStaleBlockers),\n dependencyCycleSeverity,\n statusRegistry,\n lifecyclePatternPolicy,\n Boolean(options.verboseDiagnostics),\n ),\n );\n }\n if (requestedChecks.has(\"files\")) {\n record(\n await buildFilesCheck(\n items,\n workspaceRoot,\n pmRoot,\n fileScanMode,\n Boolean(options.includePmInternals),\n Boolean(options.verboseFileLists),\n ),\n );\n }\n if (requestedChecks.has(\"command_references\")) {\n record(buildCommandReferencesCheck(items, settings.id_prefix, Boolean(options.verboseDiagnostics)));\n }\n if (requestedChecks.has(\"history_drift\")) {\n record(await buildHistoryDriftCheck(pmRoot, items, Boolean(options.verboseDiagnostics)));\n }\n\n const normalizedWarnings = [...new Set(warnings)].sort((left, right) => left.localeCompare(right));\n const hasErrors = checks.some((check) => check.status === \"error\");\n return {\n ok: !hasErrors,\n has_warnings: normalizedWarnings.length > 0,\n checks,\n warnings: normalizedWarnings,\n generated_at: nowIso(),\n };\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ;AACf,SAAS,oBAAoB;AAE7B,SAAS,gBAAgB;AACzB,OAAO,UAAU;AACjB,SAAS,iBAAiB;;;;;;;;AA+B1B,IAAM,wBAAwB,CAAC,OAAO,SAAS,MAAM;AACrD,IAAM,uBAAuB;EAC3B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEF,IAAM,uBAAuB,oBAAI,IAAI,CAAC,gBAAgB,QAAQ,WAAW,WAAW,QAAQ,UAAU,CAAC;AACvG,IAAM,wBAAwB,CAAC,cAAc,mBAAmB,eAAe;AAE/E,IAAM,2BAA2B,CAAC,WAAW,eAAe,oBAAoB;AAChF,IAAM,mCAAmC,CAAC,QAAQ,UAAU,QAAQ;AACpE,IAAM,4CAA4C,CAAC,OAAO,QAAQ,OAAO;AAGzE,IAAM,gCAAgC,CAAC,UAAU,uBAAuB,qBAAqB,cAAc;AAC3G,IAAM,kCAAkC;EACtC,GAAG;EACH;EACA;EACA;EACA;EACA;;AAEF,IAAM,qCAAqC;EACzC,GAAG,oBAAI,IAAI,CAAC,GAAG,+BAA+B,CAAC;;AAEjD,IAAM,kCAAiF;EACrF,QAAQ;EACR,qBAAqB;EACrB,uBAAuB;EACvB,mBAAmB;EACnB,qBAAqB;EACrB,UAAU;EACV,cAAc;EACd,gBAAgB;EAChB,UAAU;EACV,MAAM;EACN,YAAY;EACZ,QAAQ;EACR,SAAS;;AAEX,IAAM,kCAAiF;EACrF,QAAQ;EACR,qBAAqB;EACrB,mBAAmB;EACnB,cAAc;EACd,UAAU;EACV,MAAM;EACN,YAAY;EACZ,QAAQ;EACR,SAAS;;AAEX,IAAM,8BAA6E;EACjF,QAAQ;EACR,qBAAqB;EACrB,mBAAmB;EACnB,cAAc;EACd,UAAU;EACV,MAAM;EACN,YAAY;EACZ,QAAQ;EACR,SAAS;;AAEX,IAAM,iCAAgF;EACpF,QAAQ;EACR,qBAAqB;EACrB,mBAAmB;EACnB,cAAc;EACd,UAAU;EACV,MAAM;EACN,YAAY;EACZ,QAAQ;EACR,SAAS;;AAEX,IAAM,kCAAiF;EACrF,QAAQ;EACR,qBAAqB;EACrB,mBAAmB;EACnB,cAAc;EACd,UAAU;EACV,MAAM;EACN,YAAY;EACZ,QAAQ;EACR,SAAS;;AAEX,IAAM,0BAA0B,KAAK,OAAO;AAC5C,IAAM,0BAA0B;AAChC,IAAM,gCAAgC;AACtC,IAAM,gBAAgB,UAAU,QAAQ;AAiCxC,SAAS,sBAAsB,OAAa;AAC1C,SAAO,MAAM,WAAW,MAAM,GAAG,EAAE,QAAQ,UAAU,EAAE,EAAE,QAAQ,QAAQ,EAAE;AAC7E;AAEA,SAAS,+BAA+B,OAAa;AACnD,QAAM,aAAa,sBAAsB,KAAK;AAC9C,SAAO,WAAW,QAAQ,QAAQ,EAAE;AACtC;AAIA,SAAS,mBAAmB,OAAc;AACxC,QAAM,aAAa,4BAA4B,KAAK;AACpD,MAAI,CAAC,YAAY;AACf,WAAO;EACT;AACA,QAAM,UAAU,WAAW,YAAW;AACtC,MAAI,YAAY,UAAU,YAAY,UAAU,YAAY,SAAS,YAAY,MAAM;AACrF,WAAO;EACT;AACA,SAAO;AACT;AAEA,SAAS,2BAA2B,QAAgB,gBAAqC;AACvF,SAAO,qBAAqB,QAAQ,cAAc,KAAK;AACzD;AAEA,SAAS,iBAAiB,QAAgB,gBAAqC;AAC7E,SAAO,eAAe,kBAAkB,IAAI,2BAA2B,QAAQ,cAAc,CAAC;AAChG;AA6BA,SAAS,8BAA8B,QAAqC;AAC1E,SAAO,CAAC,GAAG,IAAI,KAAK,UAAU,CAAA,GAAI,IAAI,CAAC,UAAU,MAAM,KAAI,EAAG,YAAW,CAAE,EAAE,OAAO,CAAC,UAAU,MAAM,SAAS,CAAC,CAAC,CAAC,EAAE,KACjH,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AAE9C;AAEA,SAAS,0BAA0B,MAAyB,OAAwB;AAClF,MAAI,KAAK,WAAW,MAAM,QAAQ;AAChC,WAAO;EACT;AACA,SAAO,KAAK,MAAM,CAAC,OAAO,UAAU,UAAU,MAAM,KAAK,CAAC;AAC5D;AAEA,SAAS,8BAA8B,UAAwC;AAC7E,QAAM,uBAAuB,8BAA8B,8CAA8C;AACzG,QAAM,6BAA6B;IACjC,gBAAgB,8BAA8B,sDAAsD,cAAc;IAClH,YAAY,8BAA8B,sDAAsD,UAAU;IAC1G,eAAe,8BAA8B,sDAAsD,aAAa;;AAElH,QAAM,6BAA6B,8BACjC,SAAS,WAAW,uCAAuC;AAE7D,QAAM,sBAAsB;IAC1B,gBAAgB,8BAA8B,SAAS,WAAW,8CAA8C;IAChH,YAAY,8BAA8B,SAAS,WAAW,0CAA0C;IACxG,eAAe,8BAA8B,SAAS,WAAW,6CAA6C;;AAEhH,SAAO;IACL,+BAA+B;IAC/B,qCAAqC,0BAA0B,4BAA4B,oBAAoB,IAC3G,YACA;IACJ,sCAAsC;IACtC,6CAA6C;MAC3C,gBAAgB,0BAA0B,oBAAoB,gBAAgB,2BAA2B,cAAc,IACnH,YACA;MACJ,YAAY,0BAA0B,oBAAoB,YAAY,2BAA2B,UAAU,IACvG,YACA;MACJ,eAAe,0BAA0B,oBAAoB,eAAe,2BAA2B,aAAa,IAChH,YACA;;;AAGV;AAEA,SAAS,+BAA+B,OAAyB;AAC/D,QAAM,aAAa,OAAO,KAAI,EAAG,YAAW;AAC5C,MAAI,CAAC,cAAc,WAAW,WAAW,GAAG;AAC1C,WAAO;EACT;AACA,MAAK,iCAAuD,SAAS,UAAU,GAAG;AAChF,WAAO;EACT;AACA,QAAM,IAAI,WACR,qCAAqC,KAAK,wBAAwB,iCAAiC,KAAK,IAAI,CAAC,KAC7G,UAAU,KAAK;AAEnB;AAEA,SAAS,+BAA+B,OAAyB;AAC/D,QAAM,aAAa,OAAO,KAAI,EAAG,YAAW;AAC5C,MAAI,CAAC,cAAc,WAAW,WAAW,GAAG;AAC1C,WAAO;EACT;AACA,MAAK,0CAAgE,SAAS,UAAU,GAAG;AACzF,WAAO;EACT;AACA,QAAM,IAAI,WACR,8CAA8C,KAAK,wBAAwB,0CAA0C,KAAK,IAAI,CAAC,KAC/H,UAAU,KAAK;AAEnB;AAEA,SAAS,4CACP,QAA4D;AAE5D,QAAM,aAAa,CAAC,GAAG,IAAI,KAAK,UAAU,CAAA,GAAI,IAAI,CAAC,UAAU,MAAM,KAAI,EAAG,YAAW,EAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC;AAC9G,SAAO,WACJ,IAAI,CAAC,UAAU,gCAAgC,KAAK,CAAC,EACrD,OAAO,CAAC,UAAkD,UAAU,MAAS,EAC7E,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACpD;AAEA,SAAS,8BACP,SACA,eACA,wBAAgE;AAEhE,QAAM,yBAAyB,4CAA4C,sBAAsB;AACjG,MAAI,YAAY,QAAQ;AACtB,WAAO;MACL;MACA,gBAAgB;MAChB,iBAAiB,CAAC,GAAG,6BAA6B;MAClD,0BAA0B;MAC1B,kBAAkB;MAClB,UAAU,CAAA;;EAEd;AACA,MAAI,YAAY,UAAU;AACxB,WAAO;MACL;MACA,gBAAgB;MAChB,iBAAiB,CAAC,GAAG,+BAA+B;MACpD,0BAA0B;MAC1B,kBAAkB;MAClB,UAAU,CAAA;;EAEd;AACA,MAAI,uBAAuB,SAAS,GAAG;AACrC,WAAO;MACL;MACA,gBAAgB;MAChB,iBAAiB;MACjB,0BAA0B;MAC1B,kBAAkB;MAClB,UAAU,CAAA;;EAEd;AACA,SAAO;IACL;IACA,gBAAgB;IAChB,iBAAiB,CAAC,GAAG,6BAA6B;IAClD,0BAA0B;IAC1B,kBAAkB;IAClB,UAAU,CAAC,4DAA4D;;AAE3E;AAEA,SAAS,uBACP,MACA,OACA,gBAAqC;AAErC,MAAI,UAAU,UAAU;AACtB,WAAO,CAAC,4BAA4B,KAAK,MAAM;EACjD;AACA,MAAI,UAAU,uBAAuB;AACnC,WAAO,CAAC,4BAA4B,KAAK,mBAAmB;EAC9D;AACA,MAAI,UAAU,qBAAqB;AACjC,WAAO,CAAC,OAAO,SAAS,KAAK,iBAAiB;EAChD;AACA,MAAI,UAAU,gBAAgB;AAC5B,WAAO,2BAA2B,KAAK,QAAQ,cAAc,MAAM,eAAe,gBAAgB,CAAC,4BAA4B,KAAK,YAAY;EAClJ;AACA,MAAI,UAAU,YAAY;AACxB,WAAO,CAAC,4BAA4B,KAAK,QAAQ;EACnD;AACA,MAAI,UAAU,QAAQ;AACpB,WAAO,CAAC,4BAA4B,KAAK,IAAI;EAC/C;AACA,MAAI,UAAU,cAAc;AAC1B,QAAI,OAAO,KAAK,eAAe,UAAU;AACvC,aAAO,CAAC,OAAO,SAAS,KAAK,UAAU;IACzC;AACA,WAAO,CAAC,4BAA4B,KAAK,UAAU;EACrD;AACA,MAAI,UAAU,UAAU;AACtB,WAAO,CAAC,4BAA4B,KAAK,MAAM;EACjD;AACA,SAAO,CAAC,4BAA4B,KAAK,OAAO;AAClD;AAEA,SAAS,oBAAoB,UAA4B;AACvD,MAAI,aAAa,QAAW;AAC1B,WAAO;EACT;AACA,QAAM,aAAa,SAAS,KAAI,EAAG,YAAW;AAC9C,MAAI,WAAW,WAAW,GAAG;AAC3B,WAAO;EACT;AACA,MAAI,eAAe,WAAW;AAC5B,WAAO;EACT;AACA,MAAI,eAAe,iBAAiB,eAAe,eAAe;AAChE,WAAO;EACT;AACA,MAAI,eAAe,wBAAwB,eAAe,sBAAsB;AAC9E,WAAO;EACT;AACA,QAAM,IAAI,WACR,8BAA8B,QAAQ,wBAAwB,yBAAyB,KAAK,IAAI,CAAC,KACjG,UAAU,KAAK;AAEnB;AAEA,SAAS,qBAAqB,QAAc;AAC1C,QAAM,iBAAiB,KAAK,QAAQ,MAAM;AAC1C,QAAM,mBAAmB,eAAe,WAAW,MAAM,GAAG;AAC5D,MAAI,iBAAiB,SAAS,aAAa,GAAG;AAC5C,WAAO,KAAK,QAAQ,KAAK,QAAQ,cAAc,CAAC;EAClD;AACA,QAAM,cAAc,KAAK,QAAQ,QAAQ,IAAG,CAAE;AAC9C,QAAM,kBAAkB,yBAAyB,cAAc;AAC/D,QAAM,eAAe,yBAAyB,WAAW;AACzD,QAAM,qBAAqB,KAAK,SAAS,iBAAiB,YAAY;AACtE,QAAM,kBACJ,mBAAmB,WAAW,KAC7B,CAAC,mBAAmB,WAAW,IAAI,KAAK,CAAC,KAAK,WAAW,kBAAkB;AAC9E,MAAI,iBAAiB;AACnB,WAAO;EACT;AAEA,SAAO;AACT;AAEA,SAAS,yBAAyB,WAAiB;AACjD,MAAI;AACF,WAAO,aAAa,OAAO,SAAS;EACtC,QAAQ;AACN,WAAO,KAAK,QAAQ,SAAS;EAC/B;AACF;AAEA,eAAe,mBAAmB,UAAkB,cAAsB,QAAgB;AACxF,QAAM,kBAAkB,aAAa,SAAS,IAAI,KAAK,KAAK,UAAU,YAAY,IAAI;AACtF,MAAI;AACJ,MAAI;AACF,cAAU,MAAM,GAAG,QAAQ,iBAAiB,EAAE,eAAe,KAAI,CAAE;EACrE,SAAS,OAAgB;AACvB,QAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,UAAU,SAAU,MAA4B,SAAS,UAAU;AACpH;IACF;AACA,UAAM;EACR;AAEA,aAAW,SAAS,SAAS;AAC3B,QAAI,MAAM,KAAK,WAAW,GAAG,GAAG;AAC9B;IACF;AACA,UAAM,gBAAgB,aAAa,SAAS,IAAI,KAAK,KAAK,cAAc,MAAM,IAAI,IAAI,MAAM;AAC5F,QAAI,MAAM,YAAW,GAAI;AACvB,UAAI,qBAAqB,IAAI,MAAM,IAAI,GAAG;AACxC;MACF;AACA,YAAM,mBAAmB,UAAU,eAAe,MAAM;AACxD;IACF;AAEA,QAAI,CAAC,MAAM,OAAM,GAAI;AACnB;IACF;AACA,WAAO,KAAK,sBAAsB,aAAa,CAAC;EAClD;AACF;AAEA,eAAe,oCAAoC,eAAqB;AACtE,QAAM,aAAuB,CAAA;AAC7B,aAAW,aAAa,uBAAuB;AAC7C,UAAM,mBAAmB,eAAe,WAAW,UAAU;EAC/D;AACA,aAAW,aAAa,sBAAsB;AAC5C,UAAM,WAAW,KAAK,KAAK,eAAe,SAAS;AACnD,QAAI;AACF,YAAM,QAAQ,MAAM,GAAG,KAAK,QAAQ;AAEpC,UAAI,MAAM,OAAM,GAAI;AAClB,mBAAW,KAAK,sBAAsB,SAAS,CAAC;MAClD;IAEF,QAAQ;IAER;EACF;AACA,SAAO,CAAC,GAAG,IAAI,IAAI,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACjF;AAEA,eAAe,gCAAgC,eAAqB;AAClE,MAAI;AACF,UAAM,EAAE,OAAM,IAAK,MAAM,cAAc,OAAO,CAAC,YAAY,IAAI,GAAG;MAChE,KAAK;MACL,UAAU;MACV,WAAW;MACX,aAAa;KACd;AACD,UAAM,aAAa,OAChB,MAAM,IAAI,EACV,IAAI,CAAC,UAAU,sBAAsB,KAAK,CAAC,EAC3C,OAAO,CAAC,UAAU,MAAM,SAAS,CAAC;AACrC,WAAO,CAAC,GAAG,IAAI,IAAI,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;EACjF,QAAQ;AAEN,WAAO;EAET;AACF;AAWA,SAAS,mCAAmC,QAAgB,eAAqB;AAC/E,QAAM,WAAW,oBAAI,IAAG;AACxB,QAAM,oBAAoB,+BAA+B,UAAU;AACnE,MAAI,kBAAkB,SAAS,GAAG;AAChC,aAAS,IAAI,iBAAiB;EAChC;AACA,QAAM,iBAAiB,+BAA+B,KAAK,SAAS,eAAe,MAAM,CAAC;AAC1F,MAAI,eAAe,SAAS,KAAK,CAAC,eAAe,WAAW,IAAI,GAAG;AACjE,aAAS,IAAI,cAAc;EAC7B;AACA,SAAO,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACtE;AAEA,SAAS,cAAc,WAAmB,UAAkB;AAC1D,aAAW,UAAU,UAAU;AAC7B,QAAI,cAAc,UAAU,UAAU,WAAW,GAAG,MAAM,GAAG,GAAG;AAC9D,aAAO;IACT;EACF;AACA,SAAO;AACT;AAEA,eAAe,6BACb,eACA,UAA8B;AAE9B,MAAI,aAAa,iBAAiB,aAAa,sBAAsB;AACnE,UAAM,oBAAoB,MAAM,gCAAgC,aAAa;AAC7E,QAAI,mBAAmB;AACrB,aAAO;QACL,eAAe;QACf,aAAa;QACb,QAAQ;QACR,gBAAgB;QAChB,gBAAgB,kBAAkB;QAClC,kBAAkB,kBAAkB;;IAExC;AAEA,UAAM,qBAAqB,MAAM,oCAAoC,aAAa;AAClF,WAAO;MACL,eAAe;MACf,aAAa;MACb,QAAQ;MACR,gBAAgB;MAChB,gBAAgB,mBAAmB;MACnC,kBAAkB,mBAAmB;;EAGzC;AAEA,QAAM,oBAAoB,MAAM,oCAAoC,aAAa;AACjF,SAAO;IACL,eAAe;IACf,aAAa;IACb,QAAQ;IACR,gBAAgB;IAChB,gBAAgB,kBAAkB;IAClC,kBAAkB,kBAAkB;;AAExC;AAEA,SAAS,cAAc,QAAkB,QAAQ,+BAA6B;AAE5E,MAAI,OAAO,UAAU,OAAO;AAC1B,WAAO,EAAE,QAAQ,WAAW,MAAK;EACnC;AACA,SAAO;IACL,QAAQ,OAAO,MAAM,GAAG,KAAK;IAC7B,WAAW;;AAGf;AAEA,SAAS,kBACP,QACA,kBAAyB;AAMzB,MAAI,kBAAkB;AACpB,WAAO;MACL;MACA,WAAW;MACX,OAAO,OAAO;;EAElB;AACA,QAAM,UAAU,cAAc,QAAQ,uBAAuB;AAC7D,SAAO;IACL,QAAQ,QAAQ;IAChB,WAAW,QAAQ;IACnB,OAAO,OAAO;;AAElB;AAEA,IAAM,uCAA2E;EAC/E,YAAY;EACZ,iBAAiB;EACjB,eAAe;;AAGjB,IAAM,8CAAkF;EACtF,YAAY;EACZ,iBAAiB;EACjB,eAAe;;AAGjB,SAAS,kCAAkC,KAAyD;AAClG,QAAM,iBAAiB,IAAI,eACxB,IAAI,CAAC,UAAU,GAAG,qCAAqC,KAAK,CAAC,KAAM,4CAA4C,KAAK,CAAC,GAAI,EACzH,KAAK,GAAG;AACX,SAAO,aAAa,IAAI,EAAE,IAAI,cAAc;AAC9C;AAaA,SAAS,uBAAuB,OAAsB,eAAuB;AAC3E,QAAM,0BAA0B,MAAM,SAAS;AAC/C,QAAM,oBAAoB,MAAM,QAAQ,uBAAuB,KAAK,wBAAwB,SAAS;AACrG,QAAM,WAAW,oBACZ,wBAAsC,OAAO,CAAC,SAAyB,OAAO,SAAS,QAAQ,IAChG,yBAAyB,aAAa;AAC1C,MAAI,SAAS,WAAW,GAAG;AACzB;EACF;AAIA,QAAM,YAAY,qBAAqB,MAAM,SAAS,mDAAmD;AACzG,QAAM,UAAU;IACd,GAAG,MAAM;IACT,WAAW;IACX,GAAI,YAAY,EAAE,qBAAqB,KAAI,IAAK,CAAA;;AAEpD;AAEA,SAAS,uBAAuB,SAA+B;AAC7D,QAAM,YAAY,oBAAI,IAAG;AACzB,MAAI,QAAQ,eAAe;AACzB,cAAU,IAAI,UAAU;EAC1B;AACA,MAAI,QAAQ,iBAAiB;AAC3B,cAAU,IAAI,YAAY;EAC5B;AACA,MAAI,QAAQ,kBAAkB,QAAQ,oBAAoB;AACxD,cAAU,IAAI,WAAW;EAC3B;AACA,MAAI,QAAQ,YAAY;AACtB,cAAU,IAAI,OAAO;EACvB;AACA,MAAI,QAAQ,mBAAmB;AAC7B,cAAU,IAAI,eAAe;EAC/B;AACA,MAAI,QAAQ,wBAAwB;AAClC,cAAU,IAAI,oBAAoB;EACpC;AACA,MAAI,UAAU,SAAS,GAAG;AACxB,cAAU,IAAI,UAAU;AACxB,cAAU,IAAI,YAAY;AAC1B,cAAU,IAAI,WAAW;AACzB,cAAU,IAAI,OAAO;AACrB,cAAU,IAAI,oBAAoB;AAClC,cAAU,IAAI,eAAe;EAC/B;AACA,SAAO;AACT;AAEA,SAAS,mBACP,OACA,gBACA,gBACA,oBAA2B;AAE3B,QAAM,iBAAiB,OAAO,YAC5B,mCAAmC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAA,CAAc,CAAC,CAAC;AAG5E,aAAW,QAAQ,OAAO;AACxB,eAAW,SAAS,oCAAoC;AACtD,UAAI,CAAC,uBAAuB,MAAM,OAAO,cAAc,GAAG;AACxD;MACF;AACA,qBAAe,KAAK,EAAE,KAAK,KAAK,EAAE;IACpC;EACF;AAEA,QAAM,gBAAgB,CAAC,GAAG,eAAe,QAAQ;AACjD,aAAW,SAAS,eAAe,iBAAiB;AAClD,UAAM,eAAe,eAAe,KAAK;AACzC,QAAI,aAAa,WAAW,GAAG;AAC7B;IACF;AACA,kBAAc,KAAK,GAAG,gCAAgC,KAAK,CAAC,IAAI,aAAa,MAAM,EAAE;EACvF;AASA,QAAM,SAAiC,CAAA;AACvC,aAAW,SAAS,eAAe,iBAAiB;AAClD,UAAM,QAAQ,eAAe,KAAK,GAAG,UAAU;AAC/C,UAAM,WAAW,4BAA4B,KAAK;AAClD,QAAI,QAAQ,KAAK,UAAU;AACzB,aAAO,QAAQ,IAAI;IACrB;EACF;AACA,QAAM,UAAmC;IACvC,eAAe,MAAM;IACrB,kBAAkB,eAAe;IACjC,yBAAyB,eAAe;IACxC,mCAAmC,eAAe;IAClD,iBAAiB,CAAC,GAAG,eAAe,eAAe;IACnD,2BAA2B,CAAC,GAAG,kCAAkC;IACjE;;AAEF,MAAI,eAAe,yBAAyB,SAAS,GAAG;AACtD,YAAQ,oCAAoC,CAAC,GAAG,eAAe,wBAAwB;EACzF;AAUA,aAAW,SAAS,eAAe,iBAAiB;AAClD,UAAM,UAAU,eAAe,KAAK;AACpC,QAAI,CAAC,WAAW,QAAQ,WAAW,GAAG;AACpC;IACF;AACA,UAAM,SAAS,+BAA+B,KAAK;AACnD,UAAM,eAAe,gCAAgC,KAAK;AAC1D,QAAI,CAAC,UAAU,CAAC,cAAc;AAC5B;IACF;AACA,UAAM,aAAa,cAAc,SAAS,qBAAqB,QAAQ,SAAS,6BAA6B;AAC7G,YAAQ,MAAM,IAAI,WAAW;AAC7B,YAAQ,YAAY,IAAI,WAAW;EACrC;AAEA,SAAO;IACL,OAAO;MACL,MAAM;MACN,QAAQ,cAAc,WAAW,IAAI,OAAO;MAC5C;;IAEF,UAAU;;AAEd;AAEA,SAAS,qBACP,OACA,gBACA,oBAA2B;AAE3B,QAAM,uBAAuB,IAAI,IAAY,eAAe,sBAAsB;AAClF,uBAAqB,IAAI,eAAe,YAAY;AACpD,QAAM,cAAc,MAAM,OAAO,CAAC,SAAS,qBAAqB,IAAI,2BAA2B,KAAK,QAAQ,cAAc,CAAC,CAAC;AAC5H,QAAM,wBAAqF,CAAA;AAE3F,aAAW,QAAQ,aAAa;AAC9B,UAAM,gBAAgB,sBAAsB,OAAO,CAAC,UAAU,CAAC,4BAA4B,KAAK,KAAK,CAAC,CAAC;AACvG,QAAI,cAAc,WAAW,GAAG;AAC9B;IACF;AACA,0BAAsB,KAAK;MACzB,IAAI,KAAK;MACT,gBAAgB;KACjB;EACH;AAEA,QAAM,WACJ,sBAAsB,SAAS,IAAI,CAAC,sCAAsC,sBAAsB,MAAM,EAAE,IAAI,CAAA;AAC9G,QAAM,kBAAkB,qBAAqB,OAAO,oBAAoB;AACxE,QAAM,iBAAiB,cACrB,sBAAsB,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,IAAI,IAAI,eAAe,KAAK,GAAG,CAAC,EAAE,GAC9E,eAAe;AAEjB,QAAM,mBAAmB,sBAAsB,IAAI,CAAC,QAAQ,kCAAkC,GAAG,CAAC;AAClG,QAAM,kBAAkB,cAAc,kBAAkB,eAAe;AACvE,SAAO;IACL,OAAO;MACL,MAAM;MACN,QAAQ,SAAS,WAAW,IAAI,OAAO;MACvC,SAAS;QACP,sBAAsB,YAAY;QAClC,0BAA0B,sBAAsB;QAChD,yBAAyB,eAAe;QACxC,mCAAmC,eAAe;QAClD,sCAAsC,gBAAgB;QACtD,gDAAgD,gBAAgB;;;IAGpE;;AAEJ;AAEA,SAAS,8BAA8B,aAA2B;AAChE,QAAM,gBAAgB,IAAI,IAAI,YAAY,IAAI,CAAC,SAAS,KAAK,EAAE,CAAC;AAChE,QAAM,QAAQ,oBAAI,IAAG;AACrB,QAAM,cAAc,CAAC,GAAG,WAAW,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,GAAG,cAAc,MAAM,EAAE,CAAC;AAC1F,aAAW,QAAQ,aAAa;AAC9B,UAAM,QAAQ,oBAAI,IAAG;AACrB,eAAW,cAAc,KAAK,gBAAgB,CAAA,GAAI;AAChD,YAAM,eAAe,mBAAmB,WAAW,EAAE;AACrD,UAAI,CAAC,gBAAgB,CAAC,cAAc,IAAI,YAAY,GAAG;AACrD;MACF;AACA,YAAM,IAAI,YAAY;IACxB;AACA,UAAM,IAAI,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC,CAAC;EAChF;AACA,SAAO;AACT;AAEA,SAAS,uCAAuC,OAA4B;AAC1E,MAAI,YAAY;AAChB,QAAM,YAAY,oBAAI,IAAG;AACzB,QAAM,cAAc,oBAAI,IAAG;AAC3B,QAAM,QAAkB,CAAA;AACxB,QAAM,UAAU,oBAAI,IAAG;AACvB,QAAM,aAAyB,CAAA;AAE/B,QAAM,QAAQ,CAAC,OAAoB;AACjC,cAAU,IAAI,IAAI,SAAS;AAC3B,gBAAY,IAAI,IAAI,SAAS;AAC7B,iBAAa;AACb,UAAM,KAAK,EAAE;AACb,YAAQ,IAAI,EAAE;AAEd,eAAW,gBAAgB,MAAM,IAAI,EAAE,KAAK,CAAA,GAAI;AAC9C,UAAI,CAAC,UAAU,IAAI,YAAY,GAAG;AAChC,cAAM,YAAY;AAClB,oBAAY,IAAI,IAAI,KAAK,IAAI,YAAY,IAAI,EAAE,GAAI,YAAY,IAAI,YAAY,CAAE,CAAC;MACpF,WAAW,QAAQ,IAAI,YAAY,GAAG;AACpC,oBAAY,IAAI,IAAI,KAAK,IAAI,YAAY,IAAI,EAAE,GAAI,UAAU,IAAI,YAAY,CAAE,CAAC;MAClF;IACF;AAEA,QAAI,YAAY,IAAI,EAAE,MAAM,UAAU,IAAI,EAAE,GAAG;AAC7C;IACF;AACA,UAAM,YAAsB,CAAA;AAC5B,WAAO,MAAM,SAAS,GAAG;AACvB,YAAM,SAAS,MAAM,IAAG;AACxB,cAAQ,OAAO,MAAM;AACrB,gBAAU,KAAK,MAAM;AACrB,UAAI,WAAW,IAAI;AACjB;MACF;IACF;AACA,cAAU,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACzD,eAAW,KAAK,SAAS;EAC3B;AAEA,QAAM,gBAAgB,CAAC,GAAG,MAAM,KAAI,CAAE,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACvF,aAAW,MAAM,eAAe;AAC9B,QAAI,CAAC,UAAU,IAAI,EAAE,GAAG;AACtB,YAAM,EAAE;IACV;EACF;AAEA,QAAM,kBAAkB,WAAW,OAAO,CAAC,cAAa;AACtD,QAAI,UAAU,SAAS,GAAG;AACxB,aAAO;IACT;AACA,UAAM,SAAS,UAAU,CAAC;AAC1B,YAAQ,MAAM,IAAI,MAAM,KAAK,CAAA,GAAI,SAAS,MAAM;EAClD,CAAC;AACD,SAAO,gBAAgB,KACrB,CAAC,MAAM,UACL,KAAK,CAAC,EAAE,cAAc,MAAM,CAAC,CAAC,KAC9B,KAAK,SAAS,MAAM,UACpB,KAAK,KAAK,GAAG,EAAE,cAAc,MAAM,KAAK,GAAG,CAAC,CAAC;AAEnD;AAEA,SAAS,0CAA0C,WAAqB,OAA4B;AAClG,QAAM,QAAQ,UAAU,CAAC;AACzB,MAAI,UAAU,WAAW,GAAG;AAC1B,WAAO,CAAC,OAAO,KAAK;EACtB;AACA,QAAM,eAAe,IAAI,IAAI,SAAS;AACtC,QAAMA,QAAiB,CAAC,KAAK;AAC7B,QAAM,UAAU,oBAAI,IAAY,CAAC,KAAK,CAAC;AAEvC,QAAM,SAAS,CAAC,YAA4B;AAC1C,UAAM,aAAa,MAAM,IAAI,OAAO,KAAK,CAAA,GAAI,OAAO,CAAC,cAAc,aAAa,IAAI,SAAS,CAAC;AAC9F,eAAW,QAAQ,WAAW;AAC5B,UAAI,SAAS,SAASA,MAAK,SAAS,GAAG;AACrC,QAAAA,MAAK,KAAK,KAAK;AACf,eAAO;MACT;AACA,UAAI,QAAQ,IAAI,IAAI,GAAG;AACrB;MACF;AACA,cAAQ,IAAI,IAAI;AAChB,MAAAA,MAAK,KAAK,IAAI;AACd,UAAI,OAAO,IAAI,GAAG;AAChB,eAAO;MACT;AACA,MAAAA,MAAK,IAAG;AACR,cAAQ,OAAO,IAAI;IACrB;AACA,WAAO;EACT;AAEA,MAAI,OAAO,KAAK,GAAG;AACjB,WAAO,CAAC,GAAGA,KAAI;EACjB;AACA,SAAO,CAAC,GAAG,WAAW,KAAK;AAC7B;AAEA,SAAS,gCAAgC,aAA2B;AAKlE,QAAM,QAAQ,8BAA8B,WAAW;AACvD,QAAM,kBAAkB,uCAAuC,KAAK;AACpE,QAAM,eAAe,CAAC,GAAG,IAAI,IAAI,gBAAgB,KAAI,CAAE,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACzG,QAAM,mBAAmB,gBAAgB,IAAI,CAAC,cAC5C,0CAA0C,WAAW,KAAK,EAAE,KAAK,IAAI,CAAC;AAExE,SAAO;IACL,aAAa,gBAAgB;IAC7B,gBAAgB;IAChB,oBAAoB;;AAExB;AAEA,SAAS,oBACP,OACA,sBACA,yBACA,gBACA,wBACA,oBAA2B;AAE3B,QAAM,YAAY,IAAI,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;AAC9D,QAAM,kBACJ,eAAe,iBAAiB,OAAO,IAAI,eAAe,mBAAmB,oBAAI,IAAY,CAAC,SAAS,CAAC;AAC1G,QAAM,cAAc,MAAM,OAAO,CAAC,SAAS,CAAC,iBAAiB,KAAK,QAAQ,cAAc,CAAC;AACzF,QAAM,kBAA2D,CAAA;AACjE,QAAM,qBAAsF,CAAA;AAC5F,QAAM,mBAA6E,CAAA;AAEnF,aAAW,QAAQ,aAAa;AAC9B,UAAM,oBAAoB,OAAO,QAAQ,uBAAuB,oCAAoC,EACjG,OAAO,CAAC,CAAC,OAAO,QAAQ,MAAK;AAC5B,YAAM,QAAQ,mBAAmB,KAAK,KAA2B,CAAC;AAClE,UAAI,CAAC,OAAO;AACV,eAAO;MACT;AACA,YAAM,aAAa,MAAM,YAAW;AACpC,aAAO,SAAS,KAAK,CAAC,YAAY,WAAW,SAAS,OAAO,CAAC;IAChE,CAAC,EACA,IAAI,CAAC,CAAC,KAAK,MAAM,KAAK,EACtB,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AAElD,QAAI,kBAAkB,SAAS,GAAG;AAChC,sBAAgB,KAAK;QACnB,IAAI,KAAK;QACT,QAAQ;OACT;IACH;AAEA,UAAM,WAAW,mBAAmB,KAAK,MAAM;AAC/C,QAAI,UAAU;AACZ,YAAM,SAAS,UAAU,IAAI,QAAQ;AACrC,UAAI,UAAU,iBAAiB,OAAO,QAAQ,cAAc,GAAG;AAC7D,2BAAmB,KAAK;UACtB,IAAI,KAAK;UACT,WAAW,OAAO;UAClB,eAAe,OAAO;SACvB;MACH;IACF;AAEA,QAAI,sBAAsB;AACxB,YAAM,YAAY,mBAAmB,KAAK,UAAU;AACpD,YAAM,gBAAgB,mBAAmB,KAAK,cAAc;AAC5D,YAAM,0BAA0B,eAAe,YAAW;AAC1D,YAAM,UAAoB,CAAA;AAC1B,YAAM,mBAAmB,2BAA2B,KAAK,QAAQ,cAAc;AAE/E,UAAI,CAAC,gBAAgB,IAAI,gBAAgB,GAAG;AAC1C,YAAI,WAAW;AACb,kBAAQ,KAAK,mCAAmC;QAClD;AACA,YAAI,eAAe;AACjB,kBAAQ,KAAK,uCAAuC;QACtD;MACF,OAAO;AACL,YAAI,CAAC,aAAa,CAAC,eAAe;AAChC,kBAAQ,KAAK,wCAAwC;QACvD;AACA,YAAI,yBAAyB,SAAS,mBAAmB,GAAG;AAC1D,kBAAQ,KAAK,iDAAiD;QAChE;AACA,YACE,2BACA,uBAAuB,8BAA8B,KAAK,CAAC,YAAY,wBAAwB,SAAS,OAAO,CAAC,GAChH;AACA,kBAAQ,KAAK,6CAA6C;QAC5D;MACF;AAEA,UAAI,QAAQ,SAAS,GAAG;AACtB,yBAAiB,KAAK;UACpB,IAAI,KAAK;UACT,QAAQ,KAAK;UACb,SAAS,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;SAC/E;MACH;IACF;EACF;AAEA,kBAAgB,KAAK,CAAC,MAAM,UAAU,KAAK,GAAG,cAAc,MAAM,EAAE,CAAC;AACrE,qBAAmB,KACjB,CAAC,MAAM,UAAU,KAAK,GAAG,cAAc,MAAM,EAAE,KAAK,KAAK,UAAU,cAAc,MAAM,SAAS,CAAC;AAEnG,mBAAiB,KAAK,CAAC,MAAM,UAAU,KAAK,GAAG,cAAc,MAAM,EAAE,CAAC;AACtE,QAAM,6BAA6B,gCAAgC,WAAW;AAE9E,QAAM,WAAqB,CAAA;AAC3B,MAAI,gBAAgB,SAAS,GAAG;AAC9B,aAAS,KAAK,mDAAmD,gBAAgB,MAAM,EAAE;EAC3F;AACA,MAAI,mBAAmB,SAAS,GAAG;AACjC,aAAS,KAAK,6CAA6C,mBAAmB,MAAM,EAAE;EACxF;AACA,MAAI,wBAAwB,iBAAiB,SAAS,GAAG;AACvD,aAAS,KAAK,qCAAqC,iBAAiB,MAAM,EAAE;EAC9E;AACA,MAAI,2BAA2B,cAAc,KAAK,4BAA4B,OAAO;AACnF,aAAS,KACP,GACE,4BAA4B,UACxB,+CACA,sCACN,IAAI,2BAA2B,WAAW,EAAE;EAEhD;AAEA,QAAM,kBAAkB,qBAAqB,OAAO,oBAAoB;AACxE,QAAM,4BAA4B,cAChC,gBAAgB,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,IAAI,IAAI,OAAO,KAAK,GAAG,CAAC,EAAE,GAChE,eAAe;AAEjB,QAAM,+BAA+B,cACnC,mBAAmB,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,IAAI,IAAI,SAAS,IAAI,IAAI,aAAa,EAAE,GACjF,eAAe;AAEjB,QAAM,6BAA6B,cACjC,iBAAiB,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,IAAI,IAAI,MAAM,IAAI,IAAI,QAAQ,KAAK,GAAG,CAAC,EAAE,GAChF,eAAe;AAEjB,QAAM,mCAAmC,cAAc,2BAA2B,gBAAgB,eAAe;AACjH,QAAM,uCAAuC,cAAc,2BAA2B,oBAAoB,eAAe;AAEzH,SAAO;IACL,OAAO;MACL,MAAM;MACN,QAAQ,2BAA2B,cAAc,KAAK,4BAA4B,UAC9E,UACA,SAAS,WAAW,IAClB,OACA;MACN,SAAS;QACP,sBAAsB,YAAY;QAClC,oCAAoC,gBAAgB;QACpD,mCAAmC,0BAA0B;QAC7D,6CAA6C,0BAA0B;QACvE,8BAA8B,mBAAmB;QACjD,6BAA6B,6BAA6B;QAC1D,uCAAuC,6BAA6B;QACpE,8BAA8B;QAC9B,qBAAqB,iBAAiB;QACtC,oBAAoB,2BAA2B;QAC/C,8BAA8B,2BAA2B;QACzD,kCAAkC;QAClC,wBAAwB,2BAA2B;QACnD,6BAA6B,2BAA2B,eAAe;QACvE,2BAA2B,iCAAiC;QAC5D,qCAAqC,iCAAiC;QACtE,+BAA+B,qCAAqC;QACpE,yCAAyC,qCAAqC;QAC9E,+BAA+B,CAAC,GAAG,uBAAuB,6BAA6B;QACvF,qCAAqC,uBAAuB;QAC5D,sCAAsC;UACpC,GAAG,uBAAuB,qCAAqC;;QAEjE,4CACE,uBAAuB,4CAA4C;QACrE,kCAAkC,CAAC,GAAG,uBAAuB,qCAAqC,UAAU;QAC5G,wCACE,uBAAuB,4CAA4C;QACrE,qCAAqC,CAAC,GAAG,uBAAuB,qCAAqC,aAAa;QAClH,2CACE,uBAAuB,4CAA4C;;;IAGzE;;AAEJ;AAEA,eAAe,gBACb,OACA,eACA,QACA,cACA,oBACA,kBAAyB;AAEzB,QAAM,qBAAqB,oBAAI,IAAG;AAClC,QAAM,qBAA+B,CAAA;AAErC,aAAW,QAAQ,OAAO;AACxB,UAAM,kBAAkB,CAAC,GAAI,KAAK,SAAS,CAAA,GAAK,GAAI,KAAK,QAAQ,CAAA,CAAG;AACpE,eAAW,YAAY,iBAAiB;AACtC,UAAI,SAAS,UAAU,WAAW;AAChC;MACF;AACA,YAAM,iBAAiB,sBAAsB,SAAS,IAAI;AAC1D,UAAI,eAAe,WAAW,GAAG;AAC/B;MACF;AACA,yBAAmB,IAAI,cAAc;AACrC,YAAM,eAAe,KAAK,WAAW,SAAS,IAAI,IAAI,SAAS,OAAO,KAAK,QAAQ,eAAe,SAAS,IAAI;AAC/G,UAAI;AACF,cAAM,QAAQ,MAAM,GAAG,KAAK,YAAY;AACxC,YAAI,CAAC,MAAM,OAAM,GAAI;AACnB,6BAAmB,KAAK,cAAc;QACxC;MACF,QAAQ;AACN,2BAAmB,KAAK,cAAc;MACxC;IACF;EACF;AAEA,QAAM,2BAA2B,CAAC,GAAG,IAAI,IAAI,kBAAkB,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACjH,QAAM,iBAAiB,MAAM,6BAA6B,eAAe,YAAY;AACrF,QAAM,uBAAuB,iBAAiB;AAC9C,QAAM,8BAA8B,wBAAwB,CAAC;AAC7D,QAAM,8BAA8B,sBAAsB;AAC1D,QAAM,8BAA8B,8BAA8B,CAAA,IAAK,mCAAmC,QAAQ,aAAa;AAC/H,QAAM,0BACJ,4BAA4B,WAAW,IACnC,CAAA,IACA,eAAe,eAAe,OAAO,CAAC,cAAc,cAAc,WAAW,2BAA2B,CAAC;AAC/G,QAAM,iBACJ,4BAA4B,WAAW,IACnC,eAAe,iBACf,eAAe,eAAe,OAAO,CAAC,cAAc,CAAC,cAAc,WAAW,2BAA2B,CAAC;AAChH,QAAM,0BAA0B,wBAAwB;AACxD,QAAM,mBAA4C,CAAA;AAClD,MAAI,0BAA0B,GAAG;AAC/B,UAAM,4BAA4B,kBAAkB,yBAAyB,gBAAgB;AAC7F,qBAAiB,eAAe;MAC9B,OAAO;MACP,OAAO,0BAA0B;MACjC,iBAAiB,0BAA0B;MAC3C,aAAa,0BAA0B;;EAE3C;AACA,QAAM,gBAAgB,eAAe,OAAO,CAAC,cAAc,CAAC,mBAAmB,IAAI,SAAS,CAAC;AAC7F,QAAM,WAAqB,CAAA;AAC3B,MAAI,6BAA6B;AAC/B,aAAS,KAAK,uDAAuD;EACvE;AACA,MAAI,yBAAyB,SAAS,GAAG;AACvC,aAAS,KAAK,uCAAuC,yBAAyB,MAAM,EAAE;EACxF;AACA,MAAI,cAAc,SAAS,GAAG;AAC5B,aAAS,KAAK,iCAAiC,cAAc,MAAM,EAAE;EACvE;AACA,QAAM,oBAAoB,kBAAkB,0BAA0B,gBAAgB;AACtF,QAAM,qBAAqB,kBAAkB,eAAe,gBAAgB;AAE5E,SAAO;IACL,OAAO;MACL,MAAM;MACN,QAAQ,SAAS,WAAW,IAAI,OAAO;MACvC,SAAS;QACP,gBAAgB;QAChB,qBAAqB,eAAe;QACpC,mBAAmB,eAAe;QAClC,yBAAyB;QACzB,iCAAiC;QACjC,wCAAwC,8BACpC,2GACA;QACJ,uBAAuB,mBAAmB,SAAS;QACnD,yBAAyB;QACzB,uBAAuB,eAAe;QACtC,sBAAsB;QACtB,gCAAgC;QAChC,gCAAgC;QAChC,4BAA4B;QAC5B,gBAAgB;QAChB,oBAAoB;QACpB,sBAAsB,mBAAmB;QACzC,qBAAqB,eAAe;QACpC,uBAAuB,eAAe;QACtC,iBAAiB,eAAe;QAChC,mBAAmB,eAAe;QAClC,yBAAyB,eAAe;QACxC,4BAA4B,yBAAyB;QACrD,4BAA4B,kBAAkB;QAC9C,sBAAsB,kBAAkB;QACxC,gCAAgC,kBAAkB;QAClD,sBAAsB,cAAc;QACpC,sBAAsB,mBAAmB;QACzC,gBAAgB,mBAAmB;QACnC,0BAA0B,mBAAmB;;;IAGjD;;AAEJ;AAEA,eAAe,uBACb,QACA,OACA,oBAA2B;AAE3B,QAAM,EAAE,gBAAgB,mBAAmB,gBAAgB,iBAAiB,aAAY,IAAK,MAAM,iBACjG,QACA,KAAK;AAEP,QAAM,WAAqB,CAAA;AAC3B,MAAI,eAAe,SAAS,GAAG;AAC7B,aAAS,KAAK,0CAA0C,eAAe,MAAM,EAAE;EACjF;AACA,MAAI,kBAAkB,SAAS,GAAG;AAChC,aAAS,KAAK,6CAA6C,kBAAkB,MAAM,EAAE;EACvF;AACA,MAAI,eAAe,SAAS,GAAG;AAC7B,aAAS,KAAK,0CAA0C,eAAe,MAAM,EAAE;EACjF;AACA,MAAI,gBAAgB,SAAS,GAAG;AAC9B,aAAS,KAAK,2CAA2C,gBAAgB,MAAM,EAAE;EACnF;AACA,QAAM,kBAAkB,qBAAqB,OAAO,oBAAoB;AACxE,QAAM,oBAAoB,cAAc,cAAc,eAAe;AACrE,SAAO;IACL,OAAO;MACL,MAAM;MACN,QAAQ,SAAS,WAAW,IAAI,OAAO;MACvC,SAAS;QACP,eAAe,MAAM;QACrB,qBAAqB,aAAa;QAClC,eAAe,kBAAkB;QACjC,yBAAyB,kBAAkB;QAC3C,QAAQ;UACN,iBAAiB,eAAe;UAChC,oBAAoB,kBAAkB;UACtC,iBAAiB,eAAe;UAChC,kBAAkB,gBAAgB;;;;IAIxC;;AAEJ;AAEA,SAAS,6BAA6B,SAAiB,cAAsB,SAAe;AAC1F,QAAM,oBAAoB,QAAQ,KAAI,EAAG,WAAW,QAAQ,GAAG;AAC/D,QAAM,iBAAiB,kBAAkB,SAAS,MAAM,GAAG,kBAAkB,MAAM,GAAG,GAAG,CAAC,QAAQ;AAClG,SAAO,GAAG,OAAO,IAAI,YAAY,IAAI,cAAc;AACrD;AAEA,SAAS,4BACP,OACA,UACA,oBAA2B;AAE3B,QAAM,WAAW,IAAI,IAAI,MAAM,IAAI,CAAC,SAAS,KAAK,GAAG,YAAW,CAAE,CAAC;AACnE,MAAI,wBAAwB;AAC5B,MAAI,sBAAsB;AAC1B,QAAM,kBAAkB,oBAAI,IAAG;AAC/B,QAAM,qBAA+B,CAAA;AAErC,aAAW,QAAQ,OAAO;AACxB,eAAW,cAAc,KAAK,SAAS,CAAA,GAAI;AACzC,UAAI,OAAO,WAAW,YAAY,YAAY,WAAW,QAAQ,KAAI,EAAG,WAAW,GAAG;AACpF;MACF;AACA,+BAAyB;AACzB,YAAM,gBAAgB,sCAAsC,WAAW,SAAS,QAAQ;AACxF,UAAI,cAAc,WAAW,GAAG;AAC9B;MACF;AACA,6BAAuB,cAAc;AACrC,iBAAW,gBAAgB,eAAe;AACxC,wBAAgB,IAAI,YAAY;AAChC,YAAI,CAAC,SAAS,IAAI,aAAa,YAAW,CAAE,GAAG;AAC7C,6BAAmB,KAAK,6BAA6B,KAAK,IAAI,cAAc,WAAW,OAAO,CAAC;QACjG;MACF;IACF;EACF;AAEA,QAAM,2BAA2B,CAAC,GAAG,IAAI,IAAI,kBAAkB,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACjH,QAAM,aAAa,CAAC,GAAG,IAAI,IAAI,yBAAyB,IAAI,CAAC,QAAQ,IAAI,MAAM,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,EAC3F,OAAO,CAAC,UAAU,MAAM,SAAS,CAAC,EAClC,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AAClD,QAAM,WACJ,yBAAyB,SAAS,IAAI,CAAC,4CAA4C,yBAAyB,MAAM,EAAE,IAAI,CAAA;AAC1H,QAAM,kBAAkB,qBAAqB,OAAO,oBAAoB;AACxE,QAAM,iBAAiB,cAAc,0BAA0B,eAAe;AAC9E,QAAM,uBAAuB,cAAc,YAAY,eAAe;AACtE,QAAM,4BAA4B,cAChC,CAAC,GAAG,eAAe,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC,GACpE,eAAe;AAGjB,SAAO;IACL,OAAO;MACL,MAAM;MACN,QAAQ,SAAS,WAAW,IAAI,OAAO;MACvC,SAAS;QACP,eAAe,MAAM;QACrB,yBAAyB;QACzB,yBAAyB;QACzB,gCAAgC,gBAAgB;QAChD,0BAA0B,0BAA0B;QACpD,oCAAoC,0BAA0B;QAC9D,8BAA8B,yBAAyB;QACvD,oBAAoB,WAAW;QAC/B,cAAc,qBAAqB;QACnC,wBAAwB,qBAAqB;QAC7C,4BAA4B,eAAe;QAC3C,sCAAsC,eAAe;;;IAGzD;;AAEJ;AAEA,eAAsB,YAAY,SAAiCC,SAAqB;AACtF,QAAM,SAAS,cAAc,QAAQ,IAAG,GAAIA,QAAO,IAAI;AACvD,MAAI,CAAE,MAAM,WAAW,gBAAgB,MAAM,CAAC,GAAI;AAChD,UAAM,IAAI,WAAW,iCAAiC,MAAM,wBAAwB,UAAU,SAAS;EACzG;AAEA,QAAM,WAAW,MAAM,aAAa,MAAM;AAC1C,QAAM,iBAAiB,6BAA6B,SAAS,MAAM;AACnE,QAAM,eAAe,wBAAwB,UAAU,gCAA+B,CAAE;AACxF,QAAM,mBAA6B,CAAA;AACnC,QAAM,QAAQ,MAAM,2BAClB,QACA,SAAS,aACT,aAAa,gBACb,kBACA,SAAS,MAAM;AAEjB,QAAM,kBAAkB,uBAAuB,OAAO;AACtD,QAAM,wBACJ,OAAO,QAAQ,oBAAoB,WAAW,WAAW;AAC3D,QAAM,kBAAkB,+BACtB,OAAO,QAAQ,oBAAoB,WAAW,QAAQ,kBAAkB,SAAS,WAAW,gBAAgB;AAE9G,QAAM,iBAAiB,8BACrB,iBACA,uBACA,SAAS,WAAW,wBAAwB;AAE9C,QAAM,yBAAyB,8BAA8B,QAAQ;AACrE,QAAM,0BAA0B,+BAA+B,QAAQ,uBAAuB;AAC9F,QAAM,eAAe,oBAAoB,QAAQ,QAAQ;AACzD,QAAM,gBAAgB,qBAAqB,MAAM;AACjD,QAAM,SAA0B,CAAA;AAChC,QAAM,WAAW,CAAC,GAAG,IAAI,IAAI,gBAAgB,CAAC;AAC9C,QAAM,kBAAkB,QAAQ,aAAa;AAC7C,QAAM,SAAS,CAAC,UAA6D;AAC3E,QAAI,iBAAiB;AACnB,6BAAuB,MAAM,OAAO,MAAM,QAAQ;IACpD;AACA,WAAO,KAAK,MAAM,KAAK;AACvB,aAAS,KAAK,GAAG,MAAM,QAAQ;EACjC;AAEA,MAAI,gBAAgB,IAAI,UAAU,GAAG;AACnC,WAAO,mBAAmB,OAAO,gBAAgB,gBAAgB,QAAQ,QAAQ,kBAAkB,CAAC,CAAC;EACvG;AACA,MAAI,gBAAgB,IAAI,YAAY,GAAG;AACrC,WAAO,qBAAqB,OAAO,gBAAgB,QAAQ,QAAQ,kBAAkB,CAAC,CAAC;EACzF;AACA,MAAI,gBAAgB,IAAI,WAAW,GAAG;AACpC,WACE,oBACE,OACA,QAAQ,QAAQ,kBAAkB,GAClC,yBACA,gBACA,wBACA,QAAQ,QAAQ,kBAAkB,CAAC,CACpC;EAEL;AACA,MAAI,gBAAgB,IAAI,OAAO,GAAG;AAChC,WACE,MAAM,gBACJ,OACA,eACA,QACA,cACA,QAAQ,QAAQ,kBAAkB,GAClC,QAAQ,QAAQ,gBAAgB,CAAC,CAClC;EAEL;AACA,MAAI,gBAAgB,IAAI,oBAAoB,GAAG;AAC7C,WAAO,4BAA4B,OAAO,SAAS,WAAW,QAAQ,QAAQ,kBAAkB,CAAC,CAAC;EACpG;AACA,MAAI,gBAAgB,IAAI,eAAe,GAAG;AACxC,WAAO,MAAM,uBAAuB,QAAQ,OAAO,QAAQ,QAAQ,kBAAkB,CAAC,CAAC;EACzF;AAEA,QAAM,qBAAqB,CAAC,GAAG,IAAI,IAAI,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;AACjG,QAAM,YAAY,OAAO,KAAK,CAAC,UAAU,MAAM,WAAW,OAAO;AACjE,SAAO;IACL,IAAI,CAAC;IACL,cAAc,mBAAmB,SAAS;IAC1C;IACA,UAAU;IACV,cAAc,OAAM;;AAExB;",
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["path", "global"]
|
|
7
7
|
}
|
|
@@ -1,32 +1,33 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
-
import {
|
|
4
|
-
extractReferencedPmItemIdsFromCommand
|
|
5
|
-
} from "./chunk-3BWOVLTH.js";
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c8e3c91e-a467-515d-8fdd-02fd7c237ebe")}catch(e){}}();
|
|
6
3
|
import {
|
|
7
4
|
buildRemediationCommands,
|
|
8
5
|
scanHistoryDrift
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-YPH4ESA2.js";
|
|
7
|
+
import {
|
|
8
|
+
extractReferencedPmItemIdsFromCommand
|
|
9
|
+
} from "./chunk-LI65XLJR.js";
|
|
10
|
+
import "./chunk-3A2CMEM7.js";
|
|
11
|
+
import "./chunk-X7UHMKPE.js";
|
|
12
|
+
import "./chunk-UIIQC5YO.js";
|
|
13
|
+
import "./chunk-TYJJOTUA.js";
|
|
14
|
+
import "./chunk-2IF7WLB7.js";
|
|
15
|
+
import "./chunk-XYNT7UFP.js";
|
|
16
|
+
import "./chunk-LMTOY5HE.js";
|
|
16
17
|
import "./chunk-LXYVKYMQ.js";
|
|
17
18
|
import {
|
|
18
19
|
listAllFrontMatterWithBody
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import "./chunk-
|
|
20
|
+
} from "./chunk-YBZW2QQ7.js";
|
|
21
|
+
import "./chunk-UT6WFXW2.js";
|
|
21
22
|
import {
|
|
22
23
|
normalizeStatusInput
|
|
23
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-UYQ7HXH4.js";
|
|
24
25
|
import {
|
|
25
26
|
resolveItemTypeRegistry
|
|
26
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-GUZBNB3G.js";
|
|
27
28
|
import {
|
|
28
29
|
nowIso
|
|
29
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-B2KZGPM2.js";
|
|
30
31
|
import {
|
|
31
32
|
DEFAULT_VALIDATE_CLOSURE_LIKE_METADATA_FIELD_PATTERNS,
|
|
32
33
|
DEFAULT_VALIDATE_STALE_BLOCKER_REASON_PATTERNS,
|
|
@@ -40,7 +41,7 @@ import {
|
|
|
40
41
|
resolvePmRoot,
|
|
41
42
|
resolveRuntimeStatusRegistry,
|
|
42
43
|
toNonEmptyStringOrUndefined
|
|
43
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-X4IZKYHP.js";
|
|
44
45
|
|
|
45
46
|
// dist/cli/commands/validate.js
|
|
46
47
|
import fs from "node:fs/promises";
|
|
@@ -1115,6 +1116,6 @@ async function runValidate(options, global) {
|
|
|
1115
1116
|
export {
|
|
1116
1117
|
runValidate
|
|
1117
1118
|
};
|
|
1118
|
-
//# sourceMappingURL=validate-
|
|
1119
|
+
//# sourceMappingURL=validate-UCEOB7S6.js.map
|
|
1119
1120
|
|
|
1120
|
-
//# debugId=
|
|
1121
|
+
//# debugId=c8e3c91e-a467-515d-8fdd-02fd7c237ebe
|