@unbrained/pm-cli 2026.6.30 → 2026.7.2
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/AGENTS.md +2 -0
- package/CHANGELOG.md +26 -0
- package/dist/cli/bootstrap-args.js +89 -79
- package/dist/cli/bootstrap-args.js.map +1 -1
- package/dist/cli/commander-usage.d.ts +2 -0
- package/dist/cli/commander-usage.js +58 -47
- package/dist/cli/commander-usage.js.map +1 -1
- package/dist/cli/commands/aggregate.js +102 -79
- package/dist/cli/commands/aggregate.js.map +1 -1
- package/dist/cli/commands/calendar.js +339 -303
- package/dist/cli/commands/calendar.js.map +1 -1
- package/dist/cli/commands/close-many.js +89 -68
- package/dist/cli/commands/close-many.js.map +1 -1
- package/dist/cli/commands/close.js +157 -129
- package/dist/cli/commands/close.js.map +1 -1
- package/dist/cli/commands/comments-audit.js +50 -42
- package/dist/cli/commands/comments-audit.js.map +1 -1
- package/dist/cli/commands/config.d.ts +2 -0
- package/dist/cli/commands/config.js +443 -879
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/context.js +365 -287
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/commands/contracts.js +352 -238
- package/dist/cli/commands/contracts.js.map +1 -1
- package/dist/cli/commands/create.js +483 -434
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/commands/dedupe-audit.js +46 -39
- package/dist/cli/commands/dedupe-audit.js.map +1 -1
- package/dist/cli/commands/dedupe-merge.js +88 -69
- package/dist/cli/commands/dedupe-merge.js.map +1 -1
- package/dist/cli/commands/extension/bundled-catalog.js +59 -46
- package/dist/cli/commands/extension/bundled-catalog.js.map +1 -1
- package/dist/cli/commands/extension/doctor.js +129 -78
- package/dist/cli/commands/extension/doctor.js.map +1 -1
- package/dist/cli/commands/extension/managed-state.js +101 -57
- package/dist/cli/commands/extension/managed-state.js.map +1 -1
- package/dist/cli/commands/extension/scaffold.d.ts +7 -0
- package/dist/cli/commands/extension/scaffold.js +214 -186
- package/dist/cli/commands/extension/scaffold.js.map +1 -1
- package/dist/cli/commands/extension.d.ts +6 -1
- package/dist/cli/commands/extension.js +1034 -902
- package/dist/cli/commands/extension.js.map +1 -1
- package/dist/cli/commands/get.js +114 -81
- package/dist/cli/commands/get.js.map +1 -1
- package/dist/cli/commands/health.d.ts +17 -0
- package/dist/cli/commands/health.js +446 -307
- package/dist/cli/commands/health.js.map +1 -1
- package/dist/cli/commands/history-compact.js +209 -140
- package/dist/cli/commands/history-compact.js.map +1 -1
- package/dist/cli/commands/history-redact.js +162 -119
- package/dist/cli/commands/history-redact.js.map +1 -1
- package/dist/cli/commands/history-repair.js +120 -85
- package/dist/cli/commands/history-repair.js.map +1 -1
- package/dist/cli/commands/init.d.ts +8 -2
- package/dist/cli/commands/init.js +263 -162
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/list-filter-shared.js +55 -48
- package/dist/cli/commands/list-filter-shared.js.map +1 -1
- package/dist/cli/commands/list.js +152 -102
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/next.js +49 -32
- package/dist/cli/commands/next.js.map +1 -1
- package/dist/cli/commands/plan.js +373 -298
- package/dist/cli/commands/plan.js.map +1 -1
- package/dist/cli/commands/recurrence-parsers.js +43 -25
- package/dist/cli/commands/recurrence-parsers.js.map +1 -1
- package/dist/cli/commands/reindex.d.ts +21 -5
- package/dist/cli/commands/reindex.js +345 -205
- package/dist/cli/commands/reindex.js.map +1 -1
- package/dist/cli/commands/restore.d.ts +8 -7
- package/dist/cli/commands/restore.js +105 -69
- package/dist/cli/commands/restore.js.map +1 -1
- package/dist/cli/commands/schema.js +33 -30
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/search.d.ts +10 -2
- package/dist/cli/commands/search.js +595 -536
- package/dist/cli/commands/search.js.map +1 -1
- package/dist/cli/commands/telemetry.js +98 -87
- package/dist/cli/commands/telemetry.js.map +1 -1
- package/dist/cli/commands/test-all.js +237 -168
- package/dist/cli/commands/test-all.js.map +1 -1
- package/dist/cli/commands/test.d.ts +6 -5
- package/dist/cli/commands/test.js +530 -464
- package/dist/cli/commands/test.js.map +1 -1
- package/dist/cli/commands/update-many.js +57 -42
- package/dist/cli/commands/update-many.js.map +1 -1
- package/dist/cli/commands/update.d.ts +1 -1
- package/dist/cli/commands/update.js +764 -747
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/validate.d.ts +18 -1
- package/dist/cli/commands/validate.js +466 -343
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/error-guidance.js +399 -357
- package/dist/cli/error-guidance.js.map +1 -1
- package/dist/cli/extension-command-options.js +48 -21
- package/dist/cli/extension-command-options.js.map +1 -1
- package/dist/cli/main.d.ts +47 -0
- package/dist/cli/main.js +428 -341
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/migration-gates.js +22 -45
- package/dist/cli/migration-gates.js.map +1 -1
- package/dist/cli/register-list-query.js +94 -105
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-mutation.js +400 -416
- package/dist/cli/register-mutation.js.map +1 -1
- package/dist/cli/register-operations.js +86 -66
- package/dist/cli/register-operations.js.map +1 -1
- package/dist/cli/register-setup.js +120 -101
- package/dist/cli/register-setup.js.map +1 -1
- package/dist/cli/registration-helpers.js +117 -122
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/chunks/{activity-MVSEND6D.js → activity-CUC4JY3U.js} +9 -9
- package/dist/cli-bundle/chunks/activity-WEIEMM73.js +16 -0
- package/dist/cli-bundle/chunks/{aggregate-MOC4TR2G.js → aggregate-DKUTRY6R.js} +109 -85
- package/dist/cli-bundle/chunks/aggregate-DKUTRY6R.js.map +1 -0
- package/dist/cli-bundle/chunks/{aggregate-XJHLZQ5X.js → aggregate-SW5PNGCS.js} +108 -84
- package/dist/cli-bundle/chunks/{aggregate-XJHLZQ5X.js.map → aggregate-SW5PNGCS.js.map} +2 -2
- package/dist/cli-bundle/chunks/{append-KDHT4GHI.js → append-H32VOR2Y.js} +6 -6
- package/dist/cli-bundle/chunks/{append-LEDBAM3K.js → append-UBM632FK.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-Z55WX4IQ.js → chunk-2227673O.js} +158 -114
- package/dist/cli-bundle/chunks/chunk-2227673O.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-SJZTPVFT.js → chunk-2ASNV4DH.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-JVQ7UOYC.js → chunk-2CHRYUXL.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QE5UFCCO.js → chunk-2KWL5NPW.js} +42 -27
- package/dist/cli-bundle/chunks/chunk-2KWL5NPW.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ZEATCVAC.js → chunk-36UGKF4O.js} +21 -29
- package/dist/cli-bundle/chunks/chunk-36UGKF4O.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-JZG5ADVE.js → chunk-3AZUFQK6.js} +1103 -963
- package/dist/cli-bundle/chunks/chunk-3AZUFQK6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-DRPF274X.js → chunk-3LCUASYG.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-JJ4SG243.js → chunk-3Q2HBMTI.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-4BU75MF4.js +87 -0
- package/dist/cli-bundle/chunks/chunk-4BU75MF4.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GF7EAR22.js → chunk-4NUOWFBT.js} +109 -72
- package/dist/cli-bundle/chunks/chunk-4NUOWFBT.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-TQ6E76BE.js → chunk-55XRYWEG.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-5IRVSKPS.js → chunk-5GVTFFTC.js} +150 -224
- package/dist/cli-bundle/chunks/chunk-5GVTFFTC.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-CHRNYKNI.js → chunk-5PGBHRY3.js} +41 -26
- package/dist/cli-bundle/chunks/chunk-5PGBHRY3.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-53ARXF2O.js → chunk-66Z3X7ZG.js} +261 -161
- package/dist/cli-bundle/chunks/chunk-66Z3X7ZG.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-A3UNLXNJ.js → chunk-6ITZLD4T.js} +738 -688
- package/dist/cli-bundle/chunks/chunk-6ITZLD4T.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-JTRKME24.js → chunk-6YCYF2AI.js} +262 -162
- package/dist/cli-bundle/chunks/chunk-6YCYF2AI.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-RM6MHL6A.js → chunk-6ZMBJRDJ.js} +580 -467
- package/dist/cli-bundle/chunks/chunk-6ZMBJRDJ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-RPRW26NG.js → chunk-7MYWF4ZX.js} +110 -73
- package/dist/cli-bundle/chunks/chunk-7MYWF4ZX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-SNUK7H5J.js → chunk-7NSPKJUS.js} +716 -606
- package/dist/cli-bundle/chunks/chunk-7NSPKJUS.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-KYDYQMNW.js → chunk-7TH5NMVB.js} +95 -53
- package/dist/cli-bundle/chunks/chunk-7TH5NMVB.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-VD3LKZFX.js → chunk-7W4H4K26.js} +739 -689
- package/dist/cli-bundle/chunks/chunk-7W4H4K26.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-IBU2LLWM.js → chunk-A6VOGKBA.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-MLHX6DN5.js → chunk-AIAIXG7I.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-NIBP3I7A.js → chunk-AJEBCRIY.js} +128 -126
- package/dist/cli-bundle/chunks/chunk-AJEBCRIY.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-VZDBVEZR.js → chunk-B4O5S7I3.js} +79 -57
- package/dist/cli-bundle/chunks/{chunk-VZDBVEZR.js.map → chunk-B4O5S7I3.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-5ABGFWR4.js → chunk-BTX5MIQF.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-BVZZN2LH.js +809 -0
- package/dist/cli-bundle/chunks/chunk-BVZZN2LH.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-3JWQCLR5.js → chunk-CYBDUHNO.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-WFJZDUM7.js → chunk-CZPVDLD2.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-FDEVKXC4.js → chunk-EMPGXBUF.js} +22 -30
- package/dist/cli-bundle/chunks/chunk-EMPGXBUF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-HUYYMTGW.js → chunk-EUKTMRN3.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-EVWYAG46.js → chunk-FFOQHGNH.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-IF4ERU6A.js → chunk-GFMSLORL.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-IZQOJR2B.js → chunk-GRRG3MCT.js} +198 -189
- package/dist/cli-bundle/chunks/chunk-GRRG3MCT.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-IDYCAK35.js → chunk-H4GRLYJS.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-VMY7MZEM.js → chunk-HQTPRV4D.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-CY5IJMUM.js → chunk-I66WE2HE.js} +712 -602
- package/dist/cli-bundle/chunks/chunk-I66WE2HE.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ZFIEEDTJ.js → chunk-IEEJQCZ4.js} +509 -363
- package/dist/cli-bundle/chunks/chunk-IEEJQCZ4.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-DU66JUGT.js → chunk-IG5JYZGU.js} +488 -420
- package/dist/cli-bundle/chunks/chunk-IG5JYZGU.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-7L6TXOOC.js → chunk-JMK5GCK2.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-LBH7UYKY.js → chunk-JXAUVO6X.js} +258 -169
- package/dist/cli-bundle/chunks/{chunk-LBH7UYKY.js.map → chunk-JXAUVO6X.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-KRASIL6M.js → chunk-K2VYLVX4.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-4YIMPANT.js → chunk-KCO2EAN5.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-T7ZMQI4J.js → chunk-KIYCOJ63.js} +198 -189
- package/dist/cli-bundle/chunks/chunk-KIYCOJ63.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-D6USKAMA.js → chunk-KLXF7NCC.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-V3KLX7U7.js → chunk-KN3URLKS.js} +510 -364
- package/dist/cli-bundle/chunks/chunk-KN3URLKS.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-OB3RJV5F.js → chunk-LRKMWUUV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-74PUWBGN.js → chunk-LTRAF2D7.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-5T6WPLRO.js → chunk-MNBPX5JS.js} +394 -354
- package/dist/cli-bundle/chunks/chunk-MNBPX5JS.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-4TXTVZL3.js → chunk-MRD4T5LF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-E2Q2ULMR.js → chunk-N2JSWVWG.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-7WDETKGP.js → chunk-N3QCJS4M.js} +1105 -965
- package/dist/cli-bundle/chunks/chunk-N3QCJS4M.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-KGQ3W65B.js → chunk-NRZS637N.js} +258 -169
- package/dist/cli-bundle/chunks/chunk-NRZS637N.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-OTUJZKGI.js +799 -0
- package/dist/cli-bundle/chunks/chunk-OTUJZKGI.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ZIE6WXJ2.js → chunk-Q6K2OACU.js} +153 -90
- package/dist/cli-bundle/chunks/chunk-Q6K2OACU.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-K46GQ265.js → chunk-Q6NXOHS6.js} +489 -421
- package/dist/cli-bundle/chunks/chunk-Q6NXOHS6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-7RIJGN4R.js → chunk-QH3FSKRJ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-UB3V5WUI.js → chunk-RM37OPYK.js} +394 -354
- package/dist/cli-bundle/chunks/chunk-RM37OPYK.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-OUQ5JEFM.js → chunk-S62UANU7.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NO6Y6FB2.js → chunk-SPM2XLWI.js} +37 -28
- package/dist/cli-bundle/chunks/chunk-SPM2XLWI.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-DORJSBGJ.js → chunk-SYNKD3ZG.js} +127 -125
- package/dist/cli-bundle/chunks/chunk-SYNKD3ZG.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-6YRAMXRS.js → chunk-SYVUU7EK.js} +581 -468
- package/dist/cli-bundle/chunks/chunk-SYVUU7EK.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-D5LYZVGB.js → chunk-TPOFWBMY.js} +95 -53
- package/dist/cli-bundle/chunks/chunk-TPOFWBMY.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-IHXXUIXS.js → chunk-TTHCEV5Q.js} +92 -77
- package/dist/cli-bundle/chunks/chunk-TTHCEV5Q.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-DLDCPF5X.js → chunk-U2BEEM2X.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-Z5BM2FKQ.js → chunk-UGLU6Q2I.js} +91 -76
- package/dist/cli-bundle/chunks/chunk-UGLU6Q2I.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-73PTKMAE.js → chunk-UT73HUPC.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-F7G53BOA.js → chunk-UTSH5GWX.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-AWN4PPH5.js → chunk-UWKEJMZU.js} +157 -113
- package/dist/cli-bundle/chunks/chunk-UWKEJMZU.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-VY3VQ22F.js +84 -0
- package/dist/cli-bundle/chunks/chunk-VY3VQ22F.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-KTMMTOIP.js → chunk-W47SML5B.js} +152 -89
- package/dist/cli-bundle/chunks/chunk-W47SML5B.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-UFKNF23C.js → chunk-WJAMWAHZ.js} +157 -118
- package/dist/cli-bundle/chunks/chunk-WJAMWAHZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-HIBK6H4S.js → chunk-XCHUVHKU.js} +685 -544
- package/dist/cli-bundle/chunks/chunk-XCHUVHKU.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-DJDXAU74.js → chunk-XEWQKDYZ.js} +685 -544
- package/dist/cli-bundle/chunks/chunk-XEWQKDYZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-BOWQWXLI.js → chunk-XTHQWXVC.js} +158 -119
- package/dist/cli-bundle/chunks/chunk-XTHQWXVC.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-6T5ZIWBS.js → chunk-XWGEMNBR.js} +150 -224
- package/dist/cli-bundle/chunks/chunk-XWGEMNBR.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-JIP67N2K.js → chunk-Y4NRKBFW.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-WTRUDJ3R.js → chunk-YLZZ6T54.js} +38 -29
- package/dist/cli-bundle/chunks/chunk-YLZZ6T54.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-FBZ5XAAF.js → chunk-YPKFV2JR.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-OKQ22KTH.js → chunk-Z4DGFQDH.js} +80 -58
- package/dist/cli-bundle/chunks/{chunk-OKQ22KTH.js.map → chunk-Z4DGFQDH.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-BN3CWK6G.js → chunk-ZNHEYCDD.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-YEDFE4DC.js → chunk-ZNT7KEWE.js} +2 -2
- package/dist/cli-bundle/chunks/{claim-HMCLSLUE.js → claim-SENTPZBN.js} +8 -8
- package/dist/cli-bundle/chunks/{claim-6NINZYB3.js → claim-Z7MEQCBT.js} +8 -8
- package/dist/cli-bundle/chunks/{close-OP3LK7Z2.js → close-424MX4CU.js} +7 -7
- package/dist/cli-bundle/chunks/close-YCWQQPDS.js +14 -0
- package/dist/cli-bundle/chunks/{close-many-CXJBOWWY.js → close-many-2IV4J2TR.js} +103 -82
- package/dist/cli-bundle/chunks/close-many-2IV4J2TR.js.map +1 -0
- package/dist/cli-bundle/chunks/{close-many-BFMP6HHK.js → close-many-SWY34BII.js} +102 -81
- package/dist/cli-bundle/chunks/close-many-SWY34BII.js.map +7 -0
- package/dist/cli-bundle/chunks/{comments-ETHABIY6.js → comments-4FGNTSNV.js} +8 -8
- package/dist/cli-bundle/chunks/{comments-MU2WMBUY.js → comments-7YS5MY5X.js} +8 -8
- package/dist/cli-bundle/chunks/config-BZJKK7FZ.js +1062 -0
- package/dist/cli-bundle/chunks/config-BZJKK7FZ.js.map +1 -0
- package/dist/cli-bundle/chunks/config-G74GISC4.js +1072 -0
- package/dist/cli-bundle/chunks/config-G74GISC4.js.map +7 -0
- package/dist/cli-bundle/chunks/{context-7ZEZV3BV.js → context-LHVKJSPJ.js} +12 -12
- package/dist/cli-bundle/chunks/{context-XDI4DKKT.js → context-ZQY54JNS.js} +12 -12
- package/dist/cli-bundle/chunks/{contracts-SMOAN5NF.js → contracts-CP2EZJC7.js} +320 -199
- package/dist/cli-bundle/chunks/contracts-CP2EZJC7.js.map +7 -0
- package/dist/cli-bundle/chunks/{contracts-KP4QAGVW.js → contracts-FIZLMP7O.js} +321 -200
- package/dist/cli-bundle/chunks/contracts-FIZLMP7O.js.map +1 -0
- package/dist/cli-bundle/chunks/{copy-JJ3KOQW2.js → copy-GYNQQPW2.js} +5 -5
- package/dist/cli-bundle/chunks/{copy-CWM6SBY6.js → copy-TLW7JTQT.js} +5 -5
- package/dist/cli-bundle/chunks/{create-J5Q2ELZT.js → create-VSKYSOCD.js} +12 -12
- package/dist/cli-bundle/chunks/create-XTMAPS7I.js +28 -0
- package/dist/cli-bundle/chunks/{delete-2GZLQEUQ.js → delete-4W5JYCEG.js} +5 -5
- package/dist/cli-bundle/chunks/{delete-OOQS4KVD.js → delete-ANTOTI2I.js} +5 -5
- package/dist/cli-bundle/chunks/{deps-IF4IGL4R.js → deps-HPPE6MJN.js} +5 -5
- package/dist/cli-bundle/chunks/{deps-ZVGGCRR6.js → deps-ZQZN54EZ.js} +5 -5
- package/dist/cli-bundle/chunks/{docs-NFTBCQQC.js → docs-RPOVFMP3.js} +7 -7
- package/dist/cli-bundle/chunks/{docs-2TIFR62T.js → docs-XJNYBJGE.js} +7 -7
- package/dist/cli-bundle/chunks/{eval-2F6EH4XN.js → eval-DM6JBZTS.js} +10 -10
- package/dist/cli-bundle/chunks/{eval-PFKXQR3B.js → eval-RFBI5FGS.js} +10 -10
- package/dist/cli-bundle/chunks/{extension-GMVOIP4O.js → extension-B3YY4WY5.js} +11 -10
- package/dist/cli-bundle/chunks/{extension-3LRYX7SW.js → extension-TTSEFQTS.js} +11 -10
- package/dist/cli-bundle/chunks/{files-DF3HO6XK.js → files-5D65CHGE.js} +7 -7
- package/dist/cli-bundle/chunks/{files-T5ODMETM.js → files-GPIG77EN.js} +7 -7
- package/dist/cli-bundle/chunks/{focus-MY5ARIEK.js → focus-C3PEJV2C.js} +6 -6
- package/dist/cli-bundle/chunks/{focus-DLXKK4AH.js → focus-ZHN7WIGX.js} +6 -6
- package/dist/cli-bundle/chunks/{gc-MDGRR2SU.js → gc-D4JQ6OWN.js} +3 -3
- package/dist/cli-bundle/chunks/{gc-FULIVYR4.js → gc-VZIXDL32.js} +3 -3
- package/dist/cli-bundle/chunks/{get-VYPIICPC.js → get-GIBRUUOP.js} +121 -81
- package/dist/cli-bundle/chunks/get-GIBRUUOP.js.map +1 -0
- package/dist/cli-bundle/chunks/{get-AWK324RS.js → get-IOVAN6RU.js} +120 -80
- package/dist/cli-bundle/chunks/get-IOVAN6RU.js.map +7 -0
- package/dist/cli-bundle/chunks/{health-Q66C43GN.js → health-L2U3AFKV.js} +437 -264
- package/dist/cli-bundle/chunks/health-L2U3AFKV.js.map +1 -0
- package/dist/cli-bundle/chunks/{health-FBCVZGSX.js → health-MM7AWXYF.js} +436 -263
- package/dist/cli-bundle/chunks/health-MM7AWXYF.js.map +7 -0
- package/dist/cli-bundle/chunks/history-DD7L7BNL.js +18 -0
- package/dist/cli-bundle/chunks/{history-X4OSES6K.js → history-IL7XCEX2.js} +8 -8
- package/dist/cli-bundle/chunks/{history-compact-2GHT32UX.js → history-compact-HALOTOU7.js} +214 -135
- package/dist/cli-bundle/chunks/history-compact-HALOTOU7.js.map +1 -0
- package/dist/cli-bundle/chunks/{history-compact-WLCQEKXS.js → history-compact-MV25P7DM.js} +213 -134
- package/dist/cli-bundle/chunks/history-compact-MV25P7DM.js.map +7 -0
- package/dist/cli-bundle/chunks/history-redact-IX4YEWMY.js +19 -0
- package/dist/cli-bundle/chunks/{history-redact-45YW65BK.js → history-redact-VYCWQFK7.js} +9 -9
- package/dist/cli-bundle/chunks/{history-repair-FY75IC26.js → history-repair-44MODPQF.js} +124 -84
- package/dist/cli-bundle/chunks/history-repair-44MODPQF.js.map +1 -0
- package/dist/cli-bundle/chunks/{history-repair-GABSDSVD.js → history-repair-CPNAOCNF.js} +123 -83
- package/dist/cli-bundle/chunks/history-repair-CPNAOCNF.js.map +7 -0
- package/dist/cli-bundle/chunks/{init-KO7CGIRQ.js → init-F27NHENZ.js} +12 -11
- package/dist/cli-bundle/chunks/init-HHVQQP6C.js +22 -0
- package/dist/cli-bundle/chunks/{learnings-LHZT5BHW.js → learnings-HJVDQIGY.js} +8 -8
- package/dist/cli-bundle/chunks/{learnings-3F7YLI45.js → learnings-XSFSUUWK.js} +8 -8
- package/dist/cli-bundle/chunks/{list-Y6AU5BJS.js → list-HPMEKCAA.js} +8 -8
- package/dist/cli-bundle/chunks/{list-ROT7JF62.js → list-VMPWTURB.js} +8 -8
- package/dist/cli-bundle/chunks/{next-66BJB4N2.js → next-ETXF2ZCN.js} +59 -37
- package/dist/cli-bundle/chunks/next-ETXF2ZCN.js.map +7 -0
- package/dist/cli-bundle/chunks/{next-N5MWJTBY.js → next-QM6YJIIS.js} +60 -38
- package/dist/cli-bundle/chunks/next-QM6YJIIS.js.map +1 -0
- package/dist/cli-bundle/chunks/{notes-FW6YFLND.js → notes-GDZIKGR6.js} +8 -8
- package/dist/cli-bundle/chunks/{notes-EVJZ3VAB.js → notes-WDDBPC4D.js} +8 -8
- package/dist/cli-bundle/chunks/{plan-ZHKZ7JVF.js → plan-BGDR73Z6.js} +373 -279
- package/dist/cli-bundle/chunks/plan-BGDR73Z6.js.map +1 -0
- package/dist/cli-bundle/chunks/{plan-DQ7G4EDC.js → plan-C5IMM335.js} +372 -278
- package/dist/cli-bundle/chunks/plan-C5IMM335.js.map +7 -0
- package/dist/cli-bundle/chunks/{profile-CHAW6SEA.js → profile-CCOKZ2IQ.js} +9 -9
- package/dist/cli-bundle/chunks/{profile-UPZGCDOG.js → profile-HUCENIEQ.js} +9 -9
- package/dist/cli-bundle/chunks/{register-list-query-Y2VRHPCL.js → register-list-query-ROSNIL52.js} +80 -83
- package/dist/cli-bundle/chunks/register-list-query-ROSNIL52.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-list-query-KY6Z6WV7.js → register-list-query-XN4ZRHSV.js} +79 -82
- package/dist/cli-bundle/chunks/register-list-query-XN4ZRHSV.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-mutation-PCARIGZS.js → register-mutation-CFSB2MS3.js} +406 -385
- package/dist/cli-bundle/chunks/register-mutation-CFSB2MS3.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-N6AYSKPM.js → register-mutation-KRLAHEL2.js} +405 -384
- package/dist/cli-bundle/chunks/register-mutation-KRLAHEL2.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-L6CYTOIH.js → register-operations-4PASGJDB.js} +112 -93
- package/dist/cli-bundle/chunks/register-operations-4PASGJDB.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-YAT6FUUB.js → register-operations-MBN4KGUM.js} +113 -94
- package/dist/cli-bundle/chunks/register-operations-MBN4KGUM.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-setup-N7UGXYJC.js → register-setup-VIAWYFP5.js} +129 -104
- package/dist/cli-bundle/chunks/register-setup-VIAWYFP5.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-setup-MPANILQF.js → register-setup-ZCGKHDKL.js} +128 -103
- package/dist/cli-bundle/chunks/register-setup-ZCGKHDKL.js.map +7 -0
- package/dist/cli-bundle/chunks/{restore-DKMCLPI5.js → restore-4CBWUMCX.js} +9 -9
- package/dist/cli-bundle/chunks/restore-5UEAGG3W.js +17 -0
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-3F4QUEDH.js → scheduling-shortcuts-6VFKNKCM.js} +12 -12
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-BNZLQK36.js → scheduling-shortcuts-ERHCVTEM.js} +12 -12
- package/dist/cli-bundle/chunks/{schema-OLT6LVKH.js → schema-TDGK6N3I.js} +7 -7
- package/dist/cli-bundle/chunks/{schema-XJXKJQF5.js → schema-UE5KKAUX.js} +7 -7
- package/dist/cli-bundle/chunks/{search-KP6H7COV.js → search-FP7MEU4S.js} +10 -10
- package/dist/cli-bundle/chunks/{search-CX5UMV4H.js → search-K4CFLQ5S.js} +10 -10
- package/dist/cli-bundle/chunks/{stats-QZUG6MX5.js → stats-NJJCALEZ.js} +6 -6
- package/dist/cli-bundle/chunks/{stats-7XW4OEMK.js → stats-XT6QRKQY.js} +6 -6
- package/dist/cli-bundle/chunks/{telemetry-DIFPXCAT.js → telemetry-5SQ5UDXC.js} +84 -70
- package/dist/cli-bundle/chunks/telemetry-5SQ5UDXC.js.map +7 -0
- package/dist/cli-bundle/chunks/{telemetry-WTYFUPRL.js → telemetry-HVXFZA2U.js} +85 -71
- package/dist/cli-bundle/chunks/telemetry-HVXFZA2U.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-QNDXZQCW.js → test-UFSJ5YIO.js} +15 -14
- package/dist/cli-bundle/chunks/{test-HU2BS7EY.js → test-YCDAUBWF.js} +15 -14
- package/dist/cli-bundle/chunks/test-all-2BWKY3GQ.js +427 -0
- package/dist/cli-bundle/chunks/test-all-2BWKY3GQ.js.map +1 -0
- package/dist/cli-bundle/chunks/test-all-PM7UYN42.js +430 -0
- package/dist/cli-bundle/chunks/test-all-PM7UYN42.js.map +7 -0
- package/dist/cli-bundle/chunks/{test-runs-CA6K32RD.js → test-runs-FK5E75AA.js} +185 -147
- package/dist/cli-bundle/chunks/test-runs-FK5E75AA.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-runs-LANLLPVO.js → test-runs-H4TGWGRN.js} +184 -146
- package/dist/cli-bundle/chunks/test-runs-H4TGWGRN.js.map +7 -0
- package/dist/cli-bundle/chunks/update-MTCFES6X.js +24 -0
- package/dist/cli-bundle/chunks/{update-DJKWLBWJ.js → update-Y5WQVT5O.js} +15 -15
- package/dist/cli-bundle/chunks/{update-many-LU3SCNK5.js → update-many-6YAYYRLE.js} +83 -68
- package/dist/cli-bundle/chunks/{update-many-LU3SCNK5.js.map → update-many-6YAYYRLE.js.map} +2 -2
- package/dist/cli-bundle/chunks/{update-many-VW5DGF3S.js → update-many-JTKKSA7Y.js} +84 -69
- package/dist/cli-bundle/chunks/{update-many-VW5DGF3S.js.map → update-many-JTKKSA7Y.js.map} +1 -1
- package/dist/cli-bundle/chunks/{upgrade-ICXY244R.js → upgrade-DTAHZ236.js} +11 -10
- package/dist/cli-bundle/chunks/{upgrade-ICXY244R.js.map → upgrade-DTAHZ236.js.map} +1 -1
- package/dist/cli-bundle/chunks/{upgrade-77FRUAXN.js → upgrade-JUDU7YL4.js} +13 -12
- package/dist/cli-bundle/chunks/{upgrade-77FRUAXN.js.map → upgrade-JUDU7YL4.js.map} +1 -1
- package/dist/cli-bundle/chunks/{validate-2G566PKQ.js → validate-732RWS5W.js} +440 -319
- package/dist/cli-bundle/chunks/validate-732RWS5W.js.map +7 -0
- package/dist/cli-bundle/chunks/{validate-BDPVXHHH.js → validate-W7H5TEDC.js} +441 -320
- package/dist/cli-bundle/chunks/validate-W7H5TEDC.js.map +1 -0
- package/dist/cli-bundle/main.js +986 -1500
- package/dist/cli-bundle/main.js.map +4 -4
- package/dist/core/config/nested-settings.js +89 -67
- package/dist/core/config/nested-settings.js.map +1 -1
- package/dist/core/extensions/activation-summary-markdown.js +23 -12
- package/dist/core/extensions/activation-summary-markdown.js.map +1 -1
- package/dist/core/extensions/extension-policy.d.ts +18 -3
- package/dist/core/extensions/extension-policy.js +116 -106
- package/dist/core/extensions/extension-policy.js.map +1 -1
- package/dist/core/extensions/loader.js +310 -232
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/governance/metadata-coverage.js +20 -28
- package/dist/core/governance/metadata-coverage.js.map +1 -1
- package/dist/core/history/drift-scan.js +93 -81
- package/dist/core/history/drift-scan.js.map +1 -1
- package/dist/core/item/item-format.js +523 -410
- package/dist/core/item/item-format.js.map +1 -1
- package/dist/core/item/item-type-definition.js +14 -14
- package/dist/core/item/item-type-definition.js.map +1 -1
- package/dist/core/item/type-registry.js +87 -82
- package/dist/core/item/type-registry.js.map +1 -1
- package/dist/core/output/mutation-projection.js +42 -26
- package/dist/core/output/mutation-projection.js.map +1 -1
- package/dist/core/schema/runtime-schema.js +34 -28
- package/dist/core/schema/runtime-schema.js.map +1 -1
- package/dist/core/search/semantic-defaults.js +64 -37
- package/dist/core/search/semantic-defaults.js.map +1 -1
- package/dist/core/search/vector-stores.js +32 -17
- package/dist/core/search/vector-stores.js.map +1 -1
- package/dist/core/sentry/helpers.js +31 -28
- package/dist/core/sentry/helpers.js.map +1 -1
- package/dist/core/sentry/instrument.js +54 -43
- package/dist/core/sentry/instrument.js.map +1 -1
- package/dist/core/store/front-matter-cache.js +239 -153
- package/dist/core/store/front-matter-cache.js.map +1 -1
- package/dist/core/store/item-store.js +33 -26
- package/dist/core/store/item-store.js.map +1 -1
- package/dist/core/store/settings.js +247 -203
- package/dist/core/store/settings.js.map +1 -1
- package/dist/core/test/background-runs.js +189 -160
- package/dist/core/test/background-runs.js.map +1 -1
- package/dist/mcp/server.js +387 -367
- package/dist/mcp/server.js.map +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.js +111 -180
- package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-schema.js +76 -45
- package/dist/sdk/cli-contracts/tool-schema.js.map +1 -1
- package/dist/sdk/compose.d.ts +4 -1
- package/dist/sdk/compose.js +181 -115
- package/dist/sdk/compose.js.map +1 -1
- package/docs/RELEASING.md +2 -3
- package/package.json +2 -2
- package/packages/pm-beads/extensions/beads/runtime.ts +240 -167
- package/packages/pm-guide-shell/extensions/guide-shell/runtime.ts +65 -58
- package/packages/pm-todos/extensions/todos/runtime.ts +65 -42
- package/dist/cli-bundle/chunks/activity-EJBMXUBH.js +0 -16
- package/dist/cli-bundle/chunks/aggregate-MOC4TR2G.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-53ARXF2O.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-5IRVSKPS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-5T6WPLRO.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-6T5ZIWBS.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-6YRAMXRS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-7WDETKGP.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-A3UNLXNJ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-AWN4PPH5.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-BOWQWXLI.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-C2KCIZKZ.js +0 -115
- package/dist/cli-bundle/chunks/chunk-C2KCIZKZ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-CHRNYKNI.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-CY5IJMUM.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-D5LYZVGB.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-DJDXAU74.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-DORJSBGJ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-DU66JUGT.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-F6VH3LFC.js +0 -118
- package/dist/cli-bundle/chunks/chunk-F6VH3LFC.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-FDEVKXC4.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-GF7EAR22.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-HIBK6H4S.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-IHXXUIXS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-ISEKN64V.js +0 -35
- package/dist/cli-bundle/chunks/chunk-ISEKN64V.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-IZQOJR2B.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-JTRKME24.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-JZG5ADVE.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-K46GQ265.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-KGQ3W65B.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-KTMMTOIP.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-KYDYQMNW.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-NIBP3I7A.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-NO6Y6FB2.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-QE5UFCCO.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-RM6MHL6A.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-RPRW26NG.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-SNUK7H5J.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-T7ZMQI4J.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-UB3V5WUI.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-UFKNF23C.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-V3KLX7U7.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-VD3LKZFX.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-W2VMLL5S.js +0 -32
- package/dist/cli-bundle/chunks/chunk-W2VMLL5S.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-WTRUDJ3R.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-Z55WX4IQ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-Z5BM2FKQ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ZEATCVAC.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ZFIEEDTJ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ZIE6WXJ2.js.map +0 -1
- package/dist/cli-bundle/chunks/close-37KEHLYM.js +0 -14
- package/dist/cli-bundle/chunks/close-many-BFMP6HHK.js.map +0 -7
- package/dist/cli-bundle/chunks/close-many-CXJBOWWY.js.map +0 -1
- package/dist/cli-bundle/chunks/config-FIXJZEQK.js +0 -1541
- package/dist/cli-bundle/chunks/config-FIXJZEQK.js.map +0 -7
- package/dist/cli-bundle/chunks/config-X3ZVCUUG.js +0 -1531
- package/dist/cli-bundle/chunks/config-X3ZVCUUG.js.map +0 -1
- package/dist/cli-bundle/chunks/contracts-KP4QAGVW.js.map +0 -1
- package/dist/cli-bundle/chunks/contracts-SMOAN5NF.js.map +0 -7
- package/dist/cli-bundle/chunks/create-DFMNBKBS.js +0 -28
- package/dist/cli-bundle/chunks/get-AWK324RS.js.map +0 -7
- package/dist/cli-bundle/chunks/get-VYPIICPC.js.map +0 -1
- package/dist/cli-bundle/chunks/health-FBCVZGSX.js.map +0 -7
- package/dist/cli-bundle/chunks/health-Q66C43GN.js.map +0 -1
- package/dist/cli-bundle/chunks/history-5XUSLAJA.js +0 -18
- package/dist/cli-bundle/chunks/history-compact-2GHT32UX.js.map +0 -1
- package/dist/cli-bundle/chunks/history-compact-WLCQEKXS.js.map +0 -7
- package/dist/cli-bundle/chunks/history-redact-BVHWDXPR.js +0 -19
- package/dist/cli-bundle/chunks/history-repair-FY75IC26.js.map +0 -1
- package/dist/cli-bundle/chunks/history-repair-GABSDSVD.js.map +0 -7
- package/dist/cli-bundle/chunks/init-TRYJELH4.js +0 -21
- package/dist/cli-bundle/chunks/next-66BJB4N2.js.map +0 -7
- package/dist/cli-bundle/chunks/next-N5MWJTBY.js.map +0 -1
- package/dist/cli-bundle/chunks/plan-DQ7G4EDC.js.map +0 -7
- package/dist/cli-bundle/chunks/plan-ZHKZ7JVF.js.map +0 -1
- package/dist/cli-bundle/chunks/register-list-query-KY6Z6WV7.js.map +0 -7
- package/dist/cli-bundle/chunks/register-list-query-Y2VRHPCL.js.map +0 -1
- package/dist/cli-bundle/chunks/register-mutation-N6AYSKPM.js.map +0 -7
- package/dist/cli-bundle/chunks/register-mutation-PCARIGZS.js.map +0 -1
- package/dist/cli-bundle/chunks/register-operations-L6CYTOIH.js.map +0 -7
- package/dist/cli-bundle/chunks/register-operations-YAT6FUUB.js.map +0 -1
- package/dist/cli-bundle/chunks/register-setup-MPANILQF.js.map +0 -7
- package/dist/cli-bundle/chunks/register-setup-N7UGXYJC.js.map +0 -1
- package/dist/cli-bundle/chunks/restore-IRAKSWIW.js +0 -17
- package/dist/cli-bundle/chunks/telemetry-DIFPXCAT.js.map +0 -7
- package/dist/cli-bundle/chunks/telemetry-WTYFUPRL.js.map +0 -1
- package/dist/cli-bundle/chunks/test-all-PZTBLLQ6.js +0 -360
- package/dist/cli-bundle/chunks/test-all-PZTBLLQ6.js.map +0 -7
- package/dist/cli-bundle/chunks/test-all-XLPI4USF.js +0 -357
- package/dist/cli-bundle/chunks/test-all-XLPI4USF.js.map +0 -1
- package/dist/cli-bundle/chunks/test-runs-CA6K32RD.js.map +0 -1
- package/dist/cli-bundle/chunks/test-runs-LANLLPVO.js.map +0 -7
- package/dist/cli-bundle/chunks/update-UXDLTEOZ.js +0 -24
- package/dist/cli-bundle/chunks/validate-2G566PKQ.js.map +0 -7
- package/dist/cli-bundle/chunks/validate-BDPVXHHH.js.map +0 -1
- /package/dist/cli-bundle/chunks/{activity-MVSEND6D.js.map → activity-CUC4JY3U.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-EJBMXUBH.js.map → activity-WEIEMM73.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-KDHT4GHI.js.map → append-H32VOR2Y.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-LEDBAM3K.js.map → append-UBM632FK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SJZTPVFT.js.map → chunk-2ASNV4DH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JVQ7UOYC.js.map → chunk-2CHRYUXL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-DRPF274X.js.map → chunk-3LCUASYG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JJ4SG243.js.map → chunk-3Q2HBMTI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TQ6E76BE.js.map → chunk-55XRYWEG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IBU2LLWM.js.map → chunk-A6VOGKBA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-MLHX6DN5.js.map → chunk-AIAIXG7I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5ABGFWR4.js.map → chunk-BTX5MIQF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3JWQCLR5.js.map → chunk-CYBDUHNO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WFJZDUM7.js.map → chunk-CZPVDLD2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HUYYMTGW.js.map → chunk-EUKTMRN3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EVWYAG46.js.map → chunk-FFOQHGNH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IF4ERU6A.js.map → chunk-GFMSLORL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IDYCAK35.js.map → chunk-H4GRLYJS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VMY7MZEM.js.map → chunk-HQTPRV4D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7L6TXOOC.js.map → chunk-JMK5GCK2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KRASIL6M.js.map → chunk-K2VYLVX4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4YIMPANT.js.map → chunk-KCO2EAN5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-D6USKAMA.js.map → chunk-KLXF7NCC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OB3RJV5F.js.map → chunk-LRKMWUUV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-74PUWBGN.js.map → chunk-LTRAF2D7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4TXTVZL3.js.map → chunk-MRD4T5LF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-E2Q2ULMR.js.map → chunk-N2JSWVWG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7RIJGN4R.js.map → chunk-QH3FSKRJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OUQ5JEFM.js.map → chunk-S62UANU7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-DLDCPF5X.js.map → chunk-U2BEEM2X.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-73PTKMAE.js.map → chunk-UT73HUPC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-F7G53BOA.js.map → chunk-UTSH5GWX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JIP67N2K.js.map → chunk-Y4NRKBFW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FBZ5XAAF.js.map → chunk-YPKFV2JR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BN3CWK6G.js.map → chunk-ZNHEYCDD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YEDFE4DC.js.map → chunk-ZNT7KEWE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-HMCLSLUE.js.map → claim-SENTPZBN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-6NINZYB3.js.map → claim-Z7MEQCBT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-OP3LK7Z2.js.map → close-424MX4CU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-37KEHLYM.js.map → close-YCWQQPDS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-ETHABIY6.js.map → comments-4FGNTSNV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-MU2WMBUY.js.map → comments-7YS5MY5X.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-7ZEZV3BV.js.map → context-LHVKJSPJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-XDI4DKKT.js.map → context-ZQY54JNS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-JJ3KOQW2.js.map → copy-GYNQQPW2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-CWM6SBY6.js.map → copy-TLW7JTQT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-J5Q2ELZT.js.map → create-VSKYSOCD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-DFMNBKBS.js.map → create-XTMAPS7I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-2GZLQEUQ.js.map → delete-4W5JYCEG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-OOQS4KVD.js.map → delete-ANTOTI2I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-IF4IGL4R.js.map → deps-HPPE6MJN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-ZVGGCRR6.js.map → deps-ZQZN54EZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-NFTBCQQC.js.map → docs-RPOVFMP3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-2TIFR62T.js.map → docs-XJNYBJGE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{eval-2F6EH4XN.js.map → eval-DM6JBZTS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{eval-PFKXQR3B.js.map → eval-RFBI5FGS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-GMVOIP4O.js.map → extension-B3YY4WY5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-3LRYX7SW.js.map → extension-TTSEFQTS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-DF3HO6XK.js.map → files-5D65CHGE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-T5ODMETM.js.map → files-GPIG77EN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-MY5ARIEK.js.map → focus-C3PEJV2C.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-DLXKK4AH.js.map → focus-ZHN7WIGX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-MDGRR2SU.js.map → gc-D4JQ6OWN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-FULIVYR4.js.map → gc-VZIXDL32.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-5XUSLAJA.js.map → history-DD7L7BNL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-X4OSES6K.js.map → history-IL7XCEX2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-BVHWDXPR.js.map → history-redact-IX4YEWMY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-45YW65BK.js.map → history-redact-VYCWQFK7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-KO7CGIRQ.js.map → init-F27NHENZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-TRYJELH4.js.map → init-HHVQQP6C.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-LHZT5BHW.js.map → learnings-HJVDQIGY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-3F7YLI45.js.map → learnings-XSFSUUWK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-Y6AU5BJS.js.map → list-HPMEKCAA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-ROT7JF62.js.map → list-VMPWTURB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-FW6YFLND.js.map → notes-GDZIKGR6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-EVJZ3VAB.js.map → notes-WDDBPC4D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{profile-CHAW6SEA.js.map → profile-CCOKZ2IQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{profile-UPZGCDOG.js.map → profile-HUCENIEQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-DKMCLPI5.js.map → restore-4CBWUMCX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-IRAKSWIW.js.map → restore-5UEAGG3W.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{scheduling-shortcuts-3F4QUEDH.js.map → scheduling-shortcuts-6VFKNKCM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{scheduling-shortcuts-BNZLQK36.js.map → scheduling-shortcuts-ERHCVTEM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-OLT6LVKH.js.map → schema-TDGK6N3I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-XJXKJQF5.js.map → schema-UE5KKAUX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-KP6H7COV.js.map → search-FP7MEU4S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-CX5UMV4H.js.map → search-K4CFLQ5S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-QZUG6MX5.js.map → stats-NJJCALEZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-7XW4OEMK.js.map → stats-XT6QRKQY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-QNDXZQCW.js.map → test-UFSJ5YIO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-HU2BS7EY.js.map → test-YCDAUBWF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-UXDLTEOZ.js.map → update-MTCFES6X.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-DJKWLBWJ.js.map → update-Y5WQVT5O.js.map} +0 -0
|
@@ -7,20 +7,21 @@ import {
|
|
|
7
7
|
runLinkedTests,
|
|
8
8
|
runTest,
|
|
9
9
|
summarizeContextPreflight
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-IG5JYZGU.js";
|
|
11
|
+
import "./chunk-Y4NRKBFW.js";
|
|
12
|
+
import "./chunk-ZNHEYCDD.js";
|
|
13
|
+
import "./chunk-66Z3X7ZG.js";
|
|
14
|
+
import "./chunk-N3QCJS4M.js";
|
|
15
15
|
import "./chunk-5HIZDR5A.js";
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-SPM2XLWI.js";
|
|
17
|
+
import "./chunk-3LCUASYG.js";
|
|
18
|
+
import "./chunk-GRRG3MCT.js";
|
|
19
|
+
import "./chunk-BVZZN2LH.js";
|
|
20
|
+
import "./chunk-XWGEMNBR.js";
|
|
21
|
+
import "./chunk-JXAUVO6X.js";
|
|
22
|
+
import "./chunk-IEEJQCZ4.js";
|
|
23
|
+
import "./chunk-AIAIXG7I.js";
|
|
24
|
+
import "./chunk-7NSPKJUS.js";
|
|
24
25
|
export {
|
|
25
26
|
_testOnlyTestCommand,
|
|
26
27
|
classifyLinkedTestFailure,
|
|
@@ -31,4 +32,4 @@ export {
|
|
|
31
32
|
runTest,
|
|
32
33
|
summarizeContextPreflight
|
|
33
34
|
};
|
|
34
|
-
//# sourceMappingURL=test-
|
|
35
|
+
//# sourceMappingURL=test-UFSJ5YIO.js.map
|
|
@@ -9,20 +9,21 @@ import {
|
|
|
9
9
|
runLinkedTests,
|
|
10
10
|
runTest,
|
|
11
11
|
summarizeContextPreflight
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-Q6NXOHS6.js";
|
|
13
|
+
import "./chunk-KCO2EAN5.js";
|
|
14
|
+
import "./chunk-KLXF7NCC.js";
|
|
15
|
+
import "./chunk-6YCYF2AI.js";
|
|
16
|
+
import "./chunk-3AZUFQK6.js";
|
|
17
17
|
import "./chunk-P4SESZGT.js";
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-YLZZ6T54.js";
|
|
19
|
+
import "./chunk-ZNT7KEWE.js";
|
|
20
|
+
import "./chunk-KIYCOJ63.js";
|
|
21
|
+
import "./chunk-OTUJZKGI.js";
|
|
22
|
+
import "./chunk-5GVTFFTC.js";
|
|
23
|
+
import "./chunk-NRZS637N.js";
|
|
24
|
+
import "./chunk-KN3URLKS.js";
|
|
25
|
+
import "./chunk-K2VYLVX4.js";
|
|
26
|
+
import "./chunk-I66WE2HE.js";
|
|
26
27
|
export {
|
|
27
28
|
_testOnlyTestCommand,
|
|
28
29
|
classifyLinkedTestFailure,
|
|
@@ -33,6 +34,6 @@ export {
|
|
|
33
34
|
runTest,
|
|
34
35
|
summarizeContextPreflight
|
|
35
36
|
};
|
|
36
|
-
//# sourceMappingURL=test-
|
|
37
|
+
//# sourceMappingURL=test-YCDAUBWF.js.map
|
|
37
38
|
|
|
38
39
|
//# debugId=45eac7fa-f181-5cca-93b7-cfb58909dbb3
|
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2eb7993e-489d-5736-bd11-b2a782b74da4")}catch(e){}}();
|
|
3
|
+
import {
|
|
4
|
+
appendTrackedTestRunSummary,
|
|
5
|
+
countFailureCategories,
|
|
6
|
+
runLinkedTests,
|
|
7
|
+
runTest,
|
|
8
|
+
summarizeContextPreflight
|
|
9
|
+
} from "./chunk-Q6NXOHS6.js";
|
|
10
|
+
import "./chunk-KCO2EAN5.js";
|
|
11
|
+
import {
|
|
12
|
+
parseOptionalNumber
|
|
13
|
+
} from "./chunk-KLXF7NCC.js";
|
|
14
|
+
import {
|
|
15
|
+
resolveAuthor
|
|
16
|
+
} from "./chunk-T5RRNDA7.js";
|
|
17
|
+
import "./chunk-6YCYF2AI.js";
|
|
18
|
+
import "./chunk-3AZUFQK6.js";
|
|
19
|
+
import "./chunk-P4SESZGT.js";
|
|
20
|
+
import "./chunk-YLZZ6T54.js";
|
|
21
|
+
import "./chunk-ZNT7KEWE.js";
|
|
22
|
+
import "./chunk-KIYCOJ63.js";
|
|
23
|
+
import "./chunk-OTUJZKGI.js";
|
|
24
|
+
import "./chunk-5GVTFFTC.js";
|
|
25
|
+
import {
|
|
26
|
+
listAllFrontMatterLight
|
|
27
|
+
} from "./chunk-NRZS637N.js";
|
|
28
|
+
import {
|
|
29
|
+
normalizeStatusInput
|
|
30
|
+
} from "./chunk-KN3URLKS.js";
|
|
31
|
+
import {
|
|
32
|
+
nowIso
|
|
33
|
+
} from "./chunk-K2VYLVX4.js";
|
|
34
|
+
import {
|
|
35
|
+
EXIT_CODE,
|
|
36
|
+
PmCliError,
|
|
37
|
+
getActiveExtensionRegistrations,
|
|
38
|
+
getSettingsPath,
|
|
39
|
+
pathExists,
|
|
40
|
+
readSettings,
|
|
41
|
+
resolveGlobalPmRoot,
|
|
42
|
+
resolveItemTypeRegistry,
|
|
43
|
+
resolvePmRoot,
|
|
44
|
+
resolveRuntimeStatusRegistry
|
|
45
|
+
} from "./chunk-I66WE2HE.js";
|
|
46
|
+
|
|
47
|
+
// dist/cli/commands/test-all.js
|
|
48
|
+
function parseStatus(raw, statusRegistry) {
|
|
49
|
+
if (raw === void 0) {
|
|
50
|
+
return void 0;
|
|
51
|
+
}
|
|
52
|
+
const normalized = normalizeStatusInput(raw, statusRegistry);
|
|
53
|
+
if (!normalized) {
|
|
54
|
+
const allowedStatuses = statusRegistry.definitions.map((definition) => definition.id);
|
|
55
|
+
throw new PmCliError(`Invalid --status value "${raw}". Allowed: ${allowedStatuses.join(", ")}`, EXIT_CODE.USAGE);
|
|
56
|
+
}
|
|
57
|
+
return normalized;
|
|
58
|
+
}
|
|
59
|
+
function parseTimeout(raw) {
|
|
60
|
+
if (raw === void 0) {
|
|
61
|
+
return void 0;
|
|
62
|
+
}
|
|
63
|
+
return parseOptionalNumber(raw, "timeout");
|
|
64
|
+
}
|
|
65
|
+
function parseNonNegativeInteger(raw, flag) {
|
|
66
|
+
if (raw === void 0) {
|
|
67
|
+
return void 0;
|
|
68
|
+
}
|
|
69
|
+
const parsed = Number(raw);
|
|
70
|
+
if (!Number.isInteger(parsed) || parsed < 0) {
|
|
71
|
+
throw new PmCliError(`${flag} must be a non-negative integer`, EXIT_CODE.USAGE);
|
|
72
|
+
}
|
|
73
|
+
return parsed;
|
|
74
|
+
}
|
|
75
|
+
function formatTrackingError(error) {
|
|
76
|
+
return error instanceof Error ? error.message : String(error);
|
|
77
|
+
}
|
|
78
|
+
function resolveTrackedRunId() {
|
|
79
|
+
const fromEnv = process.env.PM_BACKGROUND_TEST_RUN_ID?.trim();
|
|
80
|
+
if (fromEnv && fromEnv.length > 0) {
|
|
81
|
+
return fromEnv;
|
|
82
|
+
}
|
|
83
|
+
return `test-all-local-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 8)}`;
|
|
84
|
+
}
|
|
85
|
+
function normalizeCommand(command) {
|
|
86
|
+
return command.trim().replaceAll(/\s+/g, " ");
|
|
87
|
+
}
|
|
88
|
+
function normalizeEnvSetSignature(value) {
|
|
89
|
+
if (!value || Object.keys(value).length === 0) {
|
|
90
|
+
return "{}";
|
|
91
|
+
}
|
|
92
|
+
return JSON.stringify(Object.fromEntries(Object.entries(value).sort(([left], [right]) => left.localeCompare(right))));
|
|
93
|
+
}
|
|
94
|
+
function normalizeEnvClearSignature(value) {
|
|
95
|
+
if (!value || value.length === 0) {
|
|
96
|
+
return "[]";
|
|
97
|
+
}
|
|
98
|
+
return JSON.stringify([...value].sort((left, right) => left.localeCompare(right)));
|
|
99
|
+
}
|
|
100
|
+
function normalizePmContextModeSignature(value) {
|
|
101
|
+
const normalized = value?.trim().toLowerCase();
|
|
102
|
+
return normalized && normalized.length > 0 ? normalized : "none";
|
|
103
|
+
}
|
|
104
|
+
function normalizeAssertionSignature(test) {
|
|
105
|
+
const normalized = {
|
|
106
|
+
assert_stdout_contains: [...new Set(test.assert_stdout_contains ?? [])].sort((left, right) => left.localeCompare(right)),
|
|
107
|
+
assert_stdout_regex: [...new Set(test.assert_stdout_regex ?? [])].sort((left, right) => left.localeCompare(right)),
|
|
108
|
+
assert_stderr_contains: [...new Set(test.assert_stderr_contains ?? [])].sort((left, right) => left.localeCompare(right)),
|
|
109
|
+
assert_stderr_regex: [...new Set(test.assert_stderr_regex ?? [])].sort((left, right) => left.localeCompare(right)),
|
|
110
|
+
assert_stdout_min_lines: typeof test.assert_stdout_min_lines === "number" ? test.assert_stdout_min_lines : void 0,
|
|
111
|
+
assert_json_field_equals: Object.fromEntries(Object.entries(test.assert_json_field_equals ?? {}).sort(([left], [right]) => left.localeCompare(right))),
|
|
112
|
+
assert_json_field_gte: Object.fromEntries(Object.entries(test.assert_json_field_gte ?? {}).sort(([left], [right]) => left.localeCompare(right)))
|
|
113
|
+
};
|
|
114
|
+
return JSON.stringify(normalized);
|
|
115
|
+
}
|
|
116
|
+
function buildLinkedTestKey(test) {
|
|
117
|
+
const command = test.command?.trim();
|
|
118
|
+
if (command && command.length > 0) {
|
|
119
|
+
const envSet = normalizeEnvSetSignature(test.env_set);
|
|
120
|
+
const envClear = normalizeEnvClearSignature(test.env_clear);
|
|
121
|
+
const pmContextMode = normalizePmContextModeSignature(test.pm_context_mode);
|
|
122
|
+
const sharedHostSafe = test.shared_host_safe === true ? "true" : "false";
|
|
123
|
+
const assertions = normalizeAssertionSignature(test);
|
|
124
|
+
return `command:${test.scope}:${normalizeCommand(command)}:${envSet}:${envClear}:${pmContextMode}:${sharedHostSafe}:${assertions}`;
|
|
125
|
+
}
|
|
126
|
+
const linkedPath = test.path?.trim() ?? "";
|
|
127
|
+
return `path:${test.scope}:${linkedPath}`;
|
|
128
|
+
}
|
|
129
|
+
function maxTimeoutSeconds(current, candidate) {
|
|
130
|
+
if (candidate === void 0) {
|
|
131
|
+
return current;
|
|
132
|
+
}
|
|
133
|
+
if (current === void 0 || candidate > current) {
|
|
134
|
+
return candidate;
|
|
135
|
+
}
|
|
136
|
+
return current;
|
|
137
|
+
}
|
|
138
|
+
function countStatuses(runResults) {
|
|
139
|
+
let passed = 0;
|
|
140
|
+
let failed = 0;
|
|
141
|
+
let skipped = 0;
|
|
142
|
+
for (const result of runResults) {
|
|
143
|
+
if (result.status === "passed") {
|
|
144
|
+
passed += 1;
|
|
145
|
+
continue;
|
|
146
|
+
}
|
|
147
|
+
if (result.status === "failed") {
|
|
148
|
+
failed += 1;
|
|
149
|
+
continue;
|
|
150
|
+
}
|
|
151
|
+
skipped += 1;
|
|
152
|
+
}
|
|
153
|
+
return { passed, failed, skipped };
|
|
154
|
+
}
|
|
155
|
+
function mergeFailureCategoryCounts(target, source) {
|
|
156
|
+
for (const [key, value] of Object.entries(source)) {
|
|
157
|
+
target[key] += value;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
function emitTestAllProgress(options, message) {
|
|
161
|
+
if (options.progress !== true) {
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
try {
|
|
165
|
+
process.stderr.write(`[pm test-all] ${message}
|
|
166
|
+
`);
|
|
167
|
+
} catch {
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
async function collectTestAllItemTests(filteredItems, global, pmRoot) {
|
|
171
|
+
const itemTests = [];
|
|
172
|
+
let linkedTests = 0;
|
|
173
|
+
for (const item of filteredItems) {
|
|
174
|
+
const readResult = await runTest(item.id, { run: false }, {
|
|
175
|
+
...global,
|
|
176
|
+
path: pmRoot
|
|
177
|
+
});
|
|
178
|
+
linkedTests += readResult.tests.length;
|
|
179
|
+
itemTests.push({ item, tests: readResult.tests });
|
|
180
|
+
}
|
|
181
|
+
return { itemTests, linkedTests };
|
|
182
|
+
}
|
|
183
|
+
async function selectTestAllItems(params) {
|
|
184
|
+
const statusRegistry = resolveRuntimeStatusRegistry(params.settings.schema);
|
|
185
|
+
const typeRegistry = resolveItemTypeRegistry(params.settings, getActiveExtensionRegistrations());
|
|
186
|
+
const statusFilter = parseStatus(params.options.status, statusRegistry);
|
|
187
|
+
const limitFilter = parseNonNegativeInteger(params.options.limit, "--limit");
|
|
188
|
+
const offsetFilter = parseNonNegativeInteger(params.options.offset, "--offset") ?? 0;
|
|
189
|
+
const allItems = await listAllFrontMatterLight(params.pmRoot, params.settings.item_format, typeRegistry.type_to_folder, void 0, params.settings.schema);
|
|
190
|
+
const statusFilteredItems = allItems.filter((item) => statusFilter ? item.status === statusFilter : true).sort((a, b) => a.id.localeCompare(b.id));
|
|
191
|
+
const filteredItems = limitFilter === void 0 ? statusFilteredItems.slice(offsetFilter) : statusFilteredItems.slice(offsetFilter, offsetFilter + limitFilter);
|
|
192
|
+
return { filteredItems, statusFilter, limitFilter, offsetFilter };
|
|
193
|
+
}
|
|
194
|
+
function buildEffectiveTimeoutByKey(itemTests) {
|
|
195
|
+
const effectiveTimeoutByKey = /* @__PURE__ */ new Map();
|
|
196
|
+
for (const { tests } of itemTests) {
|
|
197
|
+
for (const test of tests) {
|
|
198
|
+
const key = buildLinkedTestKey(test);
|
|
199
|
+
if (!effectiveTimeoutByKey.has(key)) {
|
|
200
|
+
effectiveTimeoutByKey.set(key, test.timeout_seconds);
|
|
201
|
+
continue;
|
|
202
|
+
}
|
|
203
|
+
effectiveTimeoutByKey.set(key, maxTimeoutSeconds(effectiveTimeoutByKey.get(key), test.timeout_seconds));
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return effectiveTimeoutByKey;
|
|
207
|
+
}
|
|
208
|
+
async function runTestAllItem(entry, context) {
|
|
209
|
+
const testsToRun = [];
|
|
210
|
+
const keyedTests = entry.tests.map((test) => {
|
|
211
|
+
const key = buildLinkedTestKey(test);
|
|
212
|
+
const duplicate = context.seenTestKeys.has(key);
|
|
213
|
+
if (!duplicate) {
|
|
214
|
+
context.seenTestKeys.add(key);
|
|
215
|
+
const effectiveTimeoutSeconds = context.effectiveTimeoutByKey.get(key);
|
|
216
|
+
testsToRun.push(effectiveTimeoutSeconds === void 0 ? test : { ...test, timeout_seconds: effectiveTimeoutSeconds });
|
|
217
|
+
}
|
|
218
|
+
return { test, key, duplicate };
|
|
219
|
+
});
|
|
220
|
+
const executedResults = testsToRun.length > 0 ? await runLinkedTests(testsToRun, context.defaultTimeoutSeconds, {
|
|
221
|
+
progress: context.options.progress,
|
|
222
|
+
sourceRoots: context.sourceRoots,
|
|
223
|
+
envSet: context.options.envSet,
|
|
224
|
+
envClear: context.options.envClear,
|
|
225
|
+
sharedHostSafe: context.options.sharedHostSafe,
|
|
226
|
+
pmContext: context.options.pmContext,
|
|
227
|
+
overrideLinkedPmContext: context.options.overrideLinkedPmContext,
|
|
228
|
+
failOnContextMismatch: context.options.failOnContextMismatch,
|
|
229
|
+
failOnEmptyTestRun: context.options.failOnEmptyTestRun,
|
|
230
|
+
requireAssertionsForPm: context.options.requireAssertionsForPm,
|
|
231
|
+
checkContext: context.options.checkContext,
|
|
232
|
+
autoPmContext: context.options.autoPmContext
|
|
233
|
+
}) : [];
|
|
234
|
+
let executedIndex = 0;
|
|
235
|
+
const runResults = keyedTests.map(({ test, key, duplicate }) => {
|
|
236
|
+
if (!duplicate) {
|
|
237
|
+
const executed = executedResults[executedIndex];
|
|
238
|
+
executedIndex += 1;
|
|
239
|
+
return executed;
|
|
240
|
+
}
|
|
241
|
+
return {
|
|
242
|
+
command: test.command,
|
|
243
|
+
path: test.path,
|
|
244
|
+
status: "skipped",
|
|
245
|
+
error: `Duplicate linked test skipped (key=${key}).`
|
|
246
|
+
};
|
|
247
|
+
});
|
|
248
|
+
const summary = countStatuses(runResults);
|
|
249
|
+
const failureCategories = countFailureCategories(runResults);
|
|
250
|
+
const trackingWarnings = await appendTestAllItemTracking(entry, summary, context);
|
|
251
|
+
return {
|
|
252
|
+
passed: summary.passed,
|
|
253
|
+
failed: summary.failed,
|
|
254
|
+
skipped: summary.skipped,
|
|
255
|
+
trackingWarnings,
|
|
256
|
+
failureCategories,
|
|
257
|
+
result: {
|
|
258
|
+
ok: summary.failed === 0 && !(context.options.failOnSkipped === true && summary.skipped > 0),
|
|
259
|
+
id: entry.item.id,
|
|
260
|
+
status: entry.item.status,
|
|
261
|
+
test_count: entry.tests.length,
|
|
262
|
+
passed: summary.passed,
|
|
263
|
+
failed: summary.failed,
|
|
264
|
+
skipped: summary.skipped,
|
|
265
|
+
run_results: runResults,
|
|
266
|
+
failure_categories: failureCategories
|
|
267
|
+
}
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
async function appendTestAllItemTracking(entry, summary, context) {
|
|
271
|
+
if (!context.trackingEnabled) {
|
|
272
|
+
return [];
|
|
273
|
+
}
|
|
274
|
+
try {
|
|
275
|
+
await appendTrackedTestRunSummary({
|
|
276
|
+
pmRoot: context.pmRoot,
|
|
277
|
+
settings: context.settings,
|
|
278
|
+
itemId: entry.item.id,
|
|
279
|
+
author: context.trackingAuthor,
|
|
280
|
+
message: `Track test-all run summary (${context.trackingRunId})`,
|
|
281
|
+
entry: {
|
|
282
|
+
run_id: context.trackingRunId,
|
|
283
|
+
kind: "test-all",
|
|
284
|
+
status: summary.failed > 0 || context.options.failOnSkipped === true && summary.skipped > 0 ? "failed" : "passed",
|
|
285
|
+
started_at: context.runStartedAt,
|
|
286
|
+
finished_at: nowIso(),
|
|
287
|
+
recorded_at: nowIso(),
|
|
288
|
+
attempt: context.trackingAttempt,
|
|
289
|
+
resumed_from: context.trackingResumedFrom,
|
|
290
|
+
passed: summary.passed,
|
|
291
|
+
failed: summary.failed,
|
|
292
|
+
skipped: summary.skipped,
|
|
293
|
+
items: 1,
|
|
294
|
+
linked_tests: entry.tests.length,
|
|
295
|
+
fail_on_skipped_triggered: context.options.failOnSkipped === true && summary.skipped > 0 ? true : void 0
|
|
296
|
+
}
|
|
297
|
+
});
|
|
298
|
+
} catch (error) {
|
|
299
|
+
return [`test_result_tracking_failed:${entry.item.id}:${formatTrackingError(error)}`];
|
|
300
|
+
}
|
|
301
|
+
return [];
|
|
302
|
+
}
|
|
303
|
+
function buildTestAllItemRunContext(params) {
|
|
304
|
+
const trackingAttemptRaw = process.env.PM_BACKGROUND_TEST_RUN_ATTEMPT?.trim();
|
|
305
|
+
const trackingParsedAttempt = trackingAttemptRaw ? Number.parseInt(trackingAttemptRaw, 10) : Number.NaN;
|
|
306
|
+
const trackingResumedFrom = process.env.PM_BACKGROUND_TEST_RUN_RESUMED_FROM?.trim();
|
|
307
|
+
return {
|
|
308
|
+
pmRoot: params.pmRoot,
|
|
309
|
+
settings: params.settings,
|
|
310
|
+
options: params.options,
|
|
311
|
+
defaultTimeoutSeconds: params.defaultTimeoutSeconds,
|
|
312
|
+
sourceRoots: {
|
|
313
|
+
projectPmRoot: params.pmRoot,
|
|
314
|
+
globalPmRoot: resolveGlobalPmRoot(process.cwd())
|
|
315
|
+
},
|
|
316
|
+
seenTestKeys: /* @__PURE__ */ new Set(),
|
|
317
|
+
effectiveTimeoutByKey: buildEffectiveTimeoutByKey(params.itemTests),
|
|
318
|
+
trackingEnabled: params.settings.testing.record_results_to_items === true,
|
|
319
|
+
trackingAuthor: resolveAuthor(void 0, params.settings.author_default),
|
|
320
|
+
trackingRunId: resolveTrackedRunId(),
|
|
321
|
+
trackingAttempt: Number.isFinite(trackingParsedAttempt) && trackingParsedAttempt >= 1 ? trackingParsedAttempt : void 0,
|
|
322
|
+
trackingResumedFrom: trackingResumedFrom && trackingResumedFrom.length > 0 ? trackingResumedFrom : void 0,
|
|
323
|
+
runStartedAt: params.runStartedAt
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
function initializeTestAllAccumulation(options, linkedTests, filteredItems) {
|
|
327
|
+
const accumulation = {
|
|
328
|
+
results: [],
|
|
329
|
+
passed: 0,
|
|
330
|
+
failed: 0,
|
|
331
|
+
skipped: 0,
|
|
332
|
+
failureCategories: countFailureCategories([]),
|
|
333
|
+
trackingWarnings: []
|
|
334
|
+
};
|
|
335
|
+
const failOnEmptyTestRunTriggered = options.failOnEmptyTestRun === true && linkedTests === 0;
|
|
336
|
+
if (failOnEmptyTestRunTriggered) {
|
|
337
|
+
accumulation.failed += 1;
|
|
338
|
+
accumulation.failureCategories.empty_run += 1;
|
|
339
|
+
accumulation.trackingWarnings.push(`empty_linked_test_selection:items=${filteredItems.length};linked_tests=0;fail_on_empty_test_run=true`);
|
|
340
|
+
}
|
|
341
|
+
return { accumulation, failOnEmptyTestRunTriggered };
|
|
342
|
+
}
|
|
343
|
+
async function runTestAllItems(itemTests, context, accumulation) {
|
|
344
|
+
for (const [itemIndex, entry] of itemTests.entries()) {
|
|
345
|
+
emitTestAllProgress(context.options, `item ${itemIndex + 1}/${itemTests.length} start id=${entry.item.id} linked_tests=${entry.tests.length}`);
|
|
346
|
+
const execution = await runTestAllItem(entry, context);
|
|
347
|
+
mergeFailureCategoryCounts(accumulation.failureCategories, execution.failureCategories);
|
|
348
|
+
accumulation.passed += execution.passed;
|
|
349
|
+
accumulation.failed += execution.failed;
|
|
350
|
+
accumulation.skipped += execution.skipped;
|
|
351
|
+
accumulation.trackingWarnings.push(...execution.trackingWarnings);
|
|
352
|
+
accumulation.results.push(execution.result);
|
|
353
|
+
emitTestAllProgress(context.options, `item ${itemIndex + 1}/${itemTests.length} end id=${entry.item.id} status=${execution.failed === 0 ? "passed" : "failed"} passed=${execution.passed} failed=${execution.failed} skipped=${execution.skipped}`);
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
function appendContextPreflightWarning(options, accumulation) {
|
|
357
|
+
if (options.checkContext !== true) {
|
|
358
|
+
return;
|
|
359
|
+
}
|
|
360
|
+
const allRunResults = accumulation.results.flatMap((entry) => entry.run_results);
|
|
361
|
+
const preflight = summarizeContextPreflight(allRunResults);
|
|
362
|
+
accumulation.trackingWarnings.push(`context_preflight:checked_pm_commands=${preflight.checked_pm_commands};tracker_read_commands=${preflight.tracker_read_commands};mismatches=${preflight.mismatches};auto_remediated=${preflight.auto_remediated}`);
|
|
363
|
+
}
|
|
364
|
+
function buildTestAllResult(params) {
|
|
365
|
+
return {
|
|
366
|
+
ok: params.ok,
|
|
367
|
+
totals: {
|
|
368
|
+
items: params.filteredItems.length,
|
|
369
|
+
linked_tests: params.linkedTests,
|
|
370
|
+
passed: params.accumulation.passed,
|
|
371
|
+
failed: params.accumulation.failed,
|
|
372
|
+
skipped: params.accumulation.skipped,
|
|
373
|
+
failure_categories: params.accumulation.failureCategories
|
|
374
|
+
},
|
|
375
|
+
failed: params.accumulation.failed,
|
|
376
|
+
passed: params.accumulation.passed,
|
|
377
|
+
skipped: params.accumulation.skipped,
|
|
378
|
+
fail_on_skipped_triggered: params.failOnSkippedTriggered ? true : void 0,
|
|
379
|
+
fail_on_empty_test_run_triggered: params.failOnEmptyTestRunTriggered ? true : void 0,
|
|
380
|
+
warnings: params.accumulation.trackingWarnings.length > 0 ? params.accumulation.trackingWarnings : void 0,
|
|
381
|
+
results: params.accumulation.results
|
|
382
|
+
};
|
|
383
|
+
}
|
|
384
|
+
async function runTestAll(options, global) {
|
|
385
|
+
const pmRoot = resolvePmRoot(process.cwd(), global.path);
|
|
386
|
+
if (!await pathExists(getSettingsPath(pmRoot))) {
|
|
387
|
+
throw new PmCliError(`Tracker is not initialized at ${pmRoot}. Run pm init first.`, EXIT_CODE.NOT_FOUND);
|
|
388
|
+
}
|
|
389
|
+
const settings = await readSettings(pmRoot);
|
|
390
|
+
const { filteredItems, statusFilter, limitFilter, offsetFilter } = await selectTestAllItems({ pmRoot, settings, options });
|
|
391
|
+
const defaultTimeoutSeconds = parseTimeout(options.timeout);
|
|
392
|
+
const runStartedAt = nowIso();
|
|
393
|
+
const { itemTests, linkedTests } = await collectTestAllItemTests(filteredItems, global, pmRoot);
|
|
394
|
+
emitTestAllProgress(options, `selection items=${filteredItems.length} linked_tests=${linkedTests}${statusFilter ? ` status=${statusFilter}` : ""}${limitFilter === void 0 ? "" : ` limit=${limitFilter}`}${offsetFilter > 0 ? ` offset=${offsetFilter}` : ""}`);
|
|
395
|
+
const { accumulation, failOnEmptyTestRunTriggered } = initializeTestAllAccumulation(options, linkedTests, filteredItems);
|
|
396
|
+
const itemRunContext = buildTestAllItemRunContext({
|
|
397
|
+
pmRoot,
|
|
398
|
+
settings,
|
|
399
|
+
options,
|
|
400
|
+
itemTests,
|
|
401
|
+
defaultTimeoutSeconds,
|
|
402
|
+
runStartedAt
|
|
403
|
+
});
|
|
404
|
+
await runTestAllItems(itemTests, itemRunContext, accumulation);
|
|
405
|
+
const failOnSkippedTriggered = options.failOnSkipped === true && accumulation.skipped > 0;
|
|
406
|
+
appendContextPreflightWarning(options, accumulation);
|
|
407
|
+
const ok = accumulation.failed === 0 && failOnSkippedTriggered !== true && failOnEmptyTestRunTriggered !== true;
|
|
408
|
+
emitTestAllProgress(options, `end status=${ok ? "passed" : "failed"} items=${filteredItems.length} linked_tests=${linkedTests} passed=${accumulation.passed} failed=${accumulation.failed} skipped=${accumulation.skipped}`);
|
|
409
|
+
return buildTestAllResult({
|
|
410
|
+
ok,
|
|
411
|
+
filteredItems,
|
|
412
|
+
linkedTests,
|
|
413
|
+
accumulation,
|
|
414
|
+
failOnSkippedTriggered,
|
|
415
|
+
failOnEmptyTestRunTriggered
|
|
416
|
+
});
|
|
417
|
+
}
|
|
418
|
+
var _testOnlyTestAll = {
|
|
419
|
+
formatTrackingError
|
|
420
|
+
};
|
|
421
|
+
export {
|
|
422
|
+
_testOnlyTestAll,
|
|
423
|
+
runTestAll
|
|
424
|
+
};
|
|
425
|
+
//# sourceMappingURL=test-all-2BWKY3GQ.js.map
|
|
426
|
+
|
|
427
|
+
//# debugId=2eb7993e-489d-5736-bd11-b2a782b74da4
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../cli/commands/test-all.ts"],"sourcesContent":["/**\n * @module cli/commands/test-all\n *\n * Implements the pm test all command surface and its agent-facing runtime behavior.\n */\nimport { pathExists } from \"../../core/fs/fs-utils.js\";\nimport { getActiveExtensionRegistrations } from \"../../core/extensions/index.js\";\nimport { resolveItemTypeRegistry } from \"../../core/item/type-registry.js\";\nimport { parseOptionalNumber } from \"../../core/item/parse.js\";\nimport { normalizeStatusInput } from \"../../core/item/status.js\";\nimport { resolveRuntimeStatusRegistry, type RuntimeStatusRegistry } from \"../../core/schema/runtime-schema.js\";\nimport { EXIT_CODE } from \"../../core/shared/constants.js\";\nimport type { GlobalOptions } from \"../../core/shared/command-types.js\";\nimport { PmCliError } from \"../../core/shared/errors.js\";\nimport { nowIso } from \"../../core/shared/time.js\";\nimport { listAllFrontMatterLight } from \"../../core/store/item-store.js\";\nimport { getSettingsPath, resolveGlobalPmRoot, resolvePmRoot } from \"../../core/store/paths.js\";\nimport { readSettings } from \"../../core/store/settings.js\";\nimport { appendTrackedTestRunSummary } from \"../../core/test/item-test-run-tracking.js\";\nimport { resolveAuthor } from \"../../core/shared/author.js\";\nimport type { ItemStatus, LinkedTest } from \"../../types/index.js\";\nimport {\n countFailureCategories,\n runLinkedTests,\n runTest,\n summarizeContextPreflight,\n type LinkedTestFailureCategory,\n type TestRunResult,\n} from \"./test.js\";\n\n/**\n * Documents the test all command options payload exchanged by command, SDK, and package integrations.\n */\nexport interface TestAllCommandOptions {\n status?: string;\n limit?: string;\n offset?: string;\n timeout?: string;\n progress?: boolean;\n envSet?: string[];\n envClear?: string[];\n sharedHostSafe?: boolean;\n pmContext?: string;\n overrideLinkedPmContext?: boolean;\n failOnContextMismatch?: boolean;\n failOnSkipped?: boolean;\n failOnEmptyTestRun?: boolean;\n requireAssertionsForPm?: boolean;\n checkContext?: boolean;\n autoPmContext?: boolean;\n}\n\n/**\n * Documents the test all item result payload exchanged by command, SDK, and package integrations.\n */\nexport interface TestAllItemResult {\n ok: boolean;\n id: string;\n status: ItemStatus;\n test_count: number;\n passed: number;\n failed: number;\n skipped: number;\n run_results: TestRunResult[];\n failure_categories: Record<LinkedTestFailureCategory, number>;\n}\n\n/**\n * Documents the test all result payload exchanged by command, SDK, and package integrations.\n */\nexport interface TestAllResult {\n ok: boolean;\n totals: {\n items: number;\n linked_tests: number;\n passed: number;\n failed: number;\n skipped: number;\n failure_categories: Record<LinkedTestFailureCategory, number>;\n };\n failed: number;\n passed: number;\n skipped: number;\n fail_on_skipped_triggered?: boolean;\n fail_on_empty_test_run_triggered?: boolean;\n warnings?: string[];\n results: TestAllItemResult[];\n}\n\ntype TestAllSelectedItem = Awaited<ReturnType<typeof listAllFrontMatterLight>>[number];\n\ninterface TestAllItemTests {\n item: TestAllSelectedItem;\n tests: LinkedTest[];\n}\n\ninterface TestAllItemRunContext {\n pmRoot: string;\n settings: Awaited<ReturnType<typeof readSettings>>;\n options: TestAllCommandOptions;\n defaultTimeoutSeconds: number | undefined;\n sourceRoots: { projectPmRoot: string; globalPmRoot: string };\n seenTestKeys: Set<string>;\n effectiveTimeoutByKey: Map<string, number | undefined>;\n trackingEnabled: boolean;\n trackingAuthor: string;\n trackingRunId: string;\n trackingAttempt: number | undefined;\n trackingResumedFrom: string | undefined;\n runStartedAt: string;\n}\n\ninterface TestAllItemExecution {\n result: TestAllItemResult;\n passed: number;\n failed: number;\n skipped: number;\n trackingWarnings: string[];\n failureCategories: Record<LinkedTestFailureCategory, number>;\n}\n\ninterface TestAllSelection {\n filteredItems: TestAllSelectedItem[];\n statusFilter: ItemStatus | undefined;\n limitFilter: number | undefined;\n offsetFilter: number;\n}\n\ninterface TestAllAccumulation {\n results: TestAllItemResult[];\n passed: number;\n failed: number;\n skipped: number;\n failureCategories: Record<LinkedTestFailureCategory, number>;\n trackingWarnings: string[];\n}\n\nfunction parseStatus(raw: string | undefined, statusRegistry: RuntimeStatusRegistry): ItemStatus | undefined {\n if (raw === undefined) {\n return undefined;\n }\n const normalized = normalizeStatusInput(raw, statusRegistry);\n if (!normalized) {\n const allowedStatuses = statusRegistry.definitions.map((definition) => definition.id);\n throw new PmCliError(`Invalid --status value \"${raw}\". Allowed: ${allowedStatuses.join(\", \")}`, EXIT_CODE.USAGE);\n }\n return normalized;\n}\n\nfunction parseTimeout(raw: string | undefined): number | undefined {\n if (raw === undefined) {\n return undefined;\n }\n return parseOptionalNumber(raw, \"timeout\");\n}\n\nfunction parseNonNegativeInteger(raw: string | undefined, flag: string): number | undefined {\n if (raw === undefined) {\n return undefined;\n }\n const parsed = Number(raw);\n if (!Number.isInteger(parsed) || parsed < 0) {\n throw new PmCliError(`${flag} must be a non-negative integer`, EXIT_CODE.USAGE);\n }\n return parsed;\n}\n\nfunction formatTrackingError(error: unknown): string {\n return error instanceof Error ? error.message : String(error);\n}\n\nfunction resolveTrackedRunId(): string {\n const fromEnv = process.env.PM_BACKGROUND_TEST_RUN_ID?.trim();\n if (fromEnv && fromEnv.length > 0) {\n return fromEnv;\n }\n return `test-all-local-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 8)}`;\n}\n\nfunction normalizeCommand(command: string): string {\n return command.trim().replaceAll(/\\s+/g, \" \");\n}\n\nfunction normalizeEnvSetSignature(value: LinkedTest[\"env_set\"]): string {\n if (!value || Object.keys(value).length === 0) {\n return \"{}\";\n }\n return JSON.stringify(\n Object.fromEntries(Object.entries(value).sort(([left], [right]) => left.localeCompare(right))),\n );\n}\n\nfunction normalizeEnvClearSignature(value: LinkedTest[\"env_clear\"]): string {\n if (!value || value.length === 0) {\n return \"[]\";\n }\n return JSON.stringify([...value].sort((left, right) => left.localeCompare(right)));\n}\n\nfunction normalizePmContextModeSignature(value: LinkedTest[\"pm_context_mode\"]): string {\n const normalized = value?.trim().toLowerCase();\n return normalized && normalized.length > 0 ? normalized : \"none\";\n}\n\nfunction normalizeAssertionSignature(test: LinkedTest): string {\n const normalized = {\n assert_stdout_contains: [...new Set(test.assert_stdout_contains ?? [])].sort((left, right) => left.localeCompare(right)),\n assert_stdout_regex: [...new Set(test.assert_stdout_regex ?? [])].sort((left, right) => left.localeCompare(right)),\n assert_stderr_contains: [...new Set(test.assert_stderr_contains ?? [])].sort((left, right) => left.localeCompare(right)),\n assert_stderr_regex: [...new Set(test.assert_stderr_regex ?? [])].sort((left, right) => left.localeCompare(right)),\n assert_stdout_min_lines: typeof test.assert_stdout_min_lines === \"number\" ? test.assert_stdout_min_lines : undefined,\n assert_json_field_equals: Object.fromEntries(\n Object.entries(test.assert_json_field_equals ?? {}).sort(([left], [right]) => left.localeCompare(right)),\n ),\n assert_json_field_gte: Object.fromEntries(\n Object.entries(test.assert_json_field_gte ?? {}).sort(([left], [right]) => left.localeCompare(right)),\n ),\n };\n return JSON.stringify(normalized);\n}\n\nfunction buildLinkedTestKey(test: LinkedTest): string {\n const command = test.command?.trim();\n if (command && command.length > 0) {\n const envSet = normalizeEnvSetSignature(test.env_set);\n const envClear = normalizeEnvClearSignature(test.env_clear);\n const pmContextMode = normalizePmContextModeSignature(test.pm_context_mode);\n const sharedHostSafe = test.shared_host_safe === true ? \"true\" : \"false\";\n const assertions = normalizeAssertionSignature(test);\n return `command:${test.scope}:${normalizeCommand(command)}:${envSet}:${envClear}:${pmContextMode}:${sharedHostSafe}:${assertions}`;\n }\n const linkedPath = test.path?.trim() ?? \"\";\n return `path:${test.scope}:${linkedPath}`;\n}\n\nfunction maxTimeoutSeconds(current: number | undefined, candidate: number | undefined): number | undefined {\n if (candidate === undefined) {\n /* c8 ignore next - exercised implicitly by duplicate timeout normalization */\n return current;\n }\n if (current === undefined || candidate > current) {\n return candidate;\n }\n return current;\n}\n\nfunction countStatuses(runResults: TestRunResult[]): { passed: number; failed: number; skipped: number } {\n let passed = 0;\n let failed = 0;\n let skipped = 0;\n for (const result of runResults) {\n if (result.status === \"passed\") {\n passed += 1;\n continue;\n }\n if (result.status === \"failed\") {\n failed += 1;\n continue;\n }\n skipped += 1;\n }\n return { passed, failed, skipped };\n}\n\nfunction mergeFailureCategoryCounts(\n target: Record<LinkedTestFailureCategory, number>,\n source: Record<LinkedTestFailureCategory, number>,\n): void {\n for (const [key, value] of Object.entries(source)) {\n target[key as LinkedTestFailureCategory] += value;\n }\n}\n\nfunction emitTestAllProgress(options: TestAllCommandOptions, message: string): void {\n if (options.progress !== true) {\n return;\n }\n try {\n process.stderr.write(`[pm test-all] ${message}\\n`);\n } catch {\n // Ignore transient stderr write failures.\n }\n}\n\nasync function collectTestAllItemTests(\n filteredItems: TestAllSelectedItem[],\n global: GlobalOptions,\n pmRoot: string,\n): Promise<{ itemTests: TestAllItemTests[]; linkedTests: number }> {\n const itemTests: TestAllItemTests[] = [];\n let linkedTests = 0;\n for (const item of filteredItems) {\n const readResult = await runTest(\n item.id,\n { run: false },\n {\n ...global,\n path: pmRoot,\n },\n );\n linkedTests += readResult.tests.length;\n itemTests.push({ item, tests: readResult.tests });\n }\n return { itemTests, linkedTests };\n}\n\nasync function selectTestAllItems(params: {\n pmRoot: string;\n settings: Awaited<ReturnType<typeof readSettings>>;\n options: TestAllCommandOptions;\n}): Promise<TestAllSelection> {\n const statusRegistry = resolveRuntimeStatusRegistry(params.settings.schema);\n const typeRegistry = resolveItemTypeRegistry(params.settings, getActiveExtensionRegistrations());\n const statusFilter = parseStatus(params.options.status, statusRegistry);\n const limitFilter = parseNonNegativeInteger(params.options.limit, \"--limit\");\n const offsetFilter = parseNonNegativeInteger(params.options.offset, \"--offset\") ?? 0;\n const allItems = await listAllFrontMatterLight(\n params.pmRoot,\n params.settings.item_format,\n typeRegistry.type_to_folder,\n undefined,\n params.settings.schema,\n );\n const statusFilteredItems = allItems\n .filter((item) => (statusFilter ? item.status === statusFilter : true))\n .sort((a, b) => a.id.localeCompare(b.id));\n const filteredItems =\n limitFilter === undefined\n ? statusFilteredItems.slice(offsetFilter)\n : statusFilteredItems.slice(offsetFilter, offsetFilter + limitFilter);\n return { filteredItems, statusFilter, limitFilter, offsetFilter };\n}\n\nfunction buildEffectiveTimeoutByKey(itemTests: TestAllItemTests[]): Map<string, number | undefined> {\n const effectiveTimeoutByKey = new Map<string, number | undefined>();\n for (const { tests } of itemTests) {\n for (const test of tests) {\n const key = buildLinkedTestKey(test);\n if (!effectiveTimeoutByKey.has(key)) {\n effectiveTimeoutByKey.set(key, test.timeout_seconds);\n continue;\n }\n effectiveTimeoutByKey.set(key, maxTimeoutSeconds(effectiveTimeoutByKey.get(key), test.timeout_seconds));\n }\n }\n return effectiveTimeoutByKey;\n}\n\nasync function runTestAllItem(\n entry: TestAllItemTests,\n context: TestAllItemRunContext,\n): Promise<TestAllItemExecution> {\n const testsToRun: LinkedTest[] = [];\n const keyedTests = entry.tests.map((test) => {\n const key = buildLinkedTestKey(test);\n const duplicate = context.seenTestKeys.has(key);\n if (!duplicate) {\n context.seenTestKeys.add(key);\n const effectiveTimeoutSeconds = context.effectiveTimeoutByKey.get(key);\n testsToRun.push(effectiveTimeoutSeconds === undefined ? test : { ...test, timeout_seconds: effectiveTimeoutSeconds });\n }\n return { test, key, duplicate };\n });\n\n const executedResults =\n testsToRun.length > 0\n ? await runLinkedTests(testsToRun, context.defaultTimeoutSeconds, {\n progress: context.options.progress,\n sourceRoots: context.sourceRoots,\n envSet: context.options.envSet,\n envClear: context.options.envClear,\n sharedHostSafe: context.options.sharedHostSafe,\n pmContext: context.options.pmContext,\n overrideLinkedPmContext: context.options.overrideLinkedPmContext,\n failOnContextMismatch: context.options.failOnContextMismatch,\n failOnEmptyTestRun: context.options.failOnEmptyTestRun,\n requireAssertionsForPm: context.options.requireAssertionsForPm,\n checkContext: context.options.checkContext,\n autoPmContext: context.options.autoPmContext,\n })\n : [];\n let executedIndex = 0;\n const runResults = keyedTests.map(({ test, key, duplicate }) => {\n if (!duplicate) {\n const executed = executedResults[executedIndex];\n executedIndex += 1;\n return executed;\n }\n return {\n command: test.command,\n path: test.path,\n status: \"skipped\" as const,\n error: `Duplicate linked test skipped (key=${key}).`,\n };\n });\n const summary = countStatuses(runResults);\n const failureCategories = countFailureCategories(runResults);\n const trackingWarnings = await appendTestAllItemTracking(entry, summary, context);\n return {\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n trackingWarnings,\n failureCategories,\n result: {\n ok: summary.failed === 0 && !(context.options.failOnSkipped === true && summary.skipped > 0),\n id: entry.item.id,\n status: entry.item.status,\n test_count: entry.tests.length,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n run_results: runResults,\n failure_categories: failureCategories,\n },\n };\n}\n\nasync function appendTestAllItemTracking(\n entry: TestAllItemTests,\n summary: { passed: number; failed: number; skipped: number },\n context: TestAllItemRunContext,\n): Promise<string[]> {\n if (!context.trackingEnabled) {\n return [];\n }\n try {\n await appendTrackedTestRunSummary({\n pmRoot: context.pmRoot,\n settings: context.settings,\n itemId: entry.item.id,\n author: context.trackingAuthor,\n message: `Track test-all run summary (${context.trackingRunId})`,\n entry: {\n run_id: context.trackingRunId,\n kind: \"test-all\",\n status: summary.failed > 0 || (context.options.failOnSkipped === true && summary.skipped > 0) ? \"failed\" : \"passed\",\n started_at: context.runStartedAt,\n finished_at: nowIso(),\n recorded_at: nowIso(),\n attempt: context.trackingAttempt,\n resumed_from: context.trackingResumedFrom,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n items: 1,\n linked_tests: entry.tests.length,\n fail_on_skipped_triggered: context.options.failOnSkipped === true && summary.skipped > 0 ? true : undefined,\n },\n });\n } catch (error: unknown) {\n return [`test_result_tracking_failed:${entry.item.id}:${formatTrackingError(error)}`];\n }\n return [];\n}\n\nfunction buildTestAllItemRunContext(params: {\n pmRoot: string;\n settings: Awaited<ReturnType<typeof readSettings>>;\n options: TestAllCommandOptions;\n itemTests: TestAllItemTests[];\n defaultTimeoutSeconds: number | undefined;\n runStartedAt: string;\n}): TestAllItemRunContext {\n const trackingAttemptRaw = process.env.PM_BACKGROUND_TEST_RUN_ATTEMPT?.trim();\n const trackingParsedAttempt = trackingAttemptRaw ? Number.parseInt(trackingAttemptRaw, 10) : Number.NaN;\n const trackingResumedFrom = process.env.PM_BACKGROUND_TEST_RUN_RESUMED_FROM?.trim();\n return {\n pmRoot: params.pmRoot,\n settings: params.settings,\n options: params.options,\n defaultTimeoutSeconds: params.defaultTimeoutSeconds,\n sourceRoots: {\n projectPmRoot: params.pmRoot,\n globalPmRoot: resolveGlobalPmRoot(process.cwd()),\n },\n seenTestKeys: new Set<string>(),\n effectiveTimeoutByKey: buildEffectiveTimeoutByKey(params.itemTests),\n trackingEnabled: params.settings.testing.record_results_to_items === true,\n trackingAuthor: resolveAuthor(undefined, params.settings.author_default),\n trackingRunId: resolveTrackedRunId(),\n trackingAttempt: Number.isFinite(trackingParsedAttempt) && trackingParsedAttempt >= 1 ? trackingParsedAttempt : undefined,\n trackingResumedFrom: trackingResumedFrom && trackingResumedFrom.length > 0 ? trackingResumedFrom : undefined,\n runStartedAt: params.runStartedAt,\n };\n}\n\nfunction initializeTestAllAccumulation(\n options: TestAllCommandOptions,\n linkedTests: number,\n filteredItems: TestAllSelectedItem[],\n): { accumulation: TestAllAccumulation; failOnEmptyTestRunTriggered: boolean } {\n const accumulation: TestAllAccumulation = {\n results: [],\n passed: 0,\n failed: 0,\n skipped: 0,\n failureCategories: countFailureCategories([]),\n trackingWarnings: [],\n };\n const failOnEmptyTestRunTriggered = options.failOnEmptyTestRun === true && linkedTests === 0;\n if (failOnEmptyTestRunTriggered) {\n accumulation.failed += 1;\n accumulation.failureCategories.empty_run += 1;\n accumulation.trackingWarnings.push(\n `empty_linked_test_selection:items=${filteredItems.length};linked_tests=0;fail_on_empty_test_run=true`,\n );\n }\n return { accumulation, failOnEmptyTestRunTriggered };\n}\n\nasync function runTestAllItems(\n itemTests: TestAllItemTests[],\n context: TestAllItemRunContext,\n accumulation: TestAllAccumulation,\n): Promise<void> {\n for (const [itemIndex, entry] of itemTests.entries()) {\n emitTestAllProgress(context.options, `item ${itemIndex + 1}/${itemTests.length} start id=${entry.item.id} linked_tests=${entry.tests.length}`);\n const execution = await runTestAllItem(entry, context);\n mergeFailureCategoryCounts(accumulation.failureCategories, execution.failureCategories);\n accumulation.passed += execution.passed;\n accumulation.failed += execution.failed;\n accumulation.skipped += execution.skipped;\n accumulation.trackingWarnings.push(...execution.trackingWarnings);\n accumulation.results.push(execution.result);\n emitTestAllProgress(\n context.options,\n `item ${itemIndex + 1}/${itemTests.length} end id=${entry.item.id}` +\n ` status=${execution.failed === 0 ? \"passed\" : \"failed\"}` +\n ` passed=${execution.passed} failed=${execution.failed} skipped=${execution.skipped}`,\n );\n }\n}\n\nfunction appendContextPreflightWarning(options: TestAllCommandOptions, accumulation: TestAllAccumulation): void {\n if (options.checkContext !== true) {\n return;\n }\n const allRunResults = accumulation.results.flatMap((entry) => entry.run_results);\n const preflight = summarizeContextPreflight(allRunResults);\n accumulation.trackingWarnings.push(\n `context_preflight:checked_pm_commands=${preflight.checked_pm_commands};` +\n `tracker_read_commands=${preflight.tracker_read_commands};` +\n `mismatches=${preflight.mismatches};` +\n `auto_remediated=${preflight.auto_remediated}`,\n );\n}\n\nfunction buildTestAllResult(params: {\n ok: boolean;\n filteredItems: TestAllSelectedItem[];\n linkedTests: number;\n accumulation: TestAllAccumulation;\n failOnSkippedTriggered: boolean;\n failOnEmptyTestRunTriggered: boolean;\n}): TestAllResult {\n return {\n ok: params.ok,\n totals: {\n items: params.filteredItems.length,\n linked_tests: params.linkedTests,\n passed: params.accumulation.passed,\n failed: params.accumulation.failed,\n skipped: params.accumulation.skipped,\n failure_categories: params.accumulation.failureCategories,\n },\n failed: params.accumulation.failed,\n passed: params.accumulation.passed,\n skipped: params.accumulation.skipped,\n fail_on_skipped_triggered: params.failOnSkippedTriggered ? true : undefined,\n fail_on_empty_test_run_triggered: params.failOnEmptyTestRunTriggered ? true : undefined,\n warnings: params.accumulation.trackingWarnings.length > 0 ? params.accumulation.trackingWarnings : undefined,\n results: params.accumulation.results,\n };\n}\n\n/**\n * Implements run test all for the public runtime surface of this module.\n */\nexport async function runTestAll(options: TestAllCommandOptions, global: GlobalOptions): Promise<TestAllResult> {\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 { filteredItems, statusFilter, limitFilter, offsetFilter } = await selectTestAllItems({ pmRoot, settings, options });\n const defaultTimeoutSeconds = parseTimeout(options.timeout);\n const runStartedAt = nowIso();\n const { itemTests, linkedTests } = await collectTestAllItemTests(filteredItems, global, pmRoot);\n emitTestAllProgress(\n options,\n `selection items=${filteredItems.length} linked_tests=${linkedTests}` +\n `${statusFilter ? ` status=${statusFilter}` : \"\"}` +\n `${limitFilter === undefined ? \"\" : ` limit=${limitFilter}`}` +\n `${offsetFilter > 0 ? ` offset=${offsetFilter}` : \"\"}`,\n );\n\n const { accumulation, failOnEmptyTestRunTriggered } = initializeTestAllAccumulation(options, linkedTests, filteredItems);\n const itemRunContext = buildTestAllItemRunContext({\n pmRoot,\n settings,\n options,\n itemTests,\n defaultTimeoutSeconds,\n runStartedAt,\n });\n await runTestAllItems(itemTests, itemRunContext, accumulation);\n\n const failOnSkippedTriggered = options.failOnSkipped === true && accumulation.skipped > 0;\n appendContextPreflightWarning(options, accumulation);\n\n const ok = accumulation.failed === 0 && failOnSkippedTriggered !== true && failOnEmptyTestRunTriggered !== true;\n emitTestAllProgress(\n options,\n `end status=${ok ? \"passed\" : \"failed\"} items=${filteredItems.length} linked_tests=${linkedTests}` +\n ` passed=${accumulation.passed} failed=${accumulation.failed} skipped=${accumulation.skipped}`,\n );\n\n return buildTestAllResult({\n ok,\n filteredItems,\n linkedTests,\n accumulation,\n failOnSkippedTriggered,\n failOnEmptyTestRunTriggered,\n });\n}\n\nexport const _testOnlyTestAll = {\n formatTrackingError,\n};\n"],"names":[],"mappings":"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","debugId":"2eb7993e-489d-5736-bd11-b2a782b74da4"}
|