@unbrained/pm-cli 2026.7.21 → 2026.7.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/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +25 -0
- package/dist/cli/bundle-integrity.js +3 -3
- package/dist/cli/bundle-integrity.js.map +1 -1
- package/dist/cli/commands/contracts.d.ts +5 -0
- package/dist/cli/commands/contracts.js +8 -6
- package/dist/cli/commands/contracts.js.map +1 -1
- package/dist/cli/commands/copy.js +36 -20
- package/dist/cli/commands/copy.js.map +1 -1
- package/dist/cli/commands/create.js +48 -24
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/commands/merge.d.ts +1 -1
- package/dist/cli/commands/merge.js +3 -3
- package/dist/cli/commands/merge.js.map +1 -1
- package/dist/cli/commands/restore.js +40 -22
- package/dist/cli/commands/restore.js.map +1 -1
- package/dist/cli/commands/update.js +12 -9
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/extension-command-help.js +3 -4
- package/dist/cli/extension-command-help.js.map +1 -1
- package/dist/cli/main.d.ts +3 -2
- package/dist/cli/main.js +6 -6
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/register-list-query.js +33 -21
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-mutation.js +63 -37
- package/dist/cli/register-mutation.js.map +1 -1
- package/dist/cli/registration-helpers.d.ts +2 -0
- package/dist/cli/registration-helpers.js +3 -2
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/bundle-manifest.json +349 -341
- package/dist/cli-bundle/chunks/{append-7OVFYR3C.js → append-CYMA7RJT.js} +5 -5
- package/dist/cli-bundle/chunks/append-H53CAPMP.js +11 -0
- package/dist/cli-bundle/chunks/{chunk-PFNHX655.js → chunk-2P7OK4WG.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-EJDGV4GR.js → chunk-3EBGHNNQ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-DZRV2OPA.js → chunk-3EDFN3VV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ZOY5K4D3.js → chunk-3PWJWLLQ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-VXOOB6YX.js → chunk-3SJAR3CY.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-GTLCVJOE.js → chunk-3WVKMF2A.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-LAV26CQG.js → chunk-42SYYKA4.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-NLR32VFS.js → chunk-4IXLNV7W.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-BKIAH72N.js → chunk-4LTPHDKA.js} +39 -23
- package/dist/cli-bundle/chunks/chunk-4LTPHDKA.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ABWCF646.js → chunk-4YTQVO3V.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-E5XMKOSB.js → chunk-5EBRMHI6.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-IY6VZ3IW.js → chunk-5FAG2JUC.js} +320 -62
- package/dist/cli-bundle/chunks/chunk-5FAG2JUC.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GKX4NJ7U.js → chunk-5K5LHZZX.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-T6PPNM7V.js → chunk-5K7BOAB6.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-4QOB7L7I.js → chunk-5MUZ54G2.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-SF3DT5HJ.js → chunk-5QME4KX2.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-RMF7LMBS.js → chunk-6PDGFY3P.js} +27 -17
- package/dist/cli-bundle/chunks/{chunk-RMF7LMBS.js.map → chunk-6PDGFY3P.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TRSHFPRZ.js → chunk-6PM6CPPP.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-O4BCOJTZ.js → chunk-7AHRY3ZB.js} +21 -16
- package/dist/cli-bundle/chunks/chunk-7AHRY3ZB.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-OR42SO64.js → chunk-7B36A3VT.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-QWRVBJ4D.js → chunk-7OR2YKKD.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-FPBMLYPI.js → chunk-7QUV54XX.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-WWNL6WMH.js → chunk-7WXW6JHG.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-BXNDKOR2.js → chunk-A2VL5SVG.js} +4 -4
- package/dist/cli-bundle/chunks/chunk-AXGDUXJW.js +5 -0
- package/dist/cli-bundle/chunks/{chunk-IAQE32BI.js → chunk-B2AVNGG3.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-K36WV5J6.js → chunk-B7O44UBR.js} +71 -8
- package/dist/cli-bundle/chunks/chunk-B7O44UBR.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-HCEBZNC3.js → chunk-BRMPF2RM.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-Z7VWXXJM.js → chunk-BTNKMF2A.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-KH44WBAT.js → chunk-CD4643VW.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-OWXOPDHD.js → chunk-CJEEC5O4.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-PZC2FUOQ.js → chunk-CTPKCZCF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-7W2UAXXT.js → chunk-D4OBQVL3.js} +10 -10
- package/dist/cli-bundle/chunks/{chunk-EWJWSNRU.js → chunk-DM4TYC2A.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-VJQG4BIM.js → chunk-DSFTAQ7T.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-AELMUANP.js → chunk-DVB6SQU7.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-KBLZ3AA5.js → chunk-E3ZWOFSO.js} +4 -4
- package/dist/cli-bundle/chunks/chunk-EP25DV6P.js +9 -0
- package/dist/cli-bundle/chunks/{chunk-GTK4DTEW.js → chunk-F4VCB4WY.js} +10 -10
- package/dist/cli-bundle/chunks/{chunk-V22ZPOKN.js → chunk-F4XAQUQA.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-QOOTOD3W.js → chunk-FGR6IBAF.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-JSLT7WVE.js → chunk-FKBMT2Q6.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QIH77CAG.js → chunk-G5RLSSIX.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-P7MTHPJQ.js → chunk-GEKRVH3G.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-2L6ZP22J.js → chunk-GSP6IZFU.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-ATBCUC7Y.js → chunk-H3MDK2VU.js} +48 -30
- package/dist/cli-bundle/chunks/chunk-H3MDK2VU.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ZVZGXPQ5.js → chunk-HYZZM3Q2.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-XJTABV3X.js → chunk-IBWG3OSH.js} +22 -17
- package/dist/cli-bundle/chunks/chunk-IBWG3OSH.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-4XGJLADW.js → chunk-IHY5SX7O.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-UCBDQI5E.js → chunk-IMU7JLUI.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-Z75ONV25.js → chunk-IPAQAJWB.js} +77 -7
- package/dist/cli-bundle/chunks/chunk-IPAQAJWB.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-7RW4JCU2.js → chunk-IQCD6OO3.js} +25 -13
- package/dist/cli-bundle/chunks/chunk-IQCD6OO3.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-YQWCZ5AC.js → chunk-J3ZKFEDM.js} +38 -22
- package/dist/cli-bundle/chunks/chunk-J3ZKFEDM.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-PEQGTJ5Q.js → chunk-JCLXCGIL.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-GROYI4RB.js → chunk-JLTHOYR7.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-JHJSFOAM.js → chunk-JMPVHM44.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-MATHDCGG.js → chunk-JWYG36RV.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-ZTVA4KLN.js → chunk-KEGVMZNA.js} +28 -16
- package/dist/cli-bundle/chunks/chunk-KEGVMZNA.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-VLRGDBLY.js → chunk-KEHOPUHH.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-K55VMLSS.js → chunk-KJ4ZF35M.js} +63 -13
- package/dist/cli-bundle/chunks/chunk-KJ4ZF35M.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-CPX275C6.js → chunk-KPCZL2YK.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-POG76WWZ.js → chunk-L7DZV6EZ.js} +319 -61
- package/dist/cli-bundle/chunks/chunk-L7DZV6EZ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-FO6OSVEN.js → chunk-LANV45W2.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-LVC72YRD.js → chunk-LC5ZUXWE.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-SY4SFZSD.js → chunk-LE522OXA.js} +55 -30
- package/dist/cli-bundle/chunks/chunk-LE522OXA.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-TVYYO5A7.js → chunk-MBHYQYCS.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-FJIFFBJX.js → chunk-MROP2RNT.js} +66 -74
- package/dist/cli-bundle/chunks/chunk-MROP2RNT.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-7656MAUL.js → chunk-MUAJHL2R.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-R3P6FZJW.js → chunk-N6QCY2AX.js} +43 -25
- package/dist/cli-bundle/chunks/chunk-N6QCY2AX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-7WCE6Y64.js → chunk-NUQCSV4P.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-SZVB53Y3.js → chunk-O3GFE2PX.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-OY7DMU5P.js → chunk-O43LEUSD.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-AMJPSANK.js → chunk-O7RH6BWP.js} +103 -44
- package/dist/cli-bundle/chunks/chunk-O7RH6BWP.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-NUF7ROFH.js → chunk-OODR5KYF.js} +26 -27
- package/dist/cli-bundle/chunks/chunk-OODR5KYF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-LZYP423P.js → chunk-OZ25YD4Q.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-VZIZB6QH.js → chunk-PKYKQCTJ.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-UZLJOEAC.js → chunk-PMRED6QZ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-ADBTSVGK.js → chunk-PPATPPI6.js} +65 -73
- package/dist/cli-bundle/chunks/chunk-PPATPPI6.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-K4CI6Y45.js → chunk-PWGJCP2V.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-UVN66B3M.js → chunk-Q3Z2Y5WJ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-RNPZYNHS.js → chunk-Q6YZ3VCI.js} +104 -45
- package/dist/cli-bundle/chunks/chunk-Q6YZ3VCI.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-7DOJC3HS.js → chunk-QE5EUHKN.js} +28 -18
- package/dist/cli-bundle/chunks/chunk-QE5EUHKN.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-AS4SAZ5R.js → chunk-QKMMWESK.js} +25 -26
- package/dist/cli-bundle/chunks/chunk-QKMMWESK.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-R7QV7ICM.js → chunk-QSXN2FAN.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-5NTE36LD.js → chunk-RBECHH5K.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-JXCW2TI2.js → chunk-RPNC7M63.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-ICDAQ4TD.js → chunk-S2QQNTA6.js} +26 -14
- package/dist/cli-bundle/chunks/chunk-S2QQNTA6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-JFD5LPMI.js → chunk-SP3BAXFF.js} +29 -17
- package/dist/cli-bundle/chunks/chunk-SP3BAXFF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-F2LBF7XJ.js → chunk-SUSFH6F7.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-VHXHVTUU.js → chunk-TDOPC7UY.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-HYW67VJ5.js → chunk-TLF52ZDP.js} +30 -25
- package/dist/cli-bundle/chunks/chunk-TLF52ZDP.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-FSE2IKJQ.js → chunk-TWHG646K.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-OCUBRA6D.js → chunk-U7U7WGEC.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-PONKZPCJ.js → chunk-UFRVIIJ2.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-VNTCM3VW.js → chunk-VKX2VZZH.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-7AVEY74G.js → chunk-VTOCZ343.js} +29 -24
- package/dist/cli-bundle/chunks/chunk-VTOCZ343.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-6JUTHVQS.js → chunk-W2JDNTN3.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-PQSEQD6E.js → chunk-W35PHE44.js} +62 -12
- package/dist/cli-bundle/chunks/chunk-W35PHE44.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-4QSQ6XDK.js → chunk-WT4KXBUD.js} +68 -31
- package/dist/cli-bundle/chunks/chunk-WT4KXBUD.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-RPESLSO5.js → chunk-XC5RVKHH.js} +69 -32
- package/dist/cli-bundle/chunks/chunk-XC5RVKHH.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-QG4GFLQ6.js → chunk-XD6UF2NB.js} +42 -24
- package/dist/cli-bundle/chunks/chunk-XD6UF2NB.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-AF2CCM5U.js → chunk-XKRVX4B3.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-JGUKMMRS.js → chunk-XN4NQZJK.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-3P7UJQOX.js → chunk-YKFMLQNK.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-YCIUJJOD.js → chunk-YKWKMGL7.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-TOBGV45Y.js → chunk-YUKIFPWK.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-72LQ4TKV.js → chunk-YYEZEP3E.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-X3W65QK3.js → chunk-ZEY3XSZQ.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-MWQ2HC2A.js → chunk-ZKOQHLJP.js} +59 -34
- package/dist/cli-bundle/chunks/chunk-ZKOQHLJP.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-QJIKE24M.js → chunk-ZQ3UMKWE.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-4PUUNQDV.js → chunk-ZVVEWHWK.js} +58 -33
- package/dist/cli-bundle/chunks/chunk-ZVVEWHWK.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-OG5DVFMA.js → chunk-ZXE6SNKO.js} +5 -5
- package/dist/cli-bundle/chunks/close-GAUIGOQC.js +12 -0
- package/dist/cli-bundle/chunks/{close-QEMOYZN3.js → close-SJIEKNY4.js} +5 -5
- package/dist/cli-bundle/chunks/{close-many-RZVTUGBG.js → close-many-B6AIC5OQ.js} +15 -14
- package/dist/cli-bundle/chunks/close-many-QCINT6I2.js +24 -0
- package/dist/cli-bundle/chunks/comments-4SK5EUEJ.js +13 -0
- package/dist/cli-bundle/chunks/{comments-TPU7QRBL.js → comments-DM5KV2RS.js} +7 -7
- package/dist/cli-bundle/chunks/copy-4KCCLTYQ.js +10 -0
- package/dist/cli-bundle/chunks/{copy-DKTSSCK7.js → copy-HEP5SZHB.js} +5 -4
- package/dist/cli-bundle/chunks/create-BDKQFPRE.js +30 -0
- package/dist/cli-bundle/chunks/{create-EIFBIVNQ.js → create-VCGBCYL2.js} +11 -10
- package/dist/cli-bundle/chunks/delete-JWDXPR3H.js +10 -0
- package/dist/cli-bundle/chunks/{delete-LCS3VPDH.js → delete-ZSPBTVJD.js} +4 -4
- package/dist/cli-bundle/chunks/{deps-YG7UF3VR.js → deps-BZTWWOIE.js} +6 -6
- package/dist/cli-bundle/chunks/{deps-UH5EQQUY.js → deps-OVAJOQIE.js} +6 -6
- package/dist/cli-bundle/chunks/{docs-G32TK6XS.js → docs-3GFMSWLL.js} +6 -6
- package/dist/cli-bundle/chunks/docs-SY2NPT6Y.js +14 -0
- package/dist/cli-bundle/chunks/{files-4ALMCSKB.js → files-2SEL4QIU.js} +6 -6
- package/dist/cli-bundle/chunks/{files-3H32UQ4K.js → files-FYMMJGNN.js} +6 -6
- package/dist/cli-bundle/chunks/focus-4A27YJ2Z.js +10 -0
- package/dist/cli-bundle/chunks/{focus-7SOUT5PZ.js → focus-TEUJKTAT.js} +5 -5
- package/dist/cli-bundle/chunks/history-compact-7QOKL2NB.js +16 -0
- package/dist/cli-bundle/chunks/{history-compact-77BT2LUB.js → history-compact-U7A37VR6.js} +6 -6
- package/dist/cli-bundle/chunks/{history-redact-LJPZPNFA.js → history-redact-TNKUO4ZE.js} +4 -4
- package/dist/cli-bundle/chunks/{history-redact-PWTTJ3XS.js → history-redact-ZWRUWQY3.js} +4 -4
- package/dist/cli-bundle/chunks/{history-repair-I7CBNCV3.js → history-repair-6IU5VWHN.js} +7 -7
- package/dist/cli-bundle/chunks/history-repair-GWCGJUM2.js +17 -0
- package/dist/cli-bundle/chunks/learnings-DDFAUUX3.js +13 -0
- package/dist/cli-bundle/chunks/{learnings-KTYW3AL7.js → learnings-GOEZXMKL.js} +7 -7
- package/dist/cli-bundle/chunks/{notes-ZERD3KB2.js → notes-BZWODAEK.js} +7 -7
- package/dist/cli-bundle/chunks/notes-OBJ6FL36.js +13 -0
- package/dist/cli-bundle/chunks/{plan-OFJUBIM5.js → plan-V57VQTAG.js} +12 -11
- package/dist/cli-bundle/chunks/plan-ZMOBD6FX.js +27 -0
- package/dist/cli-bundle/chunks/{profile-3THJPIQY.js → profile-BG3N4ETA.js} +9 -9
- package/dist/cli-bundle/chunks/{profile-XEZAMMBW.js → profile-XLM45FKV.js} +9 -9
- package/dist/cli-bundle/chunks/{register-list-query-BR435Q2H.js → register-list-query-EYYNTGMF.js} +48 -38
- package/dist/cli-bundle/chunks/register-list-query-EYYNTGMF.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-list-query-RWTWLOBE.js → register-list-query-WGXJPXXY.js} +47 -37
- package/dist/cli-bundle/chunks/register-list-query-WGXJPXXY.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-mutation-HLWC2WNP.js → register-mutation-3YSDDVOL.js} +131 -105
- package/dist/cli-bundle/chunks/register-mutation-3YSDDVOL.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-ZJX5AZM5.js → register-mutation-VDGUMMUY.js} +131 -105
- package/dist/cli-bundle/chunks/register-mutation-VDGUMMUY.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-operations-744YBJMV.js → register-operations-H4URGAHX.js} +36 -35
- package/dist/cli-bundle/chunks/{register-operations-744YBJMV.js.map → register-operations-H4URGAHX.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-operations-UEBJH6AN.js → register-operations-HSO7X77D.js} +34 -33
- package/dist/cli-bundle/chunks/{register-operations-UEBJH6AN.js.map → register-operations-HSO7X77D.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-setup-5DA4UZXI.js → register-setup-HZ2KKXK4.js} +13 -13
- package/dist/cli-bundle/chunks/{register-setup-6H25M3BH.js → register-setup-WCBKJ3H3.js} +13 -13
- package/dist/cli-bundle/chunks/{restore-6TDVSATY.js → restore-3NGRFDPX.js} +7 -6
- package/dist/cli-bundle/chunks/restore-LNVNUWHE.js +15 -0
- package/dist/cli-bundle/chunks/{schema-TPVTIJPO.js → schema-LMFZ742C.js} +6 -6
- package/dist/cli-bundle/chunks/{schema-HFXFSGPG.js → schema-O34O33UW.js} +6 -6
- package/dist/cli-bundle/chunks/update-BN6VZSYX.js +24 -0
- package/dist/cli-bundle/chunks/{update-LJZCL5SI.js → update-FDLPLKOB.js} +14 -13
- package/dist/cli-bundle/chunks/update-many-WCKOPN3K.js +35 -0
- package/dist/cli-bundle/chunks/update-many-WCKOPN3K.js.map +7 -0
- package/dist/cli-bundle/chunks/update-many-X6DVGOMM.js +39 -0
- package/dist/cli-bundle/chunks/update-many-X6DVGOMM.js.map +1 -0
- package/dist/cli-bundle/main.js +65 -64
- package/dist/cli-bundle/main.js.map +2 -2
- package/dist/cli-bundle/sdk-runtime.js +53 -52
- package/dist/cli-bundle/sdk-testing.js +6 -6
- package/dist/cli-bundle/sdk.js +362 -56
- package/dist/cli-bundle/sdk.js.map +4 -4
- package/dist/cli.js +10 -4
- package/dist/cli.js.map +1 -1
- package/dist/core/diagnostics/remediation.js +7 -2
- package/dist/core/diagnostics/remediation.js.map +1 -1
- package/dist/core/search/background-refresh.d.ts +3 -1
- package/dist/core/search/background-refresh.js +34 -6
- package/dist/core/search/background-refresh.js.map +1 -1
- package/dist/core/search/cache.js +28 -5
- package/dist/core/search/cache.js.map +1 -1
- package/dist/core/shared/constants.d.ts +2 -0
- package/dist/core/shared/constants.js +29 -24
- package/dist/core/shared/constants.js.map +1 -1
- package/dist/core/store/item-metadata-cache.d.ts +32 -1
- package/dist/core/store/item-metadata-cache.js +289 -21
- package/dist/core/store/item-metadata-cache.js.map +1 -1
- package/dist/core/store/item-store.js +71 -34
- package/dist/core/store/item-store.js.map +1 -1
- package/dist/core/store/settings.js +9 -3
- package/dist/core/store/settings.js.map +1 -1
- package/dist/sdk/cli-bootstrap.js +68 -76
- package/dist/sdk/cli-bootstrap.js.map +1 -1
- package/dist/sdk/compile-cache.d.ts +16 -0
- package/dist/sdk/compile-cache.js +73 -0
- package/dist/sdk/compile-cache.js.map +1 -0
- package/dist/sdk/context-relevance.d.ts +16 -1
- package/dist/sdk/context-relevance.js +20 -8
- package/dist/sdk/context-relevance.js.map +1 -1
- package/dist/sdk/context-signal-store.d.ts +77 -0
- package/dist/sdk/context-signal-store.js +201 -0
- package/dist/sdk/context-signal-store.js.map +1 -0
- package/dist/sdk/dependency-provenance.d.ts +12 -0
- package/dist/sdk/dependency-provenance.js +38 -0
- package/dist/sdk/dependency-provenance.js.map +1 -0
- package/dist/sdk/governance/storage-integrity.d.ts +1 -1
- package/dist/sdk/governance/storage-integrity.js +47 -6
- package/dist/sdk/governance/storage-integrity.js.map +1 -1
- package/dist/sdk/graph/assembly.d.ts +2 -0
- package/dist/sdk/graph/assembly.js +51 -4
- package/dist/sdk/graph/assembly.js.map +1 -1
- package/dist/sdk/graph/run.js +12 -13
- package/dist/sdk/graph/run.js.map +1 -1
- package/dist/sdk/index.d.ts +5 -0
- package/dist/sdk/index.js +7 -2
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/item-metadata-index.d.ts +11 -0
- package/dist/sdk/item-metadata-index.js +15 -0
- package/dist/sdk/item-metadata-index.js.map +1 -0
- package/dist/sdk/merge/index.d.ts +1 -0
- package/dist/sdk/merge/index.js +3 -2
- package/dist/sdk/merge/index.js.map +1 -1
- package/dist/sdk/merge/install.js +25 -9
- package/dist/sdk/merge/install.js.map +1 -1
- package/dist/sdk/merge/reconcile.d.ts +46 -0
- package/dist/sdk/merge/reconcile.js +46 -0
- package/dist/sdk/merge/reconcile.js.map +1 -0
- package/dist/sdk/query/list.d.ts +5 -4
- package/dist/sdk/query/list.js +22 -14
- package/dist/sdk/query/list.js.map +1 -1
- package/dist/sdk/relationship-history.d.ts +30 -0
- package/dist/sdk/relationship-history.js +75 -7
- package/dist/sdk/relationship-history.js.map +1 -1
- package/dist/sdk/relationship-migration.d.ts +42 -0
- package/dist/sdk/relationship-migration.js +78 -0
- package/dist/sdk/relationship-migration.js.map +1 -0
- package/dist/sdk/structured-mutations.js +4 -25
- package/dist/sdk/structured-mutations.js.map +1 -1
- package/docs/COMMANDS.md +26 -3
- package/docs/CONFIGURATION.md +1 -1
- package/docs/MERGE_SAFETY.md +14 -5
- package/docs/PERFORMANCE.md +28 -0
- package/docs/RELATIONSHIP_GRAPH.md +47 -1
- package/docs/SDK.md +78 -5
- package/marketplace.json +2 -2
- package/package.json +2 -2
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/dist/cli-bundle/chunks/append-DFETHAZL.js +0 -11
- package/dist/cli-bundle/chunks/chunk-4PUUNQDV.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-4QSQ6XDK.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-7AVEY74G.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-7DOJC3HS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-7RW4JCU2.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ADBTSVGK.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-AMJPSANK.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-AS4SAZ5R.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ATBCUC7Y.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-BKIAH72N.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-FJIFFBJX.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-HYW67VJ5.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-ICDAQ4TD.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-IY6VZ3IW.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-JFD5LPMI.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-K36WV5J6.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-K55VMLSS.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-MWQ2HC2A.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-NUF7ROFH.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-O4BCOJTZ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-POG76WWZ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-PQSEQD6E.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-QG4GFLQ6.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-R3P6FZJW.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-RNPZYNHS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-RPESLSO5.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-SY4SFZSD.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-XJTABV3X.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-YQWCZ5AC.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-Z75ONV25.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ZTVA4KLN.js.map +0 -7
- package/dist/cli-bundle/chunks/close-O5QVZ6ET.js +0 -12
- package/dist/cli-bundle/chunks/close-many-5RZXVN4J.js +0 -23
- package/dist/cli-bundle/chunks/comments-Z4KV6FU3.js +0 -13
- package/dist/cli-bundle/chunks/copy-M7DDI6LS.js +0 -9
- package/dist/cli-bundle/chunks/create-RGSPN5GD.js +0 -29
- package/dist/cli-bundle/chunks/delete-MD7YXQLH.js +0 -10
- package/dist/cli-bundle/chunks/docs-JWWNRC27.js +0 -14
- package/dist/cli-bundle/chunks/focus-DRQ6FQH6.js +0 -10
- package/dist/cli-bundle/chunks/history-compact-VCKGTX64.js +0 -16
- package/dist/cli-bundle/chunks/history-repair-YTDZRK5E.js +0 -17
- package/dist/cli-bundle/chunks/learnings-CYNOICKR.js +0 -13
- package/dist/cli-bundle/chunks/notes-FGO63FXL.js +0 -13
- package/dist/cli-bundle/chunks/plan-SGCDDTYR.js +0 -26
- package/dist/cli-bundle/chunks/register-list-query-BR435Q2H.js.map +0 -1
- package/dist/cli-bundle/chunks/register-list-query-RWTWLOBE.js.map +0 -7
- package/dist/cli-bundle/chunks/register-mutation-HLWC2WNP.js.map +0 -1
- package/dist/cli-bundle/chunks/register-mutation-ZJX5AZM5.js.map +0 -7
- package/dist/cli-bundle/chunks/restore-RSL7C7LO.js +0 -14
- package/dist/cli-bundle/chunks/update-SIA7LH5Y.js +0 -23
- package/dist/cli-bundle/chunks/update-many-BDBZVGQL.js +0 -38
- package/dist/cli-bundle/chunks/update-many-MOY3A5B3.js +0 -34
- /package/dist/cli-bundle/chunks/{append-7OVFYR3C.js.map → append-CYMA7RJT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-DFETHAZL.js.map → append-H53CAPMP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PFNHX655.js.map → chunk-2P7OK4WG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EJDGV4GR.js.map → chunk-3EBGHNNQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-DZRV2OPA.js.map → chunk-3EDFN3VV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ZOY5K4D3.js.map → chunk-3PWJWLLQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VXOOB6YX.js.map → chunk-3SJAR3CY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GTLCVJOE.js.map → chunk-3WVKMF2A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LAV26CQG.js.map → chunk-42SYYKA4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NLR32VFS.js.map → chunk-4IXLNV7W.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ABWCF646.js.map → chunk-4YTQVO3V.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-E5XMKOSB.js.map → chunk-5EBRMHI6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GKX4NJ7U.js.map → chunk-5K5LHZZX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-T6PPNM7V.js.map → chunk-5K7BOAB6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4QOB7L7I.js.map → chunk-5MUZ54G2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SF3DT5HJ.js.map → chunk-5QME4KX2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TRSHFPRZ.js.map → chunk-6PM6CPPP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OR42SO64.js.map → chunk-7B36A3VT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QWRVBJ4D.js.map → chunk-7OR2YKKD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FPBMLYPI.js.map → chunk-7QUV54XX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WWNL6WMH.js.map → chunk-7WXW6JHG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BXNDKOR2.js.map → chunk-A2VL5SVG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-QEMOYZN3.js.map → chunk-AXGDUXJW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IAQE32BI.js.map → chunk-B2AVNGG3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HCEBZNC3.js.map → chunk-BRMPF2RM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Z7VWXXJM.js.map → chunk-BTNKMF2A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KH44WBAT.js.map → chunk-CD4643VW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OWXOPDHD.js.map → chunk-CJEEC5O4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PZC2FUOQ.js.map → chunk-CTPKCZCF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7W2UAXXT.js.map → chunk-D4OBQVL3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EWJWSNRU.js.map → chunk-DM4TYC2A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VJQG4BIM.js.map → chunk-DSFTAQ7T.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AELMUANP.js.map → chunk-DVB6SQU7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KBLZ3AA5.js.map → chunk-E3ZWOFSO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-O5QVZ6ET.js.map → chunk-EP25DV6P.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GTK4DTEW.js.map → chunk-F4VCB4WY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-V22ZPOKN.js.map → chunk-F4XAQUQA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QOOTOD3W.js.map → chunk-FGR6IBAF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JSLT7WVE.js.map → chunk-FKBMT2Q6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QIH77CAG.js.map → chunk-G5RLSSIX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-P7MTHPJQ.js.map → chunk-GEKRVH3G.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2L6ZP22J.js.map → chunk-GSP6IZFU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ZVZGXPQ5.js.map → chunk-HYZZM3Q2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4XGJLADW.js.map → chunk-IHY5SX7O.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UCBDQI5E.js.map → chunk-IMU7JLUI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PEQGTJ5Q.js.map → chunk-JCLXCGIL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GROYI4RB.js.map → chunk-JLTHOYR7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JHJSFOAM.js.map → chunk-JMPVHM44.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-MATHDCGG.js.map → chunk-JWYG36RV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VLRGDBLY.js.map → chunk-KEHOPUHH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-CPX275C6.js.map → chunk-KPCZL2YK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FO6OSVEN.js.map → chunk-LANV45W2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LVC72YRD.js.map → chunk-LC5ZUXWE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TVYYO5A7.js.map → chunk-MBHYQYCS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7656MAUL.js.map → chunk-MUAJHL2R.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7WCE6Y64.js.map → chunk-NUQCSV4P.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SZVB53Y3.js.map → chunk-O3GFE2PX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OY7DMU5P.js.map → chunk-O43LEUSD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LZYP423P.js.map → chunk-OZ25YD4Q.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VZIZB6QH.js.map → chunk-PKYKQCTJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UZLJOEAC.js.map → chunk-PMRED6QZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-K4CI6Y45.js.map → chunk-PWGJCP2V.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UVN66B3M.js.map → chunk-Q3Z2Y5WJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-R7QV7ICM.js.map → chunk-QSXN2FAN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5NTE36LD.js.map → chunk-RBECHH5K.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JXCW2TI2.js.map → chunk-RPNC7M63.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-F2LBF7XJ.js.map → chunk-SUSFH6F7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VHXHVTUU.js.map → chunk-TDOPC7UY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FSE2IKJQ.js.map → chunk-TWHG646K.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OCUBRA6D.js.map → chunk-U7U7WGEC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PONKZPCJ.js.map → chunk-UFRVIIJ2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VNTCM3VW.js.map → chunk-VKX2VZZH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6JUTHVQS.js.map → chunk-W2JDNTN3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AF2CCM5U.js.map → chunk-XKRVX4B3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JGUKMMRS.js.map → chunk-XN4NQZJK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3P7UJQOX.js.map → chunk-YKFMLQNK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YCIUJJOD.js.map → chunk-YKWKMGL7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TOBGV45Y.js.map → chunk-YUKIFPWK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-72LQ4TKV.js.map → chunk-YYEZEP3E.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-X3W65QK3.js.map → chunk-ZEY3XSZQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QJIKE24M.js.map → chunk-ZQ3UMKWE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OG5DVFMA.js.map → chunk-ZXE6SNKO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-many-5RZXVN4J.js.map → close-GAUIGOQC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-many-RZVTUGBG.js.map → close-SJIEKNY4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-TPU7QRBL.js.map → close-many-B6AIC5OQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-Z4KV6FU3.js.map → close-many-QCINT6I2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-M7DDI6LS.js.map → comments-4SK5EUEJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-DKTSSCK7.js.map → comments-DM5KV2RS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-RGSPN5GD.js.map → copy-4KCCLTYQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-EIFBIVNQ.js.map → copy-HEP5SZHB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-MD7YXQLH.js.map → create-BDKQFPRE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-LCS3VPDH.js.map → create-VCGBCYL2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-YG7UF3VR.js.map → delete-JWDXPR3H.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-UH5EQQUY.js.map → delete-ZSPBTVJD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-JWWNRC27.js.map → deps-BZTWWOIE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-G32TK6XS.js.map → deps-OVAJOQIE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-3H32UQ4K.js.map → docs-3GFMSWLL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-4ALMCSKB.js.map → docs-SY2NPT6Y.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-DRQ6FQH6.js.map → files-2SEL4QIU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-7SOUT5PZ.js.map → files-FYMMJGNN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-VCKGTX64.js.map → focus-4A27YJ2Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-77BT2LUB.js.map → focus-TEUJKTAT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-PWTTJ3XS.js.map → history-compact-7QOKL2NB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-LJPZPNFA.js.map → history-compact-U7A37VR6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-I7CBNCV3.js.map → history-redact-TNKUO4ZE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-YTDZRK5E.js.map → history-redact-ZWRUWQY3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-KTYW3AL7.js.map → history-repair-6IU5VWHN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-CYNOICKR.js.map → history-repair-GWCGJUM2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-FGO63FXL.js.map → learnings-DDFAUUX3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-ZERD3KB2.js.map → learnings-GOEZXMKL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-OFJUBIM5.js.map → notes-BZWODAEK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-SGCDDTYR.js.map → notes-OBJ6FL36.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{profile-3THJPIQY.js.map → plan-V57VQTAG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{profile-XEZAMMBW.js.map → plan-ZMOBD6FX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-6TDVSATY.js.map → profile-BG3N4ETA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-RSL7C7LO.js.map → profile-XLM45FKV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-setup-5DA4UZXI.js.map → register-setup-HZ2KKXK4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-setup-6H25M3BH.js.map → register-setup-WCBKJ3H3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-TPVTIJPO.js.map → restore-3NGRFDPX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-HFXFSGPG.js.map → restore-LNVNUWHE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-LJZCL5SI.js.map → schema-LMFZ742C.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-SIA7LH5Y.js.map → schema-O34O33UW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-MOY3A5B3.js.map → update-BN6VZSYX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-BDBZVGQL.js.map → update-FDLPLKOB.js.map} +0 -0
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
import {
|
|
4
4
|
readManagedExtensionState,
|
|
5
5
|
runExtension
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-RPNC7M63.js";
|
|
7
7
|
import {
|
|
8
8
|
normalizeParentReferencePolicy,
|
|
9
9
|
normalizeSprintReleaseFormatPolicy
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-JCLXCGIL.js";
|
|
11
11
|
import {
|
|
12
12
|
NESTED_SETTING_DESCRIPTORS,
|
|
13
13
|
parseNestedSettingValue,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
} from "./chunk-SC2HMDGB.js";
|
|
18
18
|
import {
|
|
19
19
|
buildInvalidTypeError
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-YUKIFPWK.js";
|
|
21
21
|
import {
|
|
22
22
|
getActiveExtensionRegistrations,
|
|
23
23
|
parseItemDocument,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
runActiveOnWriteHooks,
|
|
26
26
|
serializeItemDocument,
|
|
27
27
|
writeSettings
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-L7DZV6EZ.js";
|
|
29
29
|
import {
|
|
30
30
|
CONTEXT_DEPTH_VALUES,
|
|
31
31
|
EXIT_CODE,
|
|
@@ -45,7 +45,7 @@ import {
|
|
|
45
45
|
resolvePmRoot,
|
|
46
46
|
resolveTypeName,
|
|
47
47
|
writeFileAtomic
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-TLF52ZDP.js";
|
|
49
49
|
|
|
50
50
|
// dist/core/config/positional-value.js
|
|
51
51
|
var FORMAT_KEYS = /* @__PURE__ */ new Set(["item_format"]);
|
|
@@ -1466,6 +1466,6 @@ export {
|
|
|
1466
1466
|
_testOnlyConfigCommand,
|
|
1467
1467
|
runUpgrade
|
|
1468
1468
|
};
|
|
1469
|
-
//# sourceMappingURL=chunk-
|
|
1469
|
+
//# sourceMappingURL=chunk-KPCZL2YK.js.map
|
|
1470
1470
|
|
|
1471
1471
|
//# debugId=5006edcd-26bd-5d8f-b7d8-dc9a71027888
|
|
@@ -1,5 +1,5 @@
|
|
|
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]="45565ba9-d014-58d6-bcd3-8134ba67451d")}catch(e){}}();
|
|
3
3
|
import {
|
|
4
4
|
CONFIDENCE_TEXT_VALUES,
|
|
5
5
|
DEFAULT_RUNTIME_SCHEMA_FILE_PATHS,
|
|
@@ -58,7 +58,7 @@ import {
|
|
|
58
58
|
toErrorMessage,
|
|
59
59
|
weekdayOrderIndex,
|
|
60
60
|
writeFileAtomic
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-TLF52ZDP.js";
|
|
62
62
|
|
|
63
63
|
// dist/core/extensions/command-hook-context.js
|
|
64
64
|
function createCoreCommandHookContext(options) {
|
|
@@ -1925,7 +1925,12 @@ async function readSettingsWithMetadata(pmRoot) {
|
|
|
1925
1925
|
const settingsOnlySignatures = await collectSettingsReadCacheSignatures([
|
|
1926
1926
|
settingsPath
|
|
1927
1927
|
]);
|
|
1928
|
-
|
|
1928
|
+
let raw;
|
|
1929
|
+
try {
|
|
1930
|
+
raw = await readFileIfExists(settingsPath);
|
|
1931
|
+
} catch {
|
|
1932
|
+
return buildFallbackSettingsReadResult("settings_read_fs_error");
|
|
1933
|
+
}
|
|
1929
1934
|
if (raw === null) {
|
|
1930
1935
|
const fallback = buildFallbackSettingsReadResult();
|
|
1931
1936
|
await cacheSettingsReadResultIfStable(pmRoot, [settingsPath], fallback, settingsOnlySignatures, [settingsPath]);
|
|
@@ -4398,19 +4403,18 @@ async function generateItemId(pmRoot, prefix, options = {}) {
|
|
|
4398
4403
|
throw new Error(`Unable to generate unique id after ${attempts} attempts`);
|
|
4399
4404
|
}
|
|
4400
4405
|
|
|
4401
|
-
// dist/core/store/item-store.js
|
|
4402
|
-
import fs4 from "node:fs/promises";
|
|
4403
|
-
import path5 from "node:path";
|
|
4404
|
-
|
|
4405
4406
|
// dist/core/store/item-metadata-cache.js
|
|
4406
4407
|
import fs3 from "node:fs/promises";
|
|
4407
4408
|
import path4 from "node:path";
|
|
4408
|
-
import { createHash } from "node:crypto";
|
|
4409
|
-
var CACHE_VERSION =
|
|
4410
|
-
var DEFAULT_DERIVED_INDEX_MINIMUM_ITEMS =
|
|
4409
|
+
import { createHash, randomUUID as randomUUID2 } from "node:crypto";
|
|
4410
|
+
var CACHE_VERSION = 8;
|
|
4411
|
+
var DEFAULT_DERIVED_INDEX_MINIMUM_ITEMS = 500;
|
|
4412
|
+
var DERIVED_INDEX_LOCK_ID = "metadata-derived-index";
|
|
4411
4413
|
var CACHE_FILENAME = "metadata-cache.json";
|
|
4412
4414
|
var BODY_CACHE_FILENAME = "metadata-cache-bodies.json";
|
|
4413
4415
|
var COLLECTIONS_CACHE_FILENAME = "metadata-cache-collections.json";
|
|
4416
|
+
var DELTA_CACHE_FILENAME = "metadata-cache-delta.json";
|
|
4417
|
+
var MANIFEST_CACHE_FILENAME = "metadata-cache-manifest.json";
|
|
4414
4418
|
var HEAVY_METADATA_KEYS = [
|
|
4415
4419
|
"comments",
|
|
4416
4420
|
"notes",
|
|
@@ -4462,8 +4466,73 @@ function getBodyCachePath(pmRoot) {
|
|
|
4462
4466
|
function getCollectionsCachePath(pmRoot) {
|
|
4463
4467
|
return path4.join(pmRoot, "runtime", COLLECTIONS_CACHE_FILENAME);
|
|
4464
4468
|
}
|
|
4469
|
+
function getDeltaCachePath(pmRoot) {
|
|
4470
|
+
return path4.join(pmRoot, "runtime", DELTA_CACHE_FILENAME);
|
|
4471
|
+
}
|
|
4472
|
+
function getManifestCachePath(pmRoot) {
|
|
4473
|
+
return path4.join(pmRoot, "runtime", MANIFEST_CACHE_FILENAME);
|
|
4474
|
+
}
|
|
4465
4475
|
var ENVELOPE_MEMO_MAX_ENTRIES = 24;
|
|
4466
4476
|
var envelopeMemo = /* @__PURE__ */ new Map();
|
|
4477
|
+
var projectedBaseCursor = /* @__PURE__ */ new WeakMap();
|
|
4478
|
+
function baseCursorFor(envelope) {
|
|
4479
|
+
return projectedBaseCursor.get(envelope) ?? envelope.source_cursor;
|
|
4480
|
+
}
|
|
4481
|
+
function applyMetadataDelta(envelope, delta) {
|
|
4482
|
+
const baseCursor = baseCursorFor(envelope);
|
|
4483
|
+
if (delta.base_source_cursor !== baseCursor || envelope.source_cursor === delta.source_cursor) {
|
|
4484
|
+
return;
|
|
4485
|
+
}
|
|
4486
|
+
projectedBaseCursor.set(envelope, baseCursor);
|
|
4487
|
+
for (const [relativePath, change] of Object.entries(delta.changes)) {
|
|
4488
|
+
if (change.entry)
|
|
4489
|
+
envelope.entries[relativePath] = change.entry;
|
|
4490
|
+
else
|
|
4491
|
+
delete envelope.entries[relativePath];
|
|
4492
|
+
}
|
|
4493
|
+
envelope.directory_signatures = delta.directory_signatures;
|
|
4494
|
+
envelope.source_cursor = delta.source_cursor;
|
|
4495
|
+
}
|
|
4496
|
+
function applyBodyDelta(envelope, delta) {
|
|
4497
|
+
if (!envelope)
|
|
4498
|
+
return;
|
|
4499
|
+
const baseCursor = baseCursorFor(envelope);
|
|
4500
|
+
if (delta.base_source_cursor !== baseCursor || envelope.source_cursor === delta.source_cursor) {
|
|
4501
|
+
return;
|
|
4502
|
+
}
|
|
4503
|
+
projectedBaseCursor.set(envelope, baseCursor);
|
|
4504
|
+
for (const [relativePath, change] of Object.entries(delta.changes)) {
|
|
4505
|
+
if (change.body)
|
|
4506
|
+
envelope.bodies[relativePath] = change.body;
|
|
4507
|
+
else
|
|
4508
|
+
delete envelope.bodies[relativePath];
|
|
4509
|
+
}
|
|
4510
|
+
envelope.source_cursor = delta.source_cursor;
|
|
4511
|
+
}
|
|
4512
|
+
function applyCollectionsDelta(envelope, delta) {
|
|
4513
|
+
if (!envelope)
|
|
4514
|
+
return;
|
|
4515
|
+
const baseCursor = baseCursorFor(envelope);
|
|
4516
|
+
if (delta.base_source_cursor !== baseCursor || envelope.source_cursor === delta.source_cursor) {
|
|
4517
|
+
return;
|
|
4518
|
+
}
|
|
4519
|
+
projectedBaseCursor.set(envelope, baseCursor);
|
|
4520
|
+
for (const [relativePath, change] of Object.entries(delta.changes)) {
|
|
4521
|
+
if (change.collections)
|
|
4522
|
+
envelope.collections[relativePath] = change.collections;
|
|
4523
|
+
else
|
|
4524
|
+
delete envelope.collections[relativePath];
|
|
4525
|
+
}
|
|
4526
|
+
envelope.source_cursor = delta.source_cursor;
|
|
4527
|
+
}
|
|
4528
|
+
function applyDerivedIndexDelta(metadata, bodies, collections, delta) {
|
|
4529
|
+
if (!metadata || !delta || metadata.context_fingerprint !== delta.context_fingerprint) {
|
|
4530
|
+
return;
|
|
4531
|
+
}
|
|
4532
|
+
applyMetadataDelta(metadata, delta);
|
|
4533
|
+
applyBodyDelta(bodies, delta);
|
|
4534
|
+
applyCollectionsDelta(collections, delta);
|
|
4535
|
+
}
|
|
4467
4536
|
function memoizeEnvelope(cachePath, entry) {
|
|
4468
4537
|
if (envelopeMemo.size >= ENVELOPE_MEMO_MAX_ENTRIES && !envelopeMemo.has(cachePath)) {
|
|
4469
4538
|
evictOldestMemoEntries(envelopeMemo);
|
|
@@ -4503,7 +4572,7 @@ async function loadEnvelopeMemoized(cachePath, parse) {
|
|
|
4503
4572
|
async function loadCache(pmRoot) {
|
|
4504
4573
|
return await loadEnvelopeMemoized(getCachePath(pmRoot), (raw) => {
|
|
4505
4574
|
const parsed = JSON.parse(raw);
|
|
4506
|
-
if (parsed.version !== CACHE_VERSION || typeof parsed.entries !== "object" || parsed.entries === null) {
|
|
4575
|
+
if (parsed.version !== CACHE_VERSION || typeof parsed.source_cursor !== "string" || typeof parsed.entries !== "object" || parsed.entries === null) {
|
|
4507
4576
|
return null;
|
|
4508
4577
|
}
|
|
4509
4578
|
return parsed;
|
|
@@ -4512,7 +4581,7 @@ async function loadCache(pmRoot) {
|
|
|
4512
4581
|
async function loadBodyCache(pmRoot) {
|
|
4513
4582
|
return await loadEnvelopeMemoized(getBodyCachePath(pmRoot), (raw) => {
|
|
4514
4583
|
const parsed = JSON.parse(raw);
|
|
4515
|
-
if (parsed.version !== CACHE_VERSION || typeof parsed.bodies !== "object" || parsed.bodies === null) {
|
|
4584
|
+
if (parsed.version !== CACHE_VERSION || typeof parsed.source_cursor !== "string" || typeof parsed.bodies !== "object" || parsed.bodies === null) {
|
|
4516
4585
|
return null;
|
|
4517
4586
|
}
|
|
4518
4587
|
return parsed;
|
|
@@ -4521,12 +4590,48 @@ async function loadBodyCache(pmRoot) {
|
|
|
4521
4590
|
async function loadCollectionsCache(pmRoot) {
|
|
4522
4591
|
return await loadEnvelopeMemoized(getCollectionsCachePath(pmRoot), (raw) => {
|
|
4523
4592
|
const parsed = JSON.parse(raw);
|
|
4524
|
-
if (parsed.version !== CACHE_VERSION || typeof parsed.collections !== "object" || parsed.collections === null) {
|
|
4593
|
+
if (parsed.version !== CACHE_VERSION || typeof parsed.source_cursor !== "string" || typeof parsed.collections !== "object" || parsed.collections === null) {
|
|
4525
4594
|
return null;
|
|
4526
4595
|
}
|
|
4527
4596
|
return parsed;
|
|
4528
4597
|
});
|
|
4529
4598
|
}
|
|
4599
|
+
async function loadDerivedIndexDelta(pmRoot) {
|
|
4600
|
+
const deltaPath = getDeltaCachePath(pmRoot);
|
|
4601
|
+
const envelope = await loadEnvelopeMemoized(deltaPath, (raw) => {
|
|
4602
|
+
const parsed = JSON.parse(raw);
|
|
4603
|
+
if (parsed.version !== CACHE_VERSION || typeof parsed.base_source_cursor !== "string" || typeof parsed.source_cursor !== "string" || typeof parsed.changes !== "object" || parsed.changes === null) {
|
|
4604
|
+
return null;
|
|
4605
|
+
}
|
|
4606
|
+
return parsed;
|
|
4607
|
+
});
|
|
4608
|
+
if (envelope)
|
|
4609
|
+
return { envelope, invalid: false };
|
|
4610
|
+
try {
|
|
4611
|
+
await fs3.stat(deltaPath);
|
|
4612
|
+
return { envelope: null, invalid: true };
|
|
4613
|
+
} catch {
|
|
4614
|
+
return { envelope: null, invalid: false };
|
|
4615
|
+
}
|
|
4616
|
+
}
|
|
4617
|
+
async function loadDerivedIndexManifest(pmRoot) {
|
|
4618
|
+
const manifestPath = getManifestCachePath(pmRoot);
|
|
4619
|
+
const manifest = await loadEnvelopeMemoized(manifestPath, (raw) => {
|
|
4620
|
+
const parsed = JSON.parse(raw);
|
|
4621
|
+
if (parsed.version !== CACHE_VERSION || typeof parsed.context_fingerprint !== "string" || typeof parsed.source_cursor !== "string" || !Number.isInteger(parsed.entry_count) || parsed.entry_count < 0) {
|
|
4622
|
+
return null;
|
|
4623
|
+
}
|
|
4624
|
+
return parsed;
|
|
4625
|
+
});
|
|
4626
|
+
if (manifest)
|
|
4627
|
+
return manifest;
|
|
4628
|
+
try {
|
|
4629
|
+
await fs3.stat(manifestPath);
|
|
4630
|
+
await removeDerivedIndexFiles(pmRoot);
|
|
4631
|
+
} catch {
|
|
4632
|
+
}
|
|
4633
|
+
return null;
|
|
4634
|
+
}
|
|
4530
4635
|
async function persistCache(cachePath, envelope) {
|
|
4531
4636
|
await fs3.mkdir(path4.dirname(cachePath), { recursive: true });
|
|
4532
4637
|
await writeFileAtomic(cachePath, JSON.stringify(envelope));
|
|
@@ -4586,10 +4691,7 @@ async function readDirectorySignature(pmRoot, folder) {
|
|
|
4586
4691
|
}
|
|
4587
4692
|
];
|
|
4588
4693
|
} catch {
|
|
4589
|
-
return [
|
|
4590
|
-
folder,
|
|
4591
|
-
{ exists: false, mtime_ms: 0, ctime_ms: 0, size: 0 }
|
|
4592
|
-
];
|
|
4694
|
+
return [folder, { exists: false, mtime_ms: 0, ctime_ms: 0, size: 0 }];
|
|
4593
4695
|
}
|
|
4594
4696
|
}
|
|
4595
4697
|
async function readDirectorySignatures(pmRoot, folders) {
|
|
@@ -4769,13 +4871,22 @@ async function persistMetadataCacheIfNeeded(params) {
|
|
|
4769
4871
|
if (!metadataDirty && params.existingCache !== null && params.existingCache.context_fingerprint === params.contextFingerprint) {
|
|
4770
4872
|
return;
|
|
4771
4873
|
}
|
|
4772
|
-
|
|
4773
|
-
|
|
4774
|
-
|
|
4775
|
-
|
|
4776
|
-
|
|
4777
|
-
|
|
4778
|
-
|
|
4874
|
+
try {
|
|
4875
|
+
await persistCache(getCachePath(params.pmRoot), {
|
|
4876
|
+
version: CACHE_VERSION,
|
|
4877
|
+
context_fingerprint: params.contextFingerprint,
|
|
4878
|
+
source_cursor: params.sourceCursor,
|
|
4879
|
+
directory_signatures: params.directorySignatures,
|
|
4880
|
+
entries: params.state.newEntries
|
|
4881
|
+
});
|
|
4882
|
+
await persistCache(getManifestCachePath(params.pmRoot), {
|
|
4883
|
+
version: CACHE_VERSION,
|
|
4884
|
+
context_fingerprint: params.contextFingerprint,
|
|
4885
|
+
source_cursor: params.sourceCursor,
|
|
4886
|
+
entry_count: Object.keys(params.state.newEntries).length
|
|
4887
|
+
});
|
|
4888
|
+
} catch {
|
|
4889
|
+
}
|
|
4779
4890
|
}
|
|
4780
4891
|
async function persistBodyCacheIfNeeded(params) {
|
|
4781
4892
|
const bodyDirty = params.state.misses.body || Object.keys(params.previousBodies).length !== Object.keys(params.state.newBodies).length;
|
|
@@ -4785,6 +4896,7 @@ async function persistBodyCacheIfNeeded(params) {
|
|
|
4785
4896
|
await persistCache(getBodyCachePath(params.pmRoot), {
|
|
4786
4897
|
version: CACHE_VERSION,
|
|
4787
4898
|
context_fingerprint: params.contextFingerprint,
|
|
4899
|
+
source_cursor: params.sourceCursor,
|
|
4788
4900
|
bodies: params.state.newBodies
|
|
4789
4901
|
}).catch(() => {
|
|
4790
4902
|
});
|
|
@@ -4797,15 +4909,112 @@ async function persistCollectionsCacheIfNeeded(params) {
|
|
|
4797
4909
|
await persistCache(getCollectionsCachePath(params.pmRoot), {
|
|
4798
4910
|
version: CACHE_VERSION,
|
|
4799
4911
|
context_fingerprint: params.contextFingerprint,
|
|
4912
|
+
source_cursor: params.sourceCursor,
|
|
4800
4913
|
collections: params.state.newCollections
|
|
4801
4914
|
}).catch(() => {
|
|
4802
4915
|
});
|
|
4803
4916
|
}
|
|
4917
|
+
async function acquireItemMetadataDerivedIndexLock(pmRoot, author) {
|
|
4918
|
+
const cache = await loadDerivedIndexManifest(pmRoot);
|
|
4919
|
+
if (cache === null || cache.entry_count < DEFAULT_DERIVED_INDEX_MINIMUM_ITEMS) {
|
|
4920
|
+
return async () => {
|
|
4921
|
+
};
|
|
4922
|
+
}
|
|
4923
|
+
return acquireLock(pmRoot, DERIVED_INDEX_LOCK_ID, 30, author, false, false, 3e3);
|
|
4924
|
+
}
|
|
4925
|
+
function relativeIndexPath(pmRoot, itemPath) {
|
|
4926
|
+
const relative = path4.relative(pmRoot, itemPath);
|
|
4927
|
+
return relative === "" || relative === ".." || relative.startsWith(`..${path4.sep}`) || path4.isAbsolute(relative) ? null : relative;
|
|
4928
|
+
}
|
|
4929
|
+
async function removeDerivedIndexFiles(pmRoot) {
|
|
4930
|
+
await Promise.all([
|
|
4931
|
+
getCachePath(pmRoot),
|
|
4932
|
+
getBodyCachePath(pmRoot),
|
|
4933
|
+
getCollectionsCachePath(pmRoot),
|
|
4934
|
+
getDeltaCachePath(pmRoot),
|
|
4935
|
+
getManifestCachePath(pmRoot)
|
|
4936
|
+
].map(async (cachePath) => {
|
|
4937
|
+
await fs3.rm(cachePath, { force: true });
|
|
4938
|
+
envelopeMemo.delete(cachePath);
|
|
4939
|
+
}));
|
|
4940
|
+
}
|
|
4941
|
+
async function createDerivedIndexDeltaChange(params) {
|
|
4942
|
+
if (params.mutation.document === null) {
|
|
4943
|
+
return { entry: null, body: null, collections: null };
|
|
4944
|
+
}
|
|
4945
|
+
const stat2 = await fs3.stat(params.mutation.itemPath);
|
|
4946
|
+
const split = splitHeavyMetadata(params.mutation.document.metadata);
|
|
4947
|
+
const signature = {
|
|
4948
|
+
mtime_ms: stat2.mtimeMs,
|
|
4949
|
+
ctime_ms: stat2.ctimeMs,
|
|
4950
|
+
size: stat2.size
|
|
4951
|
+
};
|
|
4952
|
+
return {
|
|
4953
|
+
entry: {
|
|
4954
|
+
...signature,
|
|
4955
|
+
metadata: split.light,
|
|
4956
|
+
body_length: params.mutation.document.body.length
|
|
4957
|
+
},
|
|
4958
|
+
body: { ...signature, body: params.mutation.document.body },
|
|
4959
|
+
collections: {
|
|
4960
|
+
...signature,
|
|
4961
|
+
collections: split.heavy
|
|
4962
|
+
}
|
|
4963
|
+
};
|
|
4964
|
+
}
|
|
4965
|
+
function selectDerivedIndexDeltaChanges(delta, contextFingerprint, baseSourceCursor) {
|
|
4966
|
+
return delta?.context_fingerprint === contextFingerprint && delta.base_source_cursor === baseSourceCursor ? structuredClone(delta.changes) : {};
|
|
4967
|
+
}
|
|
4968
|
+
async function refreshItemMetadataDerivedIndex(mutation) {
|
|
4969
|
+
const relativePath = relativeIndexPath(mutation.pmRoot, mutation.itemPath);
|
|
4970
|
+
const previousRelativePath = mutation.previousItemPath ? relativeIndexPath(mutation.pmRoot, mutation.previousItemPath) : void 0;
|
|
4971
|
+
if (relativePath === null || previousRelativePath === null) {
|
|
4972
|
+
await removeDerivedIndexFiles(mutation.pmRoot);
|
|
4973
|
+
return ["metadata_derived_index_path_invalidated"];
|
|
4974
|
+
}
|
|
4975
|
+
try {
|
|
4976
|
+
const contextFingerprint = computeContextFingerprint(mutation.preferredFormat, mutation.typeToFolder, mutation.schema, resolveActiveExtensionFieldNames());
|
|
4977
|
+
const existingCache = await loadDerivedIndexManifest(mutation.pmRoot);
|
|
4978
|
+
if (existingCache === null || existingCache.context_fingerprint !== contextFingerprint) {
|
|
4979
|
+
return [];
|
|
4980
|
+
}
|
|
4981
|
+
const baseSourceCursor = existingCache.source_cursor;
|
|
4982
|
+
const delta = await loadDerivedIndexDelta(mutation.pmRoot);
|
|
4983
|
+
if (delta.invalid) {
|
|
4984
|
+
await removeDerivedIndexFiles(mutation.pmRoot);
|
|
4985
|
+
return ["metadata_derived_index_refresh_failed"];
|
|
4986
|
+
}
|
|
4987
|
+
const changes = selectDerivedIndexDeltaChanges(delta.envelope, contextFingerprint, baseSourceCursor);
|
|
4988
|
+
if (previousRelativePath !== void 0) {
|
|
4989
|
+
changes[previousRelativePath] = {
|
|
4990
|
+
entry: null,
|
|
4991
|
+
body: null,
|
|
4992
|
+
collections: null
|
|
4993
|
+
};
|
|
4994
|
+
}
|
|
4995
|
+
changes[relativePath] = await createDerivedIndexDeltaChange({ mutation });
|
|
4996
|
+
await persistCache(getDeltaCachePath(mutation.pmRoot), {
|
|
4997
|
+
version: CACHE_VERSION,
|
|
4998
|
+
context_fingerprint: contextFingerprint,
|
|
4999
|
+
base_source_cursor: baseSourceCursor,
|
|
5000
|
+
source_cursor: randomUUID2(),
|
|
5001
|
+
directory_signatures: await readDirectorySignatures(mutation.pmRoot, [
|
|
5002
|
+
...new Set(Object.values(mutation.typeToFolder))
|
|
5003
|
+
]),
|
|
5004
|
+
changes
|
|
5005
|
+
});
|
|
5006
|
+
return [];
|
|
5007
|
+
} catch {
|
|
5008
|
+
await removeDerivedIndexFiles(mutation.pmRoot).catch(() => {
|
|
5009
|
+
});
|
|
5010
|
+
return ["metadata_derived_index_refresh_failed"];
|
|
5011
|
+
}
|
|
5012
|
+
}
|
|
4804
5013
|
function sortedCachedDocumentCandidates(state) {
|
|
4805
5014
|
return [...state.documentsById.values()].sort((left, right) => left.candidate.metadata.id.localeCompare(right.candidate.metadata.id)).map((entry) => entry.candidate);
|
|
4806
5015
|
}
|
|
4807
|
-
function cacheTierMatchesContext(envelope, contextFingerprint) {
|
|
4808
|
-
return envelope?.context_fingerprint === contextFingerprint;
|
|
5016
|
+
function cacheTierMatchesContext(envelope, contextFingerprint, sourceCursor) {
|
|
5017
|
+
return envelope?.context_fingerprint === contextFingerprint && envelope.source_cursor === sourceCursor;
|
|
4809
5018
|
}
|
|
4810
5019
|
function hasEveryDerivedIndexPart(keys, includeBody, includeCollections, previousBodies, previousCollections) {
|
|
4811
5020
|
return keys.every((key) => (!includeBody || previousBodies[key] !== void 0) && (!includeCollections || previousCollections[key] !== void 0));
|
|
@@ -4838,8 +5047,8 @@ function canUseDerivedIndex(params) {
|
|
|
4838
5047
|
return false;
|
|
4839
5048
|
}
|
|
4840
5049
|
const requiredTiersMatch = [
|
|
4841
|
-
!params.includeBody || cacheTierMatchesContext(params.existingBodyCache, params.contextFingerprint),
|
|
4842
|
-
!params.includeCollections || cacheTierMatchesContext(params.existingCollectionsCache, params.contextFingerprint)
|
|
5050
|
+
!params.includeBody || cacheTierMatchesContext(params.existingBodyCache, params.contextFingerprint, params.existingCache.source_cursor),
|
|
5051
|
+
!params.includeCollections || cacheTierMatchesContext(params.existingCollectionsCache, params.contextFingerprint, params.existingCache.source_cursor)
|
|
4843
5052
|
];
|
|
4844
5053
|
return requiredTiersMatch.every(Boolean) && hasEveryDerivedIndexPart(params.entryKeys, params.includeBody, params.includeCollections, params.previousBodies, params.previousCollections);
|
|
4845
5054
|
}
|
|
@@ -4848,11 +5057,15 @@ async function listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFo
|
|
|
4848
5057
|
const includeCollections = options.includeCollections !== false;
|
|
4849
5058
|
const extensionFieldNames = resolveActiveExtensionFieldNames();
|
|
4850
5059
|
const contextFingerprint = computeContextFingerprint(preferredFormat, typeToFolder, schema, extensionFieldNames);
|
|
5060
|
+
const delta = await loadDerivedIndexDelta(pmRoot);
|
|
5061
|
+
if (delta.invalid)
|
|
5062
|
+
await removeDerivedIndexFiles(pmRoot);
|
|
4851
5063
|
const existingCache = await loadCache(pmRoot);
|
|
4852
|
-
const previousEntries = selectPreviousMetadataEntries(existingCache, contextFingerprint);
|
|
4853
5064
|
const existingBodyCache = includeBody ? await loadBodyCache(pmRoot) : null;
|
|
4854
|
-
const previousBodies = selectPreviousBodyEntries(existingBodyCache, contextFingerprint);
|
|
4855
5065
|
const existingCollectionsCache = includeCollections ? await loadCollectionsCache(pmRoot) : null;
|
|
5066
|
+
applyDerivedIndexDelta(existingCache, existingBodyCache, existingCollectionsCache, delta.envelope);
|
|
5067
|
+
const previousEntries = selectPreviousMetadataEntries(existingCache, contextFingerprint);
|
|
5068
|
+
const previousBodies = selectPreviousBodyEntries(existingBodyCache, contextFingerprint);
|
|
4856
5069
|
const previousCollections = selectPreviousCollectionEntries(existingCollectionsCache, contextFingerprint);
|
|
4857
5070
|
const folders = [...new Set(Object.values(typeToFolder))];
|
|
4858
5071
|
const directorySignaturesBefore = await readDirectorySignatures(pmRoot, folders);
|
|
@@ -4902,9 +5115,12 @@ async function listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFo
|
|
|
4902
5115
|
await Promise.all(collectCachedDocumentParseTasks(dirResults, context));
|
|
4903
5116
|
const directorySignaturesAfter = await readDirectorySignatures(pmRoot, folders);
|
|
4904
5117
|
const stableDirectorySignatures = directorySignaturesMatch(directorySignaturesBefore, directorySignaturesAfter) ? directorySignaturesAfter : {};
|
|
5118
|
+
const metadataChanged = state.misses.metadata || Object.keys(previousEntries).length !== Object.keys(state.newEntries).length || !directorySignaturesMatch(existingCache?.directory_signatures, stableDirectorySignatures);
|
|
5119
|
+
const sourceCursor = metadataChanged || existingCache === null ? randomUUID2() : existingCache.source_cursor;
|
|
4905
5120
|
await persistMetadataCacheIfNeeded({
|
|
4906
5121
|
pmRoot,
|
|
4907
5122
|
contextFingerprint,
|
|
5123
|
+
sourceCursor,
|
|
4908
5124
|
existingCache,
|
|
4909
5125
|
previousEntries,
|
|
4910
5126
|
directorySignatures: stableDirectorySignatures,
|
|
@@ -4914,6 +5130,7 @@ async function listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFo
|
|
|
4914
5130
|
await persistBodyCacheIfNeeded({
|
|
4915
5131
|
pmRoot,
|
|
4916
5132
|
contextFingerprint,
|
|
5133
|
+
sourceCursor,
|
|
4917
5134
|
existingBodyCache,
|
|
4918
5135
|
previousBodies,
|
|
4919
5136
|
state
|
|
@@ -4923,6 +5140,7 @@ async function listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFo
|
|
|
4923
5140
|
await persistCollectionsCacheIfNeeded({
|
|
4924
5141
|
pmRoot,
|
|
4925
5142
|
contextFingerprint,
|
|
5143
|
+
sourceCursor,
|
|
4926
5144
|
existingCollectionsCache,
|
|
4927
5145
|
previousCollections,
|
|
4928
5146
|
state
|
|
@@ -4951,6 +5169,8 @@ async function listAllDocumentsCachedLight(pmRoot, preferredFormat, typeToFolder
|
|
|
4951
5169
|
}
|
|
4952
5170
|
|
|
4953
5171
|
// dist/core/store/item-store.js
|
|
5172
|
+
import fs4 from "node:fs/promises";
|
|
5173
|
+
import path5 from "node:path";
|
|
4954
5174
|
async function fileExists(targetPath) {
|
|
4955
5175
|
try {
|
|
4956
5176
|
await fs4.access(targetPath);
|
|
@@ -5207,30 +5427,47 @@ async function mutateItem(params) {
|
|
|
5207
5427
|
contents: serializedAfter
|
|
5208
5428
|
});
|
|
5209
5429
|
const { effectiveTargetItemPath, effectiveSerializedAfter, skipItemWrite } = resolveItemStoreWriteOverride(serviceWriteOverride, targetItemPath, serializedAfter);
|
|
5210
|
-
|
|
5211
|
-
|
|
5212
|
-
}
|
|
5213
|
-
if (!skipItemWrite && effectiveTargetItemPath !== located.itemPath) {
|
|
5214
|
-
await fs4.rm(located.itemPath);
|
|
5215
|
-
}
|
|
5216
|
-
const entry = createHistoryEntry({
|
|
5217
|
-
nowIso: afterDocument.metadata.updated_at,
|
|
5218
|
-
author: params.author,
|
|
5219
|
-
op: params.op,
|
|
5220
|
-
before: beforeDocument,
|
|
5221
|
-
after: afterDocument,
|
|
5222
|
-
message: params.message
|
|
5223
|
-
});
|
|
5430
|
+
const releaseDerivedIndexLock = await acquireItemMetadataDerivedIndexLock(params.pmRoot, params.author);
|
|
5431
|
+
let derivedIndexWarnings = [];
|
|
5224
5432
|
try {
|
|
5225
|
-
|
|
5226
|
-
|
|
5227
|
-
|
|
5228
|
-
|
|
5229
|
-
|
|
5230
|
-
|
|
5231
|
-
|
|
5433
|
+
if (!skipItemWrite) {
|
|
5434
|
+
await writeFileAtomic(effectiveTargetItemPath, effectiveSerializedAfter);
|
|
5435
|
+
}
|
|
5436
|
+
if (!skipItemWrite && effectiveTargetItemPath !== located.itemPath) {
|
|
5437
|
+
await fs4.rm(located.itemPath);
|
|
5438
|
+
}
|
|
5439
|
+
const entry = createHistoryEntry({
|
|
5440
|
+
nowIso: afterDocument.metadata.updated_at,
|
|
5441
|
+
author: params.author,
|
|
5442
|
+
op: params.op,
|
|
5443
|
+
before: beforeDocument,
|
|
5444
|
+
after: afterDocument,
|
|
5445
|
+
message: params.message
|
|
5232
5446
|
});
|
|
5233
|
-
|
|
5447
|
+
try {
|
|
5448
|
+
await appendHistoryEntry(historyPath, entry);
|
|
5449
|
+
} catch (error) {
|
|
5450
|
+
await rollbackMutatedItemWrite({
|
|
5451
|
+
skipItemWrite,
|
|
5452
|
+
effectiveTargetItemPath,
|
|
5453
|
+
originalItemPath: located.itemPath,
|
|
5454
|
+
originalRaw
|
|
5455
|
+
});
|
|
5456
|
+
throw error;
|
|
5457
|
+
}
|
|
5458
|
+
if (!skipItemWrite) {
|
|
5459
|
+
derivedIndexWarnings = await refreshItemMetadataDerivedIndex({
|
|
5460
|
+
pmRoot: params.pmRoot,
|
|
5461
|
+
preferredFormat: params.settings.item_format,
|
|
5462
|
+
typeToFolder,
|
|
5463
|
+
schema: params.settings.schema,
|
|
5464
|
+
itemPath: effectiveTargetItemPath,
|
|
5465
|
+
previousItemPath: located.itemPath,
|
|
5466
|
+
document: afterDocument
|
|
5467
|
+
});
|
|
5468
|
+
}
|
|
5469
|
+
} finally {
|
|
5470
|
+
await releaseDerivedIndexLock();
|
|
5234
5471
|
}
|
|
5235
5472
|
const hookWarnings = [
|
|
5236
5473
|
...await runActiveOnWriteHooks({
|
|
@@ -5273,6 +5510,7 @@ async function mutateItem(params) {
|
|
|
5273
5510
|
...mutation.warnings ?? [],
|
|
5274
5511
|
...historyPolicy.warnings,
|
|
5275
5512
|
...serviceWriteOverride.warnings,
|
|
5513
|
+
...derivedIndexWarnings,
|
|
5276
5514
|
...hookWarnings
|
|
5277
5515
|
]
|
|
5278
5516
|
};
|
|
@@ -5342,16 +5580,32 @@ async function deleteItem(params) {
|
|
|
5342
5580
|
]
|
|
5343
5581
|
};
|
|
5344
5582
|
}
|
|
5345
|
-
|
|
5346
|
-
|
|
5347
|
-
}
|
|
5583
|
+
const releaseDerivedIndexLock = await acquireItemMetadataDerivedIndexLock(params.pmRoot, params.author);
|
|
5584
|
+
let derivedIndexWarnings = [];
|
|
5348
5585
|
try {
|
|
5349
|
-
await appendHistoryEntry(historyPath, historyEntry);
|
|
5350
|
-
} catch (error) {
|
|
5351
5586
|
if (!skipDelete) {
|
|
5352
|
-
await
|
|
5587
|
+
await fs4.rm(effectiveItemPath);
|
|
5588
|
+
}
|
|
5589
|
+
try {
|
|
5590
|
+
await appendHistoryEntry(historyPath, historyEntry);
|
|
5591
|
+
} catch (error) {
|
|
5592
|
+
if (!skipDelete) {
|
|
5593
|
+
await writeFileAtomic(effectiveItemPath, originalRaw);
|
|
5594
|
+
}
|
|
5595
|
+
throw error;
|
|
5596
|
+
}
|
|
5597
|
+
if (!skipDelete) {
|
|
5598
|
+
derivedIndexWarnings = await refreshItemMetadataDerivedIndex({
|
|
5599
|
+
pmRoot: params.pmRoot,
|
|
5600
|
+
preferredFormat: params.settings.item_format,
|
|
5601
|
+
typeToFolder: prepared.typeToFolder,
|
|
5602
|
+
schema: params.settings.schema,
|
|
5603
|
+
itemPath: effectiveItemPath,
|
|
5604
|
+
document: null
|
|
5605
|
+
});
|
|
5353
5606
|
}
|
|
5354
|
-
|
|
5607
|
+
} finally {
|
|
5608
|
+
await releaseDerivedIndexLock();
|
|
5355
5609
|
}
|
|
5356
5610
|
const hookWarnings = [
|
|
5357
5611
|
...await runActiveOnWriteHooks({
|
|
@@ -5390,6 +5644,7 @@ async function deleteItem(params) {
|
|
|
5390
5644
|
...parseWarnings,
|
|
5391
5645
|
...historyPolicy.warnings,
|
|
5392
5646
|
...serviceDeleteOverride.warnings,
|
|
5647
|
+
...derivedIndexWarnings,
|
|
5393
5648
|
...hookWarnings
|
|
5394
5649
|
]
|
|
5395
5650
|
};
|
|
@@ -5472,7 +5727,10 @@ export {
|
|
|
5472
5727
|
normalizeRawItemId,
|
|
5473
5728
|
normalizeItemId,
|
|
5474
5729
|
generateItemId,
|
|
5730
|
+
DEFAULT_DERIVED_INDEX_MINIMUM_ITEMS,
|
|
5475
5731
|
HEAVY_METADATA_KEYS,
|
|
5732
|
+
acquireItemMetadataDerivedIndexLock,
|
|
5733
|
+
refreshItemMetadataDerivedIndex,
|
|
5476
5734
|
listAllDocumentCandidatesCached,
|
|
5477
5735
|
locateItem,
|
|
5478
5736
|
readLocatedItem,
|
|
@@ -5483,6 +5741,6 @@ export {
|
|
|
5483
5741
|
mutateItem,
|
|
5484
5742
|
deleteItem
|
|
5485
5743
|
};
|
|
5486
|
-
//# sourceMappingURL=chunk-
|
|
5744
|
+
//# sourceMappingURL=chunk-L7DZV6EZ.js.map
|
|
5487
5745
|
|
|
5488
|
-
//# debugId=
|
|
5746
|
+
//# debugId=45565ba9-d014-58d6-bcd3-8134ba67451d
|