@unbrained/pm-cli 2026.6.21 → 2026.6.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/dist/cli/commands/completion.js +5 -3
- package/dist/cli/commands/completion.js.map +1 -1
- package/dist/cli/commands/extension/doctor.d.ts +11 -0
- package/dist/cli/commands/extension/doctor.js +31 -2
- package/dist/cli/commands/extension/doctor.js.map +1 -1
- package/dist/cli/commands/extension/scaffold.d.ts +16 -2
- package/dist/cli/commands/extension/scaffold.js +481 -48
- package/dist/cli/commands/extension/scaffold.js.map +1 -1
- package/dist/cli/commands/extension.d.ts +1 -0
- package/dist/cli/commands/extension.js +9 -4
- package/dist/cli/commands/extension.js.map +1 -1
- package/dist/cli/help-content.js +16 -4
- package/dist/cli/help-content.js.map +1 -1
- package/dist/cli/register-setup.js +6 -2
- package/dist/cli/register-setup.js.map +1 -1
- package/dist/cli-bundle/chunks/{activity-KW3IRP44.js → activity-DXS2XMQU.js} +11 -11
- package/dist/cli-bundle/chunks/activity-NEOI45NX.js +18 -0
- package/dist/cli-bundle/chunks/{aggregate-FIGQEIL3.js → aggregate-IHM4KMQ3.js} +10 -10
- package/dist/cli-bundle/chunks/{aggregate-3ZKQG5SW.js → aggregate-NMYDVQF7.js} +10 -10
- package/dist/cli-bundle/chunks/{append-EWJYJ7CH.js → append-3HY5G7ET.js} +8 -8
- package/dist/cli-bundle/chunks/{append-QEOLX3XB.js → append-K54MDQYC.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-CF55WVVS.js → chunk-25XZN3JD.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-WQ7NIVDK.js → chunk-2LEYMXI6.js} +4 -4
- package/dist/cli-bundle/chunks/chunk-3GL6LTUL.js +643 -0
- package/dist/cli-bundle/chunks/chunk-3GL6LTUL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-FRUFKWNK.js → chunk-3VLPDG3J.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-C3AZ5ZML.js → chunk-44O4JIN6.js} +13 -13
- package/dist/cli-bundle/chunks/{chunk-J4MYYSOL.js → chunk-47HTJ6BU.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-YCJX76PW.js → chunk-4JXWVHMN.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-37QXHBIB.js → chunk-4SDKF5BG.js} +3 -3
- package/dist/cli-bundle/chunks/chunk-4YJA4LGU.js +646 -0
- package/dist/cli-bundle/chunks/chunk-4YJA4LGU.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-NJHMAJ6N.js → chunk-5SESR24H.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-2EIMPCE4.js → chunk-6FQHNHQQ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-5FIEHKEX.js → chunk-6UPTNMVW.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-FKBDKV7Y.js → chunk-75VEYQJS.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-GMHPNNYG.js → chunk-77VKGH4L.js} +10 -10
- package/dist/cli-bundle/chunks/{chunk-5PCI3UBT.js → chunk-7GCCDXXN.js} +55 -266
- package/dist/cli-bundle/chunks/chunk-7GCCDXXN.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-OFYMIDF2.js → chunk-7MALIV5H.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-A4Z7ZOL5.js → chunk-7MPTFYT3.js} +20 -15
- package/dist/cli-bundle/chunks/chunk-7MPTFYT3.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-RLK7P77C.js → chunk-7PBGTIN3.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-6H4LF7AO.js → chunk-A25LOPRG.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-M5XALUSL.js → chunk-A7E4ZXG2.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-7D3SAQXM.js → chunk-AJXYOYJV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-HCU6WUSY.js → chunk-B2KR24R4.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-2GCDRRIF.js → chunk-C5SWTISA.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-AIS5PGI3.js → chunk-CLLVBO3I.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QGG32QHW.js → chunk-CR7KFPAQ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-UV6IYE5U.js → chunk-CWPBGUC7.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-32R4PIC6.js → chunk-D35LTIFR.js} +55 -259
- package/dist/cli-bundle/chunks/chunk-D35LTIFR.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-QQHISQBJ.js → chunk-DBQUQ3AS.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-5QICDWMV.js → chunk-DHBPJ7VG.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-SRYYRVPB.js → chunk-DMT4ODVN.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-PUH4D67U.js → chunk-DU64SZUQ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-C4N5I7ZW.js → chunk-EVPVCE4R.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-3EWSGA7N.js → chunk-FK6MV5F5.js} +12 -12
- package/dist/cli-bundle/chunks/{chunk-NIUEXCFS.js → chunk-GGAXE22C.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-SX75ADBK.js → chunk-GNDHOR64.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-GOZUHWFD.js → chunk-GU7YHKYP.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-NXS7ZKAK.js → chunk-GXBSFKSX.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-NJN7LL7U.js → chunk-H6FNDCDI.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-FWPDUYEY.js → chunk-HYQV75IB.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-F5NZWFSW.js → chunk-I367IDZP.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-52OCIDPG.js → chunk-I6XE47J2.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-HIP7WVTL.js → chunk-J2TSPY5L.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-2PKHRP6G.js → chunk-JLSC5NPC.js} +10 -10
- package/dist/cli-bundle/chunks/{chunk-PP2U4NMT.js → chunk-JY25IOEZ.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-Q2J2HJUN.js → chunk-K25UDYJ4.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-SBGXDO7A.js → chunk-KBTREGVO.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-QZTWBFXJ.js → chunk-KK4TQ3ZP.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-434HM6Z5.js → chunk-KL5ELX2X.js} +81 -3
- package/dist/cli-bundle/chunks/chunk-KL5ELX2X.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-NIGXMNNI.js → chunk-KRJJPDUO.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-AZMOLBN3.js → chunk-MD7XKVWI.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-6ZXM2XNF.js → chunk-MNGAQB2E.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-3MDHREEV.js → chunk-NIWY4V4Z.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-TKBHZPKD.js → chunk-NKZOJPXK.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-CZPXY7UW.js → chunk-NVUATMTC.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-LEU5GHRC.js → chunk-P7ZU73BO.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NSBZ2CKF.js → chunk-PCH2JTEO.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-B473GZWW.js → chunk-PJS2J7Z4.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-5IDI42VV.js → chunk-QQWEROGS.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-6M4RJS4M.js → chunk-RPRFBXND.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-HMOADQVT.js → chunk-RZZMSY4P.js} +88 -3
- package/dist/cli-bundle/chunks/chunk-RZZMSY4P.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-N5ZJACJ6.js → chunk-SFKQAVZA.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-EBH56IXK.js → chunk-THKDPOS5.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-LUWW7L4B.js → chunk-TIKJAXQW.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-OTHIWLMB.js → chunk-TJABI6PR.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-HC4AWIKT.js → chunk-TRUFOER3.js} +19 -14
- package/dist/cli-bundle/chunks/{chunk-HC4AWIKT.js.map → chunk-TRUFOER3.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-76Z3YSHV.js → chunk-TZQKEBKF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-PFSRUHDH.js → chunk-UKK2VTTH.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-H7NJZWG2.js → chunk-V4SM4UAL.js} +13 -13
- package/dist/cli-bundle/chunks/{chunk-CZUB4XWO.js → chunk-VB54F347.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-O47BPOPC.js → chunk-WBSYW3NT.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-UPE3CDD7.js → chunk-WQDX7DVG.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-NB3PYLQ6.js → chunk-XKNF3VRJ.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-F7K5GWP3.js → chunk-Y335KFHD.js} +9 -9
- package/dist/cli-bundle/chunks/{chunk-D7FYS6PG.js → chunk-Y4BZEND6.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-6CJWZAN7.js → chunk-YATDFWYK.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-UEMNL33O.js → chunk-YJICYNAV.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-Z6T4PQI2.js → chunk-YQSWTVZF.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-RVHYI7SL.js → chunk-YRLLL5TY.js} +8 -8
- package/dist/cli-bundle/chunks/{claim-RC56YUWG.js → claim-MPXNVBZQ.js} +10 -10
- package/dist/cli-bundle/chunks/{claim-THOJ6CMV.js → claim-SKHJDLW6.js} +10 -10
- package/dist/cli-bundle/chunks/{close-SG5MNCVQ.js → close-4RKSL5L6.js} +8 -8
- package/dist/cli-bundle/chunks/close-Z6AI736U.js +15 -0
- package/dist/cli-bundle/chunks/{close-many-DKQLBGLV.js → close-many-AWTPXLHJ.js} +15 -15
- package/dist/cli-bundle/chunks/{close-many-3L3AQZBU.js → close-many-SXODYBDP.js} +15 -15
- package/dist/cli-bundle/chunks/{comments-SKWMDWCW.js → comments-OOH64LWW.js} +10 -10
- package/dist/cli-bundle/chunks/{comments-M7ZOZNBX.js → comments-YYW5P7AG.js} +10 -10
- package/dist/cli-bundle/chunks/{config-OZCUABPB.js → config-3445MCQQ.js} +8 -8
- package/dist/cli-bundle/chunks/{config-7CK62S7T.js → config-LCDMKRB2.js} +8 -8
- package/dist/cli-bundle/chunks/{context-PUG2A7RC.js → context-DZMIBIVP.js} +13 -13
- package/dist/cli-bundle/chunks/{context-OEC366TO.js → context-PJCURODY.js} +13 -13
- package/dist/cli-bundle/chunks/{contracts-3THOLA7L.js → contracts-7YDFEJB3.js} +4 -4
- package/dist/cli-bundle/chunks/{contracts-N65FXEOL.js → contracts-MP2P3HL5.js} +4 -4
- package/dist/cli-bundle/chunks/{copy-JPX7VZCH.js → copy-63IQQRRS.js} +7 -7
- package/dist/cli-bundle/chunks/{copy-6QLHILAC.js → copy-TASIH2AZ.js} +7 -7
- package/dist/cli-bundle/chunks/create-3BV2VA3Q.js +30 -0
- package/dist/cli-bundle/chunks/{create-Y54ZVVZH.js → create-TGSB5GV4.js} +14 -14
- package/dist/cli-bundle/chunks/{delete-63PCMQAJ.js → delete-ARILQQLB.js} +7 -7
- package/dist/cli-bundle/chunks/{delete-GDSMGAGJ.js → delete-ZQKBZYNK.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-T4ZF5G54.js → deps-MSHQR2GY.js} +7 -7
- package/dist/cli-bundle/chunks/{deps-XYQ73XRH.js → deps-NJFJIMQ5.js} +7 -7
- package/dist/cli-bundle/chunks/{docs-C75YIXHC.js → docs-SS4UKYYA.js} +9 -9
- package/dist/cli-bundle/chunks/{docs-EHNPDWUL.js → docs-XK2UVUXX.js} +9 -9
- package/dist/cli-bundle/chunks/{eval-GTENKE24.js → eval-FVZGX5IZ.js} +12 -12
- package/dist/cli-bundle/chunks/{eval-3WKDTRMH.js → eval-JOTG2YHU.js} +12 -12
- package/dist/cli-bundle/chunks/{extension-46NWACO3.js → extension-NLMS47I4.js} +6 -5
- package/dist/cli-bundle/chunks/{extension-D5FDZ2CO.js → extension-OQPS27B4.js} +6 -5
- package/dist/cli-bundle/chunks/{files-X3H7CCBQ.js → files-3EVJQZ2N.js} +9 -9
- package/dist/cli-bundle/chunks/{files-DSZBOSSN.js → files-Y2P6LN5A.js} +9 -9
- package/dist/cli-bundle/chunks/{focus-5STQXDPU.js → focus-D5ZUPTII.js} +8 -8
- package/dist/cli-bundle/chunks/{focus-MDVPOWB5.js → focus-ZPIFTY4R.js} +8 -8
- package/dist/cli-bundle/chunks/{gc-ZMST3WQP.js → gc-LXXDY456.js} +3 -3
- package/dist/cli-bundle/chunks/{gc-ZC7JHBG7.js → gc-RNOEQHSX.js} +3 -3
- package/dist/cli-bundle/chunks/{get-NT7L2HUZ.js → get-Q3SZGQHD.js} +11 -11
- package/dist/cli-bundle/chunks/{get-J2IPJRZW.js → get-W23G7MJX.js} +11 -11
- package/dist/cli-bundle/chunks/{health-WOYBR3KU.js → health-5LHSX365.js} +14 -13
- package/dist/cli-bundle/chunks/{health-WOYBR3KU.js.map → health-5LHSX365.js.map} +1 -1
- package/dist/cli-bundle/chunks/{health-IVMA3XQC.js → health-UDDGJLPP.js} +16 -15
- package/dist/cli-bundle/chunks/{health-IVMA3XQC.js.map → health-UDDGJLPP.js.map} +1 -1
- package/dist/cli-bundle/chunks/{history-RLH2QCRO.js → history-6CZVFIUJ.js} +10 -10
- package/dist/cli-bundle/chunks/history-YRQUD4YM.js +20 -0
- package/dist/cli-bundle/chunks/{history-compact-ZBEBGJM7.js → history-compact-M35PDQ4G.js} +12 -12
- package/dist/cli-bundle/chunks/{history-compact-UXDIFC33.js → history-compact-VWUSQH6Z.js} +12 -12
- package/dist/cli-bundle/chunks/history-redact-27OEOZRZ.js +21 -0
- package/dist/cli-bundle/chunks/{history-redact-P7I7AWMB.js → history-redact-AJGARHT3.js} +11 -11
- package/dist/cli-bundle/chunks/{history-repair-52KINVIK.js → history-repair-5RDMF7K4.js} +12 -12
- package/dist/cli-bundle/chunks/{history-repair-RM5ITLU5.js → history-repair-YUAHIPIN.js} +12 -12
- package/dist/cli-bundle/chunks/init-DWAKYRXI.js +21 -0
- package/dist/cli-bundle/chunks/{init-2BNZOO6F.js → init-HASX3YNJ.js} +11 -10
- package/dist/cli-bundle/chunks/{learnings-W6F3FIPL.js → learnings-JNGUIJDK.js} +10 -10
- package/dist/cli-bundle/chunks/{learnings-YGYVHWJK.js → learnings-M4KA6MQE.js} +10 -10
- package/dist/cli-bundle/chunks/{list-KPAYU5KZ.js → list-5UU2W24O.js} +10 -10
- package/dist/cli-bundle/chunks/{list-K6FPV4J4.js → list-6FMKTIH3.js} +10 -10
- package/dist/cli-bundle/chunks/{notes-YTD6ZILW.js → notes-MODH5CBT.js} +10 -10
- package/dist/cli-bundle/chunks/{notes-PU74EPKV.js → notes-PYCPLA5Y.js} +10 -10
- package/dist/cli-bundle/chunks/{plan-GEQYUCBW.js → plan-DXRIRYRU.js} +14 -14
- package/dist/cli-bundle/chunks/{plan-FNXHXRCI.js → plan-EHQALWSC.js} +14 -14
- package/dist/cli-bundle/chunks/{register-list-query-QI45RMKN.js → register-list-query-QAASVP2J.js} +19 -19
- package/dist/cli-bundle/chunks/{register-list-query-PHWYHENI.js → register-list-query-WE54YJMH.js} +19 -19
- package/dist/cli-bundle/chunks/{register-mutation-YINRTS7L.js → register-mutation-B6DZJTY2.js} +33 -33
- package/dist/cli-bundle/chunks/{register-mutation-X3BUOQEL.js → register-mutation-CPV4C2KR.js} +33 -33
- package/dist/cli-bundle/chunks/{register-operations-E5JEASRK.js → register-operations-AT3BVVX2.js} +32 -32
- package/dist/cli-bundle/chunks/{register-operations-MIDTRW7S.js → register-operations-RC4C3423.js} +32 -32
- package/dist/cli-bundle/chunks/{register-setup-EG2U6CEU.js → register-setup-HXEHMDHE.js} +23 -18
- package/dist/cli-bundle/chunks/register-setup-HXEHMDHE.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-setup-DYBFLEZX.js → register-setup-JSMJEFCJ.js} +24 -19
- package/dist/cli-bundle/chunks/register-setup-JSMJEFCJ.js.map +1 -0
- package/dist/cli-bundle/chunks/{restore-XQYSWBV7.js → restore-FNBV4GWE.js} +11 -11
- package/dist/cli-bundle/chunks/restore-XY4YE2OV.js +19 -0
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-HJMTEXKE.js → scheduling-shortcuts-ECL6GBMZ.js} +14 -14
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-NNT5ASZR.js → scheduling-shortcuts-JRIUREEU.js} +14 -14
- package/dist/cli-bundle/chunks/{schema-TZXW6XWD.js → schema-74YENAJL.js} +9 -9
- package/dist/cli-bundle/chunks/{schema-263RI4WW.js → schema-TCW3I7QR.js} +9 -9
- package/dist/cli-bundle/chunks/{search-SFRJOVDG.js → search-7USZ6XZA.js} +12 -12
- package/dist/cli-bundle/chunks/{search-LECJYSXE.js → search-GNAUE65M.js} +12 -12
- package/dist/cli-bundle/chunks/{stats-VPBGSRQH.js → stats-CVHASAEU.js} +8 -8
- package/dist/cli-bundle/chunks/{stats-N7ER2PNK.js → stats-DQMKJMFT.js} +8 -8
- package/dist/cli-bundle/chunks/{telemetry-PP3FUNBU.js → telemetry-7P5EUWCS.js} +4 -4
- package/dist/cli-bundle/chunks/{telemetry-L6K3BUIQ.js → telemetry-PQTL5YS2.js} +4 -4
- package/dist/cli-bundle/chunks/test-COWPCGBE.js +36 -0
- package/dist/cli-bundle/chunks/{test-3EGNS3T5.js → test-FDQZQNZ4.js} +16 -15
- package/dist/cli-bundle/chunks/{test-all-ZHFAWNC3.js → test-all-PIPPS4S5.js} +18 -17
- package/dist/cli-bundle/chunks/{test-all-ZHFAWNC3.js.map → test-all-PIPPS4S5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-all-NJ5V2QFS.js → test-all-WQIAZVA6.js} +16 -15
- package/dist/cli-bundle/chunks/{test-all-NJ5V2QFS.js.map → test-all-WQIAZVA6.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-runs-GN3C6GOI.js → test-runs-JS6DNCCI.js} +5 -5
- package/dist/cli-bundle/chunks/{test-runs-AJHR6IQF.js → test-runs-NZD2QGL5.js} +5 -5
- package/dist/cli-bundle/chunks/update-7IYQHX4Q.js +24 -0
- package/dist/cli-bundle/chunks/update-IJKDRBIX.js +28 -0
- package/dist/cli-bundle/chunks/{update-many-RYQ64CFW.js → update-many-6NTZ5J5D.js} +23 -23
- package/dist/cli-bundle/chunks/{update-many-N2AN6ZDH.js → update-many-B3TH5TDS.js} +23 -23
- package/dist/cli-bundle/chunks/{upgrade-VPCIYAVW.js → upgrade-4C7VE7MS.js} +8 -7
- package/dist/cli-bundle/chunks/{upgrade-VPCIYAVW.js.map → upgrade-4C7VE7MS.js.map} +1 -1
- package/dist/cli-bundle/chunks/{upgrade-TJXFLZIX.js → upgrade-76IKZ6EZ.js} +6 -5
- package/dist/cli-bundle/chunks/{upgrade-TJXFLZIX.js.map → upgrade-76IKZ6EZ.js.map} +1 -1
- package/dist/cli-bundle/chunks/{validate-PHKIYGSY.js → validate-AQU7OCL3.js} +21 -20
- package/dist/cli-bundle/chunks/{validate-PHKIYGSY.js.map → validate-AQU7OCL3.js.map} +1 -1
- package/dist/cli-bundle/chunks/{validate-JMNWEUYF.js → validate-BPM6Z3OT.js} +23 -22
- package/dist/cli-bundle/chunks/{validate-JMNWEUYF.js.map → validate-BPM6Z3OT.js.map} +1 -1
- package/dist/cli-bundle/main.js +34 -22
- package/dist/cli-bundle/main.js.map +2 -2
- package/dist/cli.js +3 -3
- package/dist/cli.js.map +1 -1
- package/dist/core/extensions/capability-usage.d.ts +82 -0
- package/dist/core/extensions/capability-usage.js +133 -0
- package/dist/core/extensions/capability-usage.js.map +1 -0
- package/dist/core/extensions/extension-capability-aliases.d.ts +7 -0
- package/dist/core/extensions/extension-capability-aliases.js +12 -2
- package/dist/core/extensions/extension-capability-aliases.js.map +1 -1
- package/dist/core/extensions/index.d.ts +1 -0
- package/dist/core/extensions/index.js +3 -2
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/sdk/cli-contracts.d.ts +1 -0
- package/dist/sdk/cli-contracts.js +18 -13
- package/dist/sdk/cli-contracts.js.map +1 -1
- package/dist/sdk/index.d.ts +7 -2
- package/dist/sdk/index.js +8 -3
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/testing.d.ts +520 -1
- package/dist/sdk/testing.js +477 -18
- package/dist/sdk/testing.js.map +1 -1
- package/docs/EXTENSIONS.md +4 -8
- package/docs/SDK.md +257 -0
- package/package.json +2 -2
- package/dist/cli-bundle/chunks/activity-CIHV64UC.js +0 -18
- package/dist/cli-bundle/chunks/chunk-32R4PIC6.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-434HM6Z5.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-5PCI3UBT.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-A4Z7ZOL5.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-HMOADQVT.js.map +0 -7
- package/dist/cli-bundle/chunks/close-DNMHGOCX.js +0 -15
- package/dist/cli-bundle/chunks/create-NNP6TSFO.js +0 -30
- package/dist/cli-bundle/chunks/history-WX3MGFS2.js +0 -20
- package/dist/cli-bundle/chunks/history-redact-YQGU3XRA.js +0 -21
- package/dist/cli-bundle/chunks/init-SC2P6CHP.js +0 -20
- package/dist/cli-bundle/chunks/register-setup-DYBFLEZX.js.map +0 -1
- package/dist/cli-bundle/chunks/register-setup-EG2U6CEU.js.map +0 -7
- package/dist/cli-bundle/chunks/restore-5KHR2YYQ.js +0 -19
- package/dist/cli-bundle/chunks/test-RQCTSWUK.js +0 -35
- package/dist/cli-bundle/chunks/update-6YXOGHRT.js +0 -24
- package/dist/cli-bundle/chunks/update-V33YUBRP.js +0 -28
- /package/dist/cli-bundle/chunks/{activity-KW3IRP44.js.map → activity-DXS2XMQU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-CIHV64UC.js.map → activity-NEOI45NX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{aggregate-FIGQEIL3.js.map → aggregate-IHM4KMQ3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{aggregate-3ZKQG5SW.js.map → aggregate-NMYDVQF7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-EWJYJ7CH.js.map → append-3HY5G7ET.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-QEOLX3XB.js.map → append-K54MDQYC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-CF55WVVS.js.map → chunk-25XZN3JD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WQ7NIVDK.js.map → chunk-2LEYMXI6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FRUFKWNK.js.map → chunk-3VLPDG3J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-C3AZ5ZML.js.map → chunk-44O4JIN6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-J4MYYSOL.js.map → chunk-47HTJ6BU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YCJX76PW.js.map → chunk-4JXWVHMN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-37QXHBIB.js.map → chunk-4SDKF5BG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NJHMAJ6N.js.map → chunk-5SESR24H.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2EIMPCE4.js.map → chunk-6FQHNHQQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5FIEHKEX.js.map → chunk-6UPTNMVW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FKBDKV7Y.js.map → chunk-75VEYQJS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GMHPNNYG.js.map → chunk-77VKGH4L.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OFYMIDF2.js.map → chunk-7MALIV5H.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RLK7P77C.js.map → chunk-7PBGTIN3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6H4LF7AO.js.map → chunk-A25LOPRG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-M5XALUSL.js.map → chunk-A7E4ZXG2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7D3SAQXM.js.map → chunk-AJXYOYJV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HCU6WUSY.js.map → chunk-B2KR24R4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2GCDRRIF.js.map → chunk-C5SWTISA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AIS5PGI3.js.map → chunk-CLLVBO3I.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QGG32QHW.js.map → chunk-CR7KFPAQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UV6IYE5U.js.map → chunk-CWPBGUC7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QQHISQBJ.js.map → chunk-DBQUQ3AS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5QICDWMV.js.map → chunk-DHBPJ7VG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SRYYRVPB.js.map → chunk-DMT4ODVN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PUH4D67U.js.map → chunk-DU64SZUQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-C4N5I7ZW.js.map → chunk-EVPVCE4R.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3EWSGA7N.js.map → chunk-FK6MV5F5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NIUEXCFS.js.map → chunk-GGAXE22C.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SX75ADBK.js.map → chunk-GNDHOR64.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GOZUHWFD.js.map → chunk-GU7YHKYP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NXS7ZKAK.js.map → chunk-GXBSFKSX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NJN7LL7U.js.map → chunk-H6FNDCDI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FWPDUYEY.js.map → chunk-HYQV75IB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-F5NZWFSW.js.map → chunk-I367IDZP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-52OCIDPG.js.map → chunk-I6XE47J2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HIP7WVTL.js.map → chunk-J2TSPY5L.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2PKHRP6G.js.map → chunk-JLSC5NPC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PP2U4NMT.js.map → chunk-JY25IOEZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Q2J2HJUN.js.map → chunk-K25UDYJ4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SBGXDO7A.js.map → chunk-KBTREGVO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QZTWBFXJ.js.map → chunk-KK4TQ3ZP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NIGXMNNI.js.map → chunk-KRJJPDUO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AZMOLBN3.js.map → chunk-MD7XKVWI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6ZXM2XNF.js.map → chunk-MNGAQB2E.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3MDHREEV.js.map → chunk-NIWY4V4Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TKBHZPKD.js.map → chunk-NKZOJPXK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-CZPXY7UW.js.map → chunk-NVUATMTC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LEU5GHRC.js.map → chunk-P7ZU73BO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NSBZ2CKF.js.map → chunk-PCH2JTEO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-B473GZWW.js.map → chunk-PJS2J7Z4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5IDI42VV.js.map → chunk-QQWEROGS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6M4RJS4M.js.map → chunk-RPRFBXND.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-N5ZJACJ6.js.map → chunk-SFKQAVZA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EBH56IXK.js.map → chunk-THKDPOS5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LUWW7L4B.js.map → chunk-TIKJAXQW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OTHIWLMB.js.map → chunk-TJABI6PR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-76Z3YSHV.js.map → chunk-TZQKEBKF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PFSRUHDH.js.map → chunk-UKK2VTTH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-H7NJZWG2.js.map → chunk-V4SM4UAL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-CZUB4XWO.js.map → chunk-VB54F347.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-O47BPOPC.js.map → chunk-WBSYW3NT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UPE3CDD7.js.map → chunk-WQDX7DVG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NB3PYLQ6.js.map → chunk-XKNF3VRJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-F7K5GWP3.js.map → chunk-Y335KFHD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-D7FYS6PG.js.map → chunk-Y4BZEND6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6CJWZAN7.js.map → chunk-YATDFWYK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UEMNL33O.js.map → chunk-YJICYNAV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Z6T4PQI2.js.map → chunk-YQSWTVZF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RVHYI7SL.js.map → chunk-YRLLL5TY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-RC56YUWG.js.map → claim-MPXNVBZQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-THOJ6CMV.js.map → claim-SKHJDLW6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-SG5MNCVQ.js.map → close-4RKSL5L6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-DNMHGOCX.js.map → close-Z6AI736U.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-many-DKQLBGLV.js.map → close-many-AWTPXLHJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-many-3L3AQZBU.js.map → close-many-SXODYBDP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-SKWMDWCW.js.map → comments-OOH64LWW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-M7ZOZNBX.js.map → comments-YYW5P7AG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{config-OZCUABPB.js.map → config-3445MCQQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{config-7CK62S7T.js.map → config-LCDMKRB2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-PUG2A7RC.js.map → context-DZMIBIVP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-OEC366TO.js.map → context-PJCURODY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{contracts-3THOLA7L.js.map → contracts-7YDFEJB3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{contracts-N65FXEOL.js.map → contracts-MP2P3HL5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-JPX7VZCH.js.map → copy-63IQQRRS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-6QLHILAC.js.map → copy-TASIH2AZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-NNP6TSFO.js.map → create-3BV2VA3Q.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-Y54ZVVZH.js.map → create-TGSB5GV4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-63PCMQAJ.js.map → delete-ARILQQLB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-GDSMGAGJ.js.map → delete-ZQKBZYNK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-T4ZF5G54.js.map → deps-MSHQR2GY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-XYQ73XRH.js.map → deps-NJFJIMQ5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-C75YIXHC.js.map → docs-SS4UKYYA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-EHNPDWUL.js.map → docs-XK2UVUXX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{eval-GTENKE24.js.map → eval-FVZGX5IZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{eval-3WKDTRMH.js.map → eval-JOTG2YHU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-46NWACO3.js.map → extension-NLMS47I4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-D5FDZ2CO.js.map → extension-OQPS27B4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-X3H7CCBQ.js.map → files-3EVJQZ2N.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-DSZBOSSN.js.map → files-Y2P6LN5A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-5STQXDPU.js.map → focus-D5ZUPTII.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-MDVPOWB5.js.map → focus-ZPIFTY4R.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-ZMST3WQP.js.map → gc-LXXDY456.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-ZC7JHBG7.js.map → gc-RNOEQHSX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{get-NT7L2HUZ.js.map → get-Q3SZGQHD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{get-J2IPJRZW.js.map → get-W23G7MJX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-RLH2QCRO.js.map → history-6CZVFIUJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-WX3MGFS2.js.map → history-YRQUD4YM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-ZBEBGJM7.js.map → history-compact-M35PDQ4G.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-UXDIFC33.js.map → history-compact-VWUSQH6Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-YQGU3XRA.js.map → history-redact-27OEOZRZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-P7I7AWMB.js.map → history-redact-AJGARHT3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-52KINVIK.js.map → history-repair-5RDMF7K4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-RM5ITLU5.js.map → history-repair-YUAHIPIN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-SC2P6CHP.js.map → init-DWAKYRXI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-2BNZOO6F.js.map → init-HASX3YNJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-W6F3FIPL.js.map → learnings-JNGUIJDK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-YGYVHWJK.js.map → learnings-M4KA6MQE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-KPAYU5KZ.js.map → list-5UU2W24O.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-K6FPV4J4.js.map → list-6FMKTIH3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-YTD6ZILW.js.map → notes-MODH5CBT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-PU74EPKV.js.map → notes-PYCPLA5Y.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-GEQYUCBW.js.map → plan-DXRIRYRU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-FNXHXRCI.js.map → plan-EHQALWSC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-list-query-QI45RMKN.js.map → register-list-query-QAASVP2J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-list-query-PHWYHENI.js.map → register-list-query-WE54YJMH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-mutation-YINRTS7L.js.map → register-mutation-B6DZJTY2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-mutation-X3BUOQEL.js.map → register-mutation-CPV4C2KR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-operations-E5JEASRK.js.map → register-operations-AT3BVVX2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-operations-MIDTRW7S.js.map → register-operations-RC4C3423.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-XQYSWBV7.js.map → restore-FNBV4GWE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-5KHR2YYQ.js.map → restore-XY4YE2OV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{scheduling-shortcuts-HJMTEXKE.js.map → scheduling-shortcuts-ECL6GBMZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{scheduling-shortcuts-NNT5ASZR.js.map → scheduling-shortcuts-JRIUREEU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-TZXW6XWD.js.map → schema-74YENAJL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-263RI4WW.js.map → schema-TCW3I7QR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-SFRJOVDG.js.map → search-7USZ6XZA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-LECJYSXE.js.map → search-GNAUE65M.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-VPBGSRQH.js.map → stats-CVHASAEU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-N7ER2PNK.js.map → stats-DQMKJMFT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-PP3FUNBU.js.map → telemetry-7P5EUWCS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{telemetry-L6K3BUIQ.js.map → telemetry-PQTL5YS2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-RQCTSWUK.js.map → test-COWPCGBE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-3EGNS3T5.js.map → test-FDQZQNZ4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-GN3C6GOI.js.map → test-runs-JS6DNCCI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-runs-AJHR6IQF.js.map → test-runs-NZD2QGL5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-6YXOGHRT.js.map → update-7IYQHX4Q.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-V33YUBRP.js.map → update-IJKDRBIX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-RYQ64CFW.js.map → update-many-6NTZ5J5D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-N2AN6ZDH.js.map → update-many-B3TH5TDS.js.map} +0 -0
|
@@ -1,38 +1,39 @@
|
|
|
1
1
|
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
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]="1af842d9-f0a2-5a69-92a4-08b67ef6ac69")}catch(e){}}();
|
|
3
3
|
import {
|
|
4
4
|
appendTrackedTestRunSummary,
|
|
5
5
|
countFailureCategories,
|
|
6
6
|
runLinkedTests,
|
|
7
7
|
runTest,
|
|
8
8
|
summarizeContextPreflight
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-SFKQAVZA.js";
|
|
10
10
|
import {
|
|
11
11
|
resolveAuthor
|
|
12
12
|
} from "./chunk-T5RRNDA7.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-NIWY4V4Z.js";
|
|
14
14
|
import {
|
|
15
15
|
parseOptionalNumber
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
16
|
+
} from "./chunk-K25UDYJ4.js";
|
|
17
|
+
import "./chunk-YATDFWYK.js";
|
|
18
|
+
import "./chunk-WBSYW3NT.js";
|
|
19
|
+
import "./chunk-6FQHNHQQ.js";
|
|
20
|
+
import "./chunk-D35LTIFR.js";
|
|
21
|
+
import "./chunk-3GL6LTUL.js";
|
|
22
|
+
import "./chunk-DMT4ODVN.js";
|
|
22
23
|
import "./chunk-P4SESZGT.js";
|
|
23
24
|
import {
|
|
24
25
|
listAllFrontMatterLight
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
26
|
+
} from "./chunk-GGAXE22C.js";
|
|
27
|
+
import "./chunk-Y4BZEND6.js";
|
|
27
28
|
import {
|
|
28
29
|
normalizeStatusInput
|
|
29
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-P7ZU73BO.js";
|
|
30
31
|
import {
|
|
31
32
|
resolveItemTypeRegistry
|
|
32
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-KK4TQ3ZP.js";
|
|
33
34
|
import {
|
|
34
35
|
nowIso
|
|
35
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-PCH2JTEO.js";
|
|
36
37
|
import {
|
|
37
38
|
EXIT_CODE,
|
|
38
39
|
PmCliError,
|
|
@@ -43,7 +44,7 @@ import {
|
|
|
43
44
|
resolveGlobalPmRoot,
|
|
44
45
|
resolvePmRoot,
|
|
45
46
|
resolveRuntimeStatusRegistry
|
|
46
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-KL5ELX2X.js";
|
|
47
48
|
|
|
48
49
|
// dist/cli/commands/test-all.js
|
|
49
50
|
function parseStatus(raw, statusRegistry) {
|
|
@@ -354,6 +355,6 @@ export {
|
|
|
354
355
|
_testOnlyTestAll,
|
|
355
356
|
runTestAll
|
|
356
357
|
};
|
|
357
|
-
//# sourceMappingURL=test-all-
|
|
358
|
+
//# sourceMappingURL=test-all-PIPPS4S5.js.map
|
|
358
359
|
|
|
359
|
-
//# debugId=
|
|
360
|
+
//# debugId=1af842d9-f0a2-5a69-92a4-08b67ef6ac69
|
|
@@ -1 +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\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\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 statusRegistry = resolveRuntimeStatusRegistry(settings.schema);\n const typeRegistry = resolveItemTypeRegistry(settings, getActiveExtensionRegistrations());\n const statusFilter = parseStatus(options.status, statusRegistry);\n const limitFilter = parseNonNegativeInteger(options.limit, \"--limit\");\n const offsetFilter = parseNonNegativeInteger(options.offset, \"--offset\") ?? 0;\n const allItems = await listAllFrontMatterLight(pmRoot, settings.item_format, typeRegistry.type_to_folder, undefined, settings.schema);\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 const defaultTimeoutSeconds = parseTimeout(options.timeout);\n const sourceRoots = {\n projectPmRoot: pmRoot,\n globalPmRoot: resolveGlobalPmRoot(process.cwd()),\n };\n const runStartedAt = nowIso();\n const trackingEnabled = settings.testing.record_results_to_items === true;\n const trackingRunId = resolveTrackedRunId();\n const trackingAuthor = resolveAuthor(undefined, settings.author_default);\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 const trackingWarnings: string[] = [];\n\n const results: TestAllItemResult[] = [];\n const seenTestKeys = new Set<string>();\n let passed = 0;\n let failed = 0;\n let skipped = 0;\n let linkedTests = 0;\n const failureCategories = countFailureCategories([]);\n const itemTests: Array<{ item: (typeof filteredItems)[number]; tests: LinkedTest[] }> = [];\n\n for (const item of filteredItems) {\n const readResult = await runTest(\n item.id,\n {\n run: false,\n },\n {\n ...global,\n path: pmRoot,\n },\n );\n\n linkedTests += readResult.tests.length;\n itemTests.push({ item, tests: readResult.tests });\n }\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 failOnEmptyTestRunTriggered = options.failOnEmptyTestRun === true && linkedTests === 0;\n if (failOnEmptyTestRunTriggered) {\n failed += 1;\n failureCategories.empty_run += 1;\n trackingWarnings.push(\n `empty_linked_test_selection:items=${filteredItems.length};linked_tests=0;fail_on_empty_test_run=true`,\n );\n }\n\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\n for (const [itemIndex, { item, tests }] of itemTests.entries()) {\n emitTestAllProgress(options, `item ${itemIndex + 1}/${itemTests.length} start id=${item.id} linked_tests=${tests.length}`);\n const testsToRun: LinkedTest[] = [];\n const keyedTests = tests.map((test) => {\n const key = buildLinkedTestKey(test);\n const duplicate = seenTestKeys.has(key);\n if (!duplicate) {\n seenTestKeys.add(key);\n const effectiveTimeoutSeconds = effectiveTimeoutByKey.get(key);\n testsToRun.push(\n effectiveTimeoutSeconds === undefined ? test : { ...test, timeout_seconds: effectiveTimeoutSeconds },\n );\n }\n return { test, key, duplicate };\n });\n\n const executedResults =\n testsToRun.length > 0\n ? await runLinkedTests(testsToRun, defaultTimeoutSeconds, {\n progress: options.progress,\n sourceRoots,\n envSet: options.envSet,\n envClear: options.envClear,\n sharedHostSafe: options.sharedHostSafe,\n pmContext: options.pmContext,\n overrideLinkedPmContext: options.overrideLinkedPmContext,\n failOnContextMismatch: options.failOnContextMismatch,\n failOnEmptyTestRun: options.failOnEmptyTestRun,\n requireAssertionsForPm: options.requireAssertionsForPm,\n checkContext: options.checkContext,\n autoPmContext: 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\n const summary = countStatuses(runResults);\n const itemFailureCategories = countFailureCategories(runResults);\n mergeFailureCategoryCounts(failureCategories, itemFailureCategories);\n passed += summary.passed;\n failed += summary.failed;\n skipped += summary.skipped;\n if (trackingEnabled) {\n try {\n await appendTrackedTestRunSummary({\n pmRoot,\n settings,\n itemId: item.id,\n author: trackingAuthor,\n message: `Track test-all run summary (${trackingRunId})`,\n entry: {\n run_id: trackingRunId,\n kind: \"test-all\",\n status: summary.failed > 0 || (options.failOnSkipped === true && summary.skipped > 0) ? \"failed\" : \"passed\",\n started_at: runStartedAt,\n finished_at: nowIso(),\n recorded_at: nowIso(),\n attempt: Number.isFinite(trackingParsedAttempt) && trackingParsedAttempt >= 1 ? trackingParsedAttempt : undefined,\n resumed_from: trackingResumedFrom && trackingResumedFrom.length > 0 ? trackingResumedFrom : undefined,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n items: 1,\n linked_tests: tests.length,\n fail_on_skipped_triggered: options.failOnSkipped === true && summary.skipped > 0 ? true : undefined,\n },\n });\n } catch (error: unknown) {\n trackingWarnings.push(`test_result_tracking_failed:${item.id}:${formatTrackingError(error)}`);\n }\n }\n results.push({\n ok: summary.failed === 0 && !(options.failOnSkipped === true && summary.skipped > 0),\n id: item.id,\n status: item.status,\n test_count: tests.length,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n run_results: runResults,\n failure_categories: itemFailureCategories,\n });\n emitTestAllProgress(\n options,\n `item ${itemIndex + 1}/${itemTests.length} end id=${item.id}` +\n ` status=${summary.failed === 0 ? \"passed\" : \"failed\"}` +\n ` passed=${summary.passed} failed=${summary.failed} skipped=${summary.skipped}`,\n );\n }\n\n const failOnSkippedTriggered = options.failOnSkipped === true && skipped > 0;\n if (options.checkContext === true) {\n const allRunResults = results.flatMap((entry) => entry.run_results);\n const preflight = summarizeContextPreflight(allRunResults);\n 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\n const ok = failed === 0 && failOnSkippedTriggered !== true && failOnEmptyTestRunTriggered !== true;\n emitTestAllProgress(\n options,\n `end status=${ok ? \"passed\" : \"failed\"} items=${filteredItems.length} linked_tests=${linkedTests}` +\n ` passed=${passed} failed=${failed} skipped=${skipped}`,\n );\n\n return {\n ok,\n totals: {\n items: filteredItems.length,\n linked_tests: linkedTests,\n passed,\n failed,\n skipped,\n failure_categories: failureCategories,\n },\n failed,\n passed,\n skipped,\n fail_on_skipped_triggered: failOnSkippedTriggered ? true : undefined,\n fail_on_empty_test_run_triggered: failOnEmptyTestRunTriggered ? true : undefined,\n warnings: trackingWarnings.length > 0 ? trackingWarnings : undefined,\n results,\n };\n}\n\nexport const _testOnlyTestAll = {\n formatTrackingError,\n};\n"],"names":[],"mappings":"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","debugId":"eb1623ea-8e24-5576-89c6-1555c1f18ce7"}
|
|
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\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\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 statusRegistry = resolveRuntimeStatusRegistry(settings.schema);\n const typeRegistry = resolveItemTypeRegistry(settings, getActiveExtensionRegistrations());\n const statusFilter = parseStatus(options.status, statusRegistry);\n const limitFilter = parseNonNegativeInteger(options.limit, \"--limit\");\n const offsetFilter = parseNonNegativeInteger(options.offset, \"--offset\") ?? 0;\n const allItems = await listAllFrontMatterLight(pmRoot, settings.item_format, typeRegistry.type_to_folder, undefined, settings.schema);\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 const defaultTimeoutSeconds = parseTimeout(options.timeout);\n const sourceRoots = {\n projectPmRoot: pmRoot,\n globalPmRoot: resolveGlobalPmRoot(process.cwd()),\n };\n const runStartedAt = nowIso();\n const trackingEnabled = settings.testing.record_results_to_items === true;\n const trackingRunId = resolveTrackedRunId();\n const trackingAuthor = resolveAuthor(undefined, settings.author_default);\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 const trackingWarnings: string[] = [];\n\n const results: TestAllItemResult[] = [];\n const seenTestKeys = new Set<string>();\n let passed = 0;\n let failed = 0;\n let skipped = 0;\n let linkedTests = 0;\n const failureCategories = countFailureCategories([]);\n const itemTests: Array<{ item: (typeof filteredItems)[number]; tests: LinkedTest[] }> = [];\n\n for (const item of filteredItems) {\n const readResult = await runTest(\n item.id,\n {\n run: false,\n },\n {\n ...global,\n path: pmRoot,\n },\n );\n\n linkedTests += readResult.tests.length;\n itemTests.push({ item, tests: readResult.tests });\n }\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 failOnEmptyTestRunTriggered = options.failOnEmptyTestRun === true && linkedTests === 0;\n if (failOnEmptyTestRunTriggered) {\n failed += 1;\n failureCategories.empty_run += 1;\n trackingWarnings.push(\n `empty_linked_test_selection:items=${filteredItems.length};linked_tests=0;fail_on_empty_test_run=true`,\n );\n }\n\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\n for (const [itemIndex, { item, tests }] of itemTests.entries()) {\n emitTestAllProgress(options, `item ${itemIndex + 1}/${itemTests.length} start id=${item.id} linked_tests=${tests.length}`);\n const testsToRun: LinkedTest[] = [];\n const keyedTests = tests.map((test) => {\n const key = buildLinkedTestKey(test);\n const duplicate = seenTestKeys.has(key);\n if (!duplicate) {\n seenTestKeys.add(key);\n const effectiveTimeoutSeconds = effectiveTimeoutByKey.get(key);\n testsToRun.push(\n effectiveTimeoutSeconds === undefined ? test : { ...test, timeout_seconds: effectiveTimeoutSeconds },\n );\n }\n return { test, key, duplicate };\n });\n\n const executedResults =\n testsToRun.length > 0\n ? await runLinkedTests(testsToRun, defaultTimeoutSeconds, {\n progress: options.progress,\n sourceRoots,\n envSet: options.envSet,\n envClear: options.envClear,\n sharedHostSafe: options.sharedHostSafe,\n pmContext: options.pmContext,\n overrideLinkedPmContext: options.overrideLinkedPmContext,\n failOnContextMismatch: options.failOnContextMismatch,\n failOnEmptyTestRun: options.failOnEmptyTestRun,\n requireAssertionsForPm: options.requireAssertionsForPm,\n checkContext: options.checkContext,\n autoPmContext: 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\n const summary = countStatuses(runResults);\n const itemFailureCategories = countFailureCategories(runResults);\n mergeFailureCategoryCounts(failureCategories, itemFailureCategories);\n passed += summary.passed;\n failed += summary.failed;\n skipped += summary.skipped;\n if (trackingEnabled) {\n try {\n await appendTrackedTestRunSummary({\n pmRoot,\n settings,\n itemId: item.id,\n author: trackingAuthor,\n message: `Track test-all run summary (${trackingRunId})`,\n entry: {\n run_id: trackingRunId,\n kind: \"test-all\",\n status: summary.failed > 0 || (options.failOnSkipped === true && summary.skipped > 0) ? \"failed\" : \"passed\",\n started_at: runStartedAt,\n finished_at: nowIso(),\n recorded_at: nowIso(),\n attempt: Number.isFinite(trackingParsedAttempt) && trackingParsedAttempt >= 1 ? trackingParsedAttempt : undefined,\n resumed_from: trackingResumedFrom && trackingResumedFrom.length > 0 ? trackingResumedFrom : undefined,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n items: 1,\n linked_tests: tests.length,\n fail_on_skipped_triggered: options.failOnSkipped === true && summary.skipped > 0 ? true : undefined,\n },\n });\n } catch (error: unknown) {\n trackingWarnings.push(`test_result_tracking_failed:${item.id}:${formatTrackingError(error)}`);\n }\n }\n results.push({\n ok: summary.failed === 0 && !(options.failOnSkipped === true && summary.skipped > 0),\n id: item.id,\n status: item.status,\n test_count: tests.length,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n run_results: runResults,\n failure_categories: itemFailureCategories,\n });\n emitTestAllProgress(\n options,\n `item ${itemIndex + 1}/${itemTests.length} end id=${item.id}` +\n ` status=${summary.failed === 0 ? \"passed\" : \"failed\"}` +\n ` passed=${summary.passed} failed=${summary.failed} skipped=${summary.skipped}`,\n );\n }\n\n const failOnSkippedTriggered = options.failOnSkipped === true && skipped > 0;\n if (options.checkContext === true) {\n const allRunResults = results.flatMap((entry) => entry.run_results);\n const preflight = summarizeContextPreflight(allRunResults);\n 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\n const ok = failed === 0 && failOnSkippedTriggered !== true && failOnEmptyTestRunTriggered !== true;\n emitTestAllProgress(\n options,\n `end status=${ok ? \"passed\" : \"failed\"} items=${filteredItems.length} linked_tests=${linkedTests}` +\n ` passed=${passed} failed=${failed} skipped=${skipped}`,\n );\n\n return {\n ok,\n totals: {\n items: filteredItems.length,\n linked_tests: linkedTests,\n passed,\n failed,\n skipped,\n failure_categories: failureCategories,\n },\n failed,\n passed,\n skipped,\n fail_on_skipped_triggered: failOnSkippedTriggered ? true : undefined,\n fail_on_empty_test_run_triggered: failOnEmptyTestRunTriggered ? true : undefined,\n warnings: trackingWarnings.length > 0 ? trackingWarnings : undefined,\n results,\n };\n}\n\nexport const _testOnlyTestAll = {\n formatTrackingError,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyFA,SAAS,YAAY,KAAyB,gBAAqC;AACjF,MAAI,QAAQ,QAAW;AACrB,WAAO;EACT;AACA,QAAM,aAAa,qBAAqB,KAAK,cAAc;AAC3D,MAAI,CAAC,YAAY;AACf,UAAM,kBAAkB,eAAe,YAAY,IAAI,CAAC,eAAe,WAAW,EAAE;AACpF,UAAM,IAAI,WAAW,2BAA2B,GAAG,eAAe,gBAAgB,KAAK,IAAI,CAAC,IAAI,UAAU,KAAK;EACjH;AACA,SAAO;AACT;AAEA,SAAS,aAAa,KAAuB;AAC3C,MAAI,QAAQ,QAAW;AACrB,WAAO;EACT;AACA,SAAO,oBAAoB,KAAK,SAAS;AAC3C;AAEA,SAAS,wBAAwB,KAAyB,MAAY;AACpE,MAAI,QAAQ,QAAW;AACrB,WAAO;EACT;AACA,QAAM,SAAS,OAAO,GAAG;AACzB,MAAI,CAAC,OAAO,UAAU,MAAM,KAAK,SAAS,GAAG;AAC3C,UAAM,IAAI,WAAW,GAAG,IAAI,mCAAmC,UAAU,KAAK;EAChF;AACA,SAAO;AACT;AAEA,SAAS,oBAAoB,OAAc;AACzC,SAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAC9D;AAEA,SAAS,sBAAmB;AAC1B,QAAM,UAAU,QAAQ,IAAI,2BAA2B,KAAI;AAC3D,MAAI,WAAW,QAAQ,SAAS,GAAG;AACjC,WAAO;EACT;AACA,SAAO,kBAAkB,KAAK,IAAG,EAAG,SAAS,EAAE,CAAC,IAAI,KAAK,OAAM,EAAG,SAAS,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC;AAC5F;AAEA,SAAS,iBAAiB,SAAe;AACvC,SAAO,QAAQ,KAAI,EAAG,WAAW,QAAQ,GAAG;AAC9C;AAEA,SAAS,yBAAyB,OAA4B;AAC5D,MAAI,CAAC,SAAS,OAAO,KAAK,KAAK,EAAE,WAAW,GAAG;AAC7C,WAAO;EACT;AACA,SAAO,KAAK,UACV,OAAO,YAAY,OAAO,QAAQ,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,CAAC,CAAC,CAAC;AAElG;AAEA,SAAS,2BAA2B,OAA8B;AAChE,MAAI,CAAC,SAAS,MAAM,WAAW,GAAG;AAChC,WAAO;EACT;AACA,SAAO,KAAK,UAAU,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC,CAAC;AACnF;AAEA,SAAS,gCAAgC,OAAoC;AAC3E,QAAM,aAAa,OAAO,KAAI,EAAG,YAAW;AAC5C,SAAO,cAAc,WAAW,SAAS,IAAI,aAAa;AAC5D;AAEA,SAAS,4BAA4B,MAAgB;AACnD,QAAM,aAAa;IACjB,wBAAwB,CAAC,GAAG,IAAI,IAAI,KAAK,0BAA0B,CAAA,CAAE,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;IACvH,qBAAqB,CAAC,GAAG,IAAI,IAAI,KAAK,uBAAuB,CAAA,CAAE,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;IACjH,wBAAwB,CAAC,GAAG,IAAI,IAAI,KAAK,0BAA0B,CAAA,CAAE,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;IACvH,qBAAqB,CAAC,GAAG,IAAI,IAAI,KAAK,uBAAuB,CAAA,CAAE,CAAC,EAAE,KAAK,CAAC,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;IACjH,yBAAyB,OAAO,KAAK,4BAA4B,WAAW,KAAK,0BAA0B;IAC3G,0BAA0B,OAAO,YAC/B,OAAO,QAAQ,KAAK,4BAA4B,CAAA,CAAE,EAAE,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,CAAC,CAAC;IAE1G,uBAAuB,OAAO,YAC5B,OAAO,QAAQ,KAAK,yBAAyB,CAAA,CAAE,EAAE,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,CAAC,CAAC;;AAGzG,SAAO,KAAK,UAAU,UAAU;AAClC;AAEA,SAAS,mBAAmB,MAAgB;AAC1C,QAAM,UAAU,KAAK,SAAS,KAAI;AAClC,MAAI,WAAW,QAAQ,SAAS,GAAG;AACjC,UAAM,SAAS,yBAAyB,KAAK,OAAO;AACpD,UAAM,WAAW,2BAA2B,KAAK,SAAS;AAC1D,UAAM,gBAAgB,gCAAgC,KAAK,eAAe;AAC1E,UAAM,iBAAiB,KAAK,qBAAqB,OAAO,SAAS;AACjE,UAAM,aAAa,4BAA4B,IAAI;AACnD,WAAO,WAAW,KAAK,KAAK,IAAI,iBAAiB,OAAO,CAAC,IAAI,MAAM,IAAI,QAAQ,IAAI,aAAa,IAAI,cAAc,IAAI,UAAU;EAClI;AACA,QAAM,aAAa,KAAK,MAAM,KAAI,KAAM;AACxC,SAAO,QAAQ,KAAK,KAAK,IAAI,UAAU;AACzC;AAEA,SAAS,kBAAkB,SAA6B,WAA6B;AACnF,MAAI,cAAc,QAAW;AAE3B,WAAO;EACT;AACA,MAAI,YAAY,UAAa,YAAY,SAAS;AAChD,WAAO;EACT;AACA,SAAO;AACT;AAEA,SAAS,cAAc,YAA2B;AAChD,MAAI,SAAS;AACb,MAAI,SAAS;AACb,MAAI,UAAU;AACd,aAAW,UAAU,YAAY;AAC/B,QAAI,OAAO,WAAW,UAAU;AAC9B,gBAAU;AACV;IACF;AACA,QAAI,OAAO,WAAW,UAAU;AAC9B,gBAAU;AACV;IACF;AACA,eAAW;EACb;AACA,SAAO,EAAE,QAAQ,QAAQ,QAAO;AAClC;AAEA,SAAS,2BACP,QACA,QAAiD;AAEjD,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,WAAO,GAAgC,KAAK;EAC9C;AACF;AAEA,SAAS,oBAAoB,SAAgC,SAAe;AAC1E,MAAI,QAAQ,aAAa,MAAM;AAC7B;EACF;AACA,MAAI;AACF,YAAQ,OAAO,MAAM,iBAAiB,OAAO;CAAI;EACnD,QAAQ;EAER;AACF;AAKA,eAAsB,WAAW,SAAgC,QAAqB;AACpF,QAAM,SAAS,cAAc,QAAQ,IAAG,GAAI,OAAO,IAAI;AACvD,MAAI,CAAE,MAAM,WAAW,gBAAgB,MAAM,CAAC,GAAI;AAChD,UAAM,IAAI,WAAW,iCAAiC,MAAM,wBAAwB,UAAU,SAAS;EACzG;AAEA,QAAM,WAAW,MAAM,aAAa,MAAM;AAC1C,QAAM,iBAAiB,6BAA6B,SAAS,MAAM;AACnE,QAAM,eAAe,wBAAwB,UAAU,gCAA+B,CAAE;AACxF,QAAM,eAAe,YAAY,QAAQ,QAAQ,cAAc;AAC/D,QAAM,cAAc,wBAAwB,QAAQ,OAAO,SAAS;AACpE,QAAM,eAAe,wBAAwB,QAAQ,QAAQ,UAAU,KAAK;AAC5E,QAAM,WAAW,MAAM,wBAAwB,QAAQ,SAAS,aAAa,aAAa,gBAAgB,QAAW,SAAS,MAAM;AACpI,QAAM,sBAAsB,SACzB,OAAO,CAAC,SAAU,eAAe,KAAK,WAAW,eAAe,IAAK,EACrE,KAAK,CAAC,GAAG,MAAM,EAAE,GAAG,cAAc,EAAE,EAAE,CAAC;AAC1C,QAAM,gBACJ,gBAAgB,SACZ,oBAAoB,MAAM,YAAY,IACtC,oBAAoB,MAAM,cAAc,eAAe,WAAW;AACxE,QAAM,wBAAwB,aAAa,QAAQ,OAAO;AAC1D,QAAM,cAAc;IAClB,eAAe;IACf,cAAc,oBAAoB,QAAQ,IAAG,CAAE;;AAEjD,QAAM,eAAe,OAAM;AAC3B,QAAM,kBAAkB,SAAS,QAAQ,4BAA4B;AACrE,QAAM,gBAAgB,oBAAmB;AACzC,QAAM,iBAAiB,cAAc,QAAW,SAAS,cAAc;AACvE,QAAM,qBAAqB,QAAQ,IAAI,gCAAgC,KAAI;AAC3E,QAAM,wBAAwB,qBAAqB,OAAO,SAAS,oBAAoB,EAAE,IAAI,OAAO;AACpG,QAAM,sBAAsB,QAAQ,IAAI,qCAAqC,KAAI;AACjF,QAAM,mBAA6B,CAAA;AAEnC,QAAM,UAA+B,CAAA;AACrC,QAAM,eAAe,oBAAI,IAAG;AAC5B,MAAI,SAAS;AACb,MAAI,SAAS;AACb,MAAI,UAAU;AACd,MAAI,cAAc;AAClB,QAAM,oBAAoB,uBAAuB,CAAA,CAAE;AACnD,QAAM,YAAkF,CAAA;AAExF,aAAW,QAAQ,eAAe;AAChC,UAAM,aAAa,MAAM,QACvB,KAAK,IACL;MACE,KAAK;OAEP;MACE,GAAG;MACH,MAAM;KACP;AAGH,mBAAe,WAAW,MAAM;AAChC,cAAU,KAAK,EAAE,MAAM,OAAO,WAAW,MAAK,CAAE;EAClD;AACA,sBACE,SACA,mBAAmB,cAAc,MAAM,iBAAiB,WAAW,GAC9D,eAAe,WAAW,YAAY,KAAK,EAAE,GAC7C,gBAAgB,SAAY,KAAK,UAAU,WAAW,EAAE,GACxD,eAAe,IAAI,WAAW,YAAY,KAAK,EAAE,EAAE;AAG1D,QAAM,8BAA8B,QAAQ,uBAAuB,QAAQ,gBAAgB;AAC3F,MAAI,6BAA6B;AAC/B,cAAU;AACV,sBAAkB,aAAa;AAC/B,qBAAiB,KACf,qCAAqC,cAAc,MAAM,6CAA6C;EAE1G;AAEA,QAAM,wBAAwB,oBAAI,IAAG;AACrC,aAAW,EAAE,MAAK,KAAM,WAAW;AACjC,eAAW,QAAQ,OAAO;AACxB,YAAM,MAAM,mBAAmB,IAAI;AACnC,UAAI,CAAC,sBAAsB,IAAI,GAAG,GAAG;AACnC,8BAAsB,IAAI,KAAK,KAAK,eAAe;AACnD;MACF;AACA,4BAAsB,IAAI,KAAK,kBAAkB,sBAAsB,IAAI,GAAG,GAAG,KAAK,eAAe,CAAC;IACxG;EACF;AAEA,aAAW,CAAC,WAAW,EAAE,MAAM,MAAK,CAAE,KAAK,UAAU,QAAO,GAAI;AAC9D,wBAAoB,SAAS,QAAQ,YAAY,CAAC,IAAI,UAAU,MAAM,aAAa,KAAK,EAAE,iBAAiB,MAAM,MAAM,EAAE;AACzH,UAAM,aAA2B,CAAA;AACjC,UAAM,aAAa,MAAM,IAAI,CAAC,SAAQ;AACpC,YAAM,MAAM,mBAAmB,IAAI;AACnC,YAAM,YAAY,aAAa,IAAI,GAAG;AACtC,UAAI,CAAC,WAAW;AACd,qBAAa,IAAI,GAAG;AACpB,cAAM,0BAA0B,sBAAsB,IAAI,GAAG;AAC7D,mBAAW,KACT,4BAA4B,SAAY,OAAO,EAAE,GAAG,MAAM,iBAAiB,wBAAuB,CAAE;MAExG;AACA,aAAO,EAAE,MAAM,KAAK,UAAS;IAC/B,CAAC;AAED,UAAM,kBACJ,WAAW,SAAS,IAChB,MAAM,eAAe,YAAY,uBAAuB;MACtD,UAAU,QAAQ;MAClB;MACA,QAAQ,QAAQ;MAChB,UAAU,QAAQ;MAClB,gBAAgB,QAAQ;MACxB,WAAW,QAAQ;MACnB,yBAAyB,QAAQ;MACjC,uBAAuB,QAAQ;MAC/B,oBAAoB,QAAQ;MAC5B,wBAAwB,QAAQ;MAChC,cAAc,QAAQ;MACtB,eAAe,QAAQ;KACxB,IACD,CAAA;AACN,QAAI,gBAAgB;AACpB,UAAM,aAAa,WAAW,IAAI,CAAC,EAAE,MAAM,KAAK,UAAS,MAAM;AAC7D,UAAI,CAAC,WAAW;AACd,cAAM,WAAW,gBAAgB,aAAa;AAC9C,yBAAiB;AACjB,eAAO;MACT;AACA,aAAO;QACL,SAAS,KAAK;QACd,MAAM,KAAK;QACX,QAAQ;QACR,OAAO,sCAAsC,GAAG;;IAEpD,CAAC;AAED,UAAM,UAAU,cAAc,UAAU;AACxC,UAAM,wBAAwB,uBAAuB,UAAU;AAC/D,+BAA2B,mBAAmB,qBAAqB;AACnE,cAAU,QAAQ;AAClB,cAAU,QAAQ;AAClB,eAAW,QAAQ;AACnB,QAAI,iBAAiB;AACnB,UAAI;AACF,cAAM,4BAA4B;UAChC;UACA;UACA,QAAQ,KAAK;UACb,QAAQ;UACR,SAAS,+BAA+B,aAAa;UACrD,OAAO;YACL,QAAQ;YACR,MAAM;YACN,QAAQ,QAAQ,SAAS,KAAM,QAAQ,kBAAkB,QAAQ,QAAQ,UAAU,IAAK,WAAW;YACnG,YAAY;YACZ,aAAa,OAAM;YACnB,aAAa,OAAM;YACnB,SAAS,OAAO,SAAS,qBAAqB,KAAK,yBAAyB,IAAI,wBAAwB;YACxG,cAAc,uBAAuB,oBAAoB,SAAS,IAAI,sBAAsB;YAC5F,QAAQ,QAAQ;YAChB,QAAQ,QAAQ;YAChB,SAAS,QAAQ;YACjB,OAAO;YACP,cAAc,MAAM;YACpB,2BAA2B,QAAQ,kBAAkB,QAAQ,QAAQ,UAAU,IAAI,OAAO;;SAE7F;MACH,SAAS,OAAgB;AACvB,yBAAiB,KAAK,+BAA+B,KAAK,EAAE,IAAI,oBAAoB,KAAK,CAAC,EAAE;MAC9F;IACF;AACA,YAAQ,KAAK;MACX,IAAI,QAAQ,WAAW,KAAK,EAAE,QAAQ,kBAAkB,QAAQ,QAAQ,UAAU;MAClF,IAAI,KAAK;MACT,QAAQ,KAAK;MACb,YAAY,MAAM;MAClB,QAAQ,QAAQ;MAChB,QAAQ,QAAQ;MAChB,SAAS,QAAQ;MACjB,aAAa;MACb,oBAAoB;KACrB;AACD,wBACE,SACA,QAAQ,YAAY,CAAC,IAAI,UAAU,MAAM,WAAW,KAAK,EAAE,WAC9C,QAAQ,WAAW,IAAI,WAAW,QAAQ,WAC1C,QAAQ,MAAM,WAAW,QAAQ,MAAM,YAAY,QAAQ,OAAO,EAAE;EAErF;AAEA,QAAM,yBAAyB,QAAQ,kBAAkB,QAAQ,UAAU;AAC3E,MAAI,QAAQ,iBAAiB,MAAM;AACjC,UAAM,gBAAgB,QAAQ,QAAQ,CAAC,UAAU,MAAM,WAAW;AAClE,UAAM,YAAY,0BAA0B,aAAa;AACzD,qBAAiB,KACf,yCAAyC,UAAU,mBAAmB,0BAC3C,UAAU,qBAAqB,eAC1C,UAAU,UAAU,oBACf,UAAU,eAAe,EAAE;EAEpD;AAEA,QAAM,KAAK,WAAW,KAAK,2BAA2B,QAAQ,gCAAgC;AAC9F,sBACE,SACA,cAAc,KAAK,WAAW,QAAQ,UAAU,cAAc,MAAM,iBAAiB,WAAW,WACnF,MAAM,WAAW,MAAM,YAAY,OAAO,EAAE;AAG3D,SAAO;IACL;IACA,QAAQ;MACN,OAAO,cAAc;MACrB,cAAc;MACd;MACA;MACA;MACA,oBAAoB;;IAEtB;IACA;IACA;IACA,2BAA2B,yBAAyB,OAAO;IAC3D,kCAAkC,8BAA8B,OAAO;IACvE,UAAU,iBAAiB,SAAS,IAAI,mBAAmB;IAC3D;;AAEJ;AAEO,IAAM,mBAAmB;EAC9B","debugId":"1af842d9-f0a2-5a69-92a4-08b67ef6ac69"}
|
|
@@ -4,33 +4,34 @@ import {
|
|
|
4
4
|
runLinkedTests,
|
|
5
5
|
runTest,
|
|
6
6
|
summarizeContextPreflight
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-5SESR24H.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveAuthor
|
|
10
10
|
} from "./chunk-WW4E2DC3.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-NVUATMTC.js";
|
|
12
12
|
import {
|
|
13
13
|
parseOptionalNumber
|
|
14
|
-
} from "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-CWPBGUC7.js";
|
|
15
|
+
import "./chunk-MD7XKVWI.js";
|
|
16
|
+
import "./chunk-A7E4ZXG2.js";
|
|
17
|
+
import "./chunk-75VEYQJS.js";
|
|
18
|
+
import "./chunk-7GCCDXXN.js";
|
|
19
|
+
import "./chunk-4YJA4LGU.js";
|
|
20
|
+
import "./chunk-25XZN3JD.js";
|
|
20
21
|
import "./chunk-5HIZDR5A.js";
|
|
21
22
|
import {
|
|
22
23
|
listAllFrontMatterLight
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-
|
|
24
|
+
} from "./chunk-GNDHOR64.js";
|
|
25
|
+
import "./chunk-AJXYOYJV.js";
|
|
25
26
|
import {
|
|
26
27
|
normalizeStatusInput
|
|
27
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-CR7KFPAQ.js";
|
|
28
29
|
import {
|
|
29
30
|
resolveItemTypeRegistry
|
|
30
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-3VLPDG3J.js";
|
|
31
32
|
import {
|
|
32
33
|
nowIso
|
|
33
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-4JXWVHMN.js";
|
|
34
35
|
import {
|
|
35
36
|
EXIT_CODE,
|
|
36
37
|
PmCliError,
|
|
@@ -41,7 +42,7 @@ import {
|
|
|
41
42
|
resolveGlobalPmRoot,
|
|
42
43
|
resolvePmRoot,
|
|
43
44
|
resolveRuntimeStatusRegistry
|
|
44
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-RZZMSY4P.js";
|
|
45
46
|
|
|
46
47
|
// dist/cli/commands/test-all.js
|
|
47
48
|
!(function() {
|
|
@@ -359,4 +360,4 @@ export {
|
|
|
359
360
|
_testOnlyTestAll,
|
|
360
361
|
runTestAll
|
|
361
362
|
};
|
|
362
|
-
//# sourceMappingURL=test-all-
|
|
363
|
+
//# sourceMappingURL=test-all-WQIAZVA6.js.map
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../../cli/commands/test-all.ts"],
|
|
4
4
|
"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\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\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 statusRegistry = resolveRuntimeStatusRegistry(settings.schema);\n const typeRegistry = resolveItemTypeRegistry(settings, getActiveExtensionRegistrations());\n const statusFilter = parseStatus(options.status, statusRegistry);\n const limitFilter = parseNonNegativeInteger(options.limit, \"--limit\");\n const offsetFilter = parseNonNegativeInteger(options.offset, \"--offset\") ?? 0;\n const allItems = await listAllFrontMatterLight(pmRoot, settings.item_format, typeRegistry.type_to_folder, undefined, settings.schema);\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 const defaultTimeoutSeconds = parseTimeout(options.timeout);\n const sourceRoots = {\n projectPmRoot: pmRoot,\n globalPmRoot: resolveGlobalPmRoot(process.cwd()),\n };\n const runStartedAt = nowIso();\n const trackingEnabled = settings.testing.record_results_to_items === true;\n const trackingRunId = resolveTrackedRunId();\n const trackingAuthor = resolveAuthor(undefined, settings.author_default);\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 const trackingWarnings: string[] = [];\n\n const results: TestAllItemResult[] = [];\n const seenTestKeys = new Set<string>();\n let passed = 0;\n let failed = 0;\n let skipped = 0;\n let linkedTests = 0;\n const failureCategories = countFailureCategories([]);\n const itemTests: Array<{ item: (typeof filteredItems)[number]; tests: LinkedTest[] }> = [];\n\n for (const item of filteredItems) {\n const readResult = await runTest(\n item.id,\n {\n run: false,\n },\n {\n ...global,\n path: pmRoot,\n },\n );\n\n linkedTests += readResult.tests.length;\n itemTests.push({ item, tests: readResult.tests });\n }\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 failOnEmptyTestRunTriggered = options.failOnEmptyTestRun === true && linkedTests === 0;\n if (failOnEmptyTestRunTriggered) {\n failed += 1;\n failureCategories.empty_run += 1;\n trackingWarnings.push(\n `empty_linked_test_selection:items=${filteredItems.length};linked_tests=0;fail_on_empty_test_run=true`,\n );\n }\n\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\n for (const [itemIndex, { item, tests }] of itemTests.entries()) {\n emitTestAllProgress(options, `item ${itemIndex + 1}/${itemTests.length} start id=${item.id} linked_tests=${tests.length}`);\n const testsToRun: LinkedTest[] = [];\n const keyedTests = tests.map((test) => {\n const key = buildLinkedTestKey(test);\n const duplicate = seenTestKeys.has(key);\n if (!duplicate) {\n seenTestKeys.add(key);\n const effectiveTimeoutSeconds = effectiveTimeoutByKey.get(key);\n testsToRun.push(\n effectiveTimeoutSeconds === undefined ? test : { ...test, timeout_seconds: effectiveTimeoutSeconds },\n );\n }\n return { test, key, duplicate };\n });\n\n const executedResults =\n testsToRun.length > 0\n ? await runLinkedTests(testsToRun, defaultTimeoutSeconds, {\n progress: options.progress,\n sourceRoots,\n envSet: options.envSet,\n envClear: options.envClear,\n sharedHostSafe: options.sharedHostSafe,\n pmContext: options.pmContext,\n overrideLinkedPmContext: options.overrideLinkedPmContext,\n failOnContextMismatch: options.failOnContextMismatch,\n failOnEmptyTestRun: options.failOnEmptyTestRun,\n requireAssertionsForPm: options.requireAssertionsForPm,\n checkContext: options.checkContext,\n autoPmContext: 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\n const summary = countStatuses(runResults);\n const itemFailureCategories = countFailureCategories(runResults);\n mergeFailureCategoryCounts(failureCategories, itemFailureCategories);\n passed += summary.passed;\n failed += summary.failed;\n skipped += summary.skipped;\n if (trackingEnabled) {\n try {\n await appendTrackedTestRunSummary({\n pmRoot,\n settings,\n itemId: item.id,\n author: trackingAuthor,\n message: `Track test-all run summary (${trackingRunId})`,\n entry: {\n run_id: trackingRunId,\n kind: \"test-all\",\n status: summary.failed > 0 || (options.failOnSkipped === true && summary.skipped > 0) ? \"failed\" : \"passed\",\n started_at: runStartedAt,\n finished_at: nowIso(),\n recorded_at: nowIso(),\n attempt: Number.isFinite(trackingParsedAttempt) && trackingParsedAttempt >= 1 ? trackingParsedAttempt : undefined,\n resumed_from: trackingResumedFrom && trackingResumedFrom.length > 0 ? trackingResumedFrom : undefined,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n items: 1,\n linked_tests: tests.length,\n fail_on_skipped_triggered: options.failOnSkipped === true && summary.skipped > 0 ? true : undefined,\n },\n });\n } catch (error: unknown) {\n trackingWarnings.push(`test_result_tracking_failed:${item.id}:${formatTrackingError(error)}`);\n }\n }\n results.push({\n ok: summary.failed === 0 && !(options.failOnSkipped === true && summary.skipped > 0),\n id: item.id,\n status: item.status,\n test_count: tests.length,\n passed: summary.passed,\n failed: summary.failed,\n skipped: summary.skipped,\n run_results: runResults,\n failure_categories: itemFailureCategories,\n });\n emitTestAllProgress(\n options,\n `item ${itemIndex + 1}/${itemTests.length} end id=${item.id}` +\n ` status=${summary.failed === 0 ? \"passed\" : \"failed\"}` +\n ` passed=${summary.passed} failed=${summary.failed} skipped=${summary.skipped}`,\n );\n }\n\n const failOnSkippedTriggered = options.failOnSkipped === true && skipped > 0;\n if (options.checkContext === true) {\n const allRunResults = results.flatMap((entry) => entry.run_results);\n const preflight = summarizeContextPreflight(allRunResults);\n 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\n const ok = failed === 0 && failOnSkippedTriggered !== true && failOnEmptyTestRunTriggered !== true;\n emitTestAllProgress(\n options,\n `end status=${ok ? \"passed\" : \"failed\"} items=${filteredItems.length} linked_tests=${linkedTests}` +\n ` passed=${passed} failed=${failed} skipped=${skipped}`,\n );\n\n return {\n ok,\n totals: {\n items: filteredItems.length,\n linked_tests: linkedTests,\n passed,\n failed,\n skipped,\n failure_categories: failureCategories,\n },\n failed,\n passed,\n skipped,\n fail_on_skipped_triggered: failOnSkippedTriggered ? true : undefined,\n fail_on_empty_test_run_triggered: failOnEmptyTestRunTriggered ? true : undefined,\n warnings: trackingWarnings.length > 0 ? trackingWarnings : undefined,\n results,\n };\n}\n\nexport const _testOnlyTestAll = {\n formatTrackingError,\n};\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["global"]
|
|
7
7
|
}
|
|
@@ -2,11 +2,11 @@
|
|
|
2
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]="bbd5976d-a7f8-55a8-8bce-e1ac9abb36c9")}catch(e){}}();
|
|
3
3
|
import {
|
|
4
4
|
parseLimit
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-EVPVCE4R.js";
|
|
6
|
+
import "./chunk-KK4TQ3ZP.js";
|
|
7
7
|
import {
|
|
8
8
|
nowIso
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-PCH2JTEO.js";
|
|
10
10
|
import {
|
|
11
11
|
EXIT_CODE,
|
|
12
12
|
PmCliError,
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
resolveGlobalPmRoot,
|
|
28
28
|
resolvePmRoot,
|
|
29
29
|
writeFileAtomic
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-KL5ELX2X.js";
|
|
31
31
|
|
|
32
32
|
// dist/cli/commands/test-runs.js
|
|
33
33
|
import os from "node:os";
|
|
@@ -986,6 +986,6 @@ export {
|
|
|
986
986
|
runTestRunsStop,
|
|
987
987
|
runTestRunsWorker
|
|
988
988
|
};
|
|
989
|
-
//# sourceMappingURL=test-runs-
|
|
989
|
+
//# sourceMappingURL=test-runs-JS6DNCCI.js.map
|
|
990
990
|
|
|
991
991
|
//# debugId=bbd5976d-a7f8-55a8-8bce-e1ac9abb36c9
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
parseLimit
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-PJS2J7Z4.js";
|
|
4
|
+
import "./chunk-3VLPDG3J.js";
|
|
5
5
|
import {
|
|
6
6
|
nowIso
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-4JXWVHMN.js";
|
|
8
8
|
import {
|
|
9
9
|
EXIT_CODE,
|
|
10
10
|
PmCliError,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
resolveGlobalPmRoot,
|
|
26
26
|
resolvePmRoot,
|
|
27
27
|
writeFileAtomic
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-RZZMSY4P.js";
|
|
29
29
|
|
|
30
30
|
// dist/cli/commands/test-runs.js
|
|
31
31
|
import os from "node:os";
|
|
@@ -998,4 +998,4 @@ export {
|
|
|
998
998
|
runTestRunsStop,
|
|
999
999
|
runTestRunsWorker
|
|
1000
1000
|
};
|
|
1001
|
-
//# sourceMappingURL=test-runs-
|
|
1001
|
+
//# sourceMappingURL=test-runs-NZD2QGL5.js.map
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import {
|
|
2
|
+
_testOnlyUpdateCommand,
|
|
3
|
+
runUpdate
|
|
4
|
+
} from "./chunk-FK6MV5F5.js";
|
|
5
|
+
import "./chunk-H6FNDCDI.js";
|
|
6
|
+
import "./chunk-V4SM4UAL.js";
|
|
7
|
+
import "./chunk-NVUATMTC.js";
|
|
8
|
+
import "./chunk-CWPBGUC7.js";
|
|
9
|
+
import "./chunk-GU7YHKYP.js";
|
|
10
|
+
import "./chunk-TZQKEBKF.js";
|
|
11
|
+
import "./chunk-75VEYQJS.js";
|
|
12
|
+
import "./chunk-A25LOPRG.js";
|
|
13
|
+
import "./chunk-5HIZDR5A.js";
|
|
14
|
+
import "./chunk-GNDHOR64.js";
|
|
15
|
+
import "./chunk-AJXYOYJV.js";
|
|
16
|
+
import "./chunk-CR7KFPAQ.js";
|
|
17
|
+
import "./chunk-3VLPDG3J.js";
|
|
18
|
+
import "./chunk-4JXWVHMN.js";
|
|
19
|
+
import "./chunk-RZZMSY4P.js";
|
|
20
|
+
export {
|
|
21
|
+
_testOnlyUpdateCommand,
|
|
22
|
+
runUpdate
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=update-7IYQHX4Q.js.map
|
|
@@ -0,0 +1,28 @@
|
|
|
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]="45eac7fa-f181-5cca-93b7-cfb58909dbb3")}catch(e){}}();
|
|
3
|
+
import {
|
|
4
|
+
_testOnlyUpdateCommand,
|
|
5
|
+
runUpdate
|
|
6
|
+
} from "./chunk-C5SWTISA.js";
|
|
7
|
+
import "./chunk-JY25IOEZ.js";
|
|
8
|
+
import "./chunk-44O4JIN6.js";
|
|
9
|
+
import "./chunk-NIWY4V4Z.js";
|
|
10
|
+
import "./chunk-K25UDYJ4.js";
|
|
11
|
+
import "./chunk-DHBPJ7VG.js";
|
|
12
|
+
import "./chunk-DU64SZUQ.js";
|
|
13
|
+
import "./chunk-6FQHNHQQ.js";
|
|
14
|
+
import "./chunk-CLLVBO3I.js";
|
|
15
|
+
import "./chunk-P4SESZGT.js";
|
|
16
|
+
import "./chunk-GGAXE22C.js";
|
|
17
|
+
import "./chunk-Y4BZEND6.js";
|
|
18
|
+
import "./chunk-P7ZU73BO.js";
|
|
19
|
+
import "./chunk-KK4TQ3ZP.js";
|
|
20
|
+
import "./chunk-PCH2JTEO.js";
|
|
21
|
+
import "./chunk-KL5ELX2X.js";
|
|
22
|
+
export {
|
|
23
|
+
_testOnlyUpdateCommand,
|
|
24
|
+
runUpdate
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=update-IJKDRBIX.js.map
|
|
27
|
+
|
|
28
|
+
//# debugId=45eac7fa-f181-5cca-93b7-cfb58909dbb3
|
|
@@ -2,63 +2,63 @@
|
|
|
2
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]="2fabaef7-aade-56d4-8f41-ca0be6201131")}catch(e){}}();
|
|
3
3
|
import {
|
|
4
4
|
runUpdate
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-C5SWTISA.js";
|
|
6
6
|
import {
|
|
7
7
|
createCheckpointId,
|
|
8
8
|
loadMutationCheckpoint,
|
|
9
9
|
restoreCheckpointItems,
|
|
10
10
|
writeMutationCheckpoint
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-NKZOJPXK.js";
|
|
12
|
+
import "./chunk-JY25IOEZ.js";
|
|
13
13
|
import {
|
|
14
14
|
runRestore
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-Y335KFHD.js";
|
|
16
16
|
import {
|
|
17
17
|
resolveAuthor
|
|
18
18
|
} from "./chunk-T5RRNDA7.js";
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
19
|
+
import "./chunk-YJICYNAV.js";
|
|
20
|
+
import "./chunk-YQSWTVZF.js";
|
|
21
21
|
import {
|
|
22
22
|
resolvePriority
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-
|
|
23
|
+
} from "./chunk-44O4JIN6.js";
|
|
24
|
+
import "./chunk-NIWY4V4Z.js";
|
|
25
25
|
import {
|
|
26
26
|
applyTagRemovals,
|
|
27
27
|
mergeAdditiveTags,
|
|
28
28
|
parseTags
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
29
|
+
} from "./chunk-K25UDYJ4.js";
|
|
30
|
+
import "./chunk-DHBPJ7VG.js";
|
|
31
|
+
import "./chunk-DU64SZUQ.js";
|
|
32
32
|
import {
|
|
33
33
|
buildInvalidTypeError
|
|
34
|
-
} from "./chunk-
|
|
35
|
-
import "./chunk-
|
|
34
|
+
} from "./chunk-6FQHNHQQ.js";
|
|
35
|
+
import "./chunk-CLLVBO3I.js";
|
|
36
36
|
import {
|
|
37
37
|
hasListFilters
|
|
38
38
|
} from "./chunk-W2VMLL5S.js";
|
|
39
39
|
import "./chunk-P4SESZGT.js";
|
|
40
40
|
import {
|
|
41
41
|
runList
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-THKDPOS5.js";
|
|
43
43
|
import "./chunk-QB7XMHJW.js";
|
|
44
|
-
import "./chunk-
|
|
45
|
-
import "./chunk-
|
|
44
|
+
import "./chunk-VB54F347.js";
|
|
45
|
+
import "./chunk-EVPVCE4R.js";
|
|
46
46
|
import {
|
|
47
47
|
toItemRecord
|
|
48
|
-
} from "./chunk-
|
|
49
|
-
import "./chunk-
|
|
48
|
+
} from "./chunk-GGAXE22C.js";
|
|
49
|
+
import "./chunk-Y4BZEND6.js";
|
|
50
50
|
import {
|
|
51
51
|
collectRuntimeUpdateFieldValues,
|
|
52
52
|
normalizeStatusInput
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-P7ZU73BO.js";
|
|
54
54
|
import {
|
|
55
55
|
resolveItemTypeRegistry,
|
|
56
56
|
resolveTypeName
|
|
57
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-KK4TQ3ZP.js";
|
|
58
58
|
import {
|
|
59
59
|
nowIso,
|
|
60
60
|
resolveIsoOrRelative
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-PCH2JTEO.js";
|
|
62
62
|
import {
|
|
63
63
|
EXIT_CODE,
|
|
64
64
|
PmCliError,
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
resolveRuntimeStatusRegistry,
|
|
73
73
|
stableValueEquals,
|
|
74
74
|
toErrorMessage
|
|
75
|
-
} from "./chunk-
|
|
75
|
+
} from "./chunk-KL5ELX2X.js";
|
|
76
76
|
|
|
77
77
|
// dist/cli/commands/update-many.js
|
|
78
78
|
var UPDATE_MANY_CHECKPOINT_SCHEMA_VERSION = 1;
|
|
@@ -646,6 +646,6 @@ export {
|
|
|
646
646
|
_testOnlyUpdateManyCommand,
|
|
647
647
|
runUpdateMany
|
|
648
648
|
};
|
|
649
|
-
//# sourceMappingURL=update-many-
|
|
649
|
+
//# sourceMappingURL=update-many-6NTZ5J5D.js.map
|
|
650
650
|
|
|
651
651
|
//# debugId=2fabaef7-aade-56d4-8f41-ca0be6201131
|