@unbrained/pm-cli 2026.7.9 → 2026.7.10
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 +23 -0
- package/dist/cli/bootstrap-args.js +6 -3
- package/dist/cli/bootstrap-args.js.map +1 -1
- package/dist/cli/commands/context.d.ts +23 -0
- package/dist/cli/commands/context.js +96 -7
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/commands/extension.d.ts +1 -1
- package/dist/cli/commands/extension.js +91 -32
- package/dist/cli/commands/extension.js.map +1 -1
- package/dist/cli/commands/init.d.ts +19 -3
- package/dist/cli/commands/init.js +57 -24
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/next.d.ts +3 -1
- package/dist/cli/commands/next.js +19 -7
- package/dist/cli/commands/next.js.map +1 -1
- package/dist/cli/commands/update.js +20 -10
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/register-list-query.js +8 -4
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-setup.js +11 -2
- package/dist/cli/register-setup.js.map +1 -1
- package/dist/cli-bundle/chunks/append-G7NGOQVU.js +11 -0
- package/dist/cli-bundle/chunks/{append-RSPHC423.js → append-SIECQAPH.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-CGDUIPJL.js → chunk-22PW73KV.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NBJCIAVV.js → chunk-2RW5DWHQ.js} +13 -8
- package/dist/cli-bundle/chunks/chunk-2RW5DWHQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-GO2X6ZRB.js → chunk-35U3AVRY.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-4I7KS5ES.js → chunk-3JFQRPOI.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-NRMDT4OV.js → chunk-3THCOPYI.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-D6J5673C.js → chunk-4BINCIRM.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-26MFLA7K.js → chunk-4P2GYOM5.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-LHDHS4Z6.js → chunk-4QE5HOJY.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-5VAZHYVQ.js → chunk-56J3MPGE.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-MCZK7LY6.js → chunk-5BFBDJ4R.js} +24 -16
- package/dist/cli-bundle/chunks/chunk-5BFBDJ4R.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-IINCZYM3.js → chunk-62ECRG6J.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-VCGHRLJU.js → chunk-62KPBB2W.js} +10 -10
- package/dist/cli-bundle/chunks/{chunk-3FUXM574.js → chunk-6MK6M35B.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-TI7QSUFK.js → chunk-6PBZBIS6.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-Y2736PT5.js → chunk-6WIP52LQ.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-GLMJLBLR.js → chunk-75NAGPEL.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-6TD5QGIB.js → chunk-77CWXIAC.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-CEX2DQXZ.js → chunk-7S2UC7S6.js} +37 -73
- package/dist/cli-bundle/chunks/chunk-7S2UC7S6.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-PAWPLIWW.js → chunk-7THLDY3D.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-QJZM5WO5.js → chunk-7TRCAREE.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-EEJKHF7M.js → chunk-7TRVVYPI.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-ONADVBMD.js → chunk-A62N3BM3.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-MBLHA6LR.js → chunk-A7DJG5EF.js} +55 -6
- package/dist/cli-bundle/chunks/chunk-A7DJG5EF.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GZ365M6E.js → chunk-AD4HJKQZ.js} +49 -7
- package/dist/cli-bundle/chunks/chunk-AD4HJKQZ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-7QKSLAHB.js → chunk-AIWGQK6K.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-WDNPNW22.js → chunk-AKCHJXJ4.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-KFL3XHMA.js → chunk-AYPXY3HF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-RL24NAUX.js → chunk-B7FCPO65.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-4OCWJ2AP.js → chunk-BC7QBM2A.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-LD2NBQ5T.js → chunk-BST7GFIX.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-P5SUMCU5.js → chunk-CUBPPDDF.js} +145 -62
- package/dist/cli-bundle/chunks/chunk-CUBPPDDF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-FJR2S7S4.js → chunk-CYBW4HK7.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-7UCBLJDF.js → chunk-DDF7UMVV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-DQLP22K2.js → chunk-DLHFJZ2S.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-PCBZ2VJD.js → chunk-DMD2TENU.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-SCJPFQQT.js → chunk-DN67YDFH.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-7TBUV7XS.js → chunk-DNHILSD7.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-FFB3WITE.js → chunk-DT6NDP53.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-DBV5A7FT.js → chunk-DWGHHSDC.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-3V5C7PUH.js → chunk-DYUAQVDK.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-MCH6IKK7.js → chunk-E2RJZQNW.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-6ZKDMEVT.js → chunk-ECXJ7OHI.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-LG4N6YOK.js → chunk-ESXG6VFX.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-K4NMHZR3.js → chunk-EXG6XTJC.js} +13 -8
- package/dist/cli-bundle/chunks/chunk-EXG6XTJC.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-BPJ5NYSJ.js → chunk-F7UA74OZ.js} +54 -7
- package/dist/cli-bundle/chunks/chunk-F7UA74OZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GSQVQINP.js → chunk-FBD2WUNS.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-YSRXFGNV.js → chunk-FSD7W7Y2.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-JYVPLGOW.js → chunk-FWL5XVYI.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-BPYVKTZE.js → chunk-FYMHD6VX.js} +16 -16
- package/dist/cli-bundle/chunks/{chunk-SIQGG335.js → chunk-GMNCW27N.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-3SHDAKMF.js → chunk-GPPWUJMR.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-W2VFNVSJ.js → chunk-H3HKQXQJ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-UIHDZS6X.js → chunk-HFQ7QQZL.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-Z6RLSNUX.js → chunk-HLUB7G6J.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NRYZ4QLH.js → chunk-HWUIK7YL.js} +16 -16
- package/dist/cli-bundle/chunks/{chunk-U72GF3I2.js → chunk-INAZHXOI.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-INOWVPUD.js → chunk-J3ELHLOJ.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-2BVD4ZD2.js → chunk-J3FDNQWM.js} +4 -3
- package/dist/cli-bundle/chunks/chunk-J3FDNQWM.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-UH6VFRV6.js → chunk-J3Z2JMDV.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-2FKIIQMJ.js → chunk-JDEXIVKQ.js} +372 -20
- package/dist/cli-bundle/chunks/chunk-JDEXIVKQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-KAJNWMBE.js → chunk-JFOBTM4D.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-J6AD3GWC.js → chunk-JNELC5UO.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-YPE5MFPJ.js → chunk-JQ5NB6O2.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-3UXIMY62.js → chunk-KFC6X4PI.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-C3YU3TXX.js → chunk-L2SWAZ3S.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QLEH6FTQ.js → chunk-LVVZLEW5.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-RFHLRMLQ.js → chunk-M66PC7JI.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-63PZJCKO.js → chunk-M7DWRMNY.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-UEATYUZW.js → chunk-M7JYEBPT.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-Z2JQH2MG.js → chunk-MQ632QRB.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-5ZMZF53A.js → chunk-N7N3PUUP.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-3YJDIJIE.js → chunk-NPJLTZQZ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-ASSVI7FP.js → chunk-NQTIOKHL.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-BFNFTHWQ.js → chunk-O67XP4FD.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-K2OKKYSO.js → chunk-OVYXSZOQ.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-FOJEBRDD.js → chunk-P7PDLLCE.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-XXN2B2MJ.js → chunk-PEACKWHL.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-HZZ3AC27.js → chunk-PFRGQZG2.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-Q3CFSOQZ.js → chunk-PMU2OJ3N.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-5STY7NVM.js → chunk-PUMTJMMF.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-K52C6YPA.js → chunk-QTJCMK2S.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-6FU5BVRB.js → chunk-RAE2SLNO.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-S7J3GEHL.js → chunk-RYA7QE7B.js} +10 -10
- package/dist/cli-bundle/chunks/{chunk-N4S7BV43.js → chunk-SL337EYZ.js} +379 -20
- package/dist/cli-bundle/chunks/chunk-SL337EYZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-NSPSJWGL.js → chunk-SMKQFGDI.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-UFNFHCAC.js → chunk-SWQMU4AD.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-MFLLULHU.js → chunk-TB2CZJAQ.js} +5 -4
- package/dist/cli-bundle/chunks/chunk-TB2CZJAQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-WVEMZZCR.js → chunk-TEKAGPZV.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-JH5XDDYS.js → chunk-TM5E2IED.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-C6XSTACC.js → chunk-TTRL5GE6.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-AEOFBBWO.js → chunk-UA2VI62P.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-6RR4XM5H.js → chunk-UYK26VRP.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-CXH7EMSB.js → chunk-VBDQTL3Z.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NGBWEYNY.js → chunk-W2FXYQ6D.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-UURYLDDC.js → chunk-WZ7EPGUX.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-PPY3GXFK.js → chunk-XES6AVCK.js} +39 -68
- package/dist/cli-bundle/chunks/chunk-XES6AVCK.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-QYZMZD4L.js → chunk-XVCB574W.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-F5DDGY6R.js → chunk-XWS3Z57Q.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-EP2CKDS7.js → chunk-XXJB4GLJ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-NTOOEVJ4.js → chunk-Y5Q4FEE4.js} +47 -7
- package/dist/cli-bundle/chunks/chunk-Y5Q4FEE4.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-CHSXGTWF.js → chunk-YA4B6P3L.js} +23 -15
- package/dist/cli-bundle/chunks/chunk-YA4B6P3L.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-YHKXNGLA.js → chunk-Z3R2Z5KW.js} +145 -62
- package/dist/cli-bundle/chunks/chunk-Z3R2Z5KW.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-5RJ4LFD3.js → chunk-Z5MFM54X.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-6WCXSC5V.js → chunk-ZGDJA6WI.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-TKWTJGD6.js → chunk-ZIU35KME.js} +5 -5
- package/dist/cli-bundle/chunks/{chunk-YUMNZS3X.js → chunk-ZQ2KEWE7.js} +3 -3
- package/dist/cli-bundle/chunks/close-2NVUCJXV.js +12 -0
- package/dist/cli-bundle/chunks/{close-TKTFRL7N.js → close-BZPS37KL.js} +5 -5
- package/dist/cli-bundle/chunks/{close-many-HEPL66EG.js → close-many-KKNCGLVR.js} +13 -13
- package/dist/cli-bundle/chunks/close-many-S5WKLWVO.js +22 -0
- package/dist/cli-bundle/chunks/{comments-PLFK5ZKK.js → comments-PV5XG342.js} +7 -7
- package/dist/cli-bundle/chunks/comments-XAM2ADHO.js +13 -0
- package/dist/cli-bundle/chunks/copy-OJ2YNJ7S.js +9 -0
- package/dist/cli-bundle/chunks/{copy-VH3L4MN2.js → copy-OZDYDQUG.js} +4 -4
- package/dist/cli-bundle/chunks/create-5O3QK3PX.js +25 -0
- package/dist/cli-bundle/chunks/{create-LD4SEUD6.js → create-WGFKEJAK.js} +9 -9
- package/dist/cli-bundle/chunks/{delete-ZNXUNCZR.js → delete-NTYXFL7A.js} +4 -4
- package/dist/cli-bundle/chunks/delete-V7FPW6JL.js +10 -0
- package/dist/cli-bundle/chunks/{deps-CVDY7FFK.js → deps-7WVENNH3.js} +4 -4
- package/dist/cli-bundle/chunks/{deps-SZXQHV73.js → deps-Z6RD6RWW.js} +4 -4
- package/dist/cli-bundle/chunks/{docs-DR74ITCD.js → docs-2NIRGHAN.js} +6 -6
- package/dist/cli-bundle/chunks/docs-SOY2CMH3.js +14 -0
- package/dist/cli-bundle/chunks/{files-QEFQ2M3H.js → files-4OH2I663.js} +6 -6
- package/dist/cli-bundle/chunks/{files-H5YCA74Z.js → files-5KNAFW67.js} +6 -6
- package/dist/cli-bundle/chunks/{focus-55TRYSNA.js → focus-CLNZWWKW.js} +5 -5
- package/dist/cli-bundle/chunks/focus-JUKXZN3J.js +10 -0
- package/dist/cli-bundle/chunks/{history-compact-JJZ4EFL3.js → history-compact-R3T3XPD4.js} +9 -9
- package/dist/cli-bundle/chunks/history-compact-WKAKPLFQ.js +21 -0
- package/dist/cli-bundle/chunks/{history-redact-TPPUT3A5.js → history-redact-CLJDCBNF.js} +7 -7
- package/dist/cli-bundle/chunks/history-redact-Y67UDKD3.js +17 -0
- package/dist/cli-bundle/chunks/history-repair-2WLXWQAM.js +19 -0
- package/dist/cli-bundle/chunks/{history-repair-J7PIZ6ZP.js → history-repair-LNA7V2VI.js} +9 -9
- package/dist/cli-bundle/chunks/{learnings-KB6BT4NR.js → learnings-2L72KBOE.js} +7 -7
- package/dist/cli-bundle/chunks/learnings-PNK7WUWO.js +13 -0
- package/dist/cli-bundle/chunks/{notes-ZTHXVOKM.js → notes-USDIABZV.js} +7 -7
- package/dist/cli-bundle/chunks/notes-X4SWEJSB.js +13 -0
- package/dist/cli-bundle/chunks/plan-JU454RMZ.js +24 -0
- package/dist/cli-bundle/chunks/{plan-LUR7C24X.js → plan-U4RWU56Z.js} +10 -10
- package/dist/cli-bundle/chunks/{profile-JRDMDGT5.js → profile-COBKZJUQ.js} +9 -9
- package/dist/cli-bundle/chunks/{profile-5F75MO5O.js → profile-RKIRCXH7.js} +9 -9
- package/dist/cli-bundle/chunks/{register-list-query-GZYRZLQZ.js → register-list-query-2VBANNFM.js} +19 -17
- package/dist/cli-bundle/chunks/{register-list-query-GZYRZLQZ.js.map → register-list-query-2VBANNFM.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-list-query-W2W7RQJJ.js → register-list-query-4AZEKWZ5.js} +18 -16
- package/dist/cli-bundle/chunks/{register-list-query-W2W7RQJJ.js.map → register-list-query-4AZEKWZ5.js.map} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-7DMOYDPC.js → register-mutation-JGXTDEIZ.js} +29 -29
- package/dist/cli-bundle/chunks/{register-mutation-5UDT3WL3.js → register-mutation-XVO4GGZI.js} +29 -29
- package/dist/cli-bundle/chunks/{register-operations-Y4E32W4D.js → register-operations-4EEFV5KJ.js} +26 -26
- package/dist/cli-bundle/chunks/{register-operations-NW43IUPE.js → register-operations-UV25Z4BN.js} +26 -26
- package/dist/cli-bundle/chunks/{register-setup-3GVJ7XPE.js → register-setup-MMXQQC5J.js} +27 -19
- package/dist/cli-bundle/chunks/register-setup-MMXQQC5J.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-setup-MPTTS52V.js → register-setup-NQE5MW63.js} +26 -18
- package/dist/cli-bundle/chunks/register-setup-NQE5MW63.js.map +7 -0
- package/dist/cli-bundle/chunks/restore-54HR2EYD.js +15 -0
- package/dist/cli-bundle/chunks/{restore-BTBEZ5CK.js → restore-BINCHJIY.js} +7 -7
- package/dist/cli-bundle/chunks/{schema-DGSTYYQB.js → schema-2JZNEQSG.js} +6 -6
- package/dist/cli-bundle/chunks/{schema-HAIBEE24.js → schema-VV3K5WZI.js} +6 -6
- package/dist/cli-bundle/chunks/{update-ZMYVXM77.js → update-DK3GAY5D.js} +12 -12
- package/dist/cli-bundle/chunks/update-OIMRKTX6.js +21 -0
- package/dist/cli-bundle/chunks/update-many-5KI6MW76.js +31 -0
- package/dist/cli-bundle/chunks/update-many-IOLDHIZT.js +35 -0
- package/dist/cli-bundle/main.js +16 -54
- package/dist/cli-bundle/main.js.map +3 -3
- package/dist/cli-bundle/sdk-runtime.js +52 -52
- package/dist/cli-bundle/sdk-testing.js +6 -6
- package/dist/cli-bundle/sdk.js +75 -55
- package/dist/cli-bundle/sdk.js.map +2 -2
- package/dist/core/extensions/extension-types.d.ts +1 -1
- package/dist/core/extensions/extension-types.js +3 -2
- package/dist/core/extensions/extension-types.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/core/store/front-matter-cache.d.ts +8 -0
- package/dist/core/store/front-matter-cache.js +22 -9
- package/dist/core/store/front-matter-cache.js.map +1 -1
- package/dist/sdk/cli-contracts/commander-mutation-options.js +4 -4
- package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
- package/dist/sdk/cli-contracts/enum-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.js +7 -2
- package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
- package/dist/sdk/context-relevance.d.ts +166 -0
- package/dist/sdk/context-relevance.js +299 -0
- package/dist/sdk/context-relevance.js.map +1 -0
- package/dist/sdk/index.d.ts +1 -0
- package/dist/sdk/index.js +3 -2
- package/dist/sdk/index.js.map +1 -1
- package/docs/COMMANDS.md +7 -1
- package/docs/EXTENSIONS.md +3 -1
- package/docs/SDK.md +78 -0
- package/docs/TESTING.md +40 -1
- package/package.json +4 -2
- package/dist/cli-bundle/chunks/append-CDPAYYSB.js +0 -11
- package/dist/cli-bundle/chunks/chunk-2BVD4ZD2.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-2FKIIQMJ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-BPJ5NYSJ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-CEX2DQXZ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-CHSXGTWF.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-GZ365M6E.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-K4NMHZR3.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-MBLHA6LR.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-MCZK7LY6.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-MFLLULHU.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-N4S7BV43.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-NBJCIAVV.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-NTOOEVJ4.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-P5SUMCU5.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-PPY3GXFK.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-YHKXNGLA.js.map +0 -7
- package/dist/cli-bundle/chunks/close-5WY6QO5F.js +0 -12
- package/dist/cli-bundle/chunks/close-many-U2KLQ3NL.js +0 -22
- package/dist/cli-bundle/chunks/comments-ZNOD5PTV.js +0 -13
- package/dist/cli-bundle/chunks/copy-F7BUFY4J.js +0 -9
- package/dist/cli-bundle/chunks/create-KCQM6UYM.js +0 -25
- package/dist/cli-bundle/chunks/delete-6KQHZYIP.js +0 -10
- package/dist/cli-bundle/chunks/docs-WCVYY6I7.js +0 -14
- package/dist/cli-bundle/chunks/focus-N2QGNS5D.js +0 -10
- package/dist/cli-bundle/chunks/history-compact-GWQ4UOEI.js +0 -21
- package/dist/cli-bundle/chunks/history-redact-4GJOLXCM.js +0 -17
- package/dist/cli-bundle/chunks/history-repair-HVCVCGUF.js +0 -19
- package/dist/cli-bundle/chunks/learnings-YYY3U2Y7.js +0 -13
- package/dist/cli-bundle/chunks/notes-BGG7VL72.js +0 -13
- package/dist/cli-bundle/chunks/plan-B42KBMX7.js +0 -24
- package/dist/cli-bundle/chunks/register-setup-3GVJ7XPE.js.map +0 -1
- package/dist/cli-bundle/chunks/register-setup-MPTTS52V.js.map +0 -7
- package/dist/cli-bundle/chunks/restore-EX4UUZL6.js +0 -15
- package/dist/cli-bundle/chunks/update-76CRUMC7.js +0 -21
- package/dist/cli-bundle/chunks/update-many-QYQRGNPU.js +0 -31
- package/dist/cli-bundle/chunks/update-many-U4CEQWI4.js +0 -35
- /package/dist/cli-bundle/chunks/{append-CDPAYYSB.js.map → append-G7NGOQVU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-RSPHC423.js.map → append-SIECQAPH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-CGDUIPJL.js.map → chunk-22PW73KV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GO2X6ZRB.js.map → chunk-35U3AVRY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4I7KS5ES.js.map → chunk-3JFQRPOI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NRMDT4OV.js.map → chunk-3THCOPYI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-D6J5673C.js.map → chunk-4BINCIRM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-26MFLA7K.js.map → chunk-4P2GYOM5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LHDHS4Z6.js.map → chunk-4QE5HOJY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5VAZHYVQ.js.map → chunk-56J3MPGE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IINCZYM3.js.map → chunk-62ECRG6J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VCGHRLJU.js.map → chunk-62KPBB2W.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3FUXM574.js.map → chunk-6MK6M35B.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TI7QSUFK.js.map → chunk-6PBZBIS6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Y2736PT5.js.map → chunk-6WIP52LQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GLMJLBLR.js.map → chunk-75NAGPEL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6TD5QGIB.js.map → chunk-77CWXIAC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PAWPLIWW.js.map → chunk-7THLDY3D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QJZM5WO5.js.map → chunk-7TRCAREE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EEJKHF7M.js.map → chunk-7TRVVYPI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ONADVBMD.js.map → chunk-A62N3BM3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7QKSLAHB.js.map → chunk-AIWGQK6K.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WDNPNW22.js.map → chunk-AKCHJXJ4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KFL3XHMA.js.map → chunk-AYPXY3HF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RL24NAUX.js.map → chunk-B7FCPO65.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4OCWJ2AP.js.map → chunk-BC7QBM2A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LD2NBQ5T.js.map → chunk-BST7GFIX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FJR2S7S4.js.map → chunk-CYBW4HK7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7UCBLJDF.js.map → chunk-DDF7UMVV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-DQLP22K2.js.map → chunk-DLHFJZ2S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-PCBZ2VJD.js.map → chunk-DMD2TENU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SCJPFQQT.js.map → chunk-DN67YDFH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-7TBUV7XS.js.map → chunk-DNHILSD7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FFB3WITE.js.map → chunk-DT6NDP53.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-DBV5A7FT.js.map → chunk-DWGHHSDC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3V5C7PUH.js.map → chunk-DYUAQVDK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-MCH6IKK7.js.map → chunk-E2RJZQNW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6ZKDMEVT.js.map → chunk-ECXJ7OHI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LG4N6YOK.js.map → chunk-ESXG6VFX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GSQVQINP.js.map → chunk-FBD2WUNS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YSRXFGNV.js.map → chunk-FSD7W7Y2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JYVPLGOW.js.map → chunk-FWL5XVYI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BPYVKTZE.js.map → chunk-FYMHD6VX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SIQGG335.js.map → chunk-GMNCW27N.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3SHDAKMF.js.map → chunk-GPPWUJMR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-W2VFNVSJ.js.map → chunk-H3HKQXQJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UIHDZS6X.js.map → chunk-HFQ7QQZL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Z6RLSNUX.js.map → chunk-HLUB7G6J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NRYZ4QLH.js.map → chunk-HWUIK7YL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-U72GF3I2.js.map → chunk-INAZHXOI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-INOWVPUD.js.map → chunk-J3ELHLOJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UH6VFRV6.js.map → chunk-J3Z2JMDV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-KAJNWMBE.js.map → chunk-JFOBTM4D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-J6AD3GWC.js.map → chunk-JNELC5UO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YPE5MFPJ.js.map → chunk-JQ5NB6O2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3UXIMY62.js.map → chunk-KFC6X4PI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-C3YU3TXX.js.map → chunk-L2SWAZ3S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QLEH6FTQ.js.map → chunk-LVVZLEW5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-RFHLRMLQ.js.map → chunk-M66PC7JI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-63PZJCKO.js.map → chunk-M7DWRMNY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UEATYUZW.js.map → chunk-M7JYEBPT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Z2JQH2MG.js.map → chunk-MQ632QRB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5ZMZF53A.js.map → chunk-N7N3PUUP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-3YJDIJIE.js.map → chunk-NPJLTZQZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ASSVI7FP.js.map → chunk-NQTIOKHL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BFNFTHWQ.js.map → chunk-O67XP4FD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-K2OKKYSO.js.map → chunk-OVYXSZOQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-FOJEBRDD.js.map → chunk-P7PDLLCE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-XXN2B2MJ.js.map → chunk-PEACKWHL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HZZ3AC27.js.map → chunk-PFRGQZG2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-Q3CFSOQZ.js.map → chunk-PMU2OJ3N.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5STY7NVM.js.map → chunk-PUMTJMMF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-K52C6YPA.js.map → chunk-QTJCMK2S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6FU5BVRB.js.map → chunk-RAE2SLNO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-S7J3GEHL.js.map → chunk-RYA7QE7B.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NSPSJWGL.js.map → chunk-SMKQFGDI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UFNFHCAC.js.map → chunk-SWQMU4AD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-WVEMZZCR.js.map → chunk-TEKAGPZV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JH5XDDYS.js.map → chunk-TM5E2IED.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-C6XSTACC.js.map → chunk-TTRL5GE6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AEOFBBWO.js.map → chunk-UA2VI62P.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6RR4XM5H.js.map → chunk-UYK26VRP.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-CXH7EMSB.js.map → chunk-VBDQTL3Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NGBWEYNY.js.map → chunk-W2FXYQ6D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UURYLDDC.js.map → chunk-WZ7EPGUX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QYZMZD4L.js.map → chunk-XVCB574W.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-F5DDGY6R.js.map → chunk-XWS3Z57Q.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EP2CKDS7.js.map → chunk-XXJB4GLJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5RJ4LFD3.js.map → chunk-Z5MFM54X.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6WCXSC5V.js.map → chunk-ZGDJA6WI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-TKWTJGD6.js.map → chunk-ZIU35KME.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YUMNZS3X.js.map → chunk-ZQ2KEWE7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-5WY6QO5F.js.map → close-2NVUCJXV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-TKTFRL7N.js.map → close-BZPS37KL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-many-HEPL66EG.js.map → close-many-KKNCGLVR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-many-U2KLQ3NL.js.map → close-many-S5WKLWVO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-PLFK5ZKK.js.map → comments-PV5XG342.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-ZNOD5PTV.js.map → comments-XAM2ADHO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-F7BUFY4J.js.map → copy-OJ2YNJ7S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-VH3L4MN2.js.map → copy-OZDYDQUG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-KCQM6UYM.js.map → create-5O3QK3PX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-LD4SEUD6.js.map → create-WGFKEJAK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-ZNXUNCZR.js.map → delete-NTYXFL7A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-6KQHZYIP.js.map → delete-V7FPW6JL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-CVDY7FFK.js.map → deps-7WVENNH3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-SZXQHV73.js.map → deps-Z6RD6RWW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-DR74ITCD.js.map → docs-2NIRGHAN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-WCVYY6I7.js.map → docs-SOY2CMH3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-QEFQ2M3H.js.map → files-4OH2I663.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-H5YCA74Z.js.map → files-5KNAFW67.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-55TRYSNA.js.map → focus-CLNZWWKW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-N2QGNS5D.js.map → focus-JUKXZN3J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-JJZ4EFL3.js.map → history-compact-R3T3XPD4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-compact-GWQ4UOEI.js.map → history-compact-WKAKPLFQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-TPPUT3A5.js.map → history-redact-CLJDCBNF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-4GJOLXCM.js.map → history-redact-Y67UDKD3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-HVCVCGUF.js.map → history-repair-2WLXWQAM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-repair-J7PIZ6ZP.js.map → history-repair-LNA7V2VI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-KB6BT4NR.js.map → learnings-2L72KBOE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-YYY3U2Y7.js.map → learnings-PNK7WUWO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-ZTHXVOKM.js.map → notes-USDIABZV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-BGG7VL72.js.map → notes-X4SWEJSB.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-B42KBMX7.js.map → plan-JU454RMZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{plan-LUR7C24X.js.map → plan-U4RWU56Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{profile-JRDMDGT5.js.map → profile-COBKZJUQ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{profile-5F75MO5O.js.map → profile-RKIRCXH7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-mutation-7DMOYDPC.js.map → register-mutation-JGXTDEIZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-mutation-5UDT3WL3.js.map → register-mutation-XVO4GGZI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-operations-Y4E32W4D.js.map → register-operations-4EEFV5KJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{register-operations-NW43IUPE.js.map → register-operations-UV25Z4BN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-EX4UUZL6.js.map → restore-54HR2EYD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-BTBEZ5CK.js.map → restore-BINCHJIY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-DGSTYYQB.js.map → schema-2JZNEQSG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-HAIBEE24.js.map → schema-VV3K5WZI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-ZMYVXM77.js.map → update-DK3GAY5D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-76CRUMC7.js.map → update-OIMRKTX6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-QYQRGNPU.js.map → update-many-5KI6MW76.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-many-U4CEQWI4.js.map → update-many-IOLDHIZT.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"front-matter-cache.js","sources":["core/store/front-matter-cache.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module core/store/front-matter-cache\n *\n * Reads and writes tracker storage with format-aware helpers for Front Matter Cache.\n */\nimport fs from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { createHash } from \"node:crypto\";\nimport { getActiveExtensionRegistrations, hasActiveOnReadHooks, runActiveOnReadHooks } from \"../extensions/index.js\";\nimport { collectRegisteredItemFieldNames } from \"../extensions/item-fields.js\";\nimport { parseItemDocument } from \"../item/item-format.js\";\nimport { evictOldestMemoEntries } from \"../shared/memo.js\";\nimport { writeFileAtomic } from \"../fs/fs-utils.js\";\nimport { ITEM_FILE_EXTENSIONS, getItemFormatFromPath } from \"./paths.js\";\nimport type { ItemDocument, ItemFormat, ItemMetadata, ItemType, RuntimeSchemaSettings } from \"../../types/index.js\";\n\nconst CACHE_VERSION = 6;\nconst CACHE_FILENAME = \"metadata-cache.json\";\nconst BODY_CACHE_FILENAME = \"metadata-cache-bodies.json\";\nconst COLLECTIONS_CACHE_FILENAME = \"metadata-cache-collections.json\";\n\n/**\n * Heavy \"collection\" front-matter fields. These arrays dominate the on-disk cache\n * (e.g. a single item's comment thread can be hundreds of KB) yet the hot list path\n * (`pm list`, stats, deps, activity, calendar, close) never reads them. They are\n * stored in a separate collections cache that is parsed only when a caller opts in\n * (`includeCollections`), keeping the always-loaded light cache an order of magnitude\n * smaller and its JSON.parse correspondingly cheaper.\n */\nexport const HEAVY_METADATA_KEYS = [\n \"comments\",\n \"notes\",\n \"learnings\",\n \"files\",\n \"tests\",\n \"test_runs\",\n \"docs\",\n] as const;\n\nfunction resolveActiveExtensionFieldNames(): readonly string[] {\n return collectRegisteredItemFieldNames(getActiveExtensionRegistrations());\n}\n\ninterface StatSignature {\n mtime_ms: number;\n ctime_ms: number;\n size: number;\n}\n\ninterface CachedEntry extends StatSignature {\n metadata: ItemMetadata;\n body_length: number;\n}\n\ninterface CachedBody extends StatSignature {\n body: string;\n}\n\ninterface CachedCollections extends StatSignature {\n collections: Record<string, unknown>;\n}\n\ninterface CacheEnvelope {\n version: number;\n context_fingerprint: string;\n entries: Record<string, CachedEntry>;\n}\n\ninterface BodyCacheEnvelope {\n version: number;\n context_fingerprint: string;\n bodies: Record<string, CachedBody>;\n}\n\ninterface CollectionsCacheEnvelope {\n version: number;\n context_fingerprint: string;\n collections: Record<string, CachedCollections>;\n}\n\n/**\n * Split parsed front-matter into the light scalar/small fields (everything except the\n * heavy collection arrays) and the heavy collection fields. Only keys that are actually\n * present are moved, so an item without comments stays without comments in both tiers.\n */\nfunction splitHeavyMetadata(metadata: ItemMetadata): {\n light: ItemMetadata;\n heavy: Record<string, unknown>;\n} {\n const light = { ...metadata } as Record<string, unknown>;\n const heavy: Record<string, unknown> = {};\n for (const key of HEAVY_METADATA_KEYS) {\n if (key in light) {\n heavy[key] = light[key];\n delete light[key];\n }\n }\n return { light: light as ItemMetadata, heavy };\n}\n\n/**\n * Recombine light metadata with cached heavy collection fields. Key order differs from\n * the on-disk document, but every downstream hash/serialization canonicalizes and\n * sorts keys (`stableStringify`), so the merged record is byte-identical once hashed.\n */\nfunction mergeHeavyMetadata(light: ItemMetadata, heavy: Record<string, unknown> | undefined): ItemMetadata {\n if (!heavy || Object.keys(heavy).length === 0) {\n return light;\n }\n return { ...light, ...heavy } as ItemMetadata;\n}\n\n/**\n * Documents the cached document candidate payload exchanged by command, SDK, and package integrations.\n */\nexport interface CachedDocumentCandidate {\n metadata: ItemMetadata;\n body?: string;\n item_format: ItemFormat;\n item_path: string;\n}\n\nfunction computeContextFingerprint(\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n schema: RuntimeSchemaSettings | undefined,\n extensionFieldNames: readonly string[],\n): string {\n const hash = createHash(\"sha256\");\n hash.update(`format:${preferredFormat ?? \"default\"}`);\n const sortedTypes = Object.entries(typeToFolder)\n .sort(([a], [b]) => a.localeCompare(b))\n .map(([type, folder]) => `${type}=${folder}`)\n .join(\",\");\n hash.update(`|types:${sortedTypes}`);\n if (schema) {\n hash.update(`|schema:${JSON.stringify(schema)}`);\n }\n if (extensionFieldNames.length > 0) {\n hash.update(`|extension_fields:${extensionFieldNames.join(\",\")}`);\n }\n return hash.digest(\"hex\").slice(0, 16);\n}\n\nfunction getCachePath(pmRoot: string): string {\n return path.join(pmRoot, \"runtime\", CACHE_FILENAME);\n}\n\nfunction getBodyCachePath(pmRoot: string): string {\n return path.join(pmRoot, \"runtime\", BODY_CACHE_FILENAME);\n}\n\nfunction getCollectionsCachePath(pmRoot: string): string {\n return path.join(pmRoot, \"runtime\", COLLECTIONS_CACHE_FILENAME);\n}\n\ninterface MemoizedEnvelope {\n signature: StatSignature;\n envelope: CacheEnvelope | BodyCacheEnvelope | CollectionsCacheEnvelope | null;\n}\n\n/**\n * In-process memo of parsed cache envelopes keyed by cache file path and validated\n * against the file's stat signature on every load. Commands that scan the corpus more\n * than once per invocation (`pm next`, `pm context`) and long-lived in-process hosts\n * (the MCP server) would otherwise re-read and re-parse multi-megabyte JSON on every\n * scan. Envelopes handed out from the memo are shared, so they must be treated as\n * read-only — the write path always goes through `mutateItem` on a `structuredClone`d\n * document parsed fresh from the item file, never through listed cache metadata.\n *\n * The cap bounds memory when one long-lived process serves many project roots\n * (3 envelopes per root). Hits re-insert their entry so Map insertion order tracks\n * recency, making the half-eviction drop the least-recently-used roots.\n */\nconst ENVELOPE_MEMO_MAX_ENTRIES = 24;\nconst envelopeMemo = new Map<string, MemoizedEnvelope>();\n\nfunction memoizeEnvelope(cachePath: string, entry: MemoizedEnvelope): void {\n if (envelopeMemo.size >= ENVELOPE_MEMO_MAX_ENTRIES && !envelopeMemo.has(cachePath)) {\n evictOldestMemoEntries(envelopeMemo);\n }\n envelopeMemo.set(cachePath, entry);\n}\n\nasync function loadEnvelopeMemoized<T extends MemoizedEnvelope[\"envelope\"]>(\n cachePath: string,\n parse: (raw: string) => T,\n): Promise<T> {\n let stat;\n try {\n stat = await fs.stat(cachePath);\n } catch {\n envelopeMemo.delete(cachePath);\n return null as T;\n }\n const memoized = envelopeMemo.get(cachePath);\n if (memoized && statMatches(memoized.signature, stat.mtimeMs, stat.ctimeMs, stat.size)) {\n // Re-insert on hit so insertion order tracks recency for the LRU half-eviction.\n envelopeMemo.delete(cachePath);\n envelopeMemo.set(cachePath, memoized);\n return memoized.envelope as T;\n }\n let envelope: T;\n try {\n envelope = parse(await fs.readFile(cachePath, \"utf8\"));\n } catch {\n envelope = null as T;\n }\n memoizeEnvelope(cachePath, {\n signature: { mtime_ms: stat.mtimeMs, ctime_ms: stat.ctimeMs, size: stat.size },\n envelope,\n });\n return envelope;\n}\n\n/**\n * Drop memoized envelopes. Exposed for tests; production invalidation is stat-driven\n * plus the explicit delete in {@link persistCache} after a rewrite.\n */\nexport function clearFrontMatterEnvelopeMemo(): void {\n envelopeMemo.clear();\n}\n\nasync function loadCache(pmRoot: string): Promise<CacheEnvelope | null> {\n return await loadEnvelopeMemoized(getCachePath(pmRoot), (raw) => {\n const parsed = JSON.parse(raw) as CacheEnvelope;\n if (parsed.version !== CACHE_VERSION || typeof parsed.entries !== \"object\" || parsed.entries === null) {\n return null;\n }\n return parsed;\n });\n}\n\nasync function loadBodyCache(pmRoot: string): Promise<BodyCacheEnvelope | null> {\n return await loadEnvelopeMemoized(getBodyCachePath(pmRoot), (raw) => {\n const parsed = JSON.parse(raw) as BodyCacheEnvelope;\n if (parsed.version !== CACHE_VERSION || typeof parsed.bodies !== \"object\" || parsed.bodies === null) {\n return null;\n }\n return parsed;\n });\n}\n\nasync function loadCollectionsCache(pmRoot: string): Promise<CollectionsCacheEnvelope | null> {\n return await loadEnvelopeMemoized(getCollectionsCachePath(pmRoot), (raw) => {\n const parsed = JSON.parse(raw) as CollectionsCacheEnvelope;\n if (parsed.version !== CACHE_VERSION || typeof parsed.collections !== \"object\" || parsed.collections === null) {\n return null;\n }\n return parsed;\n });\n}\n\nasync function persistCache(\n cachePath: string,\n envelope: CacheEnvelope | BodyCacheEnvelope | CollectionsCacheEnvelope,\n): Promise<void> {\n await fs.mkdir(path.dirname(cachePath), { recursive: true });\n await writeFileAtomic(cachePath, JSON.stringify(envelope));\n // Repopulate the memo with the just-written envelope so the next read after a\n // write skips the cold re-read; fall back to plain invalidation when the fresh\n // stat signature cannot be captured.\n try {\n const stat = await fs.stat(cachePath);\n memoizeEnvelope(cachePath, {\n signature: { mtime_ms: stat.mtimeMs, ctime_ms: stat.ctimeMs, size: stat.size },\n envelope,\n });\n } catch {\n envelopeMemo.delete(cachePath);\n }\n}\n\n/**\n * Decide whether a freshly parsed document candidate should replace the one\n * already recorded for the same item id when both an explicit-format file and a\n * fallback-format file exist (e.g. `pm-x.toon` and `pm-x.md`). An explicit\n * `preferredFormat` wins; otherwise `toon` wins over any non-toon format.\n *\n * This is a pure decision so the winner is fully deterministic regardless of the\n * order in which the concurrent per-file reads resolve — the inline call site\n * populates the map as each async read completes, so without a pure rule the\n * branch taken (and thus its coverage) would race. Keep this exported and\n * unit-tested across every format combination.\n */\nexport function shouldReplaceCachedDocumentCandidate(\n existingFormat: ItemFormat,\n candidateFormat: ItemFormat,\n preferredFormat: ItemFormat | undefined,\n): boolean {\n if (preferredFormat) {\n return candidateFormat === preferredFormat && existingFormat !== preferredFormat;\n }\n return candidateFormat === \"toon\" && existingFormat !== \"toon\";\n}\n\nfunction appendWarning(warnings: string[] | undefined, warning: string): void {\n if (warnings && !warnings.includes(warning)) {\n warnings.push(warning);\n }\n}\n\nfunction statMatches(signature: StatSignature, mtimeMs: number, ctimeMs: number, size: number): boolean {\n return signature.mtime_ms === mtimeMs && signature.ctime_ms === ctimeMs && signature.size === size;\n}\n\ninterface DocumentCacheMissState {\n metadata: boolean;\n body: boolean;\n collections: boolean;\n}\n\ninterface DocumentCacheMutableState {\n newEntries: Record<string, CachedEntry>;\n newBodies: Record<string, CachedBody>;\n newCollections: Record<string, CachedCollections>;\n documentsById: Map<string, { candidate: CachedDocumentCandidate; itemFormat: ItemFormat }>;\n misses: DocumentCacheMissState;\n}\n\ninterface DocumentCacheReadContext {\n pmRoot: string;\n preferredFormat: ItemFormat | undefined;\n warnings: string[] | undefined;\n schema: RuntimeSchemaSettings | undefined;\n extensionFieldNames: readonly string[];\n includeBody: boolean;\n includeCollections: boolean;\n dispatchReadHooks: boolean;\n previousEntries: Record<string, CachedEntry>;\n previousBodies: Record<string, CachedBody>;\n previousCollections: Record<string, CachedCollections>;\n state: DocumentCacheMutableState;\n}\n\ninterface CachedDocumentReadParts {\n mtimeMs: number;\n ctimeMs: number;\n size: number;\n itemFormat: ItemFormat;\n lightMetadata: ItemMetadata;\n heavyMetadata: Record<string, unknown> | undefined;\n bodyLength: number;\n body: string | undefined;\n}\n\nasync function readItemDirectoryFiles(\n pmRoot: string,\n folder: string,\n warnings: string[] | undefined,\n): Promise<{ folder: string; dirPath: string; files: string[] }> {\n const dirPath = path.join(pmRoot, folder);\n try {\n const files = await fs.readdir(dirPath);\n return { folder, dirPath, files };\n } catch (error: unknown) {\n if (typeof error === \"object\" && error !== null && \"code\" in error && (error as { code?: string }).code !== \"ENOENT\") {\n appendWarning(warnings, `item_list_directory_read_failed:${folder}`);\n }\n return { folder, dirPath, files: [] };\n }\n}\n\nfunction isItemDocumentFile(file: string): boolean {\n return ITEM_FILE_EXTENSIONS.some((ext) => file.toLowerCase().endsWith(ext));\n}\n\nfunction markDocumentCacheMisses(\n misses: DocumentCacheMissState,\n includeBody: boolean,\n includeCollections: boolean,\n metadataCached: boolean,\n bodyCached: boolean,\n collectionsCached: boolean,\n): void {\n if (!metadataCached) {\n misses.metadata = true;\n }\n if (includeBody && !bodyCached) {\n misses.body = true;\n }\n if (includeCollections && !collectionsCached) {\n misses.collections = true;\n }\n}\n\nasync function dispatchCachedDocumentReadHooks(\n filePath: string,\n warnings: string[] | undefined,\n dispatchReadHooks: boolean,\n): Promise<void> {\n if (!dispatchReadHooks) {\n return;\n }\n for (const warning of await runActiveOnReadHooks({ path: filePath, scope: \"project\" })) {\n appendWarning(warnings, warning);\n }\n}\n\nasync function readCachedDocumentParts(\n filePath: string,\n relativePath: string,\n context: DocumentCacheReadContext,\n): Promise<CachedDocumentReadParts> {\n const stat = await fs.stat(filePath);\n const mtimeMs = stat.mtimeMs;\n const ctimeMs = stat.ctimeMs;\n const { size } = stat;\n const itemFormat = getItemFormatFromPath(filePath) as ItemFormat;\n\n await dispatchCachedDocumentReadHooks(filePath, context.warnings, context.dispatchReadHooks);\n\n const cachedEntry = context.previousEntries[relativePath];\n const metadataCached = cachedEntry !== undefined && statMatches(cachedEntry, mtimeMs, ctimeMs, size);\n const cachedBody = context.previousBodies[relativePath];\n const bodyCached = cachedBody !== undefined && statMatches(cachedBody, mtimeMs, ctimeMs, size);\n const cachedCollections = context.previousCollections[relativePath];\n const collectionsCached = cachedCollections !== undefined && statMatches(cachedCollections, mtimeMs, ctimeMs, size);\n const needRead =\n !metadataCached || (context.includeBody && !bodyCached) || (context.includeCollections && !collectionsCached);\n\n if (!needRead) {\n return {\n mtimeMs,\n ctimeMs,\n size,\n itemFormat,\n lightMetadata: cachedEntry.metadata,\n heavyMetadata: context.includeCollections && cachedCollections ? cachedCollections.collections : undefined,\n bodyLength: cachedEntry.body_length,\n body: context.includeBody ? cachedBody.body : undefined,\n };\n }\n\n const raw = await fs.readFile(filePath, \"utf8\");\n const parsed = parseItemDocument(raw, {\n format: itemFormat,\n schema: context.schema,\n extensionFieldNames: context.extensionFieldNames,\n onWarning: (warning) => appendWarning(context.warnings, warning),\n });\n const split = splitHeavyMetadata(parsed.metadata);\n markDocumentCacheMisses(\n context.state.misses,\n context.includeBody,\n context.includeCollections,\n metadataCached,\n bodyCached,\n collectionsCached,\n );\n return {\n mtimeMs,\n ctimeMs,\n size,\n itemFormat,\n lightMetadata: metadataCached ? cachedEntry.metadata : split.light,\n heavyMetadata: context.includeCollections\n ? collectionsCached\n ? cachedCollections.collections\n : split.heavy\n : undefined,\n bodyLength: metadataCached ? cachedEntry.body_length : parsed.body.length,\n body: context.includeBody ? parsed.body : undefined,\n };\n}\n\nfunction recordCachedDocumentCandidate(\n filePath: string,\n relativePath: string,\n context: DocumentCacheReadContext,\n parts: CachedDocumentReadParts,\n): void {\n context.state.newEntries[relativePath] = {\n mtime_ms: parts.mtimeMs,\n ctime_ms: parts.ctimeMs,\n size: parts.size,\n metadata: parts.lightMetadata,\n body_length: parts.bodyLength,\n };\n if (context.includeBody && parts.body !== undefined) {\n context.state.newBodies[relativePath] = {\n mtime_ms: parts.mtimeMs,\n ctime_ms: parts.ctimeMs,\n size: parts.size,\n body: parts.body,\n };\n }\n if (context.includeCollections && parts.heavyMetadata !== undefined) {\n context.state.newCollections[relativePath] = {\n mtime_ms: parts.mtimeMs,\n ctime_ms: parts.ctimeMs,\n size: parts.size,\n collections: parts.heavyMetadata,\n };\n }\n\n const metadata = context.includeCollections ? mergeHeavyMetadata(parts.lightMetadata, parts.heavyMetadata) : parts.lightMetadata;\n const existing = context.state.documentsById.get(metadata.id);\n const candidate: CachedDocumentCandidate = {\n metadata,\n body: parts.body,\n item_format: parts.itemFormat,\n item_path: filePath,\n };\n if (!existing || shouldReplaceCachedDocumentCandidate(existing.itemFormat, parts.itemFormat, context.preferredFormat)) {\n context.state.documentsById.set(metadata.id, { candidate, itemFormat: parts.itemFormat });\n }\n}\n\nasync function processCachedDocumentFile(\n folder: string,\n filePath: string,\n relativePath: string,\n context: DocumentCacheReadContext,\n): Promise<void> {\n try {\n const parts = await readCachedDocumentParts(filePath, relativePath, context);\n recordCachedDocumentCandidate(filePath, relativePath, context, parts);\n } catch {\n appendWarning(context.warnings, `item_list_item_read_failed:${folder}/${path.basename(filePath)}`);\n }\n}\n\nfunction selectPreviousMetadataEntries(\n existingCache: CacheEnvelope | null,\n contextFingerprint: string,\n): Record<string, CachedEntry> {\n return existingCache && existingCache.context_fingerprint === contextFingerprint ? existingCache.entries : {};\n}\n\nfunction selectPreviousBodyEntries(\n existingBodyCache: BodyCacheEnvelope | null,\n contextFingerprint: string,\n): Record<string, CachedBody> {\n return existingBodyCache && existingBodyCache.context_fingerprint === contextFingerprint ? existingBodyCache.bodies : {};\n}\n\nfunction selectPreviousCollectionEntries(\n existingCollectionsCache: CollectionsCacheEnvelope | null,\n contextFingerprint: string,\n): Record<string, CachedCollections> {\n return existingCollectionsCache && existingCollectionsCache.context_fingerprint === contextFingerprint\n ? existingCollectionsCache.collections\n : {};\n}\n\nfunction createDocumentCacheMutableState(): DocumentCacheMutableState {\n return {\n newEntries: {},\n newBodies: {},\n newCollections: {},\n documentsById: new Map<string, { candidate: CachedDocumentCandidate; itemFormat: ItemFormat }>(),\n misses: {\n metadata: false,\n body: false,\n collections: false,\n },\n };\n}\n\nfunction collectCachedDocumentParseTasks(\n dirResults: Array<{ folder: string; dirPath: string; files: string[] }>,\n context: DocumentCacheReadContext,\n): Array<Promise<void>> {\n const parseTasks: Array<Promise<void>> = [];\n for (const { folder, dirPath, files } of dirResults) {\n for (const file of files) {\n if (!isItemDocumentFile(file)) {\n continue;\n }\n const filePath = path.join(dirPath, file);\n const relativePath = path.relative(context.pmRoot, filePath);\n parseTasks.push(processCachedDocumentFile(folder, filePath, relativePath, context));\n }\n }\n return parseTasks;\n}\n\nasync function persistMetadataCacheIfNeeded(params: {\n pmRoot: string;\n contextFingerprint: string;\n existingCache: CacheEnvelope | null;\n previousEntries: Record<string, CachedEntry>;\n state: DocumentCacheMutableState;\n}): Promise<void> {\n const metadataDirty = params.state.misses.metadata ||\n Object.keys(params.previousEntries).length !== Object.keys(params.state.newEntries).length;\n if (!metadataDirty && params.existingCache !== null && params.existingCache.context_fingerprint === params.contextFingerprint) {\n return;\n }\n await persistCache(getCachePath(params.pmRoot), {\n version: CACHE_VERSION,\n context_fingerprint: params.contextFingerprint,\n entries: params.state.newEntries,\n }).catch(() => {});\n}\n\nasync function persistBodyCacheIfNeeded(params: {\n pmRoot: string;\n contextFingerprint: string;\n existingBodyCache: BodyCacheEnvelope | null;\n previousBodies: Record<string, CachedBody>;\n state: DocumentCacheMutableState;\n}): Promise<void> {\n const bodyDirty = params.state.misses.body ||\n Object.keys(params.previousBodies).length !== Object.keys(params.state.newBodies).length;\n if (\n !bodyDirty &&\n params.existingBodyCache !== null &&\n params.existingBodyCache.context_fingerprint === params.contextFingerprint\n ) {\n return;\n }\n await persistCache(getBodyCachePath(params.pmRoot), {\n version: CACHE_VERSION,\n context_fingerprint: params.contextFingerprint,\n bodies: params.state.newBodies,\n }).catch(() => {});\n}\n\nasync function persistCollectionsCacheIfNeeded(params: {\n pmRoot: string;\n contextFingerprint: string;\n existingCollectionsCache: CollectionsCacheEnvelope | null;\n previousCollections: Record<string, CachedCollections>;\n state: DocumentCacheMutableState;\n}): Promise<void> {\n const collectionsDirty = params.state.misses.collections ||\n Object.keys(params.previousCollections).length !== Object.keys(params.state.newCollections).length;\n if (\n !collectionsDirty &&\n params.existingCollectionsCache !== null &&\n params.existingCollectionsCache.context_fingerprint === params.contextFingerprint\n ) {\n return;\n }\n await persistCache(getCollectionsCachePath(params.pmRoot), {\n version: CACHE_VERSION,\n context_fingerprint: params.contextFingerprint,\n collections: params.state.newCollections,\n }).catch(() => {});\n}\n\nfunction sortedCachedDocumentCandidates(state: DocumentCacheMutableState): CachedDocumentCandidate[] {\n return [...state.documentsById.values()]\n .sort((left, right) => left.candidate.metadata.id.localeCompare(right.candidate.metadata.id))\n .map((entry) => entry.candidate);\n}\n\n/**\n * Documents the list cache options payload exchanged by command, SDK, and package integrations.\n */\nexport interface ListCacheOptions {\n /**\n * When false, item bodies are neither loaded from nor written to the separate\n * body cache. Metadata-only callers (`pm list`, stats, deps, activity, …) skip\n * the large body cache entirely; only body consumers (search/reindex) pay for it.\n */\n includeBody?: boolean;\n /**\n * When false, heavy collection fields (comments/notes/learnings/files/tests/\n * test_runs/docs) are neither loaded from nor written to the separate collections\n * cache, and are absent from the returned metadata. Light-only callers (`pm list`\n * compact, stats, deps, activity, calendar, close) skip the large collections cache\n * entirely. Defaults to true so any caller that does read those fields stays correct.\n */\n includeCollections?: boolean;\n}\n\n/**\n * List all item documents using a persistent on-disk metadata cache.\n *\n * Metadata and bodies are stored in two separate cache files so the hot path\n * (`pm list` and friends, which discard bodies) never loads or rewrites the much\n * larger body payload. Each file is rewritten only when its contents actually\n * change, and per-file onRead hooks are dispatched only when an extension\n * registers one. Only files whose mtime/ctime/size changed since the last run are\n * re-parsed.\n */\nexport async function listAllDocumentCandidatesCached(\n pmRoot: string,\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n warnings: string[] | undefined,\n schema: RuntimeSchemaSettings | undefined,\n options: ListCacheOptions = {},\n): Promise<CachedDocumentCandidate[]> {\n const includeBody = options.includeBody !== false;\n const includeCollections = options.includeCollections !== false;\n const extensionFieldNames = resolveActiveExtensionFieldNames();\n const contextFingerprint = computeContextFingerprint(preferredFormat, typeToFolder, schema, extensionFieldNames);\n\n const existingCache = await loadCache(pmRoot);\n const previousEntries = selectPreviousMetadataEntries(existingCache, contextFingerprint);\n\n const existingBodyCache = includeBody ? await loadBodyCache(pmRoot) : null;\n const previousBodies = selectPreviousBodyEntries(existingBodyCache, contextFingerprint);\n\n const existingCollectionsCache = includeCollections ? await loadCollectionsCache(pmRoot) : null;\n const previousCollections = selectPreviousCollectionEntries(existingCollectionsCache, contextFingerprint);\n\n const entries = Object.entries(typeToFolder) as Array<[ItemType, string]>;\n const dirResults = await Promise.all(entries.map(([, folder]) => readItemDirectoryFiles(pmRoot, folder, warnings)));\n\n const dispatchReadHooks = hasActiveOnReadHooks();\n const state = createDocumentCacheMutableState();\n const context: DocumentCacheReadContext = {\n pmRoot,\n preferredFormat,\n warnings,\n schema,\n extensionFieldNames,\n includeBody,\n includeCollections,\n dispatchReadHooks,\n previousEntries,\n previousBodies,\n previousCollections,\n state,\n };\n\n await Promise.all(collectCachedDocumentParseTasks(dirResults, context));\n\n // Rewrite a cache file only when its contents changed: any re-parsed (missing or\n // stale) entry, or a different set of keys (additions/deletions).\n await persistMetadataCacheIfNeeded({ pmRoot, contextFingerprint, existingCache, previousEntries, state });\n\n if (includeBody) {\n await persistBodyCacheIfNeeded({ pmRoot, contextFingerprint, existingBodyCache, previousBodies, state });\n }\n\n if (includeCollections) {\n await persistCollectionsCacheIfNeeded({ pmRoot, contextFingerprint, existingCollectionsCache, previousCollections, state });\n }\n\n return sortedCachedDocumentCandidates(state);\n}\n\n/**\n * Implements list all documents cached for the public runtime surface of this module.\n */\nexport async function listAllDocumentsCached(\n pmRoot: string,\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n warnings: string[] | undefined,\n schema: RuntimeSchemaSettings | undefined,\n): Promise<ItemDocument[]> {\n const candidates = await listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFolder, warnings, schema, {\n includeBody: false,\n });\n return candidates.map((candidate) => ({\n metadata: candidate.metadata,\n body: candidate.body ?? \"\",\n }));\n}\n\n/**\n * Light variant of {@link listAllDocumentsCached}: returns metadata WITHOUT the heavy\n * collection fields (comments/notes/learnings/files/tests/test_runs/docs), skipping the\n * large collections cache entirely. Only safe for callers that read just the light\n * scalar/small fields (id/title/status/type/priority/parent/tags/dates/dependencies/…).\n */\nexport async function listAllDocumentsCachedLight(\n pmRoot: string,\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n warnings: string[] | undefined,\n schema: RuntimeSchemaSettings | undefined,\n): Promise<ItemDocument[]> {\n const candidates = await listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFolder, warnings, schema, {\n includeBody: false,\n includeCollections: false,\n });\n return candidates.map((candidate) => ({\n metadata: candidate.metadata,\n body: candidate.body ?? \"\",\n }));\n}\n"],"names":[],"mappings":"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","debugId":"33a7cae0-25bf-5973-afc6-7666b14bf957"}
|
|
1
|
+
{"version":3,"file":"front-matter-cache.js","sources":["core/store/front-matter-cache.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module core/store/front-matter-cache\n *\n * Reads and writes tracker storage with format-aware helpers for Front Matter Cache.\n */\nimport fs from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { createHash } from \"node:crypto\";\nimport { getActiveExtensionRegistrations, hasActiveOnReadHooks, runActiveOnReadHooks } from \"../extensions/index.js\";\nimport { collectRegisteredItemFieldNames } from \"../extensions/item-fields.js\";\nimport { parseItemDocument } from \"../item/item-format.js\";\nimport { evictOldestMemoEntries } from \"../shared/memo.js\";\nimport { writeFileAtomic } from \"../fs/fs-utils.js\";\nimport { ITEM_FILE_EXTENSIONS, getItemFormatFromPath } from \"./paths.js\";\nimport type { ItemDocument, ItemFormat, ItemMetadata, ItemType, RuntimeSchemaSettings } from \"../../types/index.js\";\n\nconst CACHE_VERSION = 6;\nconst CACHE_FILENAME = \"metadata-cache.json\";\nconst BODY_CACHE_FILENAME = \"metadata-cache-bodies.json\";\nconst COLLECTIONS_CACHE_FILENAME = \"metadata-cache-collections.json\";\n\n/**\n * Heavy \"collection\" front-matter fields. These arrays dominate the on-disk cache\n * (e.g. a single item's comment thread can be hundreds of KB) yet the hot list path\n * (`pm list`, stats, deps, activity, calendar, close) never reads them. They are\n * stored in a separate collections cache that is parsed only when a caller opts in\n * (`includeCollections`), keeping the always-loaded light cache an order of magnitude\n * smaller and its JSON.parse correspondingly cheaper.\n */\nexport const HEAVY_METADATA_KEYS = [\n \"comments\",\n \"notes\",\n \"learnings\",\n \"files\",\n \"tests\",\n \"test_runs\",\n \"docs\",\n] as const;\n\nfunction resolveActiveExtensionFieldNames(): readonly string[] {\n return collectRegisteredItemFieldNames(getActiveExtensionRegistrations());\n}\n\ninterface StatSignature {\n mtime_ms: number;\n ctime_ms: number;\n size: number;\n}\n\ninterface CachedEntry extends StatSignature {\n metadata: ItemMetadata;\n body_length: number;\n}\n\ninterface CachedBody extends StatSignature {\n body: string;\n}\n\ninterface CachedCollections extends StatSignature {\n collections: Record<string, unknown>;\n}\n\ninterface CacheEnvelope {\n version: number;\n context_fingerprint: string;\n entries: Record<string, CachedEntry>;\n}\n\ninterface BodyCacheEnvelope {\n version: number;\n context_fingerprint: string;\n bodies: Record<string, CachedBody>;\n}\n\ninterface CollectionsCacheEnvelope {\n version: number;\n context_fingerprint: string;\n collections: Record<string, CachedCollections>;\n}\n\n/**\n * Split parsed front-matter into the light scalar/small fields (everything except the\n * heavy collection arrays) and the heavy collection fields. Only keys that are actually\n * present are moved, so an item without comments stays without comments in both tiers.\n */\nfunction splitHeavyMetadata(metadata: ItemMetadata): {\n light: ItemMetadata;\n heavy: Record<string, unknown>;\n} {\n const light = { ...metadata } as Record<string, unknown>;\n const heavy: Record<string, unknown> = {};\n for (const key of HEAVY_METADATA_KEYS) {\n if (key in light) {\n heavy[key] = light[key];\n delete light[key];\n }\n }\n return { light: light as ItemMetadata, heavy };\n}\n\n/**\n * Recombine light metadata with cached heavy collection fields. Key order differs from\n * the on-disk document, but every downstream hash/serialization canonicalizes and\n * sorts keys (`stableStringify`), so the merged record is byte-identical once hashed.\n */\nfunction mergeHeavyMetadata(light: ItemMetadata, heavy: Record<string, unknown> | undefined): ItemMetadata {\n if (!heavy || Object.keys(heavy).length === 0) {\n return light;\n }\n return { ...light, ...heavy } as ItemMetadata;\n}\n\n/**\n * Documents the cached document candidate payload exchanged by command, SDK, and package integrations.\n */\nexport interface CachedDocumentCandidate {\n metadata: ItemMetadata;\n body?: string;\n item_format: ItemFormat;\n item_path: string;\n}\n\nfunction computeContextFingerprint(\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n schema: RuntimeSchemaSettings | undefined,\n extensionFieldNames: readonly string[],\n): string {\n const hash = createHash(\"sha256\");\n hash.update(`format:${preferredFormat ?? \"default\"}`);\n const sortedTypes = Object.entries(typeToFolder)\n .sort(([a], [b]) => a.localeCompare(b))\n .map(([type, folder]) => `${type}=${folder}`)\n .join(\",\");\n hash.update(`|types:${sortedTypes}`);\n if (schema) {\n hash.update(`|schema:${JSON.stringify(schema)}`);\n }\n if (extensionFieldNames.length > 0) {\n hash.update(`|extension_fields:${extensionFieldNames.join(\",\")}`);\n }\n return hash.digest(\"hex\").slice(0, 16);\n}\n\nfunction getCachePath(pmRoot: string): string {\n return path.join(pmRoot, \"runtime\", CACHE_FILENAME);\n}\n\nfunction getBodyCachePath(pmRoot: string): string {\n return path.join(pmRoot, \"runtime\", BODY_CACHE_FILENAME);\n}\n\nfunction getCollectionsCachePath(pmRoot: string): string {\n return path.join(pmRoot, \"runtime\", COLLECTIONS_CACHE_FILENAME);\n}\n\ninterface MemoizedEnvelope {\n signature: StatSignature;\n envelope: CacheEnvelope | BodyCacheEnvelope | CollectionsCacheEnvelope | null;\n}\n\n/**\n * In-process memo of parsed cache envelopes keyed by cache file path and validated\n * against the file's stat signature on every load. Commands that scan the corpus more\n * than once per invocation (`pm next`, `pm context`) and long-lived in-process hosts\n * (the MCP server) would otherwise re-read and re-parse multi-megabyte JSON on every\n * scan. Envelopes handed out from the memo are shared, so they must be treated as\n * read-only — the write path always goes through `mutateItem` on a `structuredClone`d\n * document parsed fresh from the item file, never through listed cache metadata.\n *\n * The cap bounds memory when one long-lived process serves many project roots\n * (3 envelopes per root). Hits re-insert their entry so Map insertion order tracks\n * recency, making the half-eviction drop the least-recently-used roots.\n */\nconst ENVELOPE_MEMO_MAX_ENTRIES = 24;\nconst envelopeMemo = new Map<string, MemoizedEnvelope>();\n\nfunction memoizeEnvelope(cachePath: string, entry: MemoizedEnvelope): void {\n if (envelopeMemo.size >= ENVELOPE_MEMO_MAX_ENTRIES && !envelopeMemo.has(cachePath)) {\n evictOldestMemoEntries(envelopeMemo);\n }\n envelopeMemo.set(cachePath, entry);\n}\n\nasync function loadEnvelopeMemoized<T extends MemoizedEnvelope[\"envelope\"]>(\n cachePath: string,\n parse: (raw: string) => T,\n): Promise<T> {\n let stat;\n try {\n stat = await fs.stat(cachePath);\n } catch {\n envelopeMemo.delete(cachePath);\n return null as T;\n }\n const memoized = envelopeMemo.get(cachePath);\n if (memoized && statMatches(memoized.signature, stat.mtimeMs, stat.ctimeMs, stat.size)) {\n // Re-insert on hit so insertion order tracks recency for the LRU half-eviction.\n envelopeMemo.delete(cachePath);\n envelopeMemo.set(cachePath, memoized);\n return memoized.envelope as T;\n }\n let envelope: T;\n try {\n envelope = parse(await fs.readFile(cachePath, \"utf8\"));\n } catch {\n envelope = null as T;\n }\n memoizeEnvelope(cachePath, {\n signature: { mtime_ms: stat.mtimeMs, ctime_ms: stat.ctimeMs, size: stat.size },\n envelope,\n });\n return envelope;\n}\n\n/**\n * Drop memoized envelopes. Exposed for tests; production invalidation is stat-driven\n * plus the explicit delete in {@link persistCache} after a rewrite.\n */\nexport function clearFrontMatterEnvelopeMemo(): void {\n envelopeMemo.clear();\n}\n\nasync function loadCache(pmRoot: string): Promise<CacheEnvelope | null> {\n return await loadEnvelopeMemoized(getCachePath(pmRoot), (raw) => {\n const parsed = JSON.parse(raw) as CacheEnvelope;\n if (parsed.version !== CACHE_VERSION || typeof parsed.entries !== \"object\" || parsed.entries === null) {\n return null;\n }\n return parsed;\n });\n}\n\nasync function loadBodyCache(pmRoot: string): Promise<BodyCacheEnvelope | null> {\n return await loadEnvelopeMemoized(getBodyCachePath(pmRoot), (raw) => {\n const parsed = JSON.parse(raw) as BodyCacheEnvelope;\n if (parsed.version !== CACHE_VERSION || typeof parsed.bodies !== \"object\" || parsed.bodies === null) {\n return null;\n }\n return parsed;\n });\n}\n\nasync function loadCollectionsCache(pmRoot: string): Promise<CollectionsCacheEnvelope | null> {\n return await loadEnvelopeMemoized(getCollectionsCachePath(pmRoot), (raw) => {\n const parsed = JSON.parse(raw) as CollectionsCacheEnvelope;\n if (parsed.version !== CACHE_VERSION || typeof parsed.collections !== \"object\" || parsed.collections === null) {\n return null;\n }\n return parsed;\n });\n}\n\nasync function persistCache(\n cachePath: string,\n envelope: CacheEnvelope | BodyCacheEnvelope | CollectionsCacheEnvelope,\n): Promise<void> {\n await fs.mkdir(path.dirname(cachePath), { recursive: true });\n await writeFileAtomic(cachePath, JSON.stringify(envelope));\n // Repopulate the memo with the just-written envelope so the next read after a\n // write skips the cold re-read; fall back to plain invalidation when the fresh\n // stat signature cannot be captured.\n try {\n const stat = await fs.stat(cachePath);\n memoizeEnvelope(cachePath, {\n signature: { mtime_ms: stat.mtimeMs, ctime_ms: stat.ctimeMs, size: stat.size },\n envelope,\n });\n } catch {\n envelopeMemo.delete(cachePath);\n }\n}\n\n/**\n * Decide whether a freshly parsed document candidate should replace the one\n * already recorded for the same item id when both an explicit-format file and a\n * fallback-format file exist (e.g. `pm-x.toon` and `pm-x.md`). An explicit\n * `preferredFormat` wins; otherwise `toon` wins over any non-toon format.\n *\n * This is a pure decision so the winner is fully deterministic regardless of the\n * order in which the concurrent per-file reads resolve — the inline call site\n * populates the map as each async read completes, so without a pure rule the\n * branch taken (and thus its coverage) would race. Keep this exported and\n * unit-tested across every format combination.\n */\nexport function shouldReplaceCachedDocumentCandidate(\n existingFormat: ItemFormat,\n candidateFormat: ItemFormat,\n preferredFormat: ItemFormat | undefined,\n): boolean {\n if (preferredFormat) {\n return candidateFormat === preferredFormat && existingFormat !== preferredFormat;\n }\n return candidateFormat === \"toon\" && existingFormat !== \"toon\";\n}\n\n/**\n * Decide whether a scanned candidate should be recorded for its item id. An\n * unseen id is always recorded; duplicate ids delegate to the deterministic\n * cross-format preference rule. Keeping the short-circuit in this pure helper\n * makes both outcomes testable without relying on filesystem enumeration or\n * concurrent read completion order.\n */\nexport function shouldRecordCachedDocumentCandidate(\n existingFormat: ItemFormat | undefined,\n candidateFormat: ItemFormat,\n preferredFormat: ItemFormat | undefined,\n): boolean {\n return existingFormat === undefined ||\n shouldReplaceCachedDocumentCandidate(existingFormat, candidateFormat, preferredFormat);\n}\n\nfunction appendWarning(warnings: string[] | undefined, warning: string): void {\n if (warnings && !warnings.includes(warning)) {\n warnings.push(warning);\n }\n}\n\nfunction statMatches(signature: StatSignature, mtimeMs: number, ctimeMs: number, size: number): boolean {\n return signature.mtime_ms === mtimeMs && signature.ctime_ms === ctimeMs && signature.size === size;\n}\n\ninterface DocumentCacheMissState {\n metadata: boolean;\n body: boolean;\n collections: boolean;\n}\n\ninterface DocumentCacheMutableState {\n newEntries: Record<string, CachedEntry>;\n newBodies: Record<string, CachedBody>;\n newCollections: Record<string, CachedCollections>;\n documentsById: Map<string, { candidate: CachedDocumentCandidate; itemFormat: ItemFormat }>;\n misses: DocumentCacheMissState;\n}\n\ninterface DocumentCacheReadContext {\n pmRoot: string;\n preferredFormat: ItemFormat | undefined;\n warnings: string[] | undefined;\n schema: RuntimeSchemaSettings | undefined;\n extensionFieldNames: readonly string[];\n includeBody: boolean;\n includeCollections: boolean;\n dispatchReadHooks: boolean;\n previousEntries: Record<string, CachedEntry>;\n previousBodies: Record<string, CachedBody>;\n previousCollections: Record<string, CachedCollections>;\n state: DocumentCacheMutableState;\n}\n\ninterface CachedDocumentReadParts {\n mtimeMs: number;\n ctimeMs: number;\n size: number;\n itemFormat: ItemFormat;\n lightMetadata: ItemMetadata;\n heavyMetadata: Record<string, unknown> | undefined;\n bodyLength: number;\n body: string | undefined;\n}\n\nasync function readItemDirectoryFiles(\n pmRoot: string,\n folder: string,\n warnings: string[] | undefined,\n): Promise<{ folder: string; dirPath: string; files: string[] }> {\n const dirPath = path.join(pmRoot, folder);\n try {\n const files = await fs.readdir(dirPath);\n return { folder, dirPath, files };\n } catch (error: unknown) {\n if (typeof error === \"object\" && error !== null && \"code\" in error && (error as { code?: string }).code !== \"ENOENT\") {\n appendWarning(warnings, `item_list_directory_read_failed:${folder}`);\n }\n return { folder, dirPath, files: [] };\n }\n}\n\nfunction isItemDocumentFile(file: string): boolean {\n return ITEM_FILE_EXTENSIONS.some((ext) => file.toLowerCase().endsWith(ext));\n}\n\nfunction markDocumentCacheMisses(\n misses: DocumentCacheMissState,\n includeBody: boolean,\n includeCollections: boolean,\n metadataCached: boolean,\n bodyCached: boolean,\n collectionsCached: boolean,\n): void {\n if (!metadataCached) {\n misses.metadata = true;\n }\n if (includeBody && !bodyCached) {\n misses.body = true;\n }\n if (includeCollections && !collectionsCached) {\n misses.collections = true;\n }\n}\n\nasync function dispatchCachedDocumentReadHooks(\n filePath: string,\n warnings: string[] | undefined,\n dispatchReadHooks: boolean,\n): Promise<void> {\n if (!dispatchReadHooks) {\n return;\n }\n for (const warning of await runActiveOnReadHooks({ path: filePath, scope: \"project\" })) {\n appendWarning(warnings, warning);\n }\n}\n\nfunction selectHeavyMetadata(\n includeCollections: boolean,\n collectionsCached: boolean,\n cachedCollections: CachedCollections | undefined,\n parsedCollections: Record<string, unknown> | undefined,\n): Record<string, unknown> | undefined {\n if (!includeCollections) {\n return undefined;\n }\n return collectionsCached && cachedCollections ? cachedCollections.collections : parsedCollections;\n}\n\nasync function readCachedDocumentParts(\n filePath: string,\n relativePath: string,\n context: DocumentCacheReadContext,\n): Promise<CachedDocumentReadParts> {\n const stat = await fs.stat(filePath);\n const mtimeMs = stat.mtimeMs;\n const ctimeMs = stat.ctimeMs;\n const { size } = stat;\n const itemFormat = getItemFormatFromPath(filePath) as ItemFormat;\n\n await dispatchCachedDocumentReadHooks(filePath, context.warnings, context.dispatchReadHooks);\n\n const cachedEntry = context.previousEntries[relativePath];\n const metadataCached = cachedEntry !== undefined && statMatches(cachedEntry, mtimeMs, ctimeMs, size);\n const cachedBody = context.previousBodies[relativePath];\n const bodyCached = cachedBody !== undefined && statMatches(cachedBody, mtimeMs, ctimeMs, size);\n const cachedCollections = context.previousCollections[relativePath];\n const collectionsCached = cachedCollections !== undefined && statMatches(cachedCollections, mtimeMs, ctimeMs, size);\n const needRead =\n !metadataCached || (context.includeBody && !bodyCached) || (context.includeCollections && !collectionsCached);\n\n if (!needRead) {\n return {\n mtimeMs,\n ctimeMs,\n size,\n itemFormat,\n lightMetadata: cachedEntry.metadata,\n heavyMetadata: selectHeavyMetadata(context.includeCollections, collectionsCached, cachedCollections, undefined),\n bodyLength: cachedEntry.body_length,\n body: context.includeBody ? cachedBody.body : undefined,\n };\n }\n\n const raw = await fs.readFile(filePath, \"utf8\");\n const parsed = parseItemDocument(raw, {\n format: itemFormat,\n schema: context.schema,\n extensionFieldNames: context.extensionFieldNames,\n onWarning: (warning) => appendWarning(context.warnings, warning),\n });\n const split = splitHeavyMetadata(parsed.metadata);\n markDocumentCacheMisses(\n context.state.misses,\n context.includeBody,\n context.includeCollections,\n metadataCached,\n bodyCached,\n collectionsCached,\n );\n return {\n mtimeMs,\n ctimeMs,\n size,\n itemFormat,\n lightMetadata: metadataCached ? cachedEntry.metadata : split.light,\n heavyMetadata: selectHeavyMetadata(context.includeCollections, collectionsCached, cachedCollections, split.heavy),\n bodyLength: metadataCached ? cachedEntry.body_length : parsed.body.length,\n body: context.includeBody ? parsed.body : undefined,\n };\n}\n\nfunction recordCachedDocumentCandidate(\n filePath: string,\n relativePath: string,\n context: DocumentCacheReadContext,\n parts: CachedDocumentReadParts,\n): void {\n context.state.newEntries[relativePath] = {\n mtime_ms: parts.mtimeMs,\n ctime_ms: parts.ctimeMs,\n size: parts.size,\n metadata: parts.lightMetadata,\n body_length: parts.bodyLength,\n };\n if (context.includeBody && parts.body !== undefined) {\n context.state.newBodies[relativePath] = {\n mtime_ms: parts.mtimeMs,\n ctime_ms: parts.ctimeMs,\n size: parts.size,\n body: parts.body,\n };\n }\n if (context.includeCollections && parts.heavyMetadata !== undefined) {\n context.state.newCollections[relativePath] = {\n mtime_ms: parts.mtimeMs,\n ctime_ms: parts.ctimeMs,\n size: parts.size,\n collections: parts.heavyMetadata,\n };\n }\n\n const metadata = context.includeCollections ? mergeHeavyMetadata(parts.lightMetadata, parts.heavyMetadata) : parts.lightMetadata;\n const existing = context.state.documentsById.get(metadata.id);\n const candidate: CachedDocumentCandidate = {\n metadata,\n body: parts.body,\n item_format: parts.itemFormat,\n item_path: filePath,\n };\n if (shouldRecordCachedDocumentCandidate(existing?.itemFormat, parts.itemFormat, context.preferredFormat)) {\n context.state.documentsById.set(metadata.id, { candidate, itemFormat: parts.itemFormat });\n }\n}\n\nasync function processCachedDocumentFile(\n folder: string,\n filePath: string,\n relativePath: string,\n context: DocumentCacheReadContext,\n): Promise<void> {\n try {\n const parts = await readCachedDocumentParts(filePath, relativePath, context);\n recordCachedDocumentCandidate(filePath, relativePath, context, parts);\n } catch {\n appendWarning(context.warnings, `item_list_item_read_failed:${folder}/${path.basename(filePath)}`);\n }\n}\n\nfunction selectPreviousMetadataEntries(\n existingCache: CacheEnvelope | null,\n contextFingerprint: string,\n): Record<string, CachedEntry> {\n return existingCache && existingCache.context_fingerprint === contextFingerprint ? existingCache.entries : {};\n}\n\nfunction selectPreviousBodyEntries(\n existingBodyCache: BodyCacheEnvelope | null,\n contextFingerprint: string,\n): Record<string, CachedBody> {\n return existingBodyCache && existingBodyCache.context_fingerprint === contextFingerprint ? existingBodyCache.bodies : {};\n}\n\nfunction selectPreviousCollectionEntries(\n existingCollectionsCache: CollectionsCacheEnvelope | null,\n contextFingerprint: string,\n): Record<string, CachedCollections> {\n return existingCollectionsCache && existingCollectionsCache.context_fingerprint === contextFingerprint\n ? existingCollectionsCache.collections\n : {};\n}\n\nfunction createDocumentCacheMutableState(): DocumentCacheMutableState {\n return {\n newEntries: {},\n newBodies: {},\n newCollections: {},\n documentsById: new Map<string, { candidate: CachedDocumentCandidate; itemFormat: ItemFormat }>(),\n misses: {\n metadata: false,\n body: false,\n collections: false,\n },\n };\n}\n\nfunction collectCachedDocumentParseTasks(\n dirResults: Array<{ folder: string; dirPath: string; files: string[] }>,\n context: DocumentCacheReadContext,\n): Array<Promise<void>> {\n const parseTasks: Array<Promise<void>> = [];\n for (const { folder, dirPath, files } of dirResults) {\n for (const file of files) {\n if (!isItemDocumentFile(file)) {\n continue;\n }\n const filePath = path.join(dirPath, file);\n const relativePath = path.relative(context.pmRoot, filePath);\n parseTasks.push(processCachedDocumentFile(folder, filePath, relativePath, context));\n }\n }\n return parseTasks;\n}\n\nasync function persistMetadataCacheIfNeeded(params: {\n pmRoot: string;\n contextFingerprint: string;\n existingCache: CacheEnvelope | null;\n previousEntries: Record<string, CachedEntry>;\n state: DocumentCacheMutableState;\n}): Promise<void> {\n const metadataDirty = params.state.misses.metadata ||\n Object.keys(params.previousEntries).length !== Object.keys(params.state.newEntries).length;\n if (!metadataDirty && params.existingCache !== null && params.existingCache.context_fingerprint === params.contextFingerprint) {\n return;\n }\n await persistCache(getCachePath(params.pmRoot), {\n version: CACHE_VERSION,\n context_fingerprint: params.contextFingerprint,\n entries: params.state.newEntries,\n }).catch(() => {});\n}\n\nasync function persistBodyCacheIfNeeded(params: {\n pmRoot: string;\n contextFingerprint: string;\n existingBodyCache: BodyCacheEnvelope | null;\n previousBodies: Record<string, CachedBody>;\n state: DocumentCacheMutableState;\n}): Promise<void> {\n const bodyDirty = params.state.misses.body ||\n Object.keys(params.previousBodies).length !== Object.keys(params.state.newBodies).length;\n if (\n !bodyDirty &&\n params.existingBodyCache !== null &&\n params.existingBodyCache.context_fingerprint === params.contextFingerprint\n ) {\n return;\n }\n await persistCache(getBodyCachePath(params.pmRoot), {\n version: CACHE_VERSION,\n context_fingerprint: params.contextFingerprint,\n bodies: params.state.newBodies,\n }).catch(() => {});\n}\n\nasync function persistCollectionsCacheIfNeeded(params: {\n pmRoot: string;\n contextFingerprint: string;\n existingCollectionsCache: CollectionsCacheEnvelope | null;\n previousCollections: Record<string, CachedCollections>;\n state: DocumentCacheMutableState;\n}): Promise<void> {\n const collectionsDirty = params.state.misses.collections ||\n Object.keys(params.previousCollections).length !== Object.keys(params.state.newCollections).length;\n if (\n !collectionsDirty &&\n params.existingCollectionsCache !== null &&\n params.existingCollectionsCache.context_fingerprint === params.contextFingerprint\n ) {\n return;\n }\n await persistCache(getCollectionsCachePath(params.pmRoot), {\n version: CACHE_VERSION,\n context_fingerprint: params.contextFingerprint,\n collections: params.state.newCollections,\n }).catch(() => {});\n}\n\nfunction sortedCachedDocumentCandidates(state: DocumentCacheMutableState): CachedDocumentCandidate[] {\n return [...state.documentsById.values()]\n .sort((left, right) => left.candidate.metadata.id.localeCompare(right.candidate.metadata.id))\n .map((entry) => entry.candidate);\n}\n\n/**\n * Documents the list cache options payload exchanged by command, SDK, and package integrations.\n */\nexport interface ListCacheOptions {\n /**\n * When false, item bodies are neither loaded from nor written to the separate\n * body cache. Metadata-only callers (`pm list`, stats, deps, activity, …) skip\n * the large body cache entirely; only body consumers (search/reindex) pay for it.\n */\n includeBody?: boolean;\n /**\n * When false, heavy collection fields (comments/notes/learnings/files/tests/\n * test_runs/docs) are neither loaded from nor written to the separate collections\n * cache, and are absent from the returned metadata. Light-only callers (`pm list`\n * compact, stats, deps, activity, calendar, close) skip the large collections cache\n * entirely. Defaults to true so any caller that does read those fields stays correct.\n */\n includeCollections?: boolean;\n}\n\n/**\n * List all item documents using a persistent on-disk metadata cache.\n *\n * Metadata and bodies are stored in two separate cache files so the hot path\n * (`pm list` and friends, which discard bodies) never loads or rewrites the much\n * larger body payload. Each file is rewritten only when its contents actually\n * change, and per-file onRead hooks are dispatched only when an extension\n * registers one. Only files whose mtime/ctime/size changed since the last run are\n * re-parsed.\n */\nexport async function listAllDocumentCandidatesCached(\n pmRoot: string,\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n warnings: string[] | undefined,\n schema: RuntimeSchemaSettings | undefined,\n options: ListCacheOptions = {},\n): Promise<CachedDocumentCandidate[]> {\n const includeBody = options.includeBody !== false;\n const includeCollections = options.includeCollections !== false;\n const extensionFieldNames = resolveActiveExtensionFieldNames();\n const contextFingerprint = computeContextFingerprint(preferredFormat, typeToFolder, schema, extensionFieldNames);\n\n const existingCache = await loadCache(pmRoot);\n const previousEntries = selectPreviousMetadataEntries(existingCache, contextFingerprint);\n\n const existingBodyCache = includeBody ? await loadBodyCache(pmRoot) : null;\n const previousBodies = selectPreviousBodyEntries(existingBodyCache, contextFingerprint);\n\n const existingCollectionsCache = includeCollections ? await loadCollectionsCache(pmRoot) : null;\n const previousCollections = selectPreviousCollectionEntries(existingCollectionsCache, contextFingerprint);\n\n const entries = Object.entries(typeToFolder) as Array<[ItemType, string]>;\n const dirResults = await Promise.all(entries.map(([, folder]) => readItemDirectoryFiles(pmRoot, folder, warnings)));\n\n const dispatchReadHooks = hasActiveOnReadHooks();\n const state = createDocumentCacheMutableState();\n const context: DocumentCacheReadContext = {\n pmRoot,\n preferredFormat,\n warnings,\n schema,\n extensionFieldNames,\n includeBody,\n includeCollections,\n dispatchReadHooks,\n previousEntries,\n previousBodies,\n previousCollections,\n state,\n };\n\n await Promise.all(collectCachedDocumentParseTasks(dirResults, context));\n\n // Rewrite a cache file only when its contents changed: any re-parsed (missing or\n // stale) entry, or a different set of keys (additions/deletions).\n await persistMetadataCacheIfNeeded({ pmRoot, contextFingerprint, existingCache, previousEntries, state });\n\n if (includeBody) {\n await persistBodyCacheIfNeeded({ pmRoot, contextFingerprint, existingBodyCache, previousBodies, state });\n }\n\n if (includeCollections) {\n await persistCollectionsCacheIfNeeded({ pmRoot, contextFingerprint, existingCollectionsCache, previousCollections, state });\n }\n\n return sortedCachedDocumentCandidates(state);\n}\n\n/**\n * Implements list all documents cached for the public runtime surface of this module.\n */\nexport async function listAllDocumentsCached(\n pmRoot: string,\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n warnings: string[] | undefined,\n schema: RuntimeSchemaSettings | undefined,\n): Promise<ItemDocument[]> {\n const candidates = await listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFolder, warnings, schema, {\n includeBody: false,\n });\n return candidates.map((candidate) => ({\n metadata: candidate.metadata,\n body: candidate.body ?? \"\",\n }));\n}\n\n/**\n * Light variant of {@link listAllDocumentsCached}: returns metadata WITHOUT the heavy\n * collection fields (comments/notes/learnings/files/tests/test_runs/docs), skipping the\n * large collections cache entirely. Only safe for callers that read just the light\n * scalar/small fields (id/title/status/type/priority/parent/tags/dates/dependencies/…).\n */\nexport async function listAllDocumentsCachedLight(\n pmRoot: string,\n preferredFormat: ItemFormat | undefined,\n typeToFolder: Record<string, string>,\n warnings: string[] | undefined,\n schema: RuntimeSchemaSettings | undefined,\n): Promise<ItemDocument[]> {\n const candidates = await listAllDocumentCandidatesCached(pmRoot, preferredFormat, typeToFolder, warnings, schema, {\n includeBody: false,\n includeCollections: false,\n });\n return candidates.map((candidate) => ({\n metadata: candidate.metadata,\n body: candidate.body ?? \"\",\n }));\n}\n"],"names":[],"mappings":"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","debugId":"c03cb4c1-8239-58d7-a546-279da4328659"}
|
|
@@ -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]="f56649d3-9020-5f36-a5ba-6ff70734bb3c")}catch(e){}}();
|
|
3
3
|
export const CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS = [
|
|
4
4
|
{
|
|
5
5
|
target: "title",
|
|
@@ -100,7 +100,7 @@ export const CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS = [
|
|
|
100
100
|
target: "blockedBy",
|
|
101
101
|
keys: ["blockedBy", "blocked_by"],
|
|
102
102
|
option: "--blocked-by <value>",
|
|
103
|
-
description: "
|
|
103
|
+
description: "Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge",
|
|
104
104
|
aliasOptions: [{ option: "--blocked_by <value>", description: "Alias for --blocked-by" }],
|
|
105
105
|
},
|
|
106
106
|
{
|
|
@@ -356,7 +356,7 @@ export const UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS = [
|
|
|
356
356
|
target: "blockedBy",
|
|
357
357
|
keys: ["blockedBy", "blocked_by"],
|
|
358
358
|
option: "--blocked-by <value>",
|
|
359
|
-
description: "Set blocked-by item ID or reason",
|
|
359
|
+
description: "Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge",
|
|
360
360
|
aliasOptions: [{ option: "--blocked_by <value>", description: "Alias for --blocked-by" }],
|
|
361
361
|
},
|
|
362
362
|
{
|
|
@@ -533,4 +533,4 @@ export const UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS = UPDATE_COMMANDER_OPT
|
|
|
533
533
|
.filter((entry) => entry.repeatable === true)
|
|
534
534
|
.map((entry) => ({ target: entry.target, keys: entry.keys }));
|
|
535
535
|
//# sourceMappingURL=commander-mutation-options.js.map
|
|
536
|
-
//# debugId=
|
|
536
|
+
//# debugId=f56649d3-9020-5f36-a5ba-6ff70734bb3c
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commander-mutation-options.js","sources":["sdk/cli-contracts/commander-mutation-options.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/cli-contracts/commander-mutation-options\n *\n * Defines SDK command-contract metadata for Commander Mutation Options.\n */\nimport type { CommanderOptionAliasContract, CommanderOptionRegistrationContract } from \"./commander-types.js\";\n\nexport const CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS: CommanderOptionRegistrationContract[] = [\n {\n target: \"title\",\n keys: [\"title\"],\n option: \"--title, -t <value>\",\n description: \"Item title [required] (or pass title as the first positional argument)\",\n },\n { target: \"id\", keys: [\"id\"], option: \"--id <value>\", description: \"Explicit item id (normalized with the configured id_prefix)\" },\n {\n target: \"description\",\n keys: [\"description\"],\n option: \"--description, -d <value>\",\n description: \"Item description (allow empty string)\",\n },\n { target: \"type\", keys: [\"type\"], option: \"--type <value>\", description: \"Item type (built-ins plus any configured custom types)\" },\n { target: \"template\", keys: [\"template\"], option: \"--template <value>\", description: \"Apply named create template defaults before explicit flags\" },\n {\n target: \"createMode\",\n keys: [\"createMode\", \"create_mode\"],\n option: \"--create-mode <value>\",\n description: \"Create required-option policy mode: strict|progressive\",\n aliasOptions: [{ option: \"--create_mode <value>\", description: \"Alias for --create-mode\" }],\n },\n {\n target: \"schedulePreset\",\n keys: [\"schedulePreset\", \"schedule_preset\"],\n option: \"--schedule-preset <value>\",\n description: \"Scheduling preset for Reminder|Meeting|Event: lightweight\",\n aliasOptions: [{ option: \"--schedule_preset <value>\", description: \"Alias for --schedule-preset\" }],\n },\n { target: \"status\", keys: [\"status\"], option: \"--status, -s <value>\", description: \"Item status\" },\n { target: \"priority\", keys: [\"priority\"], option: \"--priority, -p <value>\", description: \"Priority 0..4\" },\n { target: \"tags\", keys: [\"tags\"], option: \"--tags <value>\", description: \"Comma-separated tags\" },\n {\n target: \"addTags\",\n keys: [\"addTags\", \"add_tags\"],\n option: \"--add-tags <value>\",\n description: \"Add tags additively on top of --tags (repeatable; CSV accepted)\",\n repeatable: true,\n aliasOptions: [{ option: \"--add_tags <value>\", description: \"Alias for --add-tags\" }],\n },\n { target: \"body\", keys: [\"body\"], option: \"--body, -b <value>\", description: \"Item markdown body (allow empty string)\" },\n { target: \"deadline\", keys: [\"deadline\"], option: \"--deadline <value>\", description: \"Deadline (ISO/date string or relative +6h/+1d/+2w/+6m)\" },\n {\n target: \"estimatedMinutes\",\n keys: [\"estimate\", \"estimatedMinutes\", \"estimated_minutes\"],\n option: \"--estimate, --estimated-minutes <value>\",\n description: \"Estimated minutes\",\n aliasOptions: [{ option: \"--estimated_minutes <value>\", description: \"Alias for --estimated-minutes\" }],\n },\n {\n target: \"acceptanceCriteria\",\n keys: [\"acceptanceCriteria\", \"acceptance_criteria\", \"ac\"],\n option: \"--acceptance-criteria <value>\",\n description: \"Acceptance criteria (allow empty string)\",\n aliasOptions: [\n { option: \"--acceptance_criteria <value>\", description: \"Alias for --acceptance-criteria\" },\n { option: \"--ac <value>\", description: \"Alias for --acceptance-criteria\" },\n ],\n },\n {\n target: \"definitionOfReady\",\n keys: [\"definitionOfReady\", \"definition_of_ready\"],\n option: \"--definition-of-ready <value>\",\n description: \"Definition of ready (allow empty string)\",\n aliasOptions: [{ option: \"--definition_of_ready <value>\", description: \"Alias for --definition-of-ready\" }],\n },\n { target: \"order\", keys: [\"order\"], option: \"--order <value>\", description: \"Planning order/rank integer\" },\n { target: \"rank\", keys: [\"rank\"], option: \"--rank <value>\", description: \"Alias for --order\" },\n { target: \"goal\", keys: [\"goal\"], option: \"--goal <value>\", description: \"Goal identifier\" },\n { target: \"objective\", keys: [\"objective\"], option: \"--objective <value>\", description: \"Objective identifier\" },\n { target: \"value\", keys: [\"value\"], option: \"--value <value>\", description: \"Business value summary\" },\n { target: \"impact\", keys: [\"impact\"], option: \"--impact <value>\", description: \"Business impact summary\" },\n { target: \"outcome\", keys: [\"outcome\"], option: \"--outcome <value>\", description: \"Expected outcome summary\" },\n {\n target: \"whyNow\",\n keys: [\"whyNow\", \"why_now\"],\n option: \"--why-now <value>\",\n description: \"Why-now rationale\",\n aliasOptions: [{ option: \"--why_now <value>\", description: \"Alias for --why-now\" }],\n },\n { target: \"author\", keys: [\"author\"], option: \"--author <value>\", description: \"Mutation author\" },\n { target: \"message\", keys: [\"message\"], option: \"--message <value>\", description: \"History message (allow empty string)\" },\n { target: \"assignee\", keys: [\"assignee\"], option: \"--assignee <value>\", description: \"Item assignee\" },\n { target: \"parent\", keys: [\"parent\"], option: \"--parent <value>\", description: \"Parent item ID\" },\n { target: \"allowMissingParent\", keys: [\"allowMissingParent\", \"allow_missing_parent\"], option: \"--allow-missing-parent\", description: \"Allow creating with an unresolved parent reference and emit a validation warning\" },\n { target: \"reviewer\", keys: [\"reviewer\"], option: \"--reviewer <value>\", description: \"Reviewer\" },\n { target: \"risk\", keys: [\"risk\"], option: \"--risk <value>\", description: \"Risk level: low|med|medium|high|critical (med persists as medium)\" },\n {\n target: \"confidence\",\n keys: [\"confidence\"],\n option: \"--confidence <value>\",\n description: \"Confidence level: 0..100|low|med|medium|high (med persists as medium)\",\n },\n { target: \"sprint\", keys: [\"sprint\"], option: \"--sprint <value>\", description: \"Sprint identifier\" },\n { target: \"release\", keys: [\"release\"], option: \"--release <value>\", description: \"Release identifier\" },\n {\n target: \"blockedBy\",\n keys: [\"blockedBy\", \"blocked_by\"],\n option: \"--blocked-by <value>\",\n description: \"Blocked-by item ID or reason\",\n aliasOptions: [{ option: \"--blocked_by <value>\", description: \"Alias for --blocked-by\" }],\n },\n {\n target: \"blockedReason\",\n keys: [\"blockedReason\", \"blocked_reason\"],\n option: \"--blocked-reason <value>\",\n description: \"Blocked reason\",\n aliasOptions: [{ option: \"--blocked_reason <value>\", description: \"Alias for --blocked-reason\" }],\n },\n {\n target: \"unblockNote\",\n keys: [\"unblockNote\", \"unblock_note\"],\n option: \"--unblock-note <value>\",\n description: \"Unblock rationale note\",\n aliasOptions: [{ option: \"--unblock_note <value>\", description: \"Alias for --unblock-note\" }],\n },\n { target: \"reporter\", keys: [\"reporter\"], option: \"--reporter <value>\", description: \"Issue reporter\" },\n {\n target: \"severity\",\n keys: [\"severity\"],\n option: \"--severity <value>\",\n description: \"Issue severity: low|med|medium|high|critical (med persists as medium)\",\n },\n { target: \"environment\", keys: [\"environment\"], option: \"--environment <value>\", description: \"Issue environment context\" },\n {\n target: \"reproSteps\",\n keys: [\"reproSteps\", \"repro_steps\"],\n option: \"--repro-steps <value>\",\n description: \"Issue reproduction steps\",\n aliasOptions: [{ option: \"--repro_steps <value>\", description: \"Alias for --repro-steps\" }],\n },\n { target: \"resolution\", keys: [\"resolution\"], option: \"--resolution <value>\", description: \"Issue resolution summary\" },\n {\n target: \"expectedResult\",\n keys: [\"expectedResult\", \"expected_result\", \"expected\"],\n option: \"--expected-result <value>\",\n description: \"Issue expected behavior\",\n aliasOptions: [\n { option: \"--expected_result <value>\", description: \"Alias for --expected-result\" },\n { option: \"--expected <value>\", description: \"Short alias for --expected-result\" },\n ],\n },\n {\n target: \"actualResult\",\n keys: [\"actualResult\", \"actual_result\", \"actual\"],\n option: \"--actual-result <value>\",\n description: \"Issue observed behavior\",\n aliasOptions: [\n { option: \"--actual_result <value>\", description: \"Alias for --actual-result\" },\n { option: \"--actual <value>\", description: \"Short alias for --actual-result\" },\n ],\n },\n {\n target: \"affectedVersion\",\n keys: [\"affectedVersion\", \"affected_version\"],\n option: \"--affected-version <value>\",\n description: \"Affected version identifier\",\n aliasOptions: [{ option: \"--affected_version <value>\", description: \"Alias for --affected-version\" }],\n },\n {\n target: \"fixedVersion\",\n keys: [\"fixedVersion\", \"fixed_version\"],\n option: \"--fixed-version <value>\",\n description: \"Fixed version identifier\",\n aliasOptions: [{ option: \"--fixed_version <value>\", description: \"Alias for --fixed-version\" }],\n },\n { target: \"component\", keys: [\"component\"], option: \"--component <value>\", description: \"Issue component ownership\" },\n { target: \"regression\", keys: [\"regression\"], option: \"--regression <value>\", description: \"Regression marker: true|false|1|0\" },\n {\n target: \"customerImpact\",\n keys: [\"customerImpact\", \"customer_impact\"],\n option: \"--customer-impact <value>\",\n description: \"Customer impact summary\",\n aliasOptions: [{ option: \"--customer_impact <value>\", description: \"Alias for --customer-impact\" }],\n },\n {\n target: \"dep\",\n keys: [\"dep\"],\n option: \"--dep <value>\",\n description: \"Seed dependency entry (key=value CSV, markdown key:value lines, or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"typeOption\",\n keys: [\"typeOption\", \"type_option\"],\n option: \"--type-option <value>\",\n description: \"Type option key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)\",\n repeatable: true,\n aliasOptions: [{ option: \"--type_option <value>\", description: \"Alias for --type-option\" }],\n },\n {\n target: \"field\",\n keys: [\"field\"],\n option: \"--field <name=value>\",\n description: \"Set a field declared by an active extension registerItemFields registration (repeatable)\",\n repeatable: true,\n },\n {\n target: \"unset\",\n keys: [\"unset\"],\n option: \"--unset <field>\",\n description: \"Clear scalar metadata field by name (repeatable)\",\n repeatable: true,\n },\n {\n target: \"reminder\",\n keys: [\"reminder\"],\n option: \"--reminder <value>\",\n description: \"Seed reminder entry at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"event\",\n keys: [\"event\"],\n option: \"--event <value>\",\n description:\n \"Seed event entry start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"comment\",\n keys: [\"comment\"],\n option: \"--comment <value>\",\n description: \"Seed comment entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"note\",\n keys: [\"note\"],\n option: \"--note <value>\",\n description: \"Seed note entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"learning\",\n keys: [\"learning\"],\n option: \"--learning <value>\",\n description: \"Seed learning entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"file\",\n keys: [\"file\"],\n option: \"--file <value>\",\n description: \"Seed linked file entry (CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"test\",\n keys: [\"test\"],\n option: \"--test <value>\",\n description: \"Seed linked test entry (CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"doc\",\n keys: [\"doc\"],\n option: \"--doc <value>\",\n description: \"Seed linked doc entry (CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n];\n\nexport const CREATE_COMMANDER_STRING_OPTION_CONTRACTS: CommanderOptionAliasContract[] = CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable !== true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n\nexport const CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS: CommanderOptionAliasContract[] =\n CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable === true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n\nexport const UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS: CommanderOptionRegistrationContract[] = [\n { target: \"title\", keys: [\"title\"], option: \"--title, -t <value>\", description: \"Set title\" },\n { target: \"description\", keys: [\"description\"], option: \"--description, -d <value>\", description: \"Set description\" },\n { target: \"body\", keys: [\"body\"], option: \"--body, -b <value>\", description: \"Set body (allow empty string)\" },\n { target: \"status\", keys: [\"status\"], option: \"--status, -s <value>\", description: \"Set status (use close command for closed)\" },\n {\n target: \"closeReason\",\n keys: [\"closeReason\", \"close_reason\"],\n option: \"--close-reason <value>\",\n description: \"Set close reason\",\n aliasOptions: [{ option: \"--close_reason <value>\", description: \"Alias for --close-reason\" }],\n },\n { target: \"priority\", keys: [\"priority\"], option: \"--priority, -p <value>\", description: \"Set priority\" },\n { target: \"type\", keys: [\"type\"], option: \"--type <value>\", description: \"Set type\" },\n { target: \"tags\", keys: [\"tags\"], option: \"--tags <value>\", description: \"Set comma-separated tags (replaces existing). Use --add-tags / --remove-tags to mutate additively.\" },\n {\n target: \"addTags\",\n keys: [\"addTags\", \"add_tags\"],\n option: \"--add-tags <value>\",\n description: \"Add tags to the existing list without replacing it (repeatable; CSV accepted)\",\n repeatable: true,\n aliasOptions: [{ option: \"--add_tags <value>\", description: \"Alias for --add-tags\" }],\n },\n {\n target: \"removeTags\",\n keys: [\"removeTags\", \"remove_tags\"],\n option: \"--remove-tags <value>\",\n description: \"Remove tags from the existing list (repeatable; CSV accepted)\",\n repeatable: true,\n aliasOptions: [{ option: \"--remove_tags <value>\", description: \"Alias for --remove-tags\" }],\n },\n { target: \"deadline\", keys: [\"deadline\"], option: \"--deadline <value>\", description: \"Set deadline (ISO/date string or relative)\" },\n {\n target: \"estimatedMinutes\",\n keys: [\"estimate\", \"estimatedMinutes\", \"estimated_minutes\"],\n option: \"--estimate, --estimated-minutes <value>\",\n description: \"Set estimated minutes\",\n aliasOptions: [{ option: \"--estimated_minutes <value>\", description: \"Alias for --estimated-minutes\" }],\n },\n {\n target: \"acceptanceCriteria\",\n keys: [\"acceptanceCriteria\", \"acceptance_criteria\", \"ac\"],\n option: \"--acceptance-criteria <value>\",\n description: \"Set acceptance criteria\",\n aliasOptions: [\n { option: \"--acceptance_criteria <value>\", description: \"Alias for --acceptance-criteria\" },\n { option: \"--ac <value>\", description: \"Alias for --acceptance-criteria\" },\n ],\n },\n {\n target: \"definitionOfReady\",\n keys: [\"definitionOfReady\", \"definition_of_ready\"],\n option: \"--definition-of-ready <value>\",\n description: \"Set definition of ready\",\n aliasOptions: [{ option: \"--definition_of_ready <value>\", description: \"Alias for --definition-of-ready\" }],\n },\n { target: \"order\", keys: [\"order\"], option: \"--order <value>\", description: \"Set planning order/rank integer\" },\n { target: \"rank\", keys: [\"rank\"], option: \"--rank <value>\", description: \"Alias for --order\" },\n { target: \"goal\", keys: [\"goal\"], option: \"--goal <value>\", description: \"Set goal identifier\" },\n { target: \"objective\", keys: [\"objective\"], option: \"--objective <value>\", description: \"Set objective identifier\" },\n { target: \"value\", keys: [\"value\"], option: \"--value <value>\", description: \"Set business value summary\" },\n { target: \"impact\", keys: [\"impact\"], option: \"--impact <value>\", description: \"Set business impact summary\" },\n { target: \"outcome\", keys: [\"outcome\"], option: \"--outcome <value>\", description: \"Set expected outcome summary\" },\n {\n target: \"whyNow\",\n keys: [\"whyNow\", \"why_now\"],\n option: \"--why-now <value>\",\n description: \"Set why-now rationale\",\n aliasOptions: [{ option: \"--why_now <value>\", description: \"Alias for --why-now\" }],\n },\n { target: \"author\", keys: [\"author\"], option: \"--author <value>\", description: \"Mutation author\" },\n { target: \"message\", keys: [\"message\"], option: \"--message <value>\", description: \"Mutation message\" },\n { target: \"assignee\", keys: [\"assignee\"], option: \"--assignee <value>\", description: \"Set assignee\" },\n { target: \"parent\", keys: [\"parent\"], option: \"--parent <value>\", description: \"Set parent item ID\" },\n { target: \"reviewer\", keys: [\"reviewer\"], option: \"--reviewer <value>\", description: \"Set reviewer\" },\n { target: \"risk\", keys: [\"risk\"], option: \"--risk <value>\", description: \"Set risk level: low|med|medium|high|critical (med persists as medium)\" },\n {\n target: \"confidence\",\n keys: [\"confidence\"],\n option: \"--confidence <value>\",\n description: \"Set confidence level: 0..100|low|med|medium|high (med persists as medium)\",\n },\n { target: \"sprint\", keys: [\"sprint\"], option: \"--sprint <value>\", description: \"Set sprint identifier\" },\n { target: \"release\", keys: [\"release\"], option: \"--release <value>\", description: \"Set release identifier\" },\n {\n target: \"blockedBy\",\n keys: [\"blockedBy\", \"blocked_by\"],\n option: \"--blocked-by <value>\",\n description: \"Set blocked-by item ID or reason\",\n aliasOptions: [{ option: \"--blocked_by <value>\", description: \"Alias for --blocked-by\" }],\n },\n {\n target: \"blockedReason\",\n keys: [\"blockedReason\", \"blocked_reason\"],\n option: \"--blocked-reason <value>\",\n description: \"Set blocked reason\",\n aliasOptions: [{ option: \"--blocked_reason <value>\", description: \"Alias for --blocked-reason\" }],\n },\n {\n target: \"unblockNote\",\n keys: [\"unblockNote\", \"unblock_note\"],\n option: \"--unblock-note <value>\",\n description: \"Set unblock rationale note\",\n aliasOptions: [{ option: \"--unblock_note <value>\", description: \"Alias for --unblock-note\" }],\n },\n { target: \"reporter\", keys: [\"reporter\"], option: \"--reporter <value>\", description: \"Set issue reporter\" },\n {\n target: \"severity\",\n keys: [\"severity\"],\n option: \"--severity <value>\",\n description: \"Set issue severity: low|med|medium|high|critical (med persists as medium)\",\n },\n { target: \"environment\", keys: [\"environment\"], option: \"--environment <value>\", description: \"Set issue environment context\" },\n {\n target: \"reproSteps\",\n keys: [\"reproSteps\", \"repro_steps\"],\n option: \"--repro-steps <value>\",\n description: \"Set issue reproduction steps\",\n aliasOptions: [{ option: \"--repro_steps <value>\", description: \"Alias for --repro-steps\" }],\n },\n { target: \"resolution\", keys: [\"resolution\"], option: \"--resolution <value>\", description: \"Set issue resolution summary\" },\n {\n target: \"expectedResult\",\n keys: [\"expectedResult\", \"expected_result\", \"expected\"],\n option: \"--expected-result <value>\",\n description: \"Set issue expected behavior\",\n aliasOptions: [\n { option: \"--expected_result <value>\", description: \"Alias for --expected-result\" },\n { option: \"--expected <value>\", description: \"Short alias for --expected-result\" },\n ],\n },\n {\n target: \"actualResult\",\n keys: [\"actualResult\", \"actual_result\", \"actual\"],\n option: \"--actual-result <value>\",\n description: \"Set issue observed behavior\",\n aliasOptions: [\n { option: \"--actual_result <value>\", description: \"Alias for --actual-result\" },\n { option: \"--actual <value>\", description: \"Short alias for --actual-result\" },\n ],\n },\n {\n target: \"affectedVersion\",\n keys: [\"affectedVersion\", \"affected_version\"],\n option: \"--affected-version <value>\",\n description: \"Set affected version identifier\",\n aliasOptions: [{ option: \"--affected_version <value>\", description: \"Alias for --affected-version\" }],\n },\n {\n target: \"fixedVersion\",\n keys: [\"fixedVersion\", \"fixed_version\"],\n option: \"--fixed-version <value>\",\n description: \"Set fixed version identifier\",\n aliasOptions: [{ option: \"--fixed_version <value>\", description: \"Alias for --fixed-version\" }],\n },\n { target: \"component\", keys: [\"component\"], option: \"--component <value>\", description: \"Set issue component ownership\" },\n { target: \"regression\", keys: [\"regression\"], option: \"--regression <value>\", description: \"Set regression marker: true|false|1|0\" },\n {\n target: \"customerImpact\",\n keys: [\"customerImpact\", \"customer_impact\"],\n option: \"--customer-impact <value>\",\n description: \"Set customer impact summary\",\n aliasOptions: [{ option: \"--customer_impact <value>\", description: \"Alias for --customer-impact\" }],\n },\n {\n target: \"dep\",\n keys: [\"dep\"],\n option: \"--dep <value>\",\n description: \"Add dependency entries id=<id>,kind=<value>,author=<value>,created_at=<iso|now>,source_kind=<value> (repeatable)\",\n repeatable: true,\n },\n {\n target: \"depRemove\",\n keys: [\"depRemove\", \"dep_remove\"],\n option: \"--dep-remove <value>\",\n description: \"Remove dependencies by id or id=<id>,kind=<value>,source_kind=<value> selectors (repeatable)\",\n repeatable: true,\n aliasOptions: [{ option: \"--dep_remove <value>\", description: \"Alias for --dep-remove\" }],\n },\n {\n target: \"comment\",\n keys: [\"comment\"],\n option: \"--comment <value>\",\n description: \"Append comment seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"note\",\n keys: [\"note\"],\n option: \"--note <value>\",\n description: \"Append note seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"learning\",\n keys: [\"learning\"],\n option: \"--learning <value>\",\n description: \"Append learning seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"file\",\n keys: [\"file\"],\n option: \"--file <value>\",\n description: \"Append linked file path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"test\",\n keys: [\"test\"],\n option: \"--test <value>\",\n description: \"Append linked test command=<value>,path=<value>,scope=<project|global>,timeout_seconds=<n>,pm_context_mode=<schema|tracker|auto> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"doc\",\n keys: [\"doc\"],\n option: \"--doc <value>\",\n description: \"Append linked doc path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"reminder\",\n keys: [\"reminder\"],\n option: \"--reminder <value>\",\n description: \"Set reminders at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"event\",\n keys: [\"event\"],\n option: \"--event <value>\",\n description:\n \"Set events start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"typeOption\",\n keys: [\"typeOption\", \"type_option\"],\n option: \"--type-option <value>\",\n description: \"Set type options key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)\",\n repeatable: true,\n aliasOptions: [{ option: \"--type_option <value>\", description: \"Alias for --type-option\" }],\n },\n {\n target: \"field\",\n keys: [\"field\"],\n option: \"--field <name=value>\",\n description: \"Set a field declared by an active extension registerItemFields registration (repeatable)\",\n repeatable: true,\n },\n {\n target: \"unset\",\n keys: [\"unset\"],\n option: \"--unset <field>\",\n description: \"Clear scalar metadata field by name (repeatable)\",\n repeatable: true,\n },\n];\n\nexport const UPDATE_COMMANDER_STRING_OPTION_CONTRACTS: CommanderOptionAliasContract[] = UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable !== true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n\nexport const UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS: CommanderOptionAliasContract[] =\n UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable === true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n"],"names":[],"mappings":"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","debugId":"767461eb-c0bf-5d67-83c1-50f5cb1dcfc1"}
|
|
1
|
+
{"version":3,"file":"commander-mutation-options.js","sources":["sdk/cli-contracts/commander-mutation-options.ts"],"sourceRoot":"/","sourcesContent":["/**\n * @module sdk/cli-contracts/commander-mutation-options\n *\n * Defines SDK command-contract metadata for Commander Mutation Options.\n */\nimport type { CommanderOptionAliasContract, CommanderOptionRegistrationContract } from \"./commander-types.js\";\n\nexport const CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS: CommanderOptionRegistrationContract[] = [\n {\n target: \"title\",\n keys: [\"title\"],\n option: \"--title, -t <value>\",\n description: \"Item title [required] (or pass title as the first positional argument)\",\n },\n { target: \"id\", keys: [\"id\"], option: \"--id <value>\", description: \"Explicit item id (normalized with the configured id_prefix)\" },\n {\n target: \"description\",\n keys: [\"description\"],\n option: \"--description, -d <value>\",\n description: \"Item description (allow empty string)\",\n },\n { target: \"type\", keys: [\"type\"], option: \"--type <value>\", description: \"Item type (built-ins plus any configured custom types)\" },\n { target: \"template\", keys: [\"template\"], option: \"--template <value>\", description: \"Apply named create template defaults before explicit flags\" },\n {\n target: \"createMode\",\n keys: [\"createMode\", \"create_mode\"],\n option: \"--create-mode <value>\",\n description: \"Create required-option policy mode: strict|progressive\",\n aliasOptions: [{ option: \"--create_mode <value>\", description: \"Alias for --create-mode\" }],\n },\n {\n target: \"schedulePreset\",\n keys: [\"schedulePreset\", \"schedule_preset\"],\n option: \"--schedule-preset <value>\",\n description: \"Scheduling preset for Reminder|Meeting|Event: lightweight\",\n aliasOptions: [{ option: \"--schedule_preset <value>\", description: \"Alias for --schedule-preset\" }],\n },\n { target: \"status\", keys: [\"status\"], option: \"--status, -s <value>\", description: \"Item status\" },\n { target: \"priority\", keys: [\"priority\"], option: \"--priority, -p <value>\", description: \"Priority 0..4\" },\n { target: \"tags\", keys: [\"tags\"], option: \"--tags <value>\", description: \"Comma-separated tags\" },\n {\n target: \"addTags\",\n keys: [\"addTags\", \"add_tags\"],\n option: \"--add-tags <value>\",\n description: \"Add tags additively on top of --tags (repeatable; CSV accepted)\",\n repeatable: true,\n aliasOptions: [{ option: \"--add_tags <value>\", description: \"Alias for --add-tags\" }],\n },\n { target: \"body\", keys: [\"body\"], option: \"--body, -b <value>\", description: \"Item markdown body (allow empty string)\" },\n { target: \"deadline\", keys: [\"deadline\"], option: \"--deadline <value>\", description: \"Deadline (ISO/date string or relative +6h/+1d/+2w/+6m)\" },\n {\n target: \"estimatedMinutes\",\n keys: [\"estimate\", \"estimatedMinutes\", \"estimated_minutes\"],\n option: \"--estimate, --estimated-minutes <value>\",\n description: \"Estimated minutes\",\n aliasOptions: [{ option: \"--estimated_minutes <value>\", description: \"Alias for --estimated-minutes\" }],\n },\n {\n target: \"acceptanceCriteria\",\n keys: [\"acceptanceCriteria\", \"acceptance_criteria\", \"ac\"],\n option: \"--acceptance-criteria <value>\",\n description: \"Acceptance criteria (allow empty string)\",\n aliasOptions: [\n { option: \"--acceptance_criteria <value>\", description: \"Alias for --acceptance-criteria\" },\n { option: \"--ac <value>\", description: \"Alias for --acceptance-criteria\" },\n ],\n },\n {\n target: \"definitionOfReady\",\n keys: [\"definitionOfReady\", \"definition_of_ready\"],\n option: \"--definition-of-ready <value>\",\n description: \"Definition of ready (allow empty string)\",\n aliasOptions: [{ option: \"--definition_of_ready <value>\", description: \"Alias for --definition-of-ready\" }],\n },\n { target: \"order\", keys: [\"order\"], option: \"--order <value>\", description: \"Planning order/rank integer\" },\n { target: \"rank\", keys: [\"rank\"], option: \"--rank <value>\", description: \"Alias for --order\" },\n { target: \"goal\", keys: [\"goal\"], option: \"--goal <value>\", description: \"Goal identifier\" },\n { target: \"objective\", keys: [\"objective\"], option: \"--objective <value>\", description: \"Objective identifier\" },\n { target: \"value\", keys: [\"value\"], option: \"--value <value>\", description: \"Business value summary\" },\n { target: \"impact\", keys: [\"impact\"], option: \"--impact <value>\", description: \"Business impact summary\" },\n { target: \"outcome\", keys: [\"outcome\"], option: \"--outcome <value>\", description: \"Expected outcome summary\" },\n {\n target: \"whyNow\",\n keys: [\"whyNow\", \"why_now\"],\n option: \"--why-now <value>\",\n description: \"Why-now rationale\",\n aliasOptions: [{ option: \"--why_now <value>\", description: \"Alias for --why-now\" }],\n },\n { target: \"author\", keys: [\"author\"], option: \"--author <value>\", description: \"Mutation author\" },\n { target: \"message\", keys: [\"message\"], option: \"--message <value>\", description: \"History message (allow empty string)\" },\n { target: \"assignee\", keys: [\"assignee\"], option: \"--assignee <value>\", description: \"Item assignee\" },\n { target: \"parent\", keys: [\"parent\"], option: \"--parent <value>\", description: \"Parent item ID\" },\n { target: \"allowMissingParent\", keys: [\"allowMissingParent\", \"allow_missing_parent\"], option: \"--allow-missing-parent\", description: \"Allow creating with an unresolved parent reference and emit a validation warning\" },\n { target: \"reviewer\", keys: [\"reviewer\"], option: \"--reviewer <value>\", description: \"Reviewer\" },\n { target: \"risk\", keys: [\"risk\"], option: \"--risk <value>\", description: \"Risk level: low|med|medium|high|critical (med persists as medium)\" },\n {\n target: \"confidence\",\n keys: [\"confidence\"],\n option: \"--confidence <value>\",\n description: \"Confidence level: 0..100|low|med|medium|high (med persists as medium)\",\n },\n { target: \"sprint\", keys: [\"sprint\"], option: \"--sprint <value>\", description: \"Sprint identifier\" },\n { target: \"release\", keys: [\"release\"], option: \"--release <value>\", description: \"Release identifier\" },\n {\n target: \"blockedBy\",\n keys: [\"blockedBy\", \"blocked_by\"],\n option: \"--blocked-by <value>\",\n description: \"Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge\",\n aliasOptions: [{ option: \"--blocked_by <value>\", description: \"Alias for --blocked-by\" }],\n },\n {\n target: \"blockedReason\",\n keys: [\"blockedReason\", \"blocked_reason\"],\n option: \"--blocked-reason <value>\",\n description: \"Blocked reason\",\n aliasOptions: [{ option: \"--blocked_reason <value>\", description: \"Alias for --blocked-reason\" }],\n },\n {\n target: \"unblockNote\",\n keys: [\"unblockNote\", \"unblock_note\"],\n option: \"--unblock-note <value>\",\n description: \"Unblock rationale note\",\n aliasOptions: [{ option: \"--unblock_note <value>\", description: \"Alias for --unblock-note\" }],\n },\n { target: \"reporter\", keys: [\"reporter\"], option: \"--reporter <value>\", description: \"Issue reporter\" },\n {\n target: \"severity\",\n keys: [\"severity\"],\n option: \"--severity <value>\",\n description: \"Issue severity: low|med|medium|high|critical (med persists as medium)\",\n },\n { target: \"environment\", keys: [\"environment\"], option: \"--environment <value>\", description: \"Issue environment context\" },\n {\n target: \"reproSteps\",\n keys: [\"reproSteps\", \"repro_steps\"],\n option: \"--repro-steps <value>\",\n description: \"Issue reproduction steps\",\n aliasOptions: [{ option: \"--repro_steps <value>\", description: \"Alias for --repro-steps\" }],\n },\n { target: \"resolution\", keys: [\"resolution\"], option: \"--resolution <value>\", description: \"Issue resolution summary\" },\n {\n target: \"expectedResult\",\n keys: [\"expectedResult\", \"expected_result\", \"expected\"],\n option: \"--expected-result <value>\",\n description: \"Issue expected behavior\",\n aliasOptions: [\n { option: \"--expected_result <value>\", description: \"Alias for --expected-result\" },\n { option: \"--expected <value>\", description: \"Short alias for --expected-result\" },\n ],\n },\n {\n target: \"actualResult\",\n keys: [\"actualResult\", \"actual_result\", \"actual\"],\n option: \"--actual-result <value>\",\n description: \"Issue observed behavior\",\n aliasOptions: [\n { option: \"--actual_result <value>\", description: \"Alias for --actual-result\" },\n { option: \"--actual <value>\", description: \"Short alias for --actual-result\" },\n ],\n },\n {\n target: \"affectedVersion\",\n keys: [\"affectedVersion\", \"affected_version\"],\n option: \"--affected-version <value>\",\n description: \"Affected version identifier\",\n aliasOptions: [{ option: \"--affected_version <value>\", description: \"Alias for --affected-version\" }],\n },\n {\n target: \"fixedVersion\",\n keys: [\"fixedVersion\", \"fixed_version\"],\n option: \"--fixed-version <value>\",\n description: \"Fixed version identifier\",\n aliasOptions: [{ option: \"--fixed_version <value>\", description: \"Alias for --fixed-version\" }],\n },\n { target: \"component\", keys: [\"component\"], option: \"--component <value>\", description: \"Issue component ownership\" },\n { target: \"regression\", keys: [\"regression\"], option: \"--regression <value>\", description: \"Regression marker: true|false|1|0\" },\n {\n target: \"customerImpact\",\n keys: [\"customerImpact\", \"customer_impact\"],\n option: \"--customer-impact <value>\",\n description: \"Customer impact summary\",\n aliasOptions: [{ option: \"--customer_impact <value>\", description: \"Alias for --customer-impact\" }],\n },\n {\n target: \"dep\",\n keys: [\"dep\"],\n option: \"--dep <value>\",\n description: \"Seed dependency entry (key=value CSV, markdown key:value lines, or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"typeOption\",\n keys: [\"typeOption\", \"type_option\"],\n option: \"--type-option <value>\",\n description: \"Type option key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)\",\n repeatable: true,\n aliasOptions: [{ option: \"--type_option <value>\", description: \"Alias for --type-option\" }],\n },\n {\n target: \"field\",\n keys: [\"field\"],\n option: \"--field <name=value>\",\n description: \"Set a field declared by an active extension registerItemFields registration (repeatable)\",\n repeatable: true,\n },\n {\n target: \"unset\",\n keys: [\"unset\"],\n option: \"--unset <field>\",\n description: \"Clear scalar metadata field by name (repeatable)\",\n repeatable: true,\n },\n {\n target: \"reminder\",\n keys: [\"reminder\"],\n option: \"--reminder <value>\",\n description: \"Seed reminder entry at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"event\",\n keys: [\"event\"],\n option: \"--event <value>\",\n description:\n \"Seed event entry start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"comment\",\n keys: [\"comment\"],\n option: \"--comment <value>\",\n description: \"Seed comment entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"note\",\n keys: [\"note\"],\n option: \"--note <value>\",\n description: \"Seed note entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"learning\",\n keys: [\"learning\"],\n option: \"--learning <value>\",\n description: \"Seed learning entry (text=<value> CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"file\",\n keys: [\"file\"],\n option: \"--file <value>\",\n description: \"Seed linked file entry (CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"test\",\n keys: [\"test\"],\n option: \"--test <value>\",\n description: \"Seed linked test entry (CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"doc\",\n keys: [\"doc\"],\n option: \"--doc <value>\",\n description: \"Seed linked doc entry (CSV/markdown pairs or - for stdin; repeatable)\",\n repeatable: true,\n },\n];\n\nexport const CREATE_COMMANDER_STRING_OPTION_CONTRACTS: CommanderOptionAliasContract[] = CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable !== true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n\nexport const CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS: CommanderOptionAliasContract[] =\n CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable === true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n\nexport const UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS: CommanderOptionRegistrationContract[] = [\n { target: \"title\", keys: [\"title\"], option: \"--title, -t <value>\", description: \"Set title\" },\n { target: \"description\", keys: [\"description\"], option: \"--description, -d <value>\", description: \"Set description\" },\n { target: \"body\", keys: [\"body\"], option: \"--body, -b <value>\", description: \"Set body (allow empty string)\" },\n { target: \"status\", keys: [\"status\"], option: \"--status, -s <value>\", description: \"Set status (use close command for closed)\" },\n {\n target: \"closeReason\",\n keys: [\"closeReason\", \"close_reason\"],\n option: \"--close-reason <value>\",\n description: \"Set close reason\",\n aliasOptions: [{ option: \"--close_reason <value>\", description: \"Alias for --close-reason\" }],\n },\n { target: \"priority\", keys: [\"priority\"], option: \"--priority, -p <value>\", description: \"Set priority\" },\n { target: \"type\", keys: [\"type\"], option: \"--type <value>\", description: \"Set type\" },\n { target: \"tags\", keys: [\"tags\"], option: \"--tags <value>\", description: \"Set comma-separated tags (replaces existing). Use --add-tags / --remove-tags to mutate additively.\" },\n {\n target: \"addTags\",\n keys: [\"addTags\", \"add_tags\"],\n option: \"--add-tags <value>\",\n description: \"Add tags to the existing list without replacing it (repeatable; CSV accepted)\",\n repeatable: true,\n aliasOptions: [{ option: \"--add_tags <value>\", description: \"Alias for --add-tags\" }],\n },\n {\n target: \"removeTags\",\n keys: [\"removeTags\", \"remove_tags\"],\n option: \"--remove-tags <value>\",\n description: \"Remove tags from the existing list (repeatable; CSV accepted)\",\n repeatable: true,\n aliasOptions: [{ option: \"--remove_tags <value>\", description: \"Alias for --remove-tags\" }],\n },\n { target: \"deadline\", keys: [\"deadline\"], option: \"--deadline <value>\", description: \"Set deadline (ISO/date string or relative)\" },\n {\n target: \"estimatedMinutes\",\n keys: [\"estimate\", \"estimatedMinutes\", \"estimated_minutes\"],\n option: \"--estimate, --estimated-minutes <value>\",\n description: \"Set estimated minutes\",\n aliasOptions: [{ option: \"--estimated_minutes <value>\", description: \"Alias for --estimated-minutes\" }],\n },\n {\n target: \"acceptanceCriteria\",\n keys: [\"acceptanceCriteria\", \"acceptance_criteria\", \"ac\"],\n option: \"--acceptance-criteria <value>\",\n description: \"Set acceptance criteria\",\n aliasOptions: [\n { option: \"--acceptance_criteria <value>\", description: \"Alias for --acceptance-criteria\" },\n { option: \"--ac <value>\", description: \"Alias for --acceptance-criteria\" },\n ],\n },\n {\n target: \"definitionOfReady\",\n keys: [\"definitionOfReady\", \"definition_of_ready\"],\n option: \"--definition-of-ready <value>\",\n description: \"Set definition of ready\",\n aliasOptions: [{ option: \"--definition_of_ready <value>\", description: \"Alias for --definition-of-ready\" }],\n },\n { target: \"order\", keys: [\"order\"], option: \"--order <value>\", description: \"Set planning order/rank integer\" },\n { target: \"rank\", keys: [\"rank\"], option: \"--rank <value>\", description: \"Alias for --order\" },\n { target: \"goal\", keys: [\"goal\"], option: \"--goal <value>\", description: \"Set goal identifier\" },\n { target: \"objective\", keys: [\"objective\"], option: \"--objective <value>\", description: \"Set objective identifier\" },\n { target: \"value\", keys: [\"value\"], option: \"--value <value>\", description: \"Set business value summary\" },\n { target: \"impact\", keys: [\"impact\"], option: \"--impact <value>\", description: \"Set business impact summary\" },\n { target: \"outcome\", keys: [\"outcome\"], option: \"--outcome <value>\", description: \"Set expected outcome summary\" },\n {\n target: \"whyNow\",\n keys: [\"whyNow\", \"why_now\"],\n option: \"--why-now <value>\",\n description: \"Set why-now rationale\",\n aliasOptions: [{ option: \"--why_now <value>\", description: \"Alias for --why-now\" }],\n },\n { target: \"author\", keys: [\"author\"], option: \"--author <value>\", description: \"Mutation author\" },\n { target: \"message\", keys: [\"message\"], option: \"--message <value>\", description: \"Mutation message\" },\n { target: \"assignee\", keys: [\"assignee\"], option: \"--assignee <value>\", description: \"Set assignee\" },\n { target: \"parent\", keys: [\"parent\"], option: \"--parent <value>\", description: \"Set parent item ID\" },\n { target: \"reviewer\", keys: [\"reviewer\"], option: \"--reviewer <value>\", description: \"Set reviewer\" },\n { target: \"risk\", keys: [\"risk\"], option: \"--risk <value>\", description: \"Set risk level: low|med|medium|high|critical (med persists as medium)\" },\n {\n target: \"confidence\",\n keys: [\"confidence\"],\n option: \"--confidence <value>\",\n description: \"Set confidence level: 0..100|low|med|medium|high (med persists as medium)\",\n },\n { target: \"sprint\", keys: [\"sprint\"], option: \"--sprint <value>\", description: \"Set sprint identifier\" },\n { target: \"release\", keys: [\"release\"], option: \"--release <value>\", description: \"Set release identifier\" },\n {\n target: \"blockedBy\",\n keys: [\"blockedBy\", \"blocked_by\"],\n option: \"--blocked-by <value>\",\n description: \"Set latest blocked-by item ID or reason; resolved item IDs append a blocked_by dependency edge\",\n aliasOptions: [{ option: \"--blocked_by <value>\", description: \"Alias for --blocked-by\" }],\n },\n {\n target: \"blockedReason\",\n keys: [\"blockedReason\", \"blocked_reason\"],\n option: \"--blocked-reason <value>\",\n description: \"Set blocked reason\",\n aliasOptions: [{ option: \"--blocked_reason <value>\", description: \"Alias for --blocked-reason\" }],\n },\n {\n target: \"unblockNote\",\n keys: [\"unblockNote\", \"unblock_note\"],\n option: \"--unblock-note <value>\",\n description: \"Set unblock rationale note\",\n aliasOptions: [{ option: \"--unblock_note <value>\", description: \"Alias for --unblock-note\" }],\n },\n { target: \"reporter\", keys: [\"reporter\"], option: \"--reporter <value>\", description: \"Set issue reporter\" },\n {\n target: \"severity\",\n keys: [\"severity\"],\n option: \"--severity <value>\",\n description: \"Set issue severity: low|med|medium|high|critical (med persists as medium)\",\n },\n { target: \"environment\", keys: [\"environment\"], option: \"--environment <value>\", description: \"Set issue environment context\" },\n {\n target: \"reproSteps\",\n keys: [\"reproSteps\", \"repro_steps\"],\n option: \"--repro-steps <value>\",\n description: \"Set issue reproduction steps\",\n aliasOptions: [{ option: \"--repro_steps <value>\", description: \"Alias for --repro-steps\" }],\n },\n { target: \"resolution\", keys: [\"resolution\"], option: \"--resolution <value>\", description: \"Set issue resolution summary\" },\n {\n target: \"expectedResult\",\n keys: [\"expectedResult\", \"expected_result\", \"expected\"],\n option: \"--expected-result <value>\",\n description: \"Set issue expected behavior\",\n aliasOptions: [\n { option: \"--expected_result <value>\", description: \"Alias for --expected-result\" },\n { option: \"--expected <value>\", description: \"Short alias for --expected-result\" },\n ],\n },\n {\n target: \"actualResult\",\n keys: [\"actualResult\", \"actual_result\", \"actual\"],\n option: \"--actual-result <value>\",\n description: \"Set issue observed behavior\",\n aliasOptions: [\n { option: \"--actual_result <value>\", description: \"Alias for --actual-result\" },\n { option: \"--actual <value>\", description: \"Short alias for --actual-result\" },\n ],\n },\n {\n target: \"affectedVersion\",\n keys: [\"affectedVersion\", \"affected_version\"],\n option: \"--affected-version <value>\",\n description: \"Set affected version identifier\",\n aliasOptions: [{ option: \"--affected_version <value>\", description: \"Alias for --affected-version\" }],\n },\n {\n target: \"fixedVersion\",\n keys: [\"fixedVersion\", \"fixed_version\"],\n option: \"--fixed-version <value>\",\n description: \"Set fixed version identifier\",\n aliasOptions: [{ option: \"--fixed_version <value>\", description: \"Alias for --fixed-version\" }],\n },\n { target: \"component\", keys: [\"component\"], option: \"--component <value>\", description: \"Set issue component ownership\" },\n { target: \"regression\", keys: [\"regression\"], option: \"--regression <value>\", description: \"Set regression marker: true|false|1|0\" },\n {\n target: \"customerImpact\",\n keys: [\"customerImpact\", \"customer_impact\"],\n option: \"--customer-impact <value>\",\n description: \"Set customer impact summary\",\n aliasOptions: [{ option: \"--customer_impact <value>\", description: \"Alias for --customer-impact\" }],\n },\n {\n target: \"dep\",\n keys: [\"dep\"],\n option: \"--dep <value>\",\n description: \"Add dependency entries id=<id>,kind=<value>,author=<value>,created_at=<iso|now>,source_kind=<value> (repeatable)\",\n repeatable: true,\n },\n {\n target: \"depRemove\",\n keys: [\"depRemove\", \"dep_remove\"],\n option: \"--dep-remove <value>\",\n description: \"Remove dependencies by id or id=<id>,kind=<value>,source_kind=<value> selectors (repeatable)\",\n repeatable: true,\n aliasOptions: [{ option: \"--dep_remove <value>\", description: \"Alias for --dep-remove\" }],\n },\n {\n target: \"comment\",\n keys: [\"comment\"],\n option: \"--comment <value>\",\n description: \"Append comment seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"note\",\n keys: [\"note\"],\n option: \"--note <value>\",\n description: \"Append note seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"learning\",\n keys: [\"learning\"],\n option: \"--learning <value>\",\n description: \"Append learning seed author=<value>,created_at=<iso|now>,text=<value> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"file\",\n keys: [\"file\"],\n option: \"--file <value>\",\n description: \"Append linked file path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"test\",\n keys: [\"test\"],\n option: \"--test <value>\",\n description: \"Append linked test command=<value>,path=<value>,scope=<project|global>,timeout_seconds=<n>,pm_context_mode=<schema|tracker|auto> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"doc\",\n keys: [\"doc\"],\n option: \"--doc <value>\",\n description: \"Append linked doc path=<value>,scope=<project|global>,note=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"reminder\",\n keys: [\"reminder\"],\n option: \"--reminder <value>\",\n description: \"Set reminders at=<iso|relative>,text=<text> (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"event\",\n keys: [\"event\"],\n option: \"--event <value>\",\n description:\n \"Set events start=<iso|relative>,end=<iso|relative>,duration=<relative|30min|PT30M>,title=<text>,all_day=<true|false>,recur_* fields (also accepts markdown pairs and - for stdin; repeatable)\",\n repeatable: true,\n },\n {\n target: \"typeOption\",\n keys: [\"typeOption\", \"type_option\"],\n option: \"--type-option <value>\",\n description: \"Set type options key=value or key=<name>,value=<value> (also accepts key:value and markdown pairs; use - for stdin; repeatable)\",\n repeatable: true,\n aliasOptions: [{ option: \"--type_option <value>\", description: \"Alias for --type-option\" }],\n },\n {\n target: \"field\",\n keys: [\"field\"],\n option: \"--field <name=value>\",\n description: \"Set a field declared by an active extension registerItemFields registration (repeatable)\",\n repeatable: true,\n },\n {\n target: \"unset\",\n keys: [\"unset\"],\n option: \"--unset <field>\",\n description: \"Clear scalar metadata field by name (repeatable)\",\n repeatable: true,\n },\n];\n\nexport const UPDATE_COMMANDER_STRING_OPTION_CONTRACTS: CommanderOptionAliasContract[] = UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable !== true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n\nexport const UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS: CommanderOptionAliasContract[] =\n UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS\n .filter((entry) => entry.repeatable === true)\n .map((entry) => ({ target: entry.target, keys: entry.keys }));\n"],"names":[],"mappings":"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","debugId":"f56649d3-9020-5f36-a5ba-6ff70734bb3c"}
|
|
@@ -3,7 +3,7 @@ export declare const PM_EXTENSION_CAPABILITY_CONTRACTS: readonly ["commands", "r
|
|
|
3
3
|
* Restricts pm extension capability contract values accepted by command, SDK, and storage contracts.
|
|
4
4
|
*/
|
|
5
5
|
export type PmExtensionCapabilityContract = (typeof PM_EXTENSION_CAPABILITY_CONTRACTS)[number];
|
|
6
|
-
export declare const PM_EXTENSION_SERVICE_NAME_CONTRACTS: readonly ["output_format", "error_format", "help_format", "lock_acquire", "lock_release", "history_append", "item_store_write", "item_store_delete"];
|
|
6
|
+
export declare const PM_EXTENSION_SERVICE_NAME_CONTRACTS: readonly ["output_format", "error_format", "help_format", "lock_acquire", "lock_release", "history_append", "item_store_write", "item_store_delete", "context_relevance"];
|
|
7
7
|
/**
|
|
8
8
|
* Restricts pm extension service name contract values accepted by command, SDK, and storage contracts.
|
|
9
9
|
*/
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* flag surface stays single-sourced across the CLI, SDK, and MCP boundaries.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
!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]="
|
|
10
|
+
!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]="01d4c0fb-231a-52d1-be32-5af86bddec24")}catch(e){}}();
|
|
11
11
|
import { normalizeUniqueStringList } from "./string-lists.js";
|
|
12
12
|
function normalizeFlagAliasKey(flag) {
|
|
13
13
|
if (!flag.startsWith("--")) {
|
|
@@ -447,6 +447,7 @@ export const INIT_FLAG_CONTRACTS = [
|
|
|
447
447
|
{ flag: "--author" },
|
|
448
448
|
{ flag: "--agent-guidance" },
|
|
449
449
|
{ flag: "--with-packages" },
|
|
450
|
+
{ flag: "--workspace" },
|
|
450
451
|
{ flag: "--force" },
|
|
451
452
|
{ flag: "--verbose" },
|
|
452
453
|
];
|
|
@@ -1218,6 +1219,8 @@ export const CONTEXT_FLAG_CONTRACTS = [
|
|
|
1218
1219
|
{ flag: "--section" },
|
|
1219
1220
|
{ flag: "--activity-limit" },
|
|
1220
1221
|
{ flag: "--stale-threshold" },
|
|
1222
|
+
{ flag: "--explain-ranking" },
|
|
1223
|
+
{ flag: "--explain_ranking" },
|
|
1221
1224
|
];
|
|
1222
1225
|
export const GET_FLAG_CONTRACTS = [
|
|
1223
1226
|
{ flag: "--depth" },
|
|
@@ -1262,6 +1265,8 @@ export const NEXT_FLAG_CONTRACTS = [
|
|
|
1262
1265
|
{ flag: "--ready-only" },
|
|
1263
1266
|
{ flag: "--ready_only" },
|
|
1264
1267
|
{ flag: "--format" },
|
|
1268
|
+
{ flag: "--explain-ranking" },
|
|
1269
|
+
{ flag: "--explain_ranking" },
|
|
1265
1270
|
];
|
|
1266
1271
|
export const SEARCH_FLAG_CONTRACTS = [
|
|
1267
1272
|
{ flag: "--mode" },
|
|
@@ -1493,4 +1498,4 @@ export function toCompletionFlagString(flagContracts, includeGlobal = true) {
|
|
|
1493
1498
|
return normalizeUniqueStringList(all).join(" ");
|
|
1494
1499
|
}
|
|
1495
1500
|
//# sourceMappingURL=flag-contracts.js.map
|
|
1496
|
-
//# debugId=
|
|
1501
|
+
//# debugId=01d4c0fb-231a-52d1-be32-5af86bddec24
|