@unbrained/pm-cli 2026.6.6 → 2026.6.8
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/.claude-plugin/marketplace.json +1 -1
- package/AGENTS.md +1 -1
- package/CHANGELOG.md +79 -0
- package/CONTRIBUTING.md +1 -1
- package/README.md +6 -2
- package/dist/cli/bootstrap-args.js +30 -13
- package/dist/cli/bootstrap-args.js.map +1 -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 +20 -11
- 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 +32 -10
- package/dist/cli/commands/close.js.map +1 -1
- package/dist/cli/commands/comments-audit.js +4 -3
- package/dist/cli/commands/comments-audit.js.map +1 -1
- package/dist/cli/commands/completion.js +105 -43
- 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/scaffold.js +6 -14
- package/dist/cli/commands/extension/scaffold.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/gc.js +10 -2
- package/dist/cli/commands/gc.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/health.js +10 -2
- package/dist/cli/commands/health.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 +3 -1
- package/dist/cli/commands/index.js +5 -3
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts +1 -0
- package/dist/cli/commands/init.js +48 -2
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/list.d.ts +13 -2
- package/dist/cli/commands/list.js +189 -9
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/normalize.js +6 -4
- package/dist/cli/commands/normalize.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/schema.d.ts +13 -2
- package/dist/cli/commands/schema.js +66 -12
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/search.d.ts +11 -2
- package/dist/cli/commands/search.js +321 -35
- package/dist/cli/commands/search.js.map +1 -1
- package/dist/cli/commands/upgrade.js +4 -12
- package/dist/cli/commands/upgrade.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 +18 -37
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/register-list-query.js +22 -5
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-mutation.js +83 -39
- 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 +7 -5
- package/dist/cli/register-setup.js.map +1 -1
- package/dist/cli/registration-helpers.js +26 -4
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/chunks/activity-A3QKFSSF.js +16 -0
- package/dist/cli-bundle/chunks/{activity-JM6DTDND.js → activity-Q7XMIZIH.js} +11 -11
- package/dist/cli-bundle/chunks/{aggregate-VNAHUNNF.js → aggregate-GBSHSXOB.js} +87 -17
- package/dist/cli-bundle/chunks/aggregate-GBSHSXOB.js.map +7 -0
- package/dist/cli-bundle/chunks/{aggregate-GI7WSZPH.js → aggregate-HKQJZUBG.js} +88 -18
- package/dist/cli-bundle/chunks/aggregate-HKQJZUBG.js.map +1 -0
- package/dist/cli-bundle/chunks/{append-WMKRXKCE.js → append-3RFOU7P5.js} +8 -8
- package/dist/cli-bundle/chunks/{append-7H5N64R2.js → append-OM74OJVT.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-KJE2FOS4.js → chunk-2BYKYPWY.js} +26 -4
- package/dist/cli-bundle/chunks/chunk-2BYKYPWY.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-XTGLRY2Y.js → chunk-2HMD3JM2.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-PRJCELV4.js → chunk-2YPVCD7T.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-3FI4SEFT.js → chunk-3E3MDBTB.js} +62 -38
- package/dist/cli-bundle/chunks/chunk-3E3MDBTB.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-U5SXYXSY.js → chunk-3TXWDGPU.js} +287 -45
- package/dist/cli-bundle/chunks/chunk-3TXWDGPU.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-HZGUAH22.js → chunk-4TI3532H.js} +6 -7
- package/dist/cli-bundle/chunks/chunk-4TI3532H.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-2HVRUSQA.js → chunk-4WYBLB6J.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-R6UFP2GE.js → chunk-5NVJA7IW.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-Q7SPNHLW.js → chunk-5WO2VKFA.js} +190 -16
- package/dist/cli-bundle/chunks/chunk-5WO2VKFA.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-IOR7LGF4.js → chunk-7NQIY7Z6.js} +89 -7
- package/dist/cli-bundle/chunks/chunk-7NQIY7Z6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ECCMVXGM.js → chunk-7WXGR44E.js} +305 -216
- package/dist/cli-bundle/chunks/chunk-7WXGR44E.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-XSJCLN2R.js → chunk-AEMKH5WQ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-WOPXVEZP.js → chunk-ALSRBNYB.js} +28 -9
- package/dist/cli-bundle/chunks/chunk-ALSRBNYB.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-6ER6DXH5.js → chunk-AXBUHLW7.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-BQHUILZS.js → chunk-BFJPMUF5.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-I6BNFU5X.js → chunk-BKQMJXWY.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-XLTD2HN3.js → chunk-CBJXWXI5.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-FRAUKRU2.js → chunk-D7WK2PKB.js} +36 -15
- package/dist/cli-bundle/chunks/chunk-D7WK2PKB.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-PROOHX4K.js → chunk-DV27WDA7.js} +104 -21
- package/dist/cli-bundle/chunks/chunk-DV27WDA7.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-3BWOVLTH.js → chunk-EPWT7BEA.js} +8 -8
- package/dist/cli-bundle/chunks/chunk-ETZZU5QF.js +112 -0
- package/dist/cli-bundle/chunks/chunk-ETZZU5QF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-TPH5XEVD.js → chunk-F33AQIB4.js} +303 -207
- package/dist/cli-bundle/chunks/chunk-F33AQIB4.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-NUZ5HKR4.js → chunk-F33VC5EX.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-WKY2IBOQ.js → chunk-FGRJZVXD.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-77GFDHGF.js → chunk-FO2TYSQZ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-GXSUPCBV.js → chunk-HOA3GMB6.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-OVQCEJPG.js → chunk-HP35AVFS.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-KJ33AOCY.js → chunk-J4DKAGTM.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-ME2YH6FN.js → chunk-JS47EKLP.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-T3LC5LKB.js → chunk-K62SNVVE.js} +5 -6
- package/dist/cli-bundle/chunks/chunk-K62SNVVE.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GU2ZJ2VV.js → chunk-KBKJVXUS.js} +35 -14
- package/dist/cli-bundle/chunks/chunk-KBKJVXUS.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-KWU6HG75.js → chunk-KCGMABHM.js} +101 -18
- package/dist/cli-bundle/chunks/chunk-KCGMABHM.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-I2HSTRJF.js → chunk-KN4WSESY.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-RZN6VURO.js → chunk-KP4KIUQT.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-5FDATVEZ.js → chunk-KS2U7BZ3.js} +71 -17
- package/dist/cli-bundle/chunks/chunk-KS2U7BZ3.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-MITFDD35.js → chunk-KVXIQDJG.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-IJGCZSIQ.js → chunk-L3LYL3ID.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-AO442XLN.js → chunk-M7UBTVFT.js} +10 -6
- package/dist/cli-bundle/chunks/{chunk-AO442XLN.js.map → chunk-M7UBTVFT.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-UM2GBHS4.js → chunk-MSH23UWO.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-LCM63IXU.js → chunk-N4SQZ7L3.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-3VAM3NNM.js → chunk-NDSMKB2I.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-6P6GGMOG.js → chunk-NGEEXR2R.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-PO3GSVFV.js → chunk-NLVCMVC7.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-N7ACFE26.js → chunk-NUKHZZNM.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-GGYWB3Y2.js → chunk-ODN53S6H.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-23YFZ3IG.js → chunk-OTY2YEH5.js} +14 -14
- package/dist/cli-bundle/chunks/{chunk-2RSPZI5H.js → chunk-OVSSE2JP.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-4LL6TK5B.js → chunk-PQDH3S54.js} +59 -35
- package/dist/cli-bundle/chunks/chunk-PQDH3S54.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-2VVCGBNV.js → chunk-QF4OPBAG.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-QO7EBBOM.js → chunk-QFVASU44.js} +38 -7
- package/dist/cli-bundle/chunks/chunk-QFVASU44.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-WSMOSYRD.js → chunk-QQPZYP73.js} +14 -14
- package/dist/cli-bundle/chunks/{chunk-OZ7NSQHL.js → chunk-QWNUDGFQ.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-AY43SBIN.js → chunk-R4XIE7NQ.js} +54 -8
- package/dist/cli-bundle/chunks/chunk-R4XIE7NQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-52MAOQ6J.js → chunk-RISLL7XH.js} +71 -17
- package/dist/cli-bundle/chunks/chunk-RISLL7XH.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GCOQW437.js → chunk-SDLEYY6A.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-W7XABV4H.js → chunk-SM3RMWGO.js} +191 -17
- package/dist/cli-bundle/chunks/chunk-SM3RMWGO.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-PIU6RSL3.js → chunk-TBLBEOEX.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-SKJWX3QB.js → chunk-TXKENAQP.js} +88 -6
- package/dist/cli-bundle/chunks/chunk-TXKENAQP.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-YL2DJGYS.js → chunk-UEXNNF3K.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-UBOPJT3S.js → chunk-UMMJAJB2.js} +9 -9
- package/dist/cli-bundle/chunks/chunk-URJEZOLB.js +115 -0
- package/dist/cli-bundle/chunks/chunk-URJEZOLB.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-PDDFYW4X.js → chunk-VXBUXLVD.js} +27 -8
- package/dist/cli-bundle/chunks/chunk-VXBUXLVD.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-LB3RUL2N.js → chunk-XEKZCBCS.js} +10 -6
- package/dist/cli-bundle/chunks/chunk-XEKZCBCS.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-KAG77BY3.js → chunk-XLSQ3QLT.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-E5FJNAZA.js → chunk-XNGMIVQY.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-TCD3R2PF.js → chunk-XZS4MV37.js} +39 -8
- package/dist/cli-bundle/chunks/chunk-XZS4MV37.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-RWPSOIEE.js → chunk-YEFOCDIK.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-5SFCOO6B.js → chunk-YJAKN2N2.js} +277 -35
- package/dist/cli-bundle/chunks/chunk-YJAKN2N2.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-2VBQ6ZXS.js → chunk-Z2HXAFFH.js} +27 -5
- package/dist/cli-bundle/chunks/chunk-Z2HXAFFH.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-3LB74A67.js → chunk-Z55JACL2.js} +53 -7
- package/dist/cli-bundle/chunks/chunk-Z55JACL2.js.map +7 -0
- package/dist/cli-bundle/chunks/{claim-4DBF6RVG.js → claim-NHBIIBOW.js} +10 -10
- package/dist/cli-bundle/chunks/{claim-X2P4IB7J.js → claim-RNEBQCOO.js} +10 -10
- package/dist/cli-bundle/chunks/close-UNTFXVM3.js +13 -0
- package/dist/cli-bundle/chunks/{close-PTYFA45H.js → close-ZMXL2WDS.js} +8 -8
- package/dist/cli-bundle/chunks/{close-many-ERFO6LHR.js → close-many-CDPQGQUB.js} +37 -28
- package/dist/cli-bundle/chunks/close-many-CDPQGQUB.js.map +1 -0
- package/dist/cli-bundle/chunks/{close-many-7CGIDPTJ.js → close-many-IQV5C2SI.js} +36 -27
- package/dist/cli-bundle/chunks/close-many-IQV5C2SI.js.map +7 -0
- package/dist/cli-bundle/chunks/{comments-QKBYCWKD.js → comments-EFVBHWPT.js} +10 -10
- package/dist/cli-bundle/chunks/{comments-OONGABK5.js → comments-J5Q4IJPH.js} +10 -10
- package/dist/cli-bundle/chunks/{config-6FXCQKIF.js → config-72253M2O.js} +127 -12
- package/dist/cli-bundle/chunks/config-72253M2O.js.map +1 -0
- package/dist/cli-bundle/chunks/{config-U4RZ4CQB.js → config-VFYA6BMI.js} +128 -13
- package/dist/cli-bundle/chunks/config-VFYA6BMI.js.map +7 -0
- package/dist/cli-bundle/chunks/{context-FYYJGFWS.js → context-AVLO4IFH.js} +14 -14
- package/dist/cli-bundle/chunks/{context-FYYJGFWS.js.map → context-AVLO4IFH.js.map} +2 -2
- package/dist/cli-bundle/chunks/{context-YMJ3Z2HQ.js → context-WMSI2D65.js} +15 -15
- package/dist/cli-bundle/chunks/context-WMSI2D65.js.map +1 -0
- package/dist/cli-bundle/chunks/{contracts-RFSPGVVJ.js → contracts-D4BN3VSQ.js} +7 -5
- package/dist/cli-bundle/chunks/contracts-D4BN3VSQ.js.map +7 -0
- package/dist/cli-bundle/chunks/{contracts-QDB6OMLQ.js → contracts-RGPOBLPL.js} +8 -6
- package/dist/cli-bundle/chunks/contracts-RGPOBLPL.js.map +1 -0
- package/dist/cli-bundle/chunks/copy-H6TXHK7S.js +185 -0
- package/dist/cli-bundle/chunks/copy-H6TXHK7S.js.map +7 -0
- package/dist/cli-bundle/chunks/copy-WXE3OOLZ.js +182 -0
- package/dist/cli-bundle/chunks/copy-WXE3OOLZ.js.map +1 -0
- package/dist/cli-bundle/chunks/create-EZWAMUKR.js +27 -0
- package/dist/cli-bundle/chunks/{create-I5L4EYYZ.js → create-PUAIJEZ7.js} +13 -13
- package/dist/cli-bundle/chunks/{delete-7HPGI4GZ.js → delete-PKR2JHLH.js} +7 -7
- package/dist/cli-bundle/chunks/{delete-VXUPH5RS.js → delete-WBME6WG5.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-JSRRWC3Z.js → deps-4BQEDV4L.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-SCZIFK2Z.js → deps-KWHQRO75.js} +7 -7
- package/dist/cli-bundle/chunks/{docs-GJK6K4VP.js → docs-364GT3ZR.js} +9 -9
- package/dist/cli-bundle/chunks/{docs-WW4N3MBM.js → docs-SCNBUGSV.js} +9 -9
- package/dist/cli-bundle/chunks/{extension-VDY2U33M.js → extension-CRE7JM47.js} +8 -6
- package/dist/cli-bundle/chunks/{extension-J7IBMFTD.js → extension-KK2UPXJD.js} +8 -6
- package/dist/cli-bundle/chunks/{files-ISZJGILQ.js → files-3GESQAWL.js} +9 -9
- package/dist/cli-bundle/chunks/{files-WKOD326U.js → files-66EHM5ZR.js} +9 -9
- package/dist/cli-bundle/chunks/{gc-JDVJ6OQ2.js → gc-D5IWOKQH.js} +13 -5
- package/dist/cli-bundle/chunks/gc-D5IWOKQH.js.map +1 -0
- package/dist/cli-bundle/chunks/{gc-ULPVWMTN.js → gc-MOQDND5J.js} +12 -4
- package/dist/cli-bundle/chunks/gc-MOQDND5J.js.map +7 -0
- package/dist/cli-bundle/chunks/{get-RV37HT3G.js → get-7J2ZCBV5.js} +34 -12
- package/dist/cli-bundle/chunks/get-7J2ZCBV5.js.map +1 -0
- package/dist/cli-bundle/chunks/{get-WXU6WI5P.js → get-WXSLXV3K.js} +33 -11
- package/dist/cli-bundle/chunks/get-WXSLXV3K.js.map +7 -0
- package/dist/cli-bundle/chunks/{health-LOI2HHKB.js → health-B6AEM7BV.js} +21 -13
- package/dist/cli-bundle/chunks/health-B6AEM7BV.js.map +1 -0
- package/dist/cli-bundle/chunks/{health-6L6EH4WR.js → health-YMZGOMVX.js} +20 -12
- package/dist/cli-bundle/chunks/health-YMZGOMVX.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-PKN67D5O.js → history-TJTO5GCR.js} +10 -10
- package/dist/cli-bundle/chunks/history-ZERISU2L.js +20 -0
- package/dist/cli-bundle/chunks/history-compact-CKNN6UKW.js +290 -0
- package/dist/cli-bundle/chunks/history-compact-CKNN6UKW.js.map +7 -0
- package/dist/cli-bundle/chunks/history-compact-N2Q7IR3T.js +287 -0
- package/dist/cli-bundle/chunks/history-compact-N2Q7IR3T.js.map +1 -0
- package/dist/cli-bundle/chunks/history-redact-GODBYT5A.js +19 -0
- package/dist/cli-bundle/chunks/{history-redact-V4FOJGS7.js → history-redact-JUXUOH54.js} +11 -11
- package/dist/cli-bundle/chunks/{history-repair-HIBCBIKK.js → history-repair-CCCPBNTF.js} +11 -11
- package/dist/cli-bundle/chunks/{history-repair-SDMHR7JT.js → history-repair-TDBBSRVK.js} +11 -11
- package/dist/cli-bundle/chunks/{init-P56QYWJF.js → init-6ZPKD3YN.js} +9 -8
- package/dist/cli-bundle/chunks/init-CBZHXBR3.js +17 -0
- package/dist/cli-bundle/chunks/{learnings-MIXSESLK.js → learnings-U7U2FNIO.js} +10 -10
- package/dist/cli-bundle/chunks/{learnings-GDFRG5J7.js → learnings-WYNTYQ5T.js} +10 -10
- package/dist/cli-bundle/chunks/list-7MTPPZHC.js +20 -0
- package/dist/cli-bundle/chunks/{list-FGOWQMSM.js → list-JGP7ODML.js} +10 -10
- package/dist/cli-bundle/chunks/{notes-5UK3GEH2.js → notes-P25YVTEG.js} +10 -10
- package/dist/cli-bundle/chunks/{notes-4XVSH2AZ.js → notes-QIF6A7XS.js} +10 -10
- package/dist/cli-bundle/chunks/{plan-DUMBV3QB.js → plan-RACB5PI6.js} +13 -13
- package/dist/cli-bundle/chunks/{plan-SLMODHWX.js → plan-SSBJFWXA.js} +13 -13
- package/dist/cli-bundle/chunks/{register-list-query-POCFZ5JW.js → register-list-query-5IXDPUZ6.js} +31 -25
- package/dist/cli-bundle/chunks/register-list-query-5IXDPUZ6.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-list-query-WST76HSQ.js → register-list-query-GQAEIG4K.js} +30 -24
- package/dist/cli-bundle/chunks/register-list-query-GQAEIG4K.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-mutation-N5GSUZJV.js → register-mutation-FAS4YG63.js} +72 -50
- package/dist/cli-bundle/chunks/register-mutation-FAS4YG63.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-OA675SOU.js → register-mutation-YZCUILGO.js} +71 -49
- package/dist/cli-bundle/chunks/register-mutation-YZCUILGO.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-N3PMHXH5.js → register-operations-IBYWNJN5.js} +57 -34
- package/dist/cli-bundle/chunks/register-operations-IBYWNJN5.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-GNHBE5I3.js → register-operations-S2BOLUPF.js} +58 -35
- package/dist/cli-bundle/chunks/register-operations-S2BOLUPF.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-setup-ZHJI2DI3.js → register-setup-ABA2JPWO.js} +20 -19
- package/dist/cli-bundle/chunks/{register-setup-ZHJI2DI3.js.map → register-setup-ABA2JPWO.js.map} +2 -2
- package/dist/cli-bundle/chunks/{register-setup-JIMPKJKV.js → register-setup-JRZ4UMWZ.js} +21 -20
- package/dist/cli-bundle/chunks/register-setup-JRZ4UMWZ.js.map +1 -0
- package/dist/cli-bundle/chunks/restore-3JRX27QW.js +17 -0
- package/dist/cli-bundle/chunks/{restore-PBL6T5TW.js → restore-K72ZNPEP.js} +11 -11
- package/dist/cli-bundle/chunks/{schema-2NOO6NGB.js → schema-3VKRDBLC.js} +76 -20
- package/dist/cli-bundle/chunks/schema-3VKRDBLC.js.map +7 -0
- package/dist/cli-bundle/chunks/{schema-EBI4NLUO.js → schema-UL4B2JX5.js} +77 -21
- package/dist/cli-bundle/chunks/schema-UL4B2JX5.js.map +1 -0
- package/dist/cli-bundle/chunks/{search-OA6JX27A.js → search-632WJ7GO.js} +516 -41
- package/dist/cli-bundle/chunks/search-632WJ7GO.js.map +7 -0
- package/dist/cli-bundle/chunks/{search-JPUQTVCY.js → search-EQDHSE4G.js} +510 -42
- package/dist/cli-bundle/chunks/search-EQDHSE4G.js.map +1 -0
- package/dist/cli-bundle/chunks/{stats-XYB6KTFG.js → stats-O4UTMJMC.js} +7 -7
- package/dist/cli-bundle/chunks/{stats-CV54BAWY.js → stats-WLJ3XBF5.js} +7 -7
- package/dist/cli-bundle/chunks/{telemetry-LMJ7PFUO.js → telemetry-EUVHFSQU.js} +4 -4
- package/dist/cli-bundle/chunks/{telemetry-NCMEPJNR.js → telemetry-NRVWX25E.js} +4 -4
- package/dist/cli-bundle/chunks/{test-WBROAJIE.js → test-GXUBQNUC.js} +14 -13
- package/dist/cli-bundle/chunks/test-XN7RJL5Z.js +32 -0
- package/dist/cli-bundle/chunks/{test-all-N6NSRDTV.js → test-all-UTFXC7S2.js} +16 -15
- package/dist/cli-bundle/chunks/{test-all-N6NSRDTV.js.map → test-all-UTFXC7S2.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-all-NTOZ7C3M.js → test-all-XM6OKI3L.js} +14 -13
- package/dist/cli-bundle/chunks/{test-all-NTOZ7C3M.js.map → test-all-XM6OKI3L.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-runs-V6A7LPWZ.js → test-runs-7FHCPEA3.js} +5 -5
- package/dist/cli-bundle/chunks/{test-runs-WMVTQU3Y.js → test-runs-IK6E2HNX.js} +5 -5
- package/dist/cli-bundle/chunks/update-LFBSEW3N.js +21 -0
- package/dist/cli-bundle/chunks/update-U4B4OMHZ.js +25 -0
- package/dist/cli-bundle/chunks/{update-many-KGGEYABR.js → update-many-5KD33MKY.js} +22 -22
- package/dist/cli-bundle/chunks/{update-many-EM6OXYGO.js → update-many-N3YTM7K4.js} +22 -22
- package/dist/cli-bundle/chunks/{upgrade-BLI7XBAJ.js → upgrade-5SRFLUNW.js} +8 -14
- package/dist/cli-bundle/chunks/upgrade-5SRFLUNW.js.map +7 -0
- package/dist/cli-bundle/chunks/{upgrade-LXPOQKFV.js → upgrade-FFXGO43H.js} +9 -15
- package/dist/cli-bundle/chunks/upgrade-FFXGO43H.js.map +1 -0
- package/dist/cli-bundle/chunks/{validate-L5J6A7YO.js → validate-CRWXZILW.js} +20 -19
- package/dist/cli-bundle/chunks/{validate-L5J6A7YO.js.map → validate-CRWXZILW.js.map} +1 -1
- package/dist/cli-bundle/chunks/{validate-AGOAUOVW.js → validate-T3LPWSZG.js} +18 -17
- package/dist/cli-bundle/chunks/{validate-AGOAUOVW.js.map → validate-T3LPWSZG.js.map} +1 -1
- package/dist/cli-bundle/main.js +160 -87
- package/dist/cli-bundle/main.js.map +3 -3
- package/dist/core/config/nested-settings.d.ts +8 -8
- package/dist/core/config/nested-settings.js +71 -7
- 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/diagnostics/remediation.js +7 -2
- package/dist/core/diagnostics/remediation.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/fs/fs-utils.js +29 -4
- package/dist/core/fs/fs-utils.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/packages/root.d.ts +10 -0
- package/dist/core/packages/root.js +24 -2
- package/dist/core/packages/root.js.map +1 -1
- package/dist/core/schema/runtime-schema.js +3 -6
- package/dist/core/schema/runtime-schema.js.map +1 -1
- package/dist/core/search/background-refresh.d.ts +0 -8
- package/dist/core/search/background-refresh.js +2 -9
- package/dist/core/search/background-refresh.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 +27 -16
- package/dist/core/search/vector-stores.js.map +1 -1
- package/dist/core/sentry/instrument.js +4 -17
- package/dist/core/sentry/instrument.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 +40 -8
- 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.d.ts +1 -0
- package/dist/core/telemetry/runtime.js +86 -5
- package/dist/core/telemetry/runtime.js.map +1 -1
- package/dist/mcp/server.js +109 -19
- 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 +15 -4
- 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 +32 -3
- 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 +44 -12
- 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/AGENT_GUIDE.md +3 -1
- package/docs/CLAUDE_CODE_PLUGIN.md +4 -4
- package/docs/CODEX_PLUGIN.md +1 -1
- package/docs/COMMANDS.md +14 -5
- package/docs/CONFIGURATION.md +28 -1
- package/docs/EXTENSIONS.md +17 -9
- package/docs/QUICKSTART.md +1 -1
- package/docs/RELEASING.md +17 -0
- package/docs/SDK.md +66 -0
- package/docs/TESTING.md +14 -0
- package/marketplace.json +1 -1
- 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/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/README.md +7 -7
- package/plugins/pm-claude/commands/pm-init.md +1 -1
- 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-3LB74A67.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-AY43SBIN.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/gc-JDVJ6OQ2.js.map +0 -1
- package/dist/cli-bundle/chunks/gc-ULPVWMTN.js.map +0 -7
- 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/health-6L6EH4WR.js.map +0 -7
- package/dist/cli-bundle/chunks/health-LOI2HHKB.js.map +0 -1
- 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/register-setup-JIMPKJKV.js.map +0 -1
- package/dist/cli-bundle/chunks/restore-D4RGNX33.js +0 -17
- package/dist/cli-bundle/chunks/schema-2NOO6NGB.js.map +0 -7
- package/dist/cli-bundle/chunks/schema-EBI4NLUO.js.map +0 -1
- 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/upgrade-BLI7XBAJ.js.map +0 -7
- package/dist/cli-bundle/chunks/upgrade-LXPOQKFV.js.map +0 -1
- /package/dist/cli-bundle/chunks/{activity-CVXTCHYY.js.map → activity-A3QKFSSF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-JM6DTDND.js.map → activity-Q7XMIZIH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-WMKRXKCE.js.map → append-3RFOU7P5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-7H5N64R2.js.map → append-OM74OJVT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XTGLRY2Y.js.map → chunk-2HMD3JM2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PRJCELV4.js.map → chunk-2YPVCD7T.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2HVRUSQA.js.map → chunk-4WYBLB6J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-R6UFP2GE.js.map → chunk-5NVJA7IW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XSJCLN2R.js.map → chunk-AEMKH5WQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6ER6DXH5.js.map → chunk-AXBUHLW7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BQHUILZS.js.map → chunk-BFJPMUF5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-I6BNFU5X.js.map → chunk-BKQMJXWY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XLTD2HN3.js.map → chunk-CBJXWXI5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3BWOVLTH.js.map → chunk-EPWT7BEA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NUZ5HKR4.js.map → chunk-F33VC5EX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WKY2IBOQ.js.map → chunk-FGRJZVXD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-77GFDHGF.js.map → chunk-FO2TYSQZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GXSUPCBV.js.map → chunk-HOA3GMB6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OVQCEJPG.js.map → chunk-HP35AVFS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KJ33AOCY.js.map → chunk-J4DKAGTM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ME2YH6FN.js.map → chunk-JS47EKLP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-I2HSTRJF.js.map → chunk-KN4WSESY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RZN6VURO.js.map → chunk-KP4KIUQT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-MITFDD35.js.map → chunk-KVXIQDJG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IJGCZSIQ.js.map → chunk-L3LYL3ID.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UM2GBHS4.js.map → chunk-MSH23UWO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LCM63IXU.js.map → chunk-N4SQZ7L3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3VAM3NNM.js.map → chunk-NDSMKB2I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6P6GGMOG.js.map → chunk-NGEEXR2R.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PO3GSVFV.js.map → chunk-NLVCMVC7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-N7ACFE26.js.map → chunk-NUKHZZNM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GGYWB3Y2.js.map → chunk-ODN53S6H.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-23YFZ3IG.js.map → chunk-OTY2YEH5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2RSPZI5H.js.map → chunk-OVSSE2JP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2VVCGBNV.js.map → chunk-QF4OPBAG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WSMOSYRD.js.map → chunk-QQPZYP73.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OZ7NSQHL.js.map → chunk-QWNUDGFQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GCOQW437.js.map → chunk-SDLEYY6A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PIU6RSL3.js.map → chunk-TBLBEOEX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YL2DJGYS.js.map → chunk-UEXNNF3K.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UBOPJT3S.js.map → chunk-UMMJAJB2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KAG77BY3.js.map → chunk-XLSQ3QLT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-E5FJNAZA.js.map → chunk-XNGMIVQY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RWPSOIEE.js.map → chunk-YEFOCDIK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-4DBF6RVG.js.map → claim-NHBIIBOW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-X2P4IB7J.js.map → claim-RNEBQCOO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-3HDWDA3L.js.map → close-UNTFXVM3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-PTYFA45H.js.map → close-ZMXL2WDS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-QKBYCWKD.js.map → comments-EFVBHWPT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-OONGABK5.js.map → comments-J5Q4IJPH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-JTZNCTQC.js.map → create-EZWAMUKR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-I5L4EYYZ.js.map → create-PUAIJEZ7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-7HPGI4GZ.js.map → delete-PKR2JHLH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-VXUPH5RS.js.map → delete-WBME6WG5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-JSRRWC3Z.js.map → deps-4BQEDV4L.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-SCZIFK2Z.js.map → deps-KWHQRO75.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-GJK6K4VP.js.map → docs-364GT3ZR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-WW4N3MBM.js.map → docs-SCNBUGSV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-VDY2U33M.js.map → extension-CRE7JM47.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-J7IBMFTD.js.map → extension-KK2UPXJD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-ISZJGILQ.js.map → files-3GESQAWL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-WKOD326U.js.map → files-66EHM5ZR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-PKN67D5O.js.map → history-TJTO5GCR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-2BA3T5AE.js.map → history-ZERISU2L.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-JBZNXHGR.js.map → history-redact-GODBYT5A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-V4FOJGS7.js.map → history-redact-JUXUOH54.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-HIBCBIKK.js.map → history-repair-CCCPBNTF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-SDMHR7JT.js.map → history-repair-TDBBSRVK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-P56QYWJF.js.map → init-6ZPKD3YN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-HIVSNX3O.js.map → init-CBZHXBR3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-MIXSESLK.js.map → learnings-U7U2FNIO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-GDFRG5J7.js.map → learnings-WYNTYQ5T.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-MUSQNMTD.js.map → list-7MTPPZHC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-FGOWQMSM.js.map → list-JGP7ODML.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-5UK3GEH2.js.map → notes-P25YVTEG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-4XVSH2AZ.js.map → notes-QIF6A7XS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-DUMBV3QB.js.map → plan-RACB5PI6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-SLMODHWX.js.map → plan-SSBJFWXA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-D4RGNX33.js.map → restore-3JRX27QW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-PBL6T5TW.js.map → restore-K72ZNPEP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-XYB6KTFG.js.map → stats-O4UTMJMC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-CV54BAWY.js.map → stats-WLJ3XBF5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-LMJ7PFUO.js.map → telemetry-EUVHFSQU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-NCMEPJNR.js.map → telemetry-NRVWX25E.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-WBROAJIE.js.map → test-GXUBQNUC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-MXX3E5JL.js.map → test-XN7RJL5Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-V6A7LPWZ.js.map → test-runs-7FHCPEA3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-WMVTQU3Y.js.map → test-runs-IK6E2HNX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-YRXSUGYQ.js.map → update-LFBSEW3N.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-OSV3NAQB.js.map → update-U4B4OMHZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-KGGEYABR.js.map → update-many-5KD33MKY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-EM6OXYGO.js.map → update-many-N3YTM7K4.js.map} +0 -0
|
@@ -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": "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",
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["path", "global"]
|
|
7
7
|
}
|