@unbrained/pm-cli 2026.7.1 → 2026.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +3 -3
- package/CHANGELOG.md +25 -0
- package/CONTRIBUTING.md +2 -2
- package/README.md +1 -1
- package/dist/cli/commander-usage.d.ts +2 -0
- package/dist/cli/commander-usage.js +110 -86
- package/dist/cli/commander-usage.js.map +1 -1
- package/dist/cli/commands/activity.js +79 -57
- package/dist/cli/commands/activity.js.map +1 -1
- package/dist/cli/commands/aggregate.js +102 -79
- package/dist/cli/commands/aggregate.js.map +1 -1
- package/dist/cli/commands/calendar.js +278 -243
- package/dist/cli/commands/calendar.js.map +1 -1
- package/dist/cli/commands/close-many.js +176 -114
- package/dist/cli/commands/close-many.js.map +1 -1
- package/dist/cli/commands/close.js +157 -129
- package/dist/cli/commands/close.js.map +1 -1
- package/dist/cli/commands/comments-audit.js +50 -42
- package/dist/cli/commands/comments-audit.js.map +1 -1
- package/dist/cli/commands/config.d.ts +2 -0
- package/dist/cli/commands/config.js +443 -879
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/context.js +365 -287
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/commands/contracts.js +352 -238
- package/dist/cli/commands/contracts.js.map +1 -1
- package/dist/cli/commands/create.js +32 -17
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/commands/dedupe-audit.js +46 -39
- package/dist/cli/commands/dedupe-audit.js.map +1 -1
- package/dist/cli/commands/dedupe-merge.js +88 -69
- package/dist/cli/commands/dedupe-merge.js.map +1 -1
- package/dist/cli/commands/extension/doctor.js +56 -67
- package/dist/cli/commands/extension/doctor.js.map +1 -1
- package/dist/cli/commands/extension/shared.js +21 -15
- package/dist/cli/commands/extension/shared.js.map +1 -1
- package/dist/cli/commands/get.js +114 -81
- package/dist/cli/commands/get.js.map +1 -1
- package/dist/cli/commands/health.d.ts +17 -0
- package/dist/cli/commands/health.js +545 -417
- package/dist/cli/commands/health.js.map +1 -1
- package/dist/cli/commands/history-compact.js +209 -140
- package/dist/cli/commands/history-compact.js.map +1 -1
- package/dist/cli/commands/history-redact.js +162 -119
- package/dist/cli/commands/history-redact.js.map +1 -1
- package/dist/cli/commands/history-repair.js +120 -85
- package/dist/cli/commands/history-repair.js.map +1 -1
- package/dist/cli/commands/init-agent-guidance.js +32 -19
- package/dist/cli/commands/init-agent-guidance.js.map +1 -1
- package/dist/cli/commands/init.d.ts +8 -2
- package/dist/cli/commands/init.js +263 -162
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/list.js +152 -102
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/next.js +60 -40
- package/dist/cli/commands/next.js.map +1 -1
- package/dist/cli/commands/plan.js +373 -298
- package/dist/cli/commands/plan.js.map +1 -1
- package/dist/cli/commands/profile.js +23 -15
- package/dist/cli/commands/profile.js.map +1 -1
- package/dist/cli/commands/recurrence-parsers.js +43 -25
- package/dist/cli/commands/recurrence-parsers.js.map +1 -1
- package/dist/cli/commands/reindex.d.ts +21 -5
- package/dist/cli/commands/reindex.js +345 -205
- package/dist/cli/commands/reindex.js.map +1 -1
- package/dist/cli/commands/restore.d.ts +8 -7
- package/dist/cli/commands/restore.js +105 -69
- package/dist/cli/commands/restore.js.map +1 -1
- package/dist/cli/commands/schema.js +33 -30
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/search.d.ts +10 -2
- package/dist/cli/commands/search.js +503 -470
- package/dist/cli/commands/search.js.map +1 -1
- package/dist/cli/commands/telemetry.js +98 -87
- package/dist/cli/commands/telemetry.js.map +1 -1
- package/dist/cli/commands/test-all.js +237 -168
- package/dist/cli/commands/test-all.js.map +1 -1
- package/dist/cli/commands/test.d.ts +6 -5
- package/dist/cli/commands/test.js +424 -344
- package/dist/cli/commands/test.js.map +1 -1
- package/dist/cli/commands/update-many.js +57 -42
- package/dist/cli/commands/update-many.js.map +1 -1
- package/dist/cli/commands/update.d.ts +1 -1
- package/dist/cli/commands/update.js +738 -671
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/validate.d.ts +20 -1
- package/dist/cli/commands/validate.js +478 -343
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/error-guidance.js +406 -361
- package/dist/cli/error-guidance.js.map +1 -1
- package/dist/cli/extension-command-help.js +27 -19
- package/dist/cli/extension-command-help.js.map +1 -1
- package/dist/cli/help-json-payload.js +57 -49
- package/dist/cli/help-json-payload.js.map +1 -1
- package/dist/cli/main.d.ts +47 -0
- package/dist/cli/main.js +474 -371
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/migration-gates.js +22 -45
- package/dist/cli/migration-gates.js.map +1 -1
- package/dist/cli/register-list-query.js +299 -310
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/register-mutation.js +763 -779
- package/dist/cli/register-mutation.js.map +1 -1
- package/dist/cli/register-operations.js +386 -362
- package/dist/cli/register-operations.js.map +1 -1
- package/dist/cli/register-setup.js +120 -101
- package/dist/cli/register-setup.js.map +1 -1
- package/dist/cli/registration-helpers.d.ts +4 -0
- package/dist/cli/registration-helpers.js +45 -56
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/chunks/{activity-DBLQVIP6.js → activity-5YWLSPGE.js} +9 -9
- package/dist/cli-bundle/chunks/activity-BIML7K2D.js +16 -0
- package/dist/cli-bundle/chunks/{aggregate-SDF7DUOD.js → aggregate-2V2M3JZU.js} +107 -83
- package/dist/cli-bundle/chunks/{aggregate-SDF7DUOD.js.map → aggregate-2V2M3JZU.js.map} +2 -2
- package/dist/cli-bundle/chunks/{aggregate-JTEF4BP7.js → aggregate-EK7DXML7.js} +108 -84
- package/dist/cli-bundle/chunks/aggregate-EK7DXML7.js.map +1 -0
- package/dist/cli-bundle/chunks/{append-LOVPGVPT.js → append-EZESUVJT.js} +8 -8
- package/dist/cli-bundle/chunks/{append-QCFJSDFL.js → append-JFG4WQMG.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-TP5Q5ZD3.js → chunk-32IUNTG4.js} +158 -119
- package/dist/cli-bundle/chunks/chunk-32IUNTG4.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-BHO33VBQ.js → chunk-3W2HJKJX.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-VARHOHYV.js → chunk-4EXFFP7T.js} +86 -52
- package/dist/cli-bundle/chunks/chunk-4EXFFP7T.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-4DUVCVLZ.js → chunk-4PFVUUYV.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-JSU5P7VS.js → chunk-4WB6S4YX.js} +308 -184
- package/dist/cli-bundle/chunks/chunk-4WB6S4YX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-HXTQJXWT.js → chunk-572FKBRL.js} +61 -102
- package/dist/cli-bundle/chunks/chunk-572FKBRL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-IJYK2T43.js → chunk-5E7N4T2Z.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-NKZAN7BD.js → chunk-5IZUBZBR.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NOLPZMSV.js → chunk-5JIWFWOZ.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-FFMQB7WR.js → chunk-67LARBDL.js} +493 -404
- package/dist/cli-bundle/chunks/chunk-67LARBDL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-6AQZPVHQ.js → chunk-6CDCWKSX.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-3K2M5OYU.js → chunk-6KRFL33E.js} +308 -184
- package/dist/cli-bundle/chunks/chunk-6KRFL33E.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-LB6TP6MC.js → chunk-6NYJGMTY.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-SLMUGTK3.js → chunk-7CLLC75T.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-2466X6E4.js → chunk-7LYO6S5A.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-W4ULYO7Z.js → chunk-A3OQ7TFW.js} +8 -8
- package/dist/cli-bundle/chunks/{chunk-5CGRF3L5.js → chunk-AIKU3IIL.js} +153 -90
- package/dist/cli-bundle/chunks/chunk-AIKU3IIL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-WYDHYJPO.js → chunk-AJHYQCBJ.js} +39 -5
- package/dist/cli-bundle/chunks/chunk-AJHYQCBJ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-VZDBVEZR.js → chunk-B4O5S7I3.js} +79 -57
- package/dist/cli-bundle/chunks/{chunk-VZDBVEZR.js.map → chunk-B4O5S7I3.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-OTUHB4HS.js → chunk-BE2SR6QL.js} +92 -77
- package/dist/cli-bundle/chunks/chunk-BE2SR6QL.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-JLM7BHI7.js → chunk-BI4R7HI2.js} +75 -53
- package/dist/cli-bundle/chunks/chunk-BI4R7HI2.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-AXIDKKAT.js → chunk-CXR3CMBQ.js} +33 -6
- package/dist/cli-bundle/chunks/chunk-CXR3CMBQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ZETXE4SE.js → chunk-ECU6MMTQ.js} +713 -613
- package/dist/cli-bundle/chunks/chunk-ECU6MMTQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-2D4HATP2.js → chunk-EJ2OCBHF.js} +54 -30
- package/dist/cli-bundle/chunks/chunk-EJ2OCBHF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-BDTISOSD.js → chunk-EQURFOMH.js} +41 -26
- package/dist/cli-bundle/chunks/chunk-EQURFOMH.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-GJ326ZKX.js → chunk-ER4ME5U2.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-HZZEHPRG.js → chunk-ERG65A2L.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-IZBR4NRW.js → chunk-F6WNBITZ.js} +157 -113
- package/dist/cli-bundle/chunks/chunk-F6WNBITZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-L5OEFZQG.js → chunk-FH2H3CBD.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-JPECA746.js → chunk-FUFFPIYA.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-CF7RL6FR.js → chunk-FZJM2TXF.js} +110 -73
- package/dist/cli-bundle/chunks/chunk-FZJM2TXF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-27BXPBAY.js → chunk-GUYNUXQT.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-MAUKX7JC.js → chunk-GVJE5T7Q.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-3J6JRJ3I.js → chunk-HB4FAT3O.js} +42 -60
- package/dist/cli-bundle/chunks/chunk-HB4FAT3O.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-55SNVXRQ.js → chunk-HQAF23Q2.js} +626 -484
- package/dist/cli-bundle/chunks/chunk-HQAF23Q2.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-ZRP4VG5U.js → chunk-JBZ2NTKX.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-RMMQ74TG.js → chunk-JPATY4SE.js} +54 -30
- package/dist/cli-bundle/chunks/chunk-JPATY4SE.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-IPYBJWTE.js → chunk-K5DT2YKM.js} +109 -72
- package/dist/cli-bundle/chunks/chunk-K5DT2YKM.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-EJUDVUYZ.js → chunk-KEZOIPCR.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-RVUALSJF.js → chunk-KHVGM5CS.js} +466 -365
- package/dist/cli-bundle/chunks/chunk-KHVGM5CS.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-YITK2PJ6.js → chunk-KS6ATO47.js} +288 -175
- package/dist/cli-bundle/chunks/chunk-KS6ATO47.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-7R4QEMZZ.js → chunk-L4SLHV6G.js} +463 -362
- package/dist/cli-bundle/chunks/chunk-L4SLHV6G.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-RLDHZHQS.js → chunk-LBE5QFMZ.js} +158 -114
- package/dist/cli-bundle/chunks/chunk-LBE5QFMZ.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-22WKIL3H.js → chunk-LCWQP6NM.js} +76 -54
- package/dist/cli-bundle/chunks/chunk-LCWQP6NM.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-KNPEF7QG.js → chunk-LOWVNZBZ.js} +91 -76
- package/dist/cli-bundle/chunks/chunk-LOWVNZBZ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-HYTGA6GI.js → chunk-MDHWWBNZ.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-N74UMG5H.js → chunk-MEZZZBYX.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-V3NOKJF2.js → chunk-MHRS5FUX.js} +288 -175
- package/dist/cli-bundle/chunks/chunk-MHRS5FUX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-3XZCOZ5J.js → chunk-NOIEVOK5.js} +391 -313
- package/dist/cli-bundle/chunks/chunk-NOIEVOK5.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-SDR5J34Q.js → chunk-NZ7QIUP5.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-UYUYDGIB.js → chunk-OGLGI22K.js} +115 -67
- package/dist/cli-bundle/chunks/{chunk-UYUYDGIB.js.map → chunk-OGLGI22K.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-DDPTYJIM.js → chunk-P5L7Z2O6.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-BZCEN4JA.js → chunk-PULUSQAV.js} +492 -403
- package/dist/cli-bundle/chunks/chunk-PULUSQAV.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-3VGN2UWE.js → chunk-QCDTQCMW.js} +22 -30
- package/dist/cli-bundle/chunks/chunk-QCDTQCMW.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-4A3BJ675.js → chunk-QNNQAAZ5.js} +24 -18
- package/dist/cli-bundle/chunks/{chunk-4A3BJ675.js.map → chunk-QNNQAAZ5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-MDPEOIGN.js → chunk-RAHINBVP.js} +60 -101
- package/dist/cli-bundle/chunks/chunk-RAHINBVP.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-CWFNTKQJ.js → chunk-RJH5VQHW.js} +43 -61
- package/dist/cli-bundle/chunks/chunk-RJH5VQHW.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-OGXLACHC.js → chunk-SU2E4AWU.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-HPPFYYOV.js → chunk-SU3TB4NS.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-JWXRETDF.js → chunk-SYE6WMV6.js} +626 -484
- package/dist/cli-bundle/chunks/chunk-SYE6WMV6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-NWMZWYYB.js → chunk-T3P7PMZP.js} +42 -27
- package/dist/cli-bundle/chunks/chunk-T3P7PMZP.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-G7I7DEZA.js → chunk-T4XBKJ3F.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-RH5ZBYFD.js → chunk-T6AXEBOP.js} +23 -17
- package/dist/cli-bundle/chunks/{chunk-RH5ZBYFD.js.map → chunk-T6AXEBOP.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-5QFDBI4F.js → chunk-TQ6AX5SQ.js} +58 -69
- package/dist/cli-bundle/chunks/{chunk-5QFDBI4F.js.map → chunk-TQ6AX5SQ.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-4XOIEKSD.js → chunk-U3S2B7TA.js} +86 -52
- package/dist/cli-bundle/chunks/chunk-U3S2B7TA.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-VICZWYGZ.js → chunk-U5TR4N7J.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-EVMTBV6V.js → chunk-UMNQZS4H.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-A7FPBAQS.js → chunk-WJA3PXW7.js} +7 -7
- package/dist/cli-bundle/chunks/{chunk-RGEMWD6Q.js → chunk-WRYERRZX.js} +157 -118
- package/dist/cli-bundle/chunks/chunk-WRYERRZX.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-NUHHPVVS.js → chunk-WYOIIFSE.js} +712 -612
- package/dist/cli-bundle/chunks/chunk-WYOIIFSE.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-4DSGXSBL.js → chunk-XRYSCRZR.js} +116 -68
- package/dist/cli-bundle/chunks/{chunk-4DSGXSBL.js.map → chunk-XRYSCRZR.js.map} +3 -3
- package/dist/cli-bundle/chunks/{chunk-NU2UEROZ.js → chunk-YF746GTH.js} +59 -70
- package/dist/cli-bundle/chunks/{chunk-NU2UEROZ.js.map → chunk-YF746GTH.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-JMP4E6D7.js → chunk-YPWUSH72.js} +390 -312
- package/dist/cli-bundle/chunks/{chunk-JMP4E6D7.js.map → chunk-YPWUSH72.js.map} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QCWF6IYD.js → chunk-YSDFIY7N.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-UZIWVBE6.js → chunk-YSGTMDWC.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-NFDPYAIP.js → chunk-YVKZ3ANP.js} +21 -29
- package/dist/cli-bundle/chunks/chunk-YVKZ3ANP.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-OKQ22KTH.js → chunk-Z4DGFQDH.js} +80 -58
- package/dist/cli-bundle/chunks/{chunk-OKQ22KTH.js.map → chunk-Z4DGFQDH.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-64HNBBFQ.js → chunk-Z5F6XZXE.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-AVEE5EHK.js → chunk-Z7RPDF2Y.js} +3 -3
- package/dist/cli-bundle/chunks/{chunk-3S2KT7NG.js → chunk-ZFTKYWIF.js} +152 -89
- package/dist/cli-bundle/chunks/chunk-ZFTKYWIF.js.map +7 -0
- package/dist/cli-bundle/chunks/{claim-T3GCKV7C.js → claim-2BGBGSVI.js} +8 -8
- package/dist/cli-bundle/chunks/{claim-EMQLYPRW.js → claim-5GU7OE67.js} +8 -8
- package/dist/cli-bundle/chunks/close-6YODBUIV.js +14 -0
- package/dist/cli-bundle/chunks/{close-TQYAAFJP.js → close-AFVKPR57.js} +7 -7
- package/dist/cli-bundle/chunks/{close-many-BG5QQIDQ.js → close-many-7KLOSYLP.js} +186 -122
- package/dist/cli-bundle/chunks/close-many-7KLOSYLP.js.map +7 -0
- package/dist/cli-bundle/chunks/{close-many-LDRVEQY2.js → close-many-JKUJMHLG.js} +187 -123
- package/dist/cli-bundle/chunks/close-many-JKUJMHLG.js.map +1 -0
- package/dist/cli-bundle/chunks/{comments-YUXJRZPQ.js → comments-DNWHEBOS.js} +9 -9
- package/dist/cli-bundle/chunks/{comments-QCKR2YY2.js → comments-RW23R3VE.js} +9 -9
- package/dist/cli-bundle/chunks/config-AUM5WBYA.js +1072 -0
- package/dist/cli-bundle/chunks/config-AUM5WBYA.js.map +7 -0
- package/dist/cli-bundle/chunks/config-OZWSA2NP.js +1062 -0
- package/dist/cli-bundle/chunks/config-OZWSA2NP.js.map +1 -0
- package/dist/cli-bundle/chunks/{context-B6275WPX.js → context-OYXRGY7S.js} +12 -12
- package/dist/cli-bundle/chunks/{context-OCZ3FJ4Z.js → context-PKCEHQY3.js} +12 -12
- package/dist/cli-bundle/chunks/{contracts-HN7ABKLP.js → contracts-L6ODXNUM.js} +320 -199
- package/dist/cli-bundle/chunks/contracts-L6ODXNUM.js.map +7 -0
- package/dist/cli-bundle/chunks/{contracts-W4FZVVD6.js → contracts-X74F2GSM.js} +321 -200
- package/dist/cli-bundle/chunks/contracts-X74F2GSM.js.map +1 -0
- package/dist/cli-bundle/chunks/{copy-DEM4DATS.js → copy-6XOR3HKN.js} +5 -5
- package/dist/cli-bundle/chunks/{copy-BTJOSKKT.js → copy-I4NCLBR4.js} +5 -5
- package/dist/cli-bundle/chunks/{create-RLRJMRTM.js → create-PM45M6PE.js} +12 -12
- package/dist/cli-bundle/chunks/create-Z7YCH3BE.js +28 -0
- package/dist/cli-bundle/chunks/{delete-BHK7VB2Z.js → delete-7YXHYG67.js} +5 -5
- package/dist/cli-bundle/chunks/{delete-LSVHAB4Y.js → delete-LPISP43T.js} +5 -5
- package/dist/cli-bundle/chunks/{deps-XHYXWEPT.js → deps-N2T26FME.js} +5 -5
- package/dist/cli-bundle/chunks/{deps-4UDFJRUA.js → deps-WATKQDE3.js} +5 -5
- package/dist/cli-bundle/chunks/{docs-GYZNVS26.js → docs-6LQ3GLM7.js} +7 -7
- package/dist/cli-bundle/chunks/{docs-26S44RXU.js → docs-Z3X6JZLT.js} +7 -7
- package/dist/cli-bundle/chunks/{eval-UYF3ZPVO.js → eval-6DCLG52D.js} +10 -10
- package/dist/cli-bundle/chunks/{eval-PGRVIJQU.js → eval-Y3ZCUTHK.js} +10 -10
- package/dist/cli-bundle/chunks/{extension-CPSLJQVE.js → extension-BNINIMT7.js} +11 -11
- package/dist/cli-bundle/chunks/{extension-CXJ6RELI.js → extension-QWE4YYK5.js} +11 -11
- package/dist/cli-bundle/chunks/{files-NQHEXUZD.js → files-6SGKHS6O.js} +7 -7
- package/dist/cli-bundle/chunks/{files-MBNICQFM.js → files-FUYPSOFJ.js} +7 -7
- package/dist/cli-bundle/chunks/{focus-DWYIG7GU.js → focus-2Q3K76G2.js} +6 -6
- package/dist/cli-bundle/chunks/{focus-XZW5423D.js → focus-ATLBWXXD.js} +6 -6
- package/dist/cli-bundle/chunks/{gc-LPVMKJQJ.js → gc-RUYEMNRF.js} +3 -3
- package/dist/cli-bundle/chunks/{gc-7GQYOS2G.js → gc-TDWSDR66.js} +3 -3
- package/dist/cli-bundle/chunks/{get-A7MAOHCU.js → get-2WGLX74N.js} +120 -80
- package/dist/cli-bundle/chunks/get-2WGLX74N.js.map +7 -0
- package/dist/cli-bundle/chunks/{get-DSDEKJ3L.js → get-LY6M2JIM.js} +121 -81
- package/dist/cli-bundle/chunks/get-LY6M2JIM.js.map +1 -0
- package/dist/cli-bundle/chunks/{health-3IPFLKXB.js → health-4RKHYS3T.js} +535 -371
- package/dist/cli-bundle/chunks/health-4RKHYS3T.js.map +1 -0
- package/dist/cli-bundle/chunks/{health-GZXGBZ36.js → health-TMFVNYRA.js} +534 -370
- package/dist/cli-bundle/chunks/health-TMFVNYRA.js.map +7 -0
- package/dist/cli-bundle/chunks/history-CGNQJXFE.js +18 -0
- package/dist/cli-bundle/chunks/{history-NERDJNUB.js → history-SGRRS72R.js} +8 -8
- package/dist/cli-bundle/chunks/{history-compact-2WRZ2WK4.js → history-compact-LOED43R3.js} +213 -134
- package/dist/cli-bundle/chunks/history-compact-LOED43R3.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-compact-HR7BB4LR.js → history-compact-V5DNAQHH.js} +214 -135
- package/dist/cli-bundle/chunks/history-compact-V5DNAQHH.js.map +1 -0
- package/dist/cli-bundle/chunks/{history-redact-O3NBCNWC.js → history-redact-IRL7WJ3E.js} +9 -9
- package/dist/cli-bundle/chunks/history-redact-N3JK7VBW.js +19 -0
- package/dist/cli-bundle/chunks/{history-repair-XA3LC4GA.js → history-repair-4WVBVHFR.js} +124 -84
- package/dist/cli-bundle/chunks/history-repair-4WVBVHFR.js.map +1 -0
- package/dist/cli-bundle/chunks/{history-repair-LCMOS45X.js → history-repair-PGYQJMGD.js} +123 -83
- package/dist/cli-bundle/chunks/history-repair-PGYQJMGD.js.map +7 -0
- package/dist/cli-bundle/chunks/{init-64XDLQJB.js → init-4GESW7RM.js} +12 -12
- package/dist/cli-bundle/chunks/init-XIDPABA4.js +22 -0
- package/dist/cli-bundle/chunks/{learnings-LPKCSJX7.js → learnings-4BHWFFUV.js} +9 -9
- package/dist/cli-bundle/chunks/{learnings-JR6MA5TI.js → learnings-4FJY7WIW.js} +9 -9
- package/dist/cli-bundle/chunks/{list-G5Y65VF6.js → list-472TIOVK.js} +8 -8
- package/dist/cli-bundle/chunks/{list-DNBJVO3E.js → list-D7BF5CL2.js} +8 -8
- package/dist/cli-bundle/chunks/{next-FYTQF6HG.js → next-D5STGWI2.js} +71 -46
- package/dist/cli-bundle/chunks/next-D5STGWI2.js.map +1 -0
- package/dist/cli-bundle/chunks/{next-BCERKDUR.js → next-SFQZVX2B.js} +70 -45
- package/dist/cli-bundle/chunks/next-SFQZVX2B.js.map +7 -0
- package/dist/cli-bundle/chunks/{notes-2BMU3VVQ.js → notes-6KNOSLIT.js} +9 -9
- package/dist/cli-bundle/chunks/{notes-6KTGO2OJ.js → notes-W4UEICGF.js} +9 -9
- package/dist/cli-bundle/chunks/{plan-RKZHQVXR.js → plan-JO6V7BXO.js} +373 -279
- package/dist/cli-bundle/chunks/plan-JO6V7BXO.js.map +1 -0
- package/dist/cli-bundle/chunks/{plan-4WXEQCTN.js → plan-MJQW5XK3.js} +372 -278
- package/dist/cli-bundle/chunks/plan-MJQW5XK3.js.map +7 -0
- package/dist/cli-bundle/chunks/{profile-4OMM32CD.js → profile-3TOTMUR4.js} +27 -19
- package/dist/cli-bundle/chunks/profile-3TOTMUR4.js.map +7 -0
- package/dist/cli-bundle/chunks/{profile-QLER5ENE.js → profile-WIQY2KCV.js} +28 -20
- package/dist/cli-bundle/chunks/profile-WIQY2KCV.js.map +1 -0
- package/dist/cli-bundle/chunks/register-list-query-ELBHCCFI.js +416 -0
- package/dist/cli-bundle/chunks/register-list-query-ELBHCCFI.js.map +7 -0
- package/dist/cli-bundle/chunks/register-list-query-GAPQ6DM3.js +406 -0
- package/dist/cli-bundle/chunks/register-list-query-GAPQ6DM3.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-mutation-KK7PHYYU.js → register-mutation-ROFE2YPC.js} +729 -702
- package/dist/cli-bundle/chunks/register-mutation-ROFE2YPC.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-mutation-ENNDUAZG.js → register-mutation-SJWMVIJ2.js} +730 -703
- package/dist/cli-bundle/chunks/register-mutation-SJWMVIJ2.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-operations-HZ6XERQG.js → register-operations-IADFVH53.js} +389 -365
- package/dist/cli-bundle/chunks/register-operations-IADFVH53.js.map +7 -0
- package/dist/cli-bundle/chunks/register-operations-MEKU3AKC.js +510 -0
- package/dist/cli-bundle/chunks/register-operations-MEKU3AKC.js.map +1 -0
- package/dist/cli-bundle/chunks/{register-setup-ZKJ53RS7.js → register-setup-3QJY43CY.js} +128 -103
- package/dist/cli-bundle/chunks/register-setup-3QJY43CY.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-setup-P67EMBDJ.js → register-setup-AJWUSSQX.js} +129 -104
- package/dist/cli-bundle/chunks/register-setup-AJWUSSQX.js.map +1 -0
- package/dist/cli-bundle/chunks/{restore-4MHZFJ2E.js → restore-44IHMMZZ.js} +9 -9
- package/dist/cli-bundle/chunks/restore-EXHU34EU.js +17 -0
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-LB6DOLRL.js → scheduling-shortcuts-OLHNLAZY.js} +12 -12
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-UTOYKLXQ.js → scheduling-shortcuts-TSBK4AY5.js} +12 -12
- package/dist/cli-bundle/chunks/{schema-73HR2OJW.js → schema-IB2NZZWD.js} +7 -7
- package/dist/cli-bundle/chunks/{schema-U6LJKSIR.js → schema-VBCELP5G.js} +7 -7
- package/dist/cli-bundle/chunks/{search-AXPXKZER.js → search-7UBETML4.js} +10 -10
- package/dist/cli-bundle/chunks/{search-KILGT37L.js → search-R227JOL6.js} +10 -10
- package/dist/cli-bundle/chunks/{stats-W5KNVJWQ.js → stats-FAG7COEH.js} +6 -6
- package/dist/cli-bundle/chunks/{stats-PSYVVTNZ.js → stats-MCK7PLYS.js} +6 -6
- package/dist/cli-bundle/chunks/{telemetry-GAHHQTOS.js → telemetry-DRPDZMAO.js} +84 -70
- package/dist/cli-bundle/chunks/telemetry-DRPDZMAO.js.map +7 -0
- package/dist/cli-bundle/chunks/{telemetry-BZUF6H7G.js → telemetry-GVVUQSJQ.js} +85 -71
- package/dist/cli-bundle/chunks/telemetry-GVVUQSJQ.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-PWDIZ255.js → test-QY44WAMR.js} +15 -15
- package/dist/cli-bundle/chunks/{test-ACD52Z3S.js → test-SY76DZTO.js} +15 -15
- package/dist/cli-bundle/chunks/test-all-QD6QAEG7.js +430 -0
- package/dist/cli-bundle/chunks/test-all-QD6QAEG7.js.map +7 -0
- package/dist/cli-bundle/chunks/test-all-USPJHXFR.js +427 -0
- package/dist/cli-bundle/chunks/test-all-USPJHXFR.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-runs-UXIXPDKU.js → test-runs-MG5VIGSK.js} +185 -147
- package/dist/cli-bundle/chunks/test-runs-MG5VIGSK.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-runs-PLRAZEFW.js → test-runs-QIR5MJPL.js} +184 -146
- package/dist/cli-bundle/chunks/test-runs-QIR5MJPL.js.map +7 -0
- package/dist/cli-bundle/chunks/update-A7EICML6.js +24 -0
- package/dist/cli-bundle/chunks/{update-KFX2SIAC.js → update-IKJZWLQC.js} +15 -15
- package/dist/cli-bundle/chunks/{update-many-RNSBX2TA.js → update-many-BEMTDA2X.js} +84 -69
- package/dist/cli-bundle/chunks/{update-many-RNSBX2TA.js.map → update-many-BEMTDA2X.js.map} +1 -1
- package/dist/cli-bundle/chunks/{update-many-Z5GJS5LC.js → update-many-RATAARHU.js} +83 -68
- package/dist/cli-bundle/chunks/{update-many-Z5GJS5LC.js.map → update-many-RATAARHU.js.map} +2 -2
- package/dist/cli-bundle/chunks/{upgrade-BRL6KCOJ.js → upgrade-NWMR3VQL.js} +11 -11
- package/dist/cli-bundle/chunks/{upgrade-HAK6JG2O.js → upgrade-VU46BLJZ.js} +11 -11
- package/dist/cli-bundle/chunks/{validate-X5W76YJL.js → validate-GAJ6FUSI.js} +451 -321
- package/dist/cli-bundle/chunks/validate-GAJ6FUSI.js.map +1 -0
- package/dist/cli-bundle/chunks/{validate-MTUVL5VC.js → validate-NRY6MFXN.js} +450 -320
- package/dist/cli-bundle/chunks/validate-NRY6MFXN.js.map +7 -0
- package/dist/cli-bundle/main.js +1107 -916
- package/dist/cli-bundle/main.js.map +3 -3
- package/dist/core/config/nested-settings.js +89 -67
- package/dist/core/config/nested-settings.js.map +1 -1
- package/dist/core/governance/metadata-coverage.js +20 -28
- package/dist/core/governance/metadata-coverage.js.map +1 -1
- package/dist/core/history/drift-scan.js +93 -81
- package/dist/core/history/drift-scan.js.map +1 -1
- package/dist/core/item/item-type-definition.js +14 -14
- package/dist/core/item/item-type-definition.js.map +1 -1
- package/dist/core/item/type-registry.js +114 -99
- package/dist/core/item/type-registry.js.map +1 -1
- package/dist/core/output/mutation-projection.js +42 -26
- package/dist/core/output/mutation-projection.js.map +1 -1
- package/dist/core/schema/runtime-schema.js +97 -80
- package/dist/core/schema/runtime-schema.js.map +1 -1
- package/dist/core/schema/status-defs-file.js +26 -3
- package/dist/core/schema/status-defs-file.js.map +1 -1
- package/dist/core/search/corpus.js +25 -19
- package/dist/core/search/corpus.js.map +1 -1
- package/dist/core/search/semantic-defaults.js +64 -37
- package/dist/core/search/semantic-defaults.js.map +1 -1
- package/dist/core/search/vector-stores.js +32 -17
- package/dist/core/search/vector-stores.js.map +1 -1
- package/dist/core/sentry/helpers.js +31 -28
- package/dist/core/sentry/helpers.js.map +1 -1
- package/dist/core/sentry/instrument.js +54 -43
- package/dist/core/sentry/instrument.js.map +1 -1
- package/dist/core/shared/memo.d.ts +12 -0
- package/dist/core/shared/memo.js +25 -0
- package/dist/core/shared/memo.js.map +1 -0
- package/dist/core/shared/serialization.js +24 -14
- package/dist/core/shared/serialization.js.map +1 -1
- package/dist/core/shared/time.js +26 -4
- package/dist/core/shared/time.js.map +1 -1
- package/dist/core/store/front-matter-cache.d.ts +5 -0
- package/dist/core/store/front-matter-cache.js +316 -171
- package/dist/core/store/front-matter-cache.js.map +1 -1
- package/dist/core/store/item-store.js +33 -26
- package/dist/core/store/item-store.js.map +1 -1
- package/dist/core/store/settings.js +247 -203
- package/dist/core/store/settings.js.map +1 -1
- package/dist/core/test/background-runs.js +189 -160
- package/dist/core/test/background-runs.js.map +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.js +71 -99
- package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
- package/dist/sdk/compose.js +51 -42
- package/dist/sdk/compose.js.map +1 -1
- package/docs/AGENT_GUIDE.md +2 -2
- package/docs/ARCHITECTURE.md +2 -2
- package/docs/COMMANDS.md +8 -4
- package/docs/CONFIGURATION.md +1 -1
- package/docs/EXTENSIONS.md +12 -12
- package/docs/ONBOARDING.md +4 -2
- package/docs/README.md +2 -0
- package/docs/examples/starter-extension/README.md +11 -10
- package/marketplace.json +3 -3
- package/package.json +2 -2
- package/packages/pm-beads/extensions/beads/runtime.ts +240 -167
- package/packages/pm-guide-shell/extensions/guide-shell/runtime.ts +65 -58
- package/packages/pm-todos/extensions/todos/runtime.ts +65 -42
- package/plugins/pm-claude/.claude-plugin/plugin.json +2 -2
- package/plugins/pm-claude/README.md +6 -3
- package/plugins/pm-claude/commands/pm-init.md +1 -1
- package/dist/cli-bundle/chunks/activity-AW6XVFH6.js +0 -16
- package/dist/cli-bundle/chunks/aggregate-JTEF4BP7.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-22WKIL3H.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-2D4HATP2.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-3J6JRJ3I.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-3K2M5OYU.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-3S2KT7NG.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-3VGN2UWE.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-3XZCOZ5J.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-4XOIEKSD.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-55SNVXRQ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-5CGRF3L5.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-7R4QEMZZ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-AXIDKKAT.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-BDTISOSD.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-BZCEN4JA.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-CF7RL6FR.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-CWFNTKQJ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-FFMQB7WR.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-HXTQJXWT.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-IPYBJWTE.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-IZBR4NRW.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-JLM7BHI7.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-JSU5P7VS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-JWXRETDF.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-KNPEF7QG.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-MDPEOIGN.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-NFDPYAIP.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-NUHHPVVS.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-NWMZWYYB.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-OTUHB4HS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-RGEMWD6Q.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-RLDHZHQS.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-RMMQ74TG.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-RVUALSJF.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-TP5Q5ZD3.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-V3NOKJF2.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-VARHOHYV.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-WYDHYJPO.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-YITK2PJ6.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-ZETXE4SE.js.map +0 -1
- package/dist/cli-bundle/chunks/close-E6ZZGCJY.js +0 -14
- package/dist/cli-bundle/chunks/close-many-BG5QQIDQ.js.map +0 -7
- package/dist/cli-bundle/chunks/close-many-LDRVEQY2.js.map +0 -1
- package/dist/cli-bundle/chunks/config-DMSU64QO.js +0 -1541
- package/dist/cli-bundle/chunks/config-DMSU64QO.js.map +0 -7
- package/dist/cli-bundle/chunks/config-QH2DICD6.js +0 -1531
- package/dist/cli-bundle/chunks/config-QH2DICD6.js.map +0 -1
- package/dist/cli-bundle/chunks/contracts-HN7ABKLP.js.map +0 -7
- package/dist/cli-bundle/chunks/contracts-W4FZVVD6.js.map +0 -1
- package/dist/cli-bundle/chunks/create-OH3BDGBB.js +0 -28
- package/dist/cli-bundle/chunks/get-A7MAOHCU.js.map +0 -7
- package/dist/cli-bundle/chunks/get-DSDEKJ3L.js.map +0 -1
- package/dist/cli-bundle/chunks/health-3IPFLKXB.js.map +0 -1
- package/dist/cli-bundle/chunks/health-GZXGBZ36.js.map +0 -7
- package/dist/cli-bundle/chunks/history-WSZHY3PN.js +0 -18
- package/dist/cli-bundle/chunks/history-compact-2WRZ2WK4.js.map +0 -7
- package/dist/cli-bundle/chunks/history-compact-HR7BB4LR.js.map +0 -1
- package/dist/cli-bundle/chunks/history-redact-MP6CH7U5.js +0 -19
- package/dist/cli-bundle/chunks/history-repair-LCMOS45X.js.map +0 -7
- package/dist/cli-bundle/chunks/history-repair-XA3LC4GA.js.map +0 -1
- package/dist/cli-bundle/chunks/init-PAX32BJA.js +0 -22
- package/dist/cli-bundle/chunks/next-BCERKDUR.js.map +0 -7
- package/dist/cli-bundle/chunks/next-FYTQF6HG.js.map +0 -1
- package/dist/cli-bundle/chunks/plan-4WXEQCTN.js.map +0 -7
- package/dist/cli-bundle/chunks/plan-RKZHQVXR.js.map +0 -1
- package/dist/cli-bundle/chunks/profile-4OMM32CD.js.map +0 -7
- package/dist/cli-bundle/chunks/profile-QLER5ENE.js.map +0 -1
- package/dist/cli-bundle/chunks/register-list-query-7LV46VAU.js +0 -400
- package/dist/cli-bundle/chunks/register-list-query-7LV46VAU.js.map +0 -1
- package/dist/cli-bundle/chunks/register-list-query-SNG5PGA4.js +0 -410
- package/dist/cli-bundle/chunks/register-list-query-SNG5PGA4.js.map +0 -7
- package/dist/cli-bundle/chunks/register-mutation-ENNDUAZG.js.map +0 -1
- package/dist/cli-bundle/chunks/register-mutation-KK7PHYYU.js.map +0 -7
- package/dist/cli-bundle/chunks/register-operations-C6OWLDSH.js +0 -486
- package/dist/cli-bundle/chunks/register-operations-C6OWLDSH.js.map +0 -1
- package/dist/cli-bundle/chunks/register-operations-HZ6XERQG.js.map +0 -7
- package/dist/cli-bundle/chunks/register-setup-P67EMBDJ.js.map +0 -1
- package/dist/cli-bundle/chunks/register-setup-ZKJ53RS7.js.map +0 -7
- package/dist/cli-bundle/chunks/restore-YALDGTQR.js +0 -17
- package/dist/cli-bundle/chunks/telemetry-BZUF6H7G.js.map +0 -1
- package/dist/cli-bundle/chunks/telemetry-GAHHQTOS.js.map +0 -7
- package/dist/cli-bundle/chunks/test-all-L2MDDUCA.js +0 -358
- package/dist/cli-bundle/chunks/test-all-L2MDDUCA.js.map +0 -1
- package/dist/cli-bundle/chunks/test-all-RBZ6DLU2.js +0 -361
- package/dist/cli-bundle/chunks/test-all-RBZ6DLU2.js.map +0 -7
- package/dist/cli-bundle/chunks/test-runs-PLRAZEFW.js.map +0 -7
- package/dist/cli-bundle/chunks/test-runs-UXIXPDKU.js.map +0 -1
- package/dist/cli-bundle/chunks/update-AMRSOIWP.js +0 -24
- package/dist/cli-bundle/chunks/validate-MTUVL5VC.js.map +0 -7
- package/dist/cli-bundle/chunks/validate-X5W76YJL.js.map +0 -1
- /package/dist/cli-bundle/chunks/{activity-DBLQVIP6.js.map → activity-5YWLSPGE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-AW6XVFH6.js.map → activity-BIML7K2D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-LOVPGVPT.js.map → append-EZESUVJT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{append-QCFJSDFL.js.map → append-JFG4WQMG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BHO33VBQ.js.map → chunk-3W2HJKJX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-4DUVCVLZ.js.map → chunk-4PFVUUYV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-IJYK2T43.js.map → chunk-5E7N4T2Z.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NKZAN7BD.js.map → chunk-5IZUBZBR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-NOLPZMSV.js.map → chunk-5JIWFWOZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6AQZPVHQ.js.map → chunk-6CDCWKSX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LB6TP6MC.js.map → chunk-6NYJGMTY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SLMUGTK3.js.map → chunk-7CLLC75T.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-2466X6E4.js.map → chunk-7LYO6S5A.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-W4ULYO7Z.js.map → chunk-A3OQ7TFW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GJ326ZKX.js.map → chunk-ER4ME5U2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HZZEHPRG.js.map → chunk-ERG65A2L.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-L5OEFZQG.js.map → chunk-FH2H3CBD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-JPECA746.js.map → chunk-FUFFPIYA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-27BXPBAY.js.map → chunk-GUYNUXQT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-MAUKX7JC.js.map → chunk-GVJE5T7Q.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-ZRP4VG5U.js.map → chunk-JBZ2NTKX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EJUDVUYZ.js.map → chunk-KEZOIPCR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HYTGA6GI.js.map → chunk-MDHWWBNZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-N74UMG5H.js.map → chunk-MEZZZBYX.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SDR5J34Q.js.map → chunk-NZ7QIUP5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-DDPTYJIM.js.map → chunk-P5L7Z2O6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-OGXLACHC.js.map → chunk-SU2E4AWU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-HPPFYYOV.js.map → chunk-SU3TB4NS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-G7I7DEZA.js.map → chunk-T4XBKJ3F.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-VICZWYGZ.js.map → chunk-U5TR4N7J.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-EVMTBV6V.js.map → chunk-UMNQZS4H.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-A7FPBAQS.js.map → chunk-WJA3PXW7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QCWF6IYD.js.map → chunk-YSDFIY7N.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-UZIWVBE6.js.map → chunk-YSGTMDWC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-64HNBBFQ.js.map → chunk-Z5F6XZXE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-AVEE5EHK.js.map → chunk-Z7RPDF2Y.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-T3GCKV7C.js.map → claim-2BGBGSVI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{claim-EMQLYPRW.js.map → claim-5GU7OE67.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-E6ZZGCJY.js.map → close-6YODBUIV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-TQYAAFJP.js.map → close-AFVKPR57.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-YUXJRZPQ.js.map → comments-DNWHEBOS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{comments-QCKR2YY2.js.map → comments-RW23R3VE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-B6275WPX.js.map → context-OYXRGY7S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-OCZ3FJ4Z.js.map → context-PKCEHQY3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-DEM4DATS.js.map → copy-6XOR3HKN.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{copy-BTJOSKKT.js.map → copy-I4NCLBR4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-RLRJMRTM.js.map → create-PM45M6PE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-OH3BDGBB.js.map → create-Z7YCH3BE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-BHK7VB2Z.js.map → delete-7YXHYG67.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{delete-LSVHAB4Y.js.map → delete-LPISP43T.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-XHYXWEPT.js.map → deps-N2T26FME.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{deps-4UDFJRUA.js.map → deps-WATKQDE3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-GYZNVS26.js.map → docs-6LQ3GLM7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{docs-26S44RXU.js.map → docs-Z3X6JZLT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{eval-UYF3ZPVO.js.map → eval-6DCLG52D.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{eval-PGRVIJQU.js.map → eval-Y3ZCUTHK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-CPSLJQVE.js.map → extension-BNINIMT7.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-CXJ6RELI.js.map → extension-QWE4YYK5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-NQHEXUZD.js.map → files-6SGKHS6O.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{files-MBNICQFM.js.map → files-FUYPSOFJ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-DWYIG7GU.js.map → focus-2Q3K76G2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{focus-XZW5423D.js.map → focus-ATLBWXXD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-LPVMKJQJ.js.map → gc-RUYEMNRF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{gc-7GQYOS2G.js.map → gc-TDWSDR66.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-WSZHY3PN.js.map → history-CGNQJXFE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-NERDJNUB.js.map → history-SGRRS72R.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-O3NBCNWC.js.map → history-redact-IRL7WJ3E.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-MP6CH7U5.js.map → history-redact-N3JK7VBW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-64XDLQJB.js.map → init-4GESW7RM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-PAX32BJA.js.map → init-XIDPABA4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-LPKCSJX7.js.map → learnings-4BHWFFUV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{learnings-JR6MA5TI.js.map → learnings-4FJY7WIW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-G5Y65VF6.js.map → list-472TIOVK.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-DNBJVO3E.js.map → list-D7BF5CL2.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-2BMU3VVQ.js.map → notes-6KNOSLIT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{notes-6KTGO2OJ.js.map → notes-W4UEICGF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-4MHZFJ2E.js.map → restore-44IHMMZZ.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-YALDGTQR.js.map → restore-EXHU34EU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{scheduling-shortcuts-LB6DOLRL.js.map → scheduling-shortcuts-OLHNLAZY.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{scheduling-shortcuts-UTOYKLXQ.js.map → scheduling-shortcuts-TSBK4AY5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-73HR2OJW.js.map → schema-IB2NZZWD.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-U6LJKSIR.js.map → schema-VBCELP5G.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-AXPXKZER.js.map → search-7UBETML4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-KILGT37L.js.map → search-R227JOL6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-W5KNVJWQ.js.map → stats-FAG7COEH.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{stats-PSYVVTNZ.js.map → stats-MCK7PLYS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-PWDIZ255.js.map → test-QY44WAMR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-ACD52Z3S.js.map → test-SY76DZTO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-AMRSOIWP.js.map → update-A7EICML6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-KFX2SIAC.js.map → update-IKJZWLQC.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{upgrade-BRL6KCOJ.js.map → upgrade-NWMR3VQL.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{upgrade-HAK6JG2O.js.map → upgrade-VU46BLJZ.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// dist/core/fs/fs-utils.js
|
|
2
2
|
|
|
3
|
-
!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]="
|
|
3
|
+
!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]="aeaf9c80-302b-561b-892d-b98b811d424b")}catch(e){}}();
|
|
4
4
|
import * as fs from "node:fs/promises";
|
|
5
5
|
import path from "node:path";
|
|
6
6
|
import crypto from "node:crypto";
|
|
@@ -787,6 +787,13 @@ function normalizeItemTypeCommandOptionPolicies(policies, resolvePolicyCommand)
|
|
|
787
787
|
}
|
|
788
788
|
return [...dedupedByKey.values()].sort((left, right) => left.command === right.command ? left.option.localeCompare(right.option) : left.command.localeCompare(right.command));
|
|
789
789
|
}
|
|
790
|
+
function normalizeOptionalStringList(values, preservePresence) {
|
|
791
|
+
return preservePresence ? normalizeItemTypeStringList(values) : void 0;
|
|
792
|
+
}
|
|
793
|
+
function optionalNonEmptyString(value) {
|
|
794
|
+
const normalized = value?.trim();
|
|
795
|
+
return normalized && normalized.length > 0 ? normalized : void 0;
|
|
796
|
+
}
|
|
790
797
|
function normalizeItemTypeDefinition(definition, options = {}) {
|
|
791
798
|
const resolvePolicyCommand = options.resolvePolicyCommand ?? keepPolicyCommand;
|
|
792
799
|
const name = definition.name.trim();
|
|
@@ -797,20 +804,17 @@ function normalizeItemTypeDefinition(definition, options = {}) {
|
|
|
797
804
|
const hasRequiredCreateRepeatables = definition.required_create_repeatables !== void 0;
|
|
798
805
|
const hasOptions = definition.options !== void 0;
|
|
799
806
|
const hasCommandOptionPolicies = definition.command_option_policies !== void 0;
|
|
800
|
-
const folder = definition.folder?.trim();
|
|
801
|
-
const description = definition.description?.trim();
|
|
802
|
-
const defaultStatus = definition.default_status?.trim();
|
|
803
807
|
const aliases = normalizeItemTypeStringList(definition.aliases);
|
|
804
808
|
const normalizedOptions = (definition.options ?? []).map((option) => normalizeItemTypeOption(option)).filter((option) => option !== null).sort((left, right) => left.key.localeCompare(right.key));
|
|
805
809
|
const commandOptionPolicies = normalizeItemTypeCommandOptionPolicies(definition.command_option_policies, resolvePolicyCommand);
|
|
806
810
|
return {
|
|
807
811
|
name,
|
|
808
|
-
description:
|
|
809
|
-
default_status:
|
|
810
|
-
folder:
|
|
812
|
+
description: optionalNonEmptyString(definition.description),
|
|
813
|
+
default_status: optionalNonEmptyString(definition.default_status),
|
|
814
|
+
folder: optionalNonEmptyString(definition.folder),
|
|
811
815
|
aliases: aliases.length > 0 ? aliases : void 0,
|
|
812
|
-
required_create_fields:
|
|
813
|
-
required_create_repeatables:
|
|
816
|
+
required_create_fields: normalizeOptionalStringList(definition.required_create_fields, hasRequiredCreateFields),
|
|
817
|
+
required_create_repeatables: normalizeOptionalStringList(definition.required_create_repeatables, hasRequiredCreateRepeatables),
|
|
814
818
|
options: hasOptions ? normalizedOptions : void 0,
|
|
815
819
|
command_option_policies: hasCommandOptionPolicies ? commandOptionPolicies : void 0
|
|
816
820
|
};
|
|
@@ -1125,6 +1129,58 @@ function toSlugToken(value) {
|
|
|
1125
1129
|
function normalizeTypeDefinition(definition) {
|
|
1126
1130
|
return normalizeItemTypeDefinition(definition, { resolvePolicyCommand: strictPolicyCommand });
|
|
1127
1131
|
}
|
|
1132
|
+
function readStringArray(record, key) {
|
|
1133
|
+
const value = record[key];
|
|
1134
|
+
return Array.isArray(value) ? value.filter((entry) => typeof entry === "string") : void 0;
|
|
1135
|
+
}
|
|
1136
|
+
function coerceOptionDefinitionFromUnknown(raw) {
|
|
1137
|
+
if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
|
|
1138
|
+
return null;
|
|
1139
|
+
}
|
|
1140
|
+
const optionRecord = raw;
|
|
1141
|
+
if (typeof optionRecord.key !== "string") {
|
|
1142
|
+
return null;
|
|
1143
|
+
}
|
|
1144
|
+
return {
|
|
1145
|
+
key: optionRecord.key,
|
|
1146
|
+
values: readStringArray(optionRecord, "values") ?? [],
|
|
1147
|
+
required: optionRecord.required === void 0 ? void 0 : Boolean(optionRecord.required),
|
|
1148
|
+
aliases: readStringArray(optionRecord, "aliases"),
|
|
1149
|
+
description: typeof optionRecord.description === "string" ? optionRecord.description : void 0
|
|
1150
|
+
};
|
|
1151
|
+
}
|
|
1152
|
+
function coerceCommandOptionPolicyFromUnknown(raw) {
|
|
1153
|
+
if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
|
|
1154
|
+
return null;
|
|
1155
|
+
}
|
|
1156
|
+
const policyRecord = raw;
|
|
1157
|
+
if (typeof policyRecord.command !== "string" || typeof policyRecord.option !== "string") {
|
|
1158
|
+
return null;
|
|
1159
|
+
}
|
|
1160
|
+
const normalizedCommand = policyRecord.command.trim().toLowerCase();
|
|
1161
|
+
if (normalizedCommand !== "create" && normalizedCommand !== "update") {
|
|
1162
|
+
return null;
|
|
1163
|
+
}
|
|
1164
|
+
return {
|
|
1165
|
+
command: normalizedCommand,
|
|
1166
|
+
option: policyRecord.option,
|
|
1167
|
+
required: policyRecord.required === void 0 ? void 0 : Boolean(policyRecord.required),
|
|
1168
|
+
visible: policyRecord.visible === void 0 ? void 0 : Boolean(policyRecord.visible),
|
|
1169
|
+
enabled: policyRecord.enabled === void 0 ? void 0 : Boolean(policyRecord.enabled)
|
|
1170
|
+
};
|
|
1171
|
+
}
|
|
1172
|
+
function coerceOptionDefinitionsFromRecord(record) {
|
|
1173
|
+
if (!Array.isArray(record.options)) {
|
|
1174
|
+
return void 0;
|
|
1175
|
+
}
|
|
1176
|
+
return record.options.map((entry) => coerceOptionDefinitionFromUnknown(entry)).filter((entry) => entry !== null);
|
|
1177
|
+
}
|
|
1178
|
+
function coerceCommandOptionPoliciesFromRecord(record) {
|
|
1179
|
+
if (!Array.isArray(record.command_option_policies)) {
|
|
1180
|
+
return void 0;
|
|
1181
|
+
}
|
|
1182
|
+
return record.command_option_policies.map((entry) => coerceCommandOptionPolicyFromUnknown(entry)).filter((entry) => entry !== null);
|
|
1183
|
+
}
|
|
1128
1184
|
function coerceTypeDefinitionFromUnknown(raw) {
|
|
1129
1185
|
if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
|
|
1130
1186
|
return null;
|
|
@@ -1137,65 +1193,30 @@ function coerceTypeDefinitionFromUnknown(raw) {
|
|
|
1137
1193
|
const folder = typeof record.folder === "string" ? record.folder : void 0;
|
|
1138
1194
|
const description = typeof record.description === "string" ? record.description : void 0;
|
|
1139
1195
|
const defaultStatus = typeof record.default_status === "string" ? record.default_status : void 0;
|
|
1140
|
-
const aliases = Array.isArray(record.aliases) ? record.aliases.filter((value) => typeof value === "string") : void 0;
|
|
1141
|
-
const requiredCreateFields = Array.isArray(record.required_create_fields) ? record.required_create_fields.filter((value) => typeof value === "string") : void 0;
|
|
1142
|
-
const requiredCreateRepeatables = Array.isArray(record.required_create_repeatables) ? record.required_create_repeatables.filter((value) => typeof value === "string") : void 0;
|
|
1143
|
-
let options;
|
|
1144
|
-
if (Array.isArray(record.options)) {
|
|
1145
|
-
options = [];
|
|
1146
|
-
for (const entry of record.options) {
|
|
1147
|
-
if (typeof entry !== "object" || entry === null || Array.isArray(entry)) {
|
|
1148
|
-
continue;
|
|
1149
|
-
}
|
|
1150
|
-
const optionRecord = entry;
|
|
1151
|
-
if (typeof optionRecord.key !== "string") {
|
|
1152
|
-
continue;
|
|
1153
|
-
}
|
|
1154
|
-
options.push({
|
|
1155
|
-
key: optionRecord.key,
|
|
1156
|
-
values: Array.isArray(optionRecord.values) ? optionRecord.values.filter((value) => typeof value === "string") : [],
|
|
1157
|
-
required: optionRecord.required === void 0 ? void 0 : Boolean(optionRecord.required),
|
|
1158
|
-
aliases: Array.isArray(optionRecord.aliases) ? optionRecord.aliases.filter((value) => typeof value === "string") : void 0,
|
|
1159
|
-
description: typeof optionRecord.description === "string" ? optionRecord.description : void 0
|
|
1160
|
-
});
|
|
1161
|
-
}
|
|
1162
|
-
}
|
|
1163
|
-
let commandOptionPolicies;
|
|
1164
|
-
if (Array.isArray(record.command_option_policies)) {
|
|
1165
|
-
commandOptionPolicies = [];
|
|
1166
|
-
for (const entry of record.command_option_policies) {
|
|
1167
|
-
if (typeof entry !== "object" || entry === null || Array.isArray(entry)) {
|
|
1168
|
-
continue;
|
|
1169
|
-
}
|
|
1170
|
-
const policyRecord = entry;
|
|
1171
|
-
if (typeof policyRecord.command !== "string" || typeof policyRecord.option !== "string") {
|
|
1172
|
-
continue;
|
|
1173
|
-
}
|
|
1174
|
-
const normalizedCommand = policyRecord.command.trim().toLowerCase();
|
|
1175
|
-
if (normalizedCommand !== "create" && normalizedCommand !== "update") {
|
|
1176
|
-
continue;
|
|
1177
|
-
}
|
|
1178
|
-
commandOptionPolicies.push({
|
|
1179
|
-
command: normalizedCommand,
|
|
1180
|
-
option: policyRecord.option,
|
|
1181
|
-
required: policyRecord.required === void 0 ? void 0 : Boolean(policyRecord.required),
|
|
1182
|
-
visible: policyRecord.visible === void 0 ? void 0 : Boolean(policyRecord.visible),
|
|
1183
|
-
enabled: policyRecord.enabled === void 0 ? void 0 : Boolean(policyRecord.enabled)
|
|
1184
|
-
});
|
|
1185
|
-
}
|
|
1186
|
-
}
|
|
1187
1196
|
return {
|
|
1188
1197
|
name,
|
|
1189
1198
|
description,
|
|
1190
1199
|
default_status: defaultStatus,
|
|
1191
1200
|
folder,
|
|
1192
|
-
aliases,
|
|
1193
|
-
required_create_fields:
|
|
1194
|
-
required_create_repeatables:
|
|
1195
|
-
options,
|
|
1196
|
-
command_option_policies:
|
|
1201
|
+
aliases: readStringArray(record, "aliases"),
|
|
1202
|
+
required_create_fields: readStringArray(record, "required_create_fields"),
|
|
1203
|
+
required_create_repeatables: readStringArray(record, "required_create_repeatables"),
|
|
1204
|
+
options: coerceOptionDefinitionsFromRecord(record),
|
|
1205
|
+
command_option_policies: coerceCommandOptionPoliciesFromRecord(record)
|
|
1197
1206
|
};
|
|
1198
1207
|
}
|
|
1208
|
+
function resolveDefinitionRequiredCreateFields(normalizedDefinition, existing) {
|
|
1209
|
+
return normalizedDefinition.required_create_fields ? normalizeItemTypeStringList(normalizedDefinition.required_create_fields) : existing?.required_create_fields ?? [];
|
|
1210
|
+
}
|
|
1211
|
+
function resolveDefinitionRequiredCreateRepeatables(normalizedDefinition, existing) {
|
|
1212
|
+
return normalizedDefinition.required_create_repeatables ? normalizeItemTypeStringList(normalizedDefinition.required_create_repeatables) : existing?.required_create_repeatables ?? [];
|
|
1213
|
+
}
|
|
1214
|
+
function resolveDefinitionOptions(normalizedDefinition, existing) {
|
|
1215
|
+
return normalizedDefinition.options ? normalizedDefinition.options : existing?.options ? [...existing.options] : [];
|
|
1216
|
+
}
|
|
1217
|
+
function resolveDefinitionCommandOptionPolicies(normalizedDefinition, existing) {
|
|
1218
|
+
return normalizedDefinition.command_option_policies ? normalizedDefinition.command_option_policies : existing?.command_option_policies ? [...existing.command_option_policies] : [];
|
|
1219
|
+
}
|
|
1199
1220
|
function applyTypeDefinitions(source, target) {
|
|
1200
1221
|
for (const rawDefinition of source) {
|
|
1201
1222
|
const normalizedDefinition = normalizeTypeDefinition(rawDefinition);
|
|
@@ -1210,10 +1231,6 @@ function applyTypeDefinitions(source, target) {
|
|
|
1210
1231
|
...existing?.aliases ?? [],
|
|
1211
1232
|
...normalizedDefinition.aliases ?? []
|
|
1212
1233
|
]);
|
|
1213
|
-
const requiredCreateFields = normalizedDefinition.required_create_fields ? normalizeItemTypeStringList(normalizedDefinition.required_create_fields) : existing?.required_create_fields ?? [];
|
|
1214
|
-
const requiredCreateRepeatables = normalizedDefinition.required_create_repeatables ? normalizeItemTypeStringList(normalizedDefinition.required_create_repeatables) : existing?.required_create_repeatables ?? [];
|
|
1215
|
-
const options = normalizedDefinition.options ? normalizedDefinition.options : existing?.options ? [...existing.options] : [];
|
|
1216
|
-
const commandOptionPolicies = normalizedDefinition.command_option_policies ? normalizedDefinition.command_option_policies : existing?.command_option_policies ? [...existing.command_option_policies] : [];
|
|
1217
1234
|
const defaultStatus = normalizedDefinition.default_status ?? existing?.default_status;
|
|
1218
1235
|
const description = normalizedDefinition.description ?? existing?.description;
|
|
1219
1236
|
target.set(lowerName, {
|
|
@@ -1222,10 +1239,10 @@ function applyTypeDefinitions(source, target) {
|
|
|
1222
1239
|
...defaultStatus ? { default_status: defaultStatus } : {},
|
|
1223
1240
|
folder,
|
|
1224
1241
|
aliases,
|
|
1225
|
-
required_create_fields:
|
|
1226
|
-
required_create_repeatables:
|
|
1227
|
-
options,
|
|
1228
|
-
command_option_policies:
|
|
1242
|
+
required_create_fields: resolveDefinitionRequiredCreateFields(normalizedDefinition, existing),
|
|
1243
|
+
required_create_repeatables: resolveDefinitionRequiredCreateRepeatables(normalizedDefinition, existing),
|
|
1244
|
+
options: resolveDefinitionOptions(normalizedDefinition, existing),
|
|
1245
|
+
command_option_policies: resolveDefinitionCommandOptionPolicies(normalizedDefinition, existing)
|
|
1229
1246
|
});
|
|
1230
1247
|
}
|
|
1231
1248
|
}
|
|
@@ -1353,6 +1370,29 @@ function resolveCommandOptionPolicyState(typeDefinition, command, baseRequiredOp
|
|
|
1353
1370
|
errors
|
|
1354
1371
|
};
|
|
1355
1372
|
}
|
|
1373
|
+
function buildTypeOptionAliasMap(typeDefinition) {
|
|
1374
|
+
const optionByAlias = /* @__PURE__ */ new Map();
|
|
1375
|
+
for (const option of typeDefinition.options) {
|
|
1376
|
+
optionByAlias.set(option.key.toLowerCase(), option);
|
|
1377
|
+
for (const alias of option.aliases ?? []) {
|
|
1378
|
+
optionByAlias.set(alias.toLowerCase(), option);
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1381
|
+
return optionByAlias;
|
|
1382
|
+
}
|
|
1383
|
+
function resolveTypeOptionValue(optionDefinition, trimmedValue, errors) {
|
|
1384
|
+
const allowedValues = optionDefinition.values;
|
|
1385
|
+
if (allowedValues.length === 0) {
|
|
1386
|
+
return trimmedValue;
|
|
1387
|
+
}
|
|
1388
|
+
const valueLookup = new Map(allowedValues.map((value) => [value.toLowerCase(), value]));
|
|
1389
|
+
const canonical = valueLookup.get(trimmedValue.toLowerCase());
|
|
1390
|
+
if (!canonical) {
|
|
1391
|
+
errors.push(`Invalid value "${trimmedValue}" for type option "${optionDefinition.key}". Allowed: ${allowedValues.join(", ")}`);
|
|
1392
|
+
return void 0;
|
|
1393
|
+
}
|
|
1394
|
+
return canonical;
|
|
1395
|
+
}
|
|
1356
1396
|
function validateTypeOptions(typeName, rawTypeOptions, registry) {
|
|
1357
1397
|
const typeDefinition = resolveTypeDefinition(typeName, registry);
|
|
1358
1398
|
if (!typeDefinition) {
|
|
@@ -1362,13 +1402,7 @@ function validateTypeOptions(typeName, rawTypeOptions, registry) {
|
|
|
1362
1402
|
};
|
|
1363
1403
|
}
|
|
1364
1404
|
const errors = [];
|
|
1365
|
-
const optionByAlias =
|
|
1366
|
-
for (const option of typeDefinition.options) {
|
|
1367
|
-
optionByAlias.set(option.key.toLowerCase(), option);
|
|
1368
|
-
for (const alias of option.aliases ?? []) {
|
|
1369
|
-
optionByAlias.set(alias.toLowerCase(), option);
|
|
1370
|
-
}
|
|
1371
|
-
}
|
|
1405
|
+
const optionByAlias = buildTypeOptionAliasMap(typeDefinition);
|
|
1372
1406
|
const normalized = {};
|
|
1373
1407
|
for (const [rawKey, rawValue] of Object.entries(rawTypeOptions ?? {})) {
|
|
1374
1408
|
const trimmedKey = rawKey.trim();
|
|
@@ -1387,16 +1421,9 @@ function validateTypeOptions(typeName, rawTypeOptions, registry) {
|
|
|
1387
1421
|
errors.push(typeDefinition.options.length > 0 ? `Unknown type option "${trimmedKey}" for type "${typeDefinition.name}". Allowed: ${allowed}` : `Type "${typeDefinition.name}" does not define any configurable type options`);
|
|
1388
1422
|
continue;
|
|
1389
1423
|
}
|
|
1390
|
-
const
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
const valueLookup = new Map(allowedValues.map((value) => [value.toLowerCase(), value]));
|
|
1394
|
-
const canonical = valueLookup.get(trimmedValue.toLowerCase());
|
|
1395
|
-
if (!canonical) {
|
|
1396
|
-
errors.push(`Invalid value "${trimmedValue}" for type option "${optionDefinition.key}". Allowed: ${allowedValues.join(", ")}`);
|
|
1397
|
-
continue;
|
|
1398
|
-
}
|
|
1399
|
-
resolvedValue = canonical;
|
|
1424
|
+
const resolvedValue = resolveTypeOptionValue(optionDefinition, trimmedValue, errors);
|
|
1425
|
+
if (resolvedValue === void 0) {
|
|
1426
|
+
continue;
|
|
1400
1427
|
}
|
|
1401
1428
|
normalized[optionDefinition.key] = resolvedValue;
|
|
1402
1429
|
}
|
|
@@ -5103,40 +5130,47 @@ function normalizeRuntimeWorkflow(workflow) {
|
|
|
5103
5130
|
canceled_status: normalizeStatusId(workflow?.canceled_status)
|
|
5104
5131
|
};
|
|
5105
5132
|
}
|
|
5133
|
+
function appendTypeWorkflowPair(record, pair) {
|
|
5134
|
+
if (!Array.isArray(pair) || pair.length !== 2) {
|
|
5135
|
+
return;
|
|
5136
|
+
}
|
|
5137
|
+
const from = normalizeStatusToken(pair[0]);
|
|
5138
|
+
const to = normalizeStatusToken(pair[1]);
|
|
5139
|
+
if (from.length === 0 || to.length === 0) {
|
|
5140
|
+
return;
|
|
5141
|
+
}
|
|
5142
|
+
if (record.pairs.some((candidate) => candidate[0] === from && candidate[1] === to)) {
|
|
5143
|
+
return;
|
|
5144
|
+
}
|
|
5145
|
+
record.pairs.push([from, to]);
|
|
5146
|
+
}
|
|
5147
|
+
function normalizedTypeWorkflowEntry(entry) {
|
|
5148
|
+
const rawType = typeof entry?.type === "string" ? entry.type.trim() : "";
|
|
5149
|
+
if (rawType.length === 0 || !Array.isArray(entry?.allowed_transitions)) {
|
|
5150
|
+
return null;
|
|
5151
|
+
}
|
|
5152
|
+
const record = { type: rawType, pairs: [], denyAll: entry.allowed_transitions.length === 0 };
|
|
5153
|
+
for (const pair of entry.allowed_transitions) {
|
|
5154
|
+
appendTypeWorkflowPair(record, pair);
|
|
5155
|
+
}
|
|
5156
|
+
return { typeKey: rawType.toLowerCase(), record };
|
|
5157
|
+
}
|
|
5106
5158
|
function normalizeTypeWorkflowDefinitions(workflows) {
|
|
5107
5159
|
if (!Array.isArray(workflows) || workflows.length === 0) {
|
|
5108
5160
|
return void 0;
|
|
5109
5161
|
}
|
|
5110
5162
|
const byTypeKey = /* @__PURE__ */ new Map();
|
|
5111
5163
|
for (const entry of workflows) {
|
|
5112
|
-
const
|
|
5113
|
-
if (
|
|
5114
|
-
continue;
|
|
5115
|
-
}
|
|
5116
|
-
if (!Array.isArray(entry?.allowed_transitions)) {
|
|
5164
|
+
const normalized2 = normalizedTypeWorkflowEntry(entry);
|
|
5165
|
+
if (normalized2 === null) {
|
|
5117
5166
|
continue;
|
|
5118
5167
|
}
|
|
5119
|
-
const
|
|
5120
|
-
|
|
5121
|
-
const
|
|
5122
|
-
|
|
5123
|
-
record.denyAll = true;
|
|
5168
|
+
const record = byTypeKey.get(normalized2.typeKey) ?? normalized2.record;
|
|
5169
|
+
record.denyAll ||= normalized2.record.denyAll;
|
|
5170
|
+
for (const pair of normalized2.record.pairs) {
|
|
5171
|
+
appendTypeWorkflowPair(record, pair);
|
|
5124
5172
|
}
|
|
5125
|
-
|
|
5126
|
-
if (!Array.isArray(pair) || pair.length !== 2) {
|
|
5127
|
-
continue;
|
|
5128
|
-
}
|
|
5129
|
-
const from = normalizeStatusToken(pair[0]);
|
|
5130
|
-
const to = normalizeStatusToken(pair[1]);
|
|
5131
|
-
if (from.length === 0 || to.length === 0) {
|
|
5132
|
-
continue;
|
|
5133
|
-
}
|
|
5134
|
-
if (record.pairs.some((candidate) => candidate[0] === from && candidate[1] === to)) {
|
|
5135
|
-
continue;
|
|
5136
|
-
}
|
|
5137
|
-
record.pairs.push([from, to]);
|
|
5138
|
-
}
|
|
5139
|
-
byTypeKey.set(typeKey, record);
|
|
5173
|
+
byTypeKey.set(normalized2.typeKey, record);
|
|
5140
5174
|
}
|
|
5141
5175
|
const normalized = [];
|
|
5142
5176
|
for (const record of byTypeKey.values()) {
|
|
@@ -5184,70 +5218,81 @@ function normalizeRuntimeFieldDefinition(definition) {
|
|
|
5184
5218
|
allow_unset: definition.allow_unset !== false
|
|
5185
5219
|
};
|
|
5186
5220
|
}
|
|
5221
|
+
function normalizeRuntimeStatusDefinitions(statusesSource) {
|
|
5222
|
+
const dedupedById = /* @__PURE__ */ new Map();
|
|
5223
|
+
for (const [index, definition] of statusesSource.entries()) {
|
|
5224
|
+
const normalized = normalizeRuntimeStatusDefinition(definition, index);
|
|
5225
|
+
if (normalized) {
|
|
5226
|
+
dedupedById.set(normalized.id, normalized);
|
|
5227
|
+
}
|
|
5228
|
+
}
|
|
5229
|
+
const values = sortRuntimeStatusDefinitions([...dedupedById.values()]);
|
|
5230
|
+
if (values.length > 0) {
|
|
5231
|
+
return values;
|
|
5232
|
+
}
|
|
5233
|
+
return sortRuntimeStatusDefinitions(DEFAULT_RUNTIME_STATUS_DEFINITIONS.map((definition, index) => normalizeRuntimeStatusDefinition(definition, index)).filter((definition) => definition !== null));
|
|
5234
|
+
}
|
|
5235
|
+
function sortRuntimeStatusDefinitions(definitions) {
|
|
5236
|
+
return definitions.sort((left, right) => left.order === right.order ? left.id.localeCompare(right.id) : left.order - right.order);
|
|
5237
|
+
}
|
|
5238
|
+
function normalizeRuntimeFieldDefinitions(fieldsSource) {
|
|
5239
|
+
const dedupedByKey = /* @__PURE__ */ new Map();
|
|
5240
|
+
for (const definition of fieldsSource ?? []) {
|
|
5241
|
+
const normalized = normalizeRuntimeFieldDefinition(definition);
|
|
5242
|
+
if (normalized) {
|
|
5243
|
+
dedupedByKey.set(normalized.key, normalized);
|
|
5244
|
+
}
|
|
5245
|
+
}
|
|
5246
|
+
return [...dedupedByKey.values()].sort((left, right) => left.key.localeCompare(right.key));
|
|
5247
|
+
}
|
|
5248
|
+
function serializeRuntimeStatusDefinition(definition) {
|
|
5249
|
+
return {
|
|
5250
|
+
id: definition.id,
|
|
5251
|
+
aliases: definition.aliases.length > 0 ? [...definition.aliases] : void 0,
|
|
5252
|
+
roles: definition.roles.length > 0 ? [...definition.roles] : void 0,
|
|
5253
|
+
description: definition.description,
|
|
5254
|
+
order: definition.order
|
|
5255
|
+
};
|
|
5256
|
+
}
|
|
5257
|
+
function serializeRuntimeFieldDefinition(definition) {
|
|
5258
|
+
return {
|
|
5259
|
+
key: definition.key,
|
|
5260
|
+
metadata_key: definition.metadata_key !== definition.key ? definition.metadata_key : void 0,
|
|
5261
|
+
cli_flag: definition.cli_flag !== keyToDefaultCliFlag(definition.key) ? definition.cli_flag : void 0,
|
|
5262
|
+
cli_aliases: definition.cli_aliases.length > 0 ? [...definition.cli_aliases] : void 0,
|
|
5263
|
+
description: definition.description,
|
|
5264
|
+
type: definition.type,
|
|
5265
|
+
commands: [...definition.commands],
|
|
5266
|
+
repeatable: definition.repeatable === true ? true : void 0,
|
|
5267
|
+
required: definition.required === true ? true : void 0,
|
|
5268
|
+
required_on_create: definition.required_on_create === true ? true : void 0,
|
|
5269
|
+
required_types: definition.required_types.length > 0 ? [...definition.required_types] : void 0,
|
|
5270
|
+
allow_unset: definition.allow_unset === false ? false : void 0
|
|
5271
|
+
};
|
|
5272
|
+
}
|
|
5273
|
+
function normalizeUnknownFieldPolicy(policy) {
|
|
5274
|
+
const candidate = typeof policy === "string" ? policy.trim().toLowerCase() : "allow";
|
|
5275
|
+
return RUNTIME_UNKNOWN_FIELD_POLICY_SET.has(candidate) ? candidate : "allow";
|
|
5276
|
+
}
|
|
5187
5277
|
function normalizeRuntimeSchemaSettings(schema) {
|
|
5188
5278
|
const files = {
|
|
5189
5279
|
...DEFAULT_RUNTIME_SCHEMA_FILE_PATHS,
|
|
5190
5280
|
...schema?.files
|
|
5191
5281
|
};
|
|
5192
5282
|
const statusesSource = schema?.statuses && schema.statuses.length > 0 ? schema.statuses : DEFAULT_RUNTIME_STATUS_DEFINITIONS;
|
|
5193
|
-
const normalizedStatuses = (
|
|
5194
|
-
|
|
5195
|
-
for (const [index, definition] of statusesSource.entries()) {
|
|
5196
|
-
const normalized = normalizeRuntimeStatusDefinition(definition, index);
|
|
5197
|
-
if (!normalized) {
|
|
5198
|
-
continue;
|
|
5199
|
-
}
|
|
5200
|
-
dedupedById.set(normalized.id, normalized);
|
|
5201
|
-
}
|
|
5202
|
-
const values = [...dedupedById.values()].sort((left, right) => left.order === right.order ? left.id.localeCompare(right.id) : left.order - right.order);
|
|
5203
|
-
if (values.length > 0) {
|
|
5204
|
-
return values;
|
|
5205
|
-
}
|
|
5206
|
-
return DEFAULT_RUNTIME_STATUS_DEFINITIONS.map((definition, index) => normalizeRuntimeStatusDefinition(definition, index)).filter((definition) => definition !== null);
|
|
5207
|
-
})();
|
|
5208
|
-
const normalizedFields = (() => {
|
|
5209
|
-
const dedupedByKey = /* @__PURE__ */ new Map();
|
|
5210
|
-
for (const definition of schema?.fields ?? []) {
|
|
5211
|
-
const normalized = normalizeRuntimeFieldDefinition(definition);
|
|
5212
|
-
if (!normalized) {
|
|
5213
|
-
continue;
|
|
5214
|
-
}
|
|
5215
|
-
dedupedByKey.set(normalized.key, normalized);
|
|
5216
|
-
}
|
|
5217
|
-
return [...dedupedByKey.values()].sort((left, right) => left.key.localeCompare(right.key));
|
|
5218
|
-
})();
|
|
5219
|
-
const unknownFieldPolicyCandidate = typeof schema?.unknown_field_policy === "string" ? schema.unknown_field_policy.trim().toLowerCase() : "allow";
|
|
5220
|
-
const unknownFieldPolicy = RUNTIME_UNKNOWN_FIELD_POLICY_SET.has(unknownFieldPolicyCandidate) ? unknownFieldPolicyCandidate : "allow";
|
|
5283
|
+
const normalizedStatuses = normalizeRuntimeStatusDefinitions(statusesSource);
|
|
5284
|
+
const normalizedFields = normalizeRuntimeFieldDefinitions(schema?.fields);
|
|
5221
5285
|
return {
|
|
5222
5286
|
version: typeof schema?.version === "number" && Number.isFinite(schema.version) ? Math.floor(schema.version) : 1,
|
|
5223
5287
|
files,
|
|
5224
|
-
statuses: normalizedStatuses.map(
|
|
5225
|
-
|
|
5226
|
-
aliases: definition.aliases.length > 0 ? [...definition.aliases] : void 0,
|
|
5227
|
-
roles: definition.roles.length > 0 ? [...definition.roles] : void 0,
|
|
5228
|
-
description: definition.description,
|
|
5229
|
-
order: definition.order
|
|
5230
|
-
})),
|
|
5231
|
-
fields: normalizedFields.map((definition) => ({
|
|
5232
|
-
key: definition.key,
|
|
5233
|
-
metadata_key: definition.metadata_key !== definition.key ? definition.metadata_key : void 0,
|
|
5234
|
-
cli_flag: definition.cli_flag !== keyToDefaultCliFlag(definition.key) ? definition.cli_flag : void 0,
|
|
5235
|
-
cli_aliases: definition.cli_aliases.length > 0 ? [...definition.cli_aliases] : void 0,
|
|
5236
|
-
description: definition.description,
|
|
5237
|
-
type: definition.type,
|
|
5238
|
-
commands: [...definition.commands],
|
|
5239
|
-
repeatable: definition.repeatable === true ? true : void 0,
|
|
5240
|
-
required: definition.required === true ? true : void 0,
|
|
5241
|
-
required_on_create: definition.required_on_create === true ? true : void 0,
|
|
5242
|
-
required_types: definition.required_types.length > 0 ? [...definition.required_types] : void 0,
|
|
5243
|
-
allow_unset: definition.allow_unset === false ? false : void 0
|
|
5244
|
-
})),
|
|
5288
|
+
statuses: normalizedStatuses.map(serializeRuntimeStatusDefinition),
|
|
5289
|
+
fields: normalizedFields.map(serializeRuntimeFieldDefinition),
|
|
5245
5290
|
workflow: {
|
|
5246
5291
|
...DEFAULT_RUNTIME_WORKFLOW,
|
|
5247
5292
|
...normalizeRuntimeWorkflow(schema?.workflow)
|
|
5248
5293
|
},
|
|
5249
5294
|
type_workflows: normalizeTypeWorkflowDefinitions(schema?.type_workflows),
|
|
5250
|
-
unknown_field_policy:
|
|
5295
|
+
unknown_field_policy: normalizeUnknownFieldPolicy(schema?.unknown_field_policy)
|
|
5251
5296
|
};
|
|
5252
5297
|
}
|
|
5253
5298
|
function serializeJson(value) {
|
|
@@ -5604,7 +5649,7 @@ var PmCliError = class extends Error {
|
|
|
5604
5649
|
|
|
5605
5650
|
// dist/core/shared/serialization.js
|
|
5606
5651
|
import crypto2 from "node:crypto";
|
|
5607
|
-
function
|
|
5652
|
+
function sortScalarValue(value) {
|
|
5608
5653
|
if (value === null)
|
|
5609
5654
|
return null;
|
|
5610
5655
|
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
|
|
@@ -5622,6 +5667,25 @@ function sortObjectKeys(value) {
|
|
|
5622
5667
|
if (typeof value === "function") {
|
|
5623
5668
|
return `[function:${value.name || "anonymous"}]`;
|
|
5624
5669
|
}
|
|
5670
|
+
return void 0;
|
|
5671
|
+
}
|
|
5672
|
+
function sortPlainObjectKeys(value) {
|
|
5673
|
+
const sortedKeys = Object.keys(value).sort();
|
|
5674
|
+
const result = {};
|
|
5675
|
+
for (const key of sortedKeys) {
|
|
5676
|
+
const nested = value[key];
|
|
5677
|
+
if (nested === void 0) {
|
|
5678
|
+
continue;
|
|
5679
|
+
}
|
|
5680
|
+
result[key] = sortObjectKeys(nested);
|
|
5681
|
+
}
|
|
5682
|
+
return result;
|
|
5683
|
+
}
|
|
5684
|
+
function sortObjectKeys(value) {
|
|
5685
|
+
const scalarValue = sortScalarValue(value);
|
|
5686
|
+
if (scalarValue !== void 0) {
|
|
5687
|
+
return scalarValue;
|
|
5688
|
+
}
|
|
5625
5689
|
if (Array.isArray(value)) {
|
|
5626
5690
|
return value.map((entry) => sortObjectKeys(entry));
|
|
5627
5691
|
}
|
|
@@ -5635,17 +5699,7 @@ function sortObjectKeys(value) {
|
|
|
5635
5699
|
return sortObjectKeys(normalized);
|
|
5636
5700
|
}
|
|
5637
5701
|
}
|
|
5638
|
-
|
|
5639
|
-
const sortedKeys = Object.keys(obj).sort((a, b) => a.localeCompare(b));
|
|
5640
|
-
const result = {};
|
|
5641
|
-
for (const key of sortedKeys) {
|
|
5642
|
-
const nested = obj[key];
|
|
5643
|
-
if (nested === void 0) {
|
|
5644
|
-
continue;
|
|
5645
|
-
}
|
|
5646
|
-
result[key] = sortObjectKeys(nested);
|
|
5647
|
-
}
|
|
5648
|
-
return result;
|
|
5702
|
+
return sortPlainObjectKeys(value);
|
|
5649
5703
|
}
|
|
5650
5704
|
function stableStringify(value) {
|
|
5651
5705
|
return JSON.stringify(sortObjectKeys(value));
|
|
@@ -6640,29 +6694,31 @@ function normalizePmMaxVersionExceededModeSetting(value) {
|
|
|
6640
6694
|
}
|
|
6641
6695
|
return void 0;
|
|
6642
6696
|
}
|
|
6697
|
+
function normalizeExtensionPolicyList(policy, key) {
|
|
6698
|
+
return normalizeLowerStringList(policy?.[key] ?? SETTINGS_DEFAULTS.extensions.policy[key]);
|
|
6699
|
+
}
|
|
6643
6700
|
function normalizeExtensionPolicySettings(policy) {
|
|
6644
|
-
const defaults = SETTINGS_DEFAULTS.extensions.policy;
|
|
6645
6701
|
const pmMaxVersionExceededMode2 = normalizePmMaxVersionExceededModeSetting(policy?.pm_max_version_exceeded_mode);
|
|
6646
6702
|
return {
|
|
6647
6703
|
mode: normalizeExtensionPolicyMode(policy?.mode),
|
|
6648
6704
|
trust_mode: normalizeExtensionTrustMode(policy?.trust_mode),
|
|
6649
6705
|
...pmMaxVersionExceededMode2 !== void 0 ? { pm_max_version_exceeded_mode: pmMaxVersionExceededMode2 } : {},
|
|
6650
6706
|
require_provenance: policy?.require_provenance === true,
|
|
6651
|
-
trusted_extensions:
|
|
6707
|
+
trusted_extensions: normalizeExtensionPolicyList(policy, "trusted_extensions"),
|
|
6652
6708
|
default_sandbox_profile: normalizeExtensionSandboxProfile(policy?.default_sandbox_profile),
|
|
6653
|
-
allowed_extensions:
|
|
6654
|
-
blocked_extensions:
|
|
6655
|
-
allowed_capabilities:
|
|
6656
|
-
blocked_capabilities:
|
|
6657
|
-
allowed_surfaces:
|
|
6658
|
-
blocked_surfaces:
|
|
6659
|
-
allowed_commands:
|
|
6660
|
-
blocked_commands:
|
|
6661
|
-
allowed_actions:
|
|
6662
|
-
blocked_actions:
|
|
6663
|
-
allowed_services:
|
|
6664
|
-
blocked_services:
|
|
6665
|
-
extension_overrides: normalizeExtensionPolicyOverrides(policy?.extension_overrides ??
|
|
6709
|
+
allowed_extensions: normalizeExtensionPolicyList(policy, "allowed_extensions"),
|
|
6710
|
+
blocked_extensions: normalizeExtensionPolicyList(policy, "blocked_extensions"),
|
|
6711
|
+
allowed_capabilities: normalizeExtensionPolicyList(policy, "allowed_capabilities"),
|
|
6712
|
+
blocked_capabilities: normalizeExtensionPolicyList(policy, "blocked_capabilities"),
|
|
6713
|
+
allowed_surfaces: normalizeExtensionPolicyList(policy, "allowed_surfaces"),
|
|
6714
|
+
blocked_surfaces: normalizeExtensionPolicyList(policy, "blocked_surfaces"),
|
|
6715
|
+
allowed_commands: normalizeExtensionPolicyList(policy, "allowed_commands"),
|
|
6716
|
+
blocked_commands: normalizeExtensionPolicyList(policy, "blocked_commands"),
|
|
6717
|
+
allowed_actions: normalizeExtensionPolicyList(policy, "allowed_actions"),
|
|
6718
|
+
blocked_actions: normalizeExtensionPolicyList(policy, "blocked_actions"),
|
|
6719
|
+
allowed_services: normalizeExtensionPolicyList(policy, "allowed_services"),
|
|
6720
|
+
blocked_services: normalizeExtensionPolicyList(policy, "blocked_services"),
|
|
6721
|
+
extension_overrides: normalizeExtensionPolicyOverrides(policy?.extension_overrides ?? SETTINGS_DEFAULTS.extensions.policy.extension_overrides)
|
|
6666
6722
|
};
|
|
6667
6723
|
}
|
|
6668
6724
|
function normalizeValidationMetadataRequiredFields(values) {
|
|
@@ -6691,6 +6747,81 @@ function recordOrEmpty(value) {
|
|
|
6691
6747
|
function arrayOrEmpty(value) {
|
|
6692
6748
|
return Array.isArray(value) ? value : [];
|
|
6693
6749
|
}
|
|
6750
|
+
function buildValidationSettings(settings, defaults, governance) {
|
|
6751
|
+
return {
|
|
6752
|
+
...defaults.validation,
|
|
6753
|
+
...settings.validation,
|
|
6754
|
+
parent_reference: governance.parent_reference,
|
|
6755
|
+
metadata_profile: governance.metadata_profile,
|
|
6756
|
+
metadata_required_fields: normalizeValidationMetadataRequiredFields(settings.validation?.metadata_required_fields),
|
|
6757
|
+
lifecycle_stale_blocker_reason_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_stale_blocker_reason_patterns ?? defaults.validation.lifecycle_stale_blocker_reason_patterns),
|
|
6758
|
+
lifecycle_closure_like_blocked_reason_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_closure_like_blocked_reason_patterns ?? defaults.validation.lifecycle_closure_like_blocked_reason_patterns),
|
|
6759
|
+
lifecycle_closure_like_resolution_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_closure_like_resolution_patterns ?? defaults.validation.lifecycle_closure_like_resolution_patterns),
|
|
6760
|
+
lifecycle_closure_like_actual_result_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_closure_like_actual_result_patterns ?? defaults.validation.lifecycle_closure_like_actual_result_patterns),
|
|
6761
|
+
estimate_defaults_by_type: normalizeEstimateDefaultOverrides(settings.validation?.estimate_defaults_by_type)
|
|
6762
|
+
};
|
|
6763
|
+
}
|
|
6764
|
+
function buildTelemetrySettings(settings, defaults) {
|
|
6765
|
+
return {
|
|
6766
|
+
enabled: settings.telemetry?.enabled ?? defaults.telemetry.enabled,
|
|
6767
|
+
first_run_prompt_completed: settings.telemetry?.first_run_prompt_completed ?? defaults.telemetry.first_run_prompt_completed,
|
|
6768
|
+
capture_level: settings.telemetry?.capture_level ?? defaults.telemetry.capture_level,
|
|
6769
|
+
endpoint: settings.telemetry?.endpoint ?? defaults.telemetry.endpoint,
|
|
6770
|
+
installation_id: settings.telemetry?.installation_id ?? defaults.telemetry.installation_id,
|
|
6771
|
+
retention_days: settings.telemetry?.retention_days ?? defaults.telemetry.retention_days
|
|
6772
|
+
};
|
|
6773
|
+
}
|
|
6774
|
+
function buildSearchSettings(settings, defaults) {
|
|
6775
|
+
return {
|
|
6776
|
+
...defaults.search,
|
|
6777
|
+
...settings.search,
|
|
6778
|
+
mutation_refresh_policy: normalizeSearchMutationRefreshPolicy(settings.search?.mutation_refresh_policy),
|
|
6779
|
+
query_expansion: {
|
|
6780
|
+
...defaults.search.query_expansion,
|
|
6781
|
+
...settings.search?.query_expansion,
|
|
6782
|
+
enabled: normalizeSearchQueryExpansionEnabled(settings.search?.query_expansion?.enabled),
|
|
6783
|
+
provider: normalizeSearchQueryExpansionProvider(settings.search?.query_expansion?.provider)
|
|
6784
|
+
},
|
|
6785
|
+
rerank: {
|
|
6786
|
+
...defaults.search.rerank,
|
|
6787
|
+
...settings.search?.rerank,
|
|
6788
|
+
enabled: normalizeSearchRerankEnabled(settings.search?.rerank?.enabled),
|
|
6789
|
+
model: normalizeSearchRerankModel(settings.search?.rerank?.model),
|
|
6790
|
+
top_k: normalizeSearchRerankTopK(settings.search?.rerank?.top_k)
|
|
6791
|
+
}
|
|
6792
|
+
};
|
|
6793
|
+
}
|
|
6794
|
+
function buildVectorStoreSettings(settings, defaults) {
|
|
6795
|
+
return {
|
|
6796
|
+
adapter: settings.vector_store.adapter ?? defaults.vector_store.adapter,
|
|
6797
|
+
collection_name: normalizeVectorStoreCollectionName(settings.vector_store.collection_name),
|
|
6798
|
+
qdrant: { ...defaults.vector_store.qdrant, ...settings.vector_store.qdrant },
|
|
6799
|
+
lancedb: { ...defaults.vector_store.lancedb, ...settings.vector_store.lancedb }
|
|
6800
|
+
};
|
|
6801
|
+
}
|
|
6802
|
+
function normalizeSettingsItemFormat(settings, defaults) {
|
|
6803
|
+
if (settings.item_format === "json_markdown") {
|
|
6804
|
+
return "toon";
|
|
6805
|
+
}
|
|
6806
|
+
return settings.item_format ?? defaults.item_format;
|
|
6807
|
+
}
|
|
6808
|
+
function buildContextSettings(settings, defaults) {
|
|
6809
|
+
return {
|
|
6810
|
+
default_depth: settings.context?.default_depth ?? defaults.context.default_depth,
|
|
6811
|
+
activity_limit: settings.context?.activity_limit ?? defaults.context.activity_limit,
|
|
6812
|
+
stale_threshold_days: settings.context?.stale_threshold_days ?? defaults.context.stale_threshold_days,
|
|
6813
|
+
sections: {
|
|
6814
|
+
...defaults.context.sections,
|
|
6815
|
+
...settings.context?.sections
|
|
6816
|
+
}
|
|
6817
|
+
};
|
|
6818
|
+
}
|
|
6819
|
+
function buildProviderSettings(settings, defaults) {
|
|
6820
|
+
return {
|
|
6821
|
+
openai: { ...defaults.providers.openai, ...settings.providers.openai },
|
|
6822
|
+
ollama: { ...defaults.providers.ollama, ...settings.providers.ollama }
|
|
6823
|
+
};
|
|
6824
|
+
}
|
|
6694
6825
|
function normalizeItemTypeDefinitions(definitions) {
|
|
6695
6826
|
const normalized = (definitions ?? []).map((definition) => normalizeItemTypeDefinition(definition)).filter((definition) => definition !== null);
|
|
6696
6827
|
const dedupedByName = /* @__PURE__ */ new Map();
|
|
@@ -6707,7 +6838,7 @@ function mergeSettings(settings) {
|
|
|
6707
6838
|
return {
|
|
6708
6839
|
...defaults,
|
|
6709
6840
|
...settings,
|
|
6710
|
-
item_format: settings
|
|
6841
|
+
item_format: normalizeSettingsItemFormat(settings, defaults),
|
|
6711
6842
|
locks: { ...defaults.locks, ...settings.locks },
|
|
6712
6843
|
checkpoints: { ...defaults.checkpoints, ...settings.checkpoints },
|
|
6713
6844
|
output: { ...defaults.output, ...settings.output },
|
|
@@ -6719,18 +6850,7 @@ function mergeSettings(settings) {
|
|
|
6719
6850
|
...settings.history?.compact_policy
|
|
6720
6851
|
}
|
|
6721
6852
|
},
|
|
6722
|
-
validation:
|
|
6723
|
-
...defaults.validation,
|
|
6724
|
-
...settings.validation,
|
|
6725
|
-
parent_reference: governance.parent_reference,
|
|
6726
|
-
metadata_profile: governance.metadata_profile,
|
|
6727
|
-
metadata_required_fields: normalizeValidationMetadataRequiredFields(settings.validation?.metadata_required_fields),
|
|
6728
|
-
lifecycle_stale_blocker_reason_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_stale_blocker_reason_patterns ?? defaults.validation.lifecycle_stale_blocker_reason_patterns),
|
|
6729
|
-
lifecycle_closure_like_blocked_reason_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_closure_like_blocked_reason_patterns ?? defaults.validation.lifecycle_closure_like_blocked_reason_patterns),
|
|
6730
|
-
lifecycle_closure_like_resolution_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_closure_like_resolution_patterns ?? defaults.validation.lifecycle_closure_like_resolution_patterns),
|
|
6731
|
-
lifecycle_closure_like_actual_result_patterns: normalizeValidationPatternList(settings.validation?.lifecycle_closure_like_actual_result_patterns ?? defaults.validation.lifecycle_closure_like_actual_result_patterns),
|
|
6732
|
-
estimate_defaults_by_type: normalizeEstimateDefaultOverrides(settings.validation?.estimate_defaults_by_type)
|
|
6733
|
-
},
|
|
6853
|
+
validation: buildValidationSettings(settings, defaults, governance),
|
|
6734
6854
|
governance,
|
|
6735
6855
|
workflow: {
|
|
6736
6856
|
definition_of_done: [...settings.workflow?.definition_of_done ?? defaults.workflow.definition_of_done]
|
|
@@ -6738,177 +6858,24 @@ function mergeSettings(settings) {
|
|
|
6738
6858
|
testing: {
|
|
6739
6859
|
record_results_to_items: settings.testing?.record_results_to_items ?? defaults.testing.record_results_to_items
|
|
6740
6860
|
},
|
|
6741
|
-
telemetry:
|
|
6742
|
-
enabled: settings.telemetry?.enabled ?? defaults.telemetry.enabled,
|
|
6743
|
-
first_run_prompt_completed: settings.telemetry?.first_run_prompt_completed ?? defaults.telemetry.first_run_prompt_completed,
|
|
6744
|
-
capture_level: settings.telemetry?.capture_level ?? defaults.telemetry.capture_level,
|
|
6745
|
-
endpoint: settings.telemetry?.endpoint ?? defaults.telemetry.endpoint,
|
|
6746
|
-
installation_id: settings.telemetry?.installation_id ?? defaults.telemetry.installation_id,
|
|
6747
|
-
retention_days: settings.telemetry?.retention_days ?? defaults.telemetry.retention_days
|
|
6748
|
-
},
|
|
6861
|
+
telemetry: buildTelemetrySettings(settings, defaults),
|
|
6749
6862
|
agent_guidance: normalizeAgentGuidanceSettings(settings.agent_guidance ?? defaults.agent_guidance),
|
|
6750
6863
|
item_types: {
|
|
6751
6864
|
definitions: normalizeItemTypeDefinitions(settings.item_types?.definitions)
|
|
6752
6865
|
},
|
|
6753
6866
|
schema: normalizeRuntimeSchemaSettings(settings.schema ?? defaults.schema),
|
|
6754
|
-
context:
|
|
6755
|
-
default_depth: settings.context?.default_depth ?? defaults.context.default_depth,
|
|
6756
|
-
activity_limit: settings.context?.activity_limit ?? defaults.context.activity_limit,
|
|
6757
|
-
stale_threshold_days: settings.context?.stale_threshold_days ?? defaults.context.stale_threshold_days,
|
|
6758
|
-
sections: {
|
|
6759
|
-
...defaults.context.sections,
|
|
6760
|
-
...settings.context?.sections
|
|
6761
|
-
}
|
|
6762
|
-
},
|
|
6867
|
+
context: buildContextSettings(settings, defaults),
|
|
6763
6868
|
extensions: {
|
|
6764
6869
|
enabled: [...settings.extensions.enabled],
|
|
6765
6870
|
disabled: [...settings.extensions.disabled],
|
|
6766
6871
|
policy: normalizeExtensionPolicySettings(settings.extensions.policy ?? defaults.extensions.policy)
|
|
6767
6872
|
},
|
|
6768
|
-
search:
|
|
6769
|
-
|
|
6770
|
-
|
|
6771
|
-
mutation_refresh_policy: normalizeSearchMutationRefreshPolicy(settings.search?.mutation_refresh_policy),
|
|
6772
|
-
query_expansion: {
|
|
6773
|
-
...defaults.search.query_expansion,
|
|
6774
|
-
...settings.search?.query_expansion,
|
|
6775
|
-
enabled: normalizeSearchQueryExpansionEnabled(settings.search?.query_expansion?.enabled),
|
|
6776
|
-
provider: normalizeSearchQueryExpansionProvider(settings.search?.query_expansion?.provider)
|
|
6777
|
-
},
|
|
6778
|
-
rerank: {
|
|
6779
|
-
...defaults.search.rerank,
|
|
6780
|
-
...settings.search?.rerank,
|
|
6781
|
-
enabled: normalizeSearchRerankEnabled(settings.search?.rerank?.enabled),
|
|
6782
|
-
model: normalizeSearchRerankModel(settings.search?.rerank?.model),
|
|
6783
|
-
top_k: normalizeSearchRerankTopK(settings.search?.rerank?.top_k)
|
|
6784
|
-
}
|
|
6785
|
-
},
|
|
6786
|
-
providers: {
|
|
6787
|
-
openai: { ...defaults.providers.openai, ...settings.providers.openai },
|
|
6788
|
-
ollama: { ...defaults.providers.ollama, ...settings.providers.ollama }
|
|
6789
|
-
},
|
|
6790
|
-
vector_store: {
|
|
6791
|
-
adapter: settings.vector_store.adapter ?? defaults.vector_store.adapter,
|
|
6792
|
-
collection_name: normalizeVectorStoreCollectionName(settings.vector_store.collection_name),
|
|
6793
|
-
qdrant: { ...defaults.vector_store.qdrant, ...settings.vector_store.qdrant },
|
|
6794
|
-
lancedb: { ...defaults.vector_store.lancedb, ...settings.vector_store.lancedb }
|
|
6795
|
-
}
|
|
6873
|
+
search: buildSearchSettings(settings, defaults),
|
|
6874
|
+
providers: buildProviderSettings(settings, defaults),
|
|
6875
|
+
vector_store: buildVectorStoreSettings(settings, defaults)
|
|
6796
6876
|
};
|
|
6797
6877
|
}
|
|
6798
|
-
function
|
|
6799
|
-
const baseSettings = {
|
|
6800
|
-
...settings,
|
|
6801
|
-
locks: valueOrDefault(settings.locks, SETTINGS_DEFAULTS.locks),
|
|
6802
|
-
checkpoints: valueOrDefault(settings.checkpoints, SETTINGS_DEFAULTS.checkpoints),
|
|
6803
|
-
output: valueOrDefault(settings.output, SETTINGS_DEFAULTS.output),
|
|
6804
|
-
history: valueOrDefault(settings.history, SETTINGS_DEFAULTS.history),
|
|
6805
|
-
validation: valueOrDefault(settings.validation, SETTINGS_DEFAULTS.validation),
|
|
6806
|
-
workflow: valueOrDefault(settings.workflow, SETTINGS_DEFAULTS.workflow),
|
|
6807
|
-
testing: valueOrDefault(settings.testing, SETTINGS_DEFAULTS.testing),
|
|
6808
|
-
telemetry: valueOrDefault(settings.telemetry, SETTINGS_DEFAULTS.telemetry),
|
|
6809
|
-
agent_guidance: valueOrDefault(settings.agent_guidance, SETTINGS_DEFAULTS.agent_guidance),
|
|
6810
|
-
item_types: valueOrDefault(settings.item_types, SETTINGS_DEFAULTS.item_types),
|
|
6811
|
-
schema: valueOrDefault(settings.schema, SETTINGS_DEFAULTS.schema),
|
|
6812
|
-
context: valueOrDefault(settings.context, SETTINGS_DEFAULTS.context),
|
|
6813
|
-
extensions: valueOrDefault(settings.extensions, SETTINGS_DEFAULTS.extensions),
|
|
6814
|
-
search: valueOrDefault(settings.search, SETTINGS_DEFAULTS.search),
|
|
6815
|
-
providers: valueOrDefault(settings.providers, SETTINGS_DEFAULTS.providers),
|
|
6816
|
-
vector_store: valueOrDefault(settings.vector_store, SETTINGS_DEFAULTS.vector_store)
|
|
6817
|
-
};
|
|
6818
|
-
const governance = resolveGovernanceKnobs(baseSettings);
|
|
6819
|
-
const normalizedSchema = normalizeRuntimeSchemaSettings(baseSettings.schema);
|
|
6820
|
-
const persistedFileBackedSections = resolvePersistedFileBackedSchemaSections(baseSettings, options.persist_source);
|
|
6821
|
-
const normalizedSettings = {
|
|
6822
|
-
...baseSettings,
|
|
6823
|
-
item_format: "toon",
|
|
6824
|
-
validation: {
|
|
6825
|
-
...baseSettings.validation,
|
|
6826
|
-
parent_reference: governance.parent_reference,
|
|
6827
|
-
metadata_profile: governance.metadata_profile,
|
|
6828
|
-
metadata_required_fields: normalizeValidationMetadataRequiredFields(baseSettings.validation?.metadata_required_fields),
|
|
6829
|
-
lifecycle_stale_blocker_reason_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_stale_blocker_reason_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_stale_blocker_reason_patterns),
|
|
6830
|
-
lifecycle_closure_like_blocked_reason_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_closure_like_blocked_reason_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_closure_like_blocked_reason_patterns),
|
|
6831
|
-
lifecycle_closure_like_resolution_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_closure_like_resolution_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_closure_like_resolution_patterns),
|
|
6832
|
-
lifecycle_closure_like_actual_result_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_closure_like_actual_result_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_closure_like_actual_result_patterns),
|
|
6833
|
-
estimate_defaults_by_type: normalizeEstimateDefaultOverrides(baseSettings.validation?.estimate_defaults_by_type)
|
|
6834
|
-
},
|
|
6835
|
-
governance,
|
|
6836
|
-
agent_guidance: normalizeAgentGuidanceSettings(baseSettings.agent_guidance),
|
|
6837
|
-
item_types: {
|
|
6838
|
-
definitions: persistedFileBackedSections.item_type_definitions
|
|
6839
|
-
},
|
|
6840
|
-
schema: {
|
|
6841
|
-
...normalizedSchema,
|
|
6842
|
-
statuses: persistedFileBackedSections.schema_statuses,
|
|
6843
|
-
fields: persistedFileBackedSections.schema_fields,
|
|
6844
|
-
type_workflows: persistedFileBackedSections.schema_type_workflows
|
|
6845
|
-
},
|
|
6846
|
-
search: {
|
|
6847
|
-
...SETTINGS_DEFAULTS.search,
|
|
6848
|
-
...baseSettings.search,
|
|
6849
|
-
mutation_refresh_policy: normalizeSearchMutationRefreshPolicy(baseSettings.search?.mutation_refresh_policy),
|
|
6850
|
-
query_expansion: {
|
|
6851
|
-
...SETTINGS_DEFAULTS.search.query_expansion,
|
|
6852
|
-
...baseSettings.search?.query_expansion,
|
|
6853
|
-
enabled: normalizeSearchQueryExpansionEnabled(baseSettings.search?.query_expansion?.enabled),
|
|
6854
|
-
provider: normalizeSearchQueryExpansionProvider(baseSettings.search?.query_expansion?.provider)
|
|
6855
|
-
},
|
|
6856
|
-
rerank: {
|
|
6857
|
-
...SETTINGS_DEFAULTS.search.rerank,
|
|
6858
|
-
...baseSettings.search?.rerank,
|
|
6859
|
-
enabled: normalizeSearchRerankEnabled(baseSettings.search?.rerank?.enabled),
|
|
6860
|
-
model: normalizeSearchRerankModel(baseSettings.search?.rerank?.model),
|
|
6861
|
-
top_k: normalizeSearchRerankTopK(baseSettings.search?.rerank?.top_k)
|
|
6862
|
-
}
|
|
6863
|
-
},
|
|
6864
|
-
context: {
|
|
6865
|
-
default_depth: baseSettings.context?.default_depth ?? SETTINGS_DEFAULTS.context.default_depth,
|
|
6866
|
-
activity_limit: baseSettings.context?.activity_limit ?? SETTINGS_DEFAULTS.context.activity_limit,
|
|
6867
|
-
stale_threshold_days: baseSettings.context?.stale_threshold_days ?? SETTINGS_DEFAULTS.context.stale_threshold_days,
|
|
6868
|
-
sections: {
|
|
6869
|
-
...SETTINGS_DEFAULTS.context.sections,
|
|
6870
|
-
...baseSettings.context?.sections
|
|
6871
|
-
}
|
|
6872
|
-
},
|
|
6873
|
-
extensions: {
|
|
6874
|
-
enabled: normalizeStringList2(baseSettings.extensions?.enabled),
|
|
6875
|
-
disabled: normalizeStringList2(baseSettings.extensions?.disabled),
|
|
6876
|
-
policy: normalizeExtensionPolicySettings(baseSettings.extensions?.policy)
|
|
6877
|
-
},
|
|
6878
|
-
vector_store: {
|
|
6879
|
-
...baseSettings.vector_store,
|
|
6880
|
-
adapter: baseSettings.vector_store?.adapter ?? SETTINGS_DEFAULTS.vector_store.adapter,
|
|
6881
|
-
collection_name: normalizeVectorStoreCollectionName(baseSettings.vector_store?.collection_name),
|
|
6882
|
-
qdrant: { ...baseSettings.vector_store?.qdrant },
|
|
6883
|
-
lancedb: { ...baseSettings.vector_store?.lancedb }
|
|
6884
|
-
}
|
|
6885
|
-
};
|
|
6886
|
-
const ordered = orderObject({
|
|
6887
|
-
...normalizedSettings,
|
|
6888
|
-
governance: normalizeGovernanceForPersist(governance)
|
|
6889
|
-
}, [
|
|
6890
|
-
"version",
|
|
6891
|
-
"id_prefix",
|
|
6892
|
-
"author_default",
|
|
6893
|
-
"item_format",
|
|
6894
|
-
"locks",
|
|
6895
|
-
"checkpoints",
|
|
6896
|
-
"output",
|
|
6897
|
-
"history",
|
|
6898
|
-
"validation",
|
|
6899
|
-
"governance",
|
|
6900
|
-
"workflow",
|
|
6901
|
-
"testing",
|
|
6902
|
-
"telemetry",
|
|
6903
|
-
"agent_guidance",
|
|
6904
|
-
"item_types",
|
|
6905
|
-
"schema",
|
|
6906
|
-
"context",
|
|
6907
|
-
"extensions",
|
|
6908
|
-
"search",
|
|
6909
|
-
"providers",
|
|
6910
|
-
"vector_store"
|
|
6911
|
-
]);
|
|
6878
|
+
function orderSerializedSettingsSections(ordered) {
|
|
6912
6879
|
ordered.locks = orderObject(ordered.locks, ["ttl_seconds"]);
|
|
6913
6880
|
ordered.checkpoints = orderObject(ordered.checkpoints, ["retention_days"]);
|
|
6914
6881
|
ordered.output = orderObject(ordered.output, ["default_format"]);
|
|
@@ -7038,6 +7005,140 @@ function serializeSettings(settings, options = {}) {
|
|
|
7038
7005
|
]);
|
|
7039
7006
|
ordered.vector_store.qdrant = orderObject(recordOrEmpty(ordered.vector_store.qdrant), ["url", "api_key"]);
|
|
7040
7007
|
ordered.vector_store.lancedb = orderObject(recordOrEmpty(ordered.vector_store.lancedb), ["path"]);
|
|
7008
|
+
}
|
|
7009
|
+
function buildSerializeBaseSettings(settings) {
|
|
7010
|
+
return {
|
|
7011
|
+
...settings,
|
|
7012
|
+
locks: valueOrDefault(settings.locks, SETTINGS_DEFAULTS.locks),
|
|
7013
|
+
checkpoints: valueOrDefault(settings.checkpoints, SETTINGS_DEFAULTS.checkpoints),
|
|
7014
|
+
output: valueOrDefault(settings.output, SETTINGS_DEFAULTS.output),
|
|
7015
|
+
history: valueOrDefault(settings.history, SETTINGS_DEFAULTS.history),
|
|
7016
|
+
validation: valueOrDefault(settings.validation, SETTINGS_DEFAULTS.validation),
|
|
7017
|
+
workflow: valueOrDefault(settings.workflow, SETTINGS_DEFAULTS.workflow),
|
|
7018
|
+
testing: valueOrDefault(settings.testing, SETTINGS_DEFAULTS.testing),
|
|
7019
|
+
telemetry: valueOrDefault(settings.telemetry, SETTINGS_DEFAULTS.telemetry),
|
|
7020
|
+
agent_guidance: valueOrDefault(settings.agent_guidance, SETTINGS_DEFAULTS.agent_guidance),
|
|
7021
|
+
item_types: valueOrDefault(settings.item_types, SETTINGS_DEFAULTS.item_types),
|
|
7022
|
+
schema: valueOrDefault(settings.schema, SETTINGS_DEFAULTS.schema),
|
|
7023
|
+
context: valueOrDefault(settings.context, SETTINGS_DEFAULTS.context),
|
|
7024
|
+
extensions: valueOrDefault(settings.extensions, SETTINGS_DEFAULTS.extensions),
|
|
7025
|
+
search: valueOrDefault(settings.search, SETTINGS_DEFAULTS.search),
|
|
7026
|
+
providers: valueOrDefault(settings.providers, SETTINGS_DEFAULTS.providers),
|
|
7027
|
+
vector_store: valueOrDefault(settings.vector_store, SETTINGS_DEFAULTS.vector_store)
|
|
7028
|
+
};
|
|
7029
|
+
}
|
|
7030
|
+
function buildSerializedValidationSettings(baseSettings, governance) {
|
|
7031
|
+
return {
|
|
7032
|
+
...baseSettings.validation,
|
|
7033
|
+
parent_reference: governance.parent_reference,
|
|
7034
|
+
metadata_profile: governance.metadata_profile,
|
|
7035
|
+
metadata_required_fields: normalizeValidationMetadataRequiredFields(baseSettings.validation?.metadata_required_fields),
|
|
7036
|
+
lifecycle_stale_blocker_reason_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_stale_blocker_reason_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_stale_blocker_reason_patterns),
|
|
7037
|
+
lifecycle_closure_like_blocked_reason_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_closure_like_blocked_reason_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_closure_like_blocked_reason_patterns),
|
|
7038
|
+
lifecycle_closure_like_resolution_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_closure_like_resolution_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_closure_like_resolution_patterns),
|
|
7039
|
+
lifecycle_closure_like_actual_result_patterns: normalizeValidationPatternList(baseSettings.validation?.lifecycle_closure_like_actual_result_patterns ?? SETTINGS_DEFAULTS.validation.lifecycle_closure_like_actual_result_patterns),
|
|
7040
|
+
estimate_defaults_by_type: normalizeEstimateDefaultOverrides(baseSettings.validation?.estimate_defaults_by_type)
|
|
7041
|
+
};
|
|
7042
|
+
}
|
|
7043
|
+
function buildSerializedSearchSettings(baseSettings) {
|
|
7044
|
+
return {
|
|
7045
|
+
...SETTINGS_DEFAULTS.search,
|
|
7046
|
+
...baseSettings.search,
|
|
7047
|
+
mutation_refresh_policy: normalizeSearchMutationRefreshPolicy(baseSettings.search?.mutation_refresh_policy),
|
|
7048
|
+
query_expansion: {
|
|
7049
|
+
...SETTINGS_DEFAULTS.search.query_expansion,
|
|
7050
|
+
...baseSettings.search?.query_expansion,
|
|
7051
|
+
enabled: normalizeSearchQueryExpansionEnabled(baseSettings.search?.query_expansion?.enabled),
|
|
7052
|
+
provider: normalizeSearchQueryExpansionProvider(baseSettings.search?.query_expansion?.provider)
|
|
7053
|
+
},
|
|
7054
|
+
rerank: {
|
|
7055
|
+
...SETTINGS_DEFAULTS.search.rerank,
|
|
7056
|
+
...baseSettings.search?.rerank,
|
|
7057
|
+
enabled: normalizeSearchRerankEnabled(baseSettings.search?.rerank?.enabled),
|
|
7058
|
+
model: normalizeSearchRerankModel(baseSettings.search?.rerank?.model),
|
|
7059
|
+
top_k: normalizeSearchRerankTopK(baseSettings.search?.rerank?.top_k)
|
|
7060
|
+
}
|
|
7061
|
+
};
|
|
7062
|
+
}
|
|
7063
|
+
function buildSerializedContextSettings(baseSettings) {
|
|
7064
|
+
return {
|
|
7065
|
+
default_depth: baseSettings.context?.default_depth ?? SETTINGS_DEFAULTS.context.default_depth,
|
|
7066
|
+
activity_limit: baseSettings.context?.activity_limit ?? SETTINGS_DEFAULTS.context.activity_limit,
|
|
7067
|
+
stale_threshold_days: baseSettings.context?.stale_threshold_days ?? SETTINGS_DEFAULTS.context.stale_threshold_days,
|
|
7068
|
+
sections: {
|
|
7069
|
+
...SETTINGS_DEFAULTS.context.sections,
|
|
7070
|
+
...baseSettings.context?.sections
|
|
7071
|
+
}
|
|
7072
|
+
};
|
|
7073
|
+
}
|
|
7074
|
+
function buildSerializedVectorStoreSettings(baseSettings) {
|
|
7075
|
+
return {
|
|
7076
|
+
...baseSettings.vector_store,
|
|
7077
|
+
adapter: baseSettings.vector_store?.adapter ?? SETTINGS_DEFAULTS.vector_store.adapter,
|
|
7078
|
+
collection_name: normalizeVectorStoreCollectionName(baseSettings.vector_store?.collection_name),
|
|
7079
|
+
qdrant: { ...baseSettings.vector_store?.qdrant },
|
|
7080
|
+
lancedb: { ...baseSettings.vector_store?.lancedb }
|
|
7081
|
+
};
|
|
7082
|
+
}
|
|
7083
|
+
function buildNormalizedSettingsForSerialization(baseSettings, governance, normalizedSchema, persistedFileBackedSections) {
|
|
7084
|
+
return {
|
|
7085
|
+
...baseSettings,
|
|
7086
|
+
item_format: "toon",
|
|
7087
|
+
validation: buildSerializedValidationSettings(baseSettings, governance),
|
|
7088
|
+
governance,
|
|
7089
|
+
agent_guidance: normalizeAgentGuidanceSettings(baseSettings.agent_guidance),
|
|
7090
|
+
item_types: {
|
|
7091
|
+
definitions: persistedFileBackedSections.item_type_definitions
|
|
7092
|
+
},
|
|
7093
|
+
schema: {
|
|
7094
|
+
...normalizedSchema,
|
|
7095
|
+
statuses: persistedFileBackedSections.schema_statuses,
|
|
7096
|
+
fields: persistedFileBackedSections.schema_fields,
|
|
7097
|
+
type_workflows: persistedFileBackedSections.schema_type_workflows
|
|
7098
|
+
},
|
|
7099
|
+
search: buildSerializedSearchSettings(baseSettings),
|
|
7100
|
+
context: buildSerializedContextSettings(baseSettings),
|
|
7101
|
+
extensions: {
|
|
7102
|
+
enabled: normalizeStringList2(baseSettings.extensions?.enabled),
|
|
7103
|
+
disabled: normalizeStringList2(baseSettings.extensions?.disabled),
|
|
7104
|
+
policy: normalizeExtensionPolicySettings(baseSettings.extensions?.policy)
|
|
7105
|
+
},
|
|
7106
|
+
vector_store: buildSerializedVectorStoreSettings(baseSettings)
|
|
7107
|
+
};
|
|
7108
|
+
}
|
|
7109
|
+
function serializeSettings(settings, options = {}) {
|
|
7110
|
+
const baseSettings = buildSerializeBaseSettings(settings);
|
|
7111
|
+
const governance = resolveGovernanceKnobs(baseSettings);
|
|
7112
|
+
const normalizedSchema = normalizeRuntimeSchemaSettings(baseSettings.schema);
|
|
7113
|
+
const persistedFileBackedSections = resolvePersistedFileBackedSchemaSections(baseSettings, options.persist_source);
|
|
7114
|
+
const normalizedSettings = buildNormalizedSettingsForSerialization(baseSettings, governance, normalizedSchema, persistedFileBackedSections);
|
|
7115
|
+
const ordered = orderObject({
|
|
7116
|
+
...normalizedSettings,
|
|
7117
|
+
governance: normalizeGovernanceForPersist(governance)
|
|
7118
|
+
}, [
|
|
7119
|
+
"version",
|
|
7120
|
+
"id_prefix",
|
|
7121
|
+
"author_default",
|
|
7122
|
+
"item_format",
|
|
7123
|
+
"locks",
|
|
7124
|
+
"checkpoints",
|
|
7125
|
+
"output",
|
|
7126
|
+
"history",
|
|
7127
|
+
"validation",
|
|
7128
|
+
"governance",
|
|
7129
|
+
"workflow",
|
|
7130
|
+
"testing",
|
|
7131
|
+
"telemetry",
|
|
7132
|
+
"agent_guidance",
|
|
7133
|
+
"item_types",
|
|
7134
|
+
"schema",
|
|
7135
|
+
"context",
|
|
7136
|
+
"extensions",
|
|
7137
|
+
"search",
|
|
7138
|
+
"providers",
|
|
7139
|
+
"vector_store"
|
|
7140
|
+
]);
|
|
7141
|
+
orderSerializedSettingsSections(ordered);
|
|
7041
7142
|
return `${JSON.stringify(ordered, null, 2)}
|
|
7042
7143
|
`;
|
|
7043
7144
|
}
|
|
@@ -7299,6 +7400,6 @@ export {
|
|
|
7299
7400
|
readSettings,
|
|
7300
7401
|
writeSettings
|
|
7301
7402
|
};
|
|
7302
|
-
//# sourceMappingURL=chunk-
|
|
7403
|
+
//# sourceMappingURL=chunk-L4SLHV6G.js.map
|
|
7303
7404
|
|
|
7304
|
-
//# debugId=
|
|
7405
|
+
//# debugId=aeaf9c80-302b-561b-892d-b98b811d424b
|