langwatch 0.34.0 → 0.36.0
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/dist/{chunk-RIPASL56.mjs → chunk-2O4ILSP5.mjs} +2 -2
- package/dist/{chunk-2V5FBEY3.mjs → chunk-3QHURXIZ.mjs} +42 -5
- package/dist/chunk-3QHURXIZ.mjs.map +1 -0
- package/dist/{chunk-4ZA6WF6S.mjs → chunk-AEFZHF6V.mjs} +104 -22
- package/dist/chunk-AEFZHF6V.mjs.map +1 -0
- package/dist/{chunk-YKWXS2BM.js → chunk-BT76Q2SR.js} +130 -48
- package/dist/chunk-BT76Q2SR.js.map +1 -0
- package/dist/{chunk-42EDFIG2.mjs → chunk-G5VAIDUJ.mjs} +10 -16
- package/dist/{chunk-42EDFIG2.mjs.map → chunk-G5VAIDUJ.mjs.map} +1 -1
- package/dist/{chunk-QZRBNYW2.js → chunk-HBVGKWJK.js} +53 -16
- package/dist/chunk-HBVGKWJK.js.map +1 -0
- package/dist/{chunk-NTRV2ICJ.js → chunk-IUSLT65Z.js} +2 -2
- package/dist/{chunk-NTRV2ICJ.js.map → chunk-IUSLT65Z.js.map} +1 -1
- package/dist/{chunk-PONU4KJX.mjs → chunk-L5KBRKHS.mjs} +110 -5
- package/dist/chunk-L5KBRKHS.mjs.map +1 -0
- package/dist/{chunk-FSACIXYG.js → chunk-N7WBYSM6.js} +16 -22
- package/dist/chunk-N7WBYSM6.js.map +1 -0
- package/dist/chunk-TKSTXX3D.js +239 -0
- package/dist/chunk-TKSTXX3D.js.map +1 -0
- package/dist/cli/bundle.js +3768 -0
- package/dist/cli/index.js +10 -1335
- package/dist/{implementation-BIfcyP32.d.ts → implementation-CMWs8g5L.d.ts} +3 -3
- package/dist/{implementation-BBG46scL.d.mts → implementation-Cv1hPZBQ.d.mts} +3 -3
- package/dist/index.d.mts +125 -12
- package/dist/index.d.ts +125 -12
- package/dist/index.js +4840 -1410
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4788 -1358
- package/dist/index.mjs.map +1 -1
- package/dist/observability-sdk/index.d.mts +6 -6
- package/dist/observability-sdk/index.d.ts +6 -6
- package/dist/observability-sdk/index.js +5 -10
- package/dist/observability-sdk/index.js.map +1 -1
- package/dist/observability-sdk/index.mjs +5 -10
- package/dist/observability-sdk/instrumentation/langchain/index.d.mts +2 -2
- package/dist/observability-sdk/instrumentation/langchain/index.d.ts +2 -2
- package/dist/observability-sdk/instrumentation/langchain/index.js +18 -21
- package/dist/observability-sdk/instrumentation/langchain/index.js.map +1 -1
- package/dist/observability-sdk/instrumentation/langchain/index.mjs +3 -6
- package/dist/observability-sdk/instrumentation/langchain/index.mjs.map +1 -1
- package/dist/observability-sdk/setup/node/index.d.mts +2 -2
- package/dist/observability-sdk/setup/node/index.d.ts +2 -2
- package/dist/observability-sdk/setup/node/index.js +4 -8
- package/dist/observability-sdk/setup/node/index.js.map +1 -1
- package/dist/observability-sdk/setup/node/index.mjs +3 -7
- package/dist/{types-CYfKDbKj.d.ts → types-D-yAkWoC.d.ts} +71 -3
- package/dist/{types-Dmazk5Bk.d.mts → types-DLfhJb38.d.mts} +1 -1
- package/dist/{types-Dmazk5Bk.d.ts → types-DLfhJb38.d.ts} +1 -1
- package/dist/{types-BvCQH8F1.d.ts → types-VOZv9LYO.d.mts} +1 -1
- package/dist/{types-BvCQH8F1.d.mts → types-VOZv9LYO.d.ts} +1 -1
- package/dist/{types-fzTtg5sg.d.mts → types-bfBzGB7S.d.mts} +71 -3
- package/package.json +13 -6
- package/dist/add-TFE2BH4K.mjs +0 -148
- package/dist/add-TFE2BH4K.mjs.map +0 -1
- package/dist/add-URBA6FGV.js +0 -148
- package/dist/add-URBA6FGV.js.map +0 -1
- package/dist/archive-CL6XUEYU.mjs +0 -41
- package/dist/archive-CL6XUEYU.mjs.map +0 -1
- package/dist/archive-K4SSNBML.js +0 -41
- package/dist/archive-K4SSNBML.js.map +0 -1
- package/dist/assign-4PVKU4WO.mjs +0 -54
- package/dist/assign-4PVKU4WO.mjs.map +0 -1
- package/dist/assign-RFENMUXO.js +0 -54
- package/dist/assign-RFENMUXO.js.map +0 -1
- package/dist/chunk-2MITUTNI.js +0 -205
- package/dist/chunk-2MITUTNI.js.map +0 -1
- package/dist/chunk-2V5FBEY3.mjs.map +0 -1
- package/dist/chunk-2VVANTLB.js +0 -68
- package/dist/chunk-2VVANTLB.js.map +0 -1
- package/dist/chunk-377U47MY.js +0 -42
- package/dist/chunk-377U47MY.js.map +0 -1
- package/dist/chunk-3K6C35HN.mjs +0 -80
- package/dist/chunk-3K6C35HN.mjs.map +0 -1
- package/dist/chunk-3PZ5VO5T.mjs +0 -205
- package/dist/chunk-3PZ5VO5T.mjs.map +0 -1
- package/dist/chunk-4Q4HSAKZ.js +0 -894
- package/dist/chunk-4Q4HSAKZ.js.map +0 -1
- package/dist/chunk-4ZA6WF6S.mjs.map +0 -1
- package/dist/chunk-535JT5M3.mjs +0 -42
- package/dist/chunk-535JT5M3.mjs.map +0 -1
- package/dist/chunk-5M6GLAIG.js +0 -410
- package/dist/chunk-5M6GLAIG.js.map +0 -1
- package/dist/chunk-5PF32BLZ.mjs +0 -76
- package/dist/chunk-5PF32BLZ.mjs.map +0 -1
- package/dist/chunk-5W4B44MH.mjs +0 -103
- package/dist/chunk-5W4B44MH.mjs.map +0 -1
- package/dist/chunk-5Z3A3Z5M.mjs +0 -96
- package/dist/chunk-5Z3A3Z5M.mjs.map +0 -1
- package/dist/chunk-64H4FLDB.mjs +0 -51
- package/dist/chunk-64H4FLDB.mjs.map +0 -1
- package/dist/chunk-67PP4GB4.mjs +0 -40
- package/dist/chunk-67PP4GB4.mjs.map +0 -1
- package/dist/chunk-6KMX34ZH.js +0 -257
- package/dist/chunk-6KMX34ZH.js.map +0 -1
- package/dist/chunk-6RSHYGUB.js +0 -85
- package/dist/chunk-6RSHYGUB.js.map +0 -1
- package/dist/chunk-7HFW67OR.mjs +0 -63
- package/dist/chunk-7HFW67OR.mjs.map +0 -1
- package/dist/chunk-7KSBRJUY.js +0 -54
- package/dist/chunk-7KSBRJUY.js.map +0 -1
- package/dist/chunk-7ULZZHBP.mjs +0 -42
- package/dist/chunk-7ULZZHBP.mjs.map +0 -1
- package/dist/chunk-A6YWANGL.js +0 -103
- package/dist/chunk-A6YWANGL.js.map +0 -1
- package/dist/chunk-B5TBCV6N.js +0 -96
- package/dist/chunk-B5TBCV6N.js.map +0 -1
- package/dist/chunk-BAX4W3AY.mjs +0 -62
- package/dist/chunk-BAX4W3AY.mjs.map +0 -1
- package/dist/chunk-BGYXA2QV.mjs +0 -96
- package/dist/chunk-BGYXA2QV.mjs.map +0 -1
- package/dist/chunk-BRPEG3YQ.js +0 -62
- package/dist/chunk-BRPEG3YQ.js.map +0 -1
- package/dist/chunk-C5Y772G7.js +0 -152
- package/dist/chunk-C5Y772G7.js.map +0 -1
- package/dist/chunk-CEJY6QI3.mjs +0 -508
- package/dist/chunk-CEJY6QI3.mjs.map +0 -1
- package/dist/chunk-CGECDLSE.js +0 -90
- package/dist/chunk-CGECDLSE.js.map +0 -1
- package/dist/chunk-CKTJADY6.mjs +0 -348
- package/dist/chunk-CKTJADY6.mjs.map +0 -1
- package/dist/chunk-CLYXJJ6C.js +0 -66
- package/dist/chunk-CLYXJJ6C.js.map +0 -1
- package/dist/chunk-COMOCQA6.mjs +0 -13
- package/dist/chunk-COMOCQA6.mjs.map +0 -1
- package/dist/chunk-D2VRKNFF.js +0 -1672
- package/dist/chunk-D2VRKNFF.js.map +0 -1
- package/dist/chunk-D5NUUB4G.mjs +0 -225
- package/dist/chunk-D5NUUB4G.mjs.map +0 -1
- package/dist/chunk-DCTJDRBW.js +0 -40
- package/dist/chunk-DCTJDRBW.js.map +0 -1
- package/dist/chunk-DIILEB4J.js +0 -196
- package/dist/chunk-DIILEB4J.js.map +0 -1
- package/dist/chunk-DOJBPYAE.js +0 -663
- package/dist/chunk-DOJBPYAE.js.map +0 -1
- package/dist/chunk-DTEKJ3UD.mjs +0 -66
- package/dist/chunk-DTEKJ3UD.mjs.map +0 -1
- package/dist/chunk-FG3JQBJB.mjs +0 -68
- package/dist/chunk-FG3JQBJB.mjs.map +0 -1
- package/dist/chunk-FNFLZXXA.js +0 -80
- package/dist/chunk-FNFLZXXA.js.map +0 -1
- package/dist/chunk-FSACIXYG.js.map +0 -1
- package/dist/chunk-GFLV5NP6.mjs +0 -70
- package/dist/chunk-GFLV5NP6.mjs.map +0 -1
- package/dist/chunk-GNWMKXDU.mjs +0 -66
- package/dist/chunk-GNWMKXDU.mjs.map +0 -1
- package/dist/chunk-GPGJNBPP.js +0 -63
- package/dist/chunk-GPGJNBPP.js.map +0 -1
- package/dist/chunk-GUPNZDU7.js +0 -101
- package/dist/chunk-GUPNZDU7.js.map +0 -1
- package/dist/chunk-HDA25KWZ.js +0 -134
- package/dist/chunk-HDA25KWZ.js.map +0 -1
- package/dist/chunk-IZD5CIVE.js +0 -70
- package/dist/chunk-IZD5CIVE.js.map +0 -1
- package/dist/chunk-J3KM7ZO7.mjs +0 -152
- package/dist/chunk-J3KM7ZO7.mjs.map +0 -1
- package/dist/chunk-JQVI5CD7.mjs +0 -894
- package/dist/chunk-JQVI5CD7.mjs.map +0 -1
- package/dist/chunk-JSV75WAY.js +0 -76
- package/dist/chunk-JSV75WAY.js.map +0 -1
- package/dist/chunk-JZYHVNJR.js +0 -22
- package/dist/chunk-JZYHVNJR.js.map +0 -1
- package/dist/chunk-KT6HZNPV.js +0 -36
- package/dist/chunk-KT6HZNPV.js.map +0 -1
- package/dist/chunk-KW2W5KVS.mjs +0 -22
- package/dist/chunk-KW2W5KVS.mjs.map +0 -1
- package/dist/chunk-LA5LU5UP.js +0 -225
- package/dist/chunk-LA5LU5UP.js.map +0 -1
- package/dist/chunk-LSRJHTPL.js +0 -36
- package/dist/chunk-LSRJHTPL.js.map +0 -1
- package/dist/chunk-M3WJZUOE.js +0 -13
- package/dist/chunk-M3WJZUOE.js.map +0 -1
- package/dist/chunk-M5UNTGGK.mjs +0 -68
- package/dist/chunk-M5UNTGGK.mjs.map +0 -1
- package/dist/chunk-NQN42A2N.js +0 -348
- package/dist/chunk-NQN42A2N.js.map +0 -1
- package/dist/chunk-NYCKS3GG.js +0 -20
- package/dist/chunk-NYCKS3GG.js.map +0 -1
- package/dist/chunk-O2GHYEAE.mjs +0 -92
- package/dist/chunk-O2GHYEAE.mjs.map +0 -1
- package/dist/chunk-OGAE7BVQ.js +0 -67
- package/dist/chunk-OGAE7BVQ.js.map +0 -1
- package/dist/chunk-OMOZEGVZ.mjs +0 -22
- package/dist/chunk-OMOZEGVZ.mjs.map +0 -1
- package/dist/chunk-OMZ3FRPU.mjs +0 -65
- package/dist/chunk-OMZ3FRPU.mjs.map +0 -1
- package/dist/chunk-OOXU4LFW.js +0 -65
- package/dist/chunk-OOXU4LFW.js.map +0 -1
- package/dist/chunk-OSAFGMGH.mjs +0 -85
- package/dist/chunk-OSAFGMGH.mjs.map +0 -1
- package/dist/chunk-OXULVOBF.mjs +0 -144
- package/dist/chunk-OXULVOBF.mjs.map +0 -1
- package/dist/chunk-PONU4KJX.mjs.map +0 -1
- package/dist/chunk-PQA46YVG.mjs +0 -410
- package/dist/chunk-PQA46YVG.mjs.map +0 -1
- package/dist/chunk-Q6OMYVNW.js +0 -66
- package/dist/chunk-Q6OMYVNW.js.map +0 -1
- package/dist/chunk-Q7AHHFC3.mjs +0 -20
- package/dist/chunk-Q7AHHFC3.mjs.map +0 -1
- package/dist/chunk-QSMGACTW.js +0 -51
- package/dist/chunk-QSMGACTW.js.map +0 -1
- package/dist/chunk-QVQ7WDJS.mjs +0 -196
- package/dist/chunk-QVQ7WDJS.mjs.map +0 -1
- package/dist/chunk-QZRBNYW2.js.map +0 -1
- package/dist/chunk-R6QPBFZD.mjs +0 -63
- package/dist/chunk-R6QPBFZD.mjs.map +0 -1
- package/dist/chunk-RALJR5ZU.js +0 -80
- package/dist/chunk-RALJR5ZU.js.map +0 -1
- package/dist/chunk-S2UWK4HL.mjs +0 -36
- package/dist/chunk-S2UWK4HL.mjs.map +0 -1
- package/dist/chunk-SIXSSID3.mjs +0 -43
- package/dist/chunk-SIXSSID3.mjs.map +0 -1
- package/dist/chunk-SNKGSX5I.js +0 -42
- package/dist/chunk-SNKGSX5I.js.map +0 -1
- package/dist/chunk-SQXVLXIS.mjs +0 -90
- package/dist/chunk-SQXVLXIS.mjs.map +0 -1
- package/dist/chunk-TIAQGDR2.js +0 -34
- package/dist/chunk-TIAQGDR2.js.map +0 -1
- package/dist/chunk-U47MQ6CS.mjs +0 -67
- package/dist/chunk-U47MQ6CS.mjs.map +0 -1
- package/dist/chunk-UQ633TEF.mjs +0 -54
- package/dist/chunk-UQ633TEF.mjs.map +0 -1
- package/dist/chunk-UTXV7U7Z.js +0 -92
- package/dist/chunk-UTXV7U7Z.js.map +0 -1
- package/dist/chunk-W2BNKVWJ.mjs +0 -36
- package/dist/chunk-W2BNKVWJ.mjs.map +0 -1
- package/dist/chunk-WG7MPZXJ.mjs +0 -663
- package/dist/chunk-WG7MPZXJ.mjs.map +0 -1
- package/dist/chunk-WIXX2IDN.mjs +0 -101
- package/dist/chunk-WIXX2IDN.mjs.map +0 -1
- package/dist/chunk-WQRATXQU.mjs +0 -80
- package/dist/chunk-WQRATXQU.mjs.map +0 -1
- package/dist/chunk-WV4U2PPY.js +0 -68
- package/dist/chunk-WV4U2PPY.js.map +0 -1
- package/dist/chunk-WZTRPR6A.js +0 -43
- package/dist/chunk-WZTRPR6A.js.map +0 -1
- package/dist/chunk-XGULH63G.mjs +0 -1672
- package/dist/chunk-XGULH63G.mjs.map +0 -1
- package/dist/chunk-YBLYQYXL.js +0 -22
- package/dist/chunk-YBLYQYXL.js.map +0 -1
- package/dist/chunk-YK55ZGRQ.mjs +0 -257
- package/dist/chunk-YK55ZGRQ.mjs.map +0 -1
- package/dist/chunk-YKDTIJF2.js +0 -144
- package/dist/chunk-YKDTIJF2.js.map +0 -1
- package/dist/chunk-YKWXS2BM.js.map +0 -1
- package/dist/chunk-YOSDU6PV.mjs +0 -34
- package/dist/chunk-YOSDU6PV.mjs.map +0 -1
- package/dist/chunk-YP4LDCP6.mjs +0 -277
- package/dist/chunk-YP4LDCP6.mjs.map +0 -1
- package/dist/chunk-ZA5BH7IZ.js +0 -277
- package/dist/chunk-ZA5BH7IZ.js.map +0 -1
- package/dist/chunk-ZFAAOZZM.js +0 -96
- package/dist/chunk-ZFAAOZZM.js.map +0 -1
- package/dist/chunk-ZFFJYYDN.js +0 -508
- package/dist/chunk-ZFFJYYDN.js.map +0 -1
- package/dist/chunk-ZX6VUKK5.js +0 -63
- package/dist/chunk-ZX6VUKK5.js.map +0 -1
- package/dist/cli/index.d.mts +0 -1
- package/dist/cli/index.d.ts +0 -1
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/index.mjs +0 -1336
- package/dist/cli/index.mjs.map +0 -1
- package/dist/config-DPFYZQUU.js +0 -96
- package/dist/config-DPFYZQUU.js.map +0 -1
- package/dist/config-DXWUTPTA.mjs +0 -96
- package/dist/config-DXWUTPTA.mjs.map +0 -1
- package/dist/create-2MUVHIRR.js +0 -49
- package/dist/create-2MUVHIRR.js.map +0 -1
- package/dist/create-2VO6N4CY.js +0 -50
- package/dist/create-2VO6N4CY.js.map +0 -1
- package/dist/create-5HLREIKR.mjs +0 -52
- package/dist/create-5HLREIKR.mjs.map +0 -1
- package/dist/create-7WWQNO2D.mjs +0 -88
- package/dist/create-7WWQNO2D.mjs.map +0 -1
- package/dist/create-APC6WMHS.js +0 -72
- package/dist/create-APC6WMHS.js.map +0 -1
- package/dist/create-B6AZP3AH.js +0 -42
- package/dist/create-B6AZP3AH.js.map +0 -1
- package/dist/create-BWIIJPYN.js +0 -88
- package/dist/create-BWIIJPYN.js.map +0 -1
- package/dist/create-C7HS7DAN.js +0 -91
- package/dist/create-C7HS7DAN.js.map +0 -1
- package/dist/create-CENOO2Z5.mjs +0 -94
- package/dist/create-CENOO2Z5.mjs.map +0 -1
- package/dist/create-CSENTPZ7.mjs +0 -88
- package/dist/create-CSENTPZ7.mjs.map +0 -1
- package/dist/create-F564PPYR.mjs +0 -72
- package/dist/create-F564PPYR.mjs.map +0 -1
- package/dist/create-FEVRMAGI.js +0 -75
- package/dist/create-FEVRMAGI.js.map +0 -1
- package/dist/create-FK6ZCXCA.js +0 -92
- package/dist/create-FK6ZCXCA.js.map +0 -1
- package/dist/create-G5KF3LVC.mjs +0 -50
- package/dist/create-G5KF3LVC.mjs.map +0 -1
- package/dist/create-HL6BPJBM.mjs +0 -71
- package/dist/create-HL6BPJBM.mjs.map +0 -1
- package/dist/create-KFDWNSGC.mjs +0 -87
- package/dist/create-KFDWNSGC.mjs.map +0 -1
- package/dist/create-KTPZZ7NV.mjs +0 -75
- package/dist/create-KTPZZ7NV.mjs.map +0 -1
- package/dist/create-LAKPCRNY.mjs +0 -92
- package/dist/create-LAKPCRNY.mjs.map +0 -1
- package/dist/create-LFU7Z6DS.mjs +0 -42
- package/dist/create-LFU7Z6DS.mjs.map +0 -1
- package/dist/create-MI7MQLN6.mjs +0 -48
- package/dist/create-MI7MQLN6.mjs.map +0 -1
- package/dist/create-OMO3TETI.mjs +0 -23
- package/dist/create-OMO3TETI.mjs.map +0 -1
- package/dist/create-OWODQWNJ.js +0 -48
- package/dist/create-OWODQWNJ.js.map +0 -1
- package/dist/create-POGAVC3B.mjs +0 -49
- package/dist/create-POGAVC3B.mjs.map +0 -1
- package/dist/create-QJLKTHQ6.mjs +0 -58
- package/dist/create-QJLKTHQ6.mjs.map +0 -1
- package/dist/create-R57TZY3Y.js +0 -94
- package/dist/create-R57TZY3Y.js.map +0 -1
- package/dist/create-RIHQJENZ.js +0 -71
- package/dist/create-RIHQJENZ.js.map +0 -1
- package/dist/create-UOIUDY25.js +0 -88
- package/dist/create-UOIUDY25.js.map +0 -1
- package/dist/create-URUJVBUC.js +0 -87
- package/dist/create-URUJVBUC.js.map +0 -1
- package/dist/create-VEK55UDK.mjs +0 -43
- package/dist/create-VEK55UDK.mjs.map +0 -1
- package/dist/create-VKXRDN5O.js +0 -52
- package/dist/create-VKXRDN5O.js.map +0 -1
- package/dist/create-XHAKNOTS.mjs +0 -91
- package/dist/create-XHAKNOTS.mjs.map +0 -1
- package/dist/create-YJHDG2ZO.js +0 -23
- package/dist/create-YJHDG2ZO.js.map +0 -1
- package/dist/create-Z5CM76ZW.js +0 -43
- package/dist/create-Z5CM76ZW.js.map +0 -1
- package/dist/create-Z6JTQNL6.js +0 -58
- package/dist/create-Z6JTQNL6.js.map +0 -1
- package/dist/delete-6BINMYZI.mjs +0 -52
- package/dist/delete-6BINMYZI.mjs.map +0 -1
- package/dist/delete-6T5CCDFJ.js +0 -42
- package/dist/delete-6T5CCDFJ.js.map +0 -1
- package/dist/delete-6UHWYVNZ.js +0 -52
- package/dist/delete-6UHWYVNZ.js.map +0 -1
- package/dist/delete-A5RWDQKJ.js +0 -52
- package/dist/delete-A5RWDQKJ.js.map +0 -1
- package/dist/delete-A7ZWGQPR.mjs +0 -59
- package/dist/delete-A7ZWGQPR.mjs.map +0 -1
- package/dist/delete-B5G7GAHY.mjs +0 -44
- package/dist/delete-B5G7GAHY.mjs.map +0 -1
- package/dist/delete-BGCVEG3C.js +0 -61
- package/dist/delete-BGCVEG3C.js.map +0 -1
- package/dist/delete-BYCIZOZG.js +0 -39
- package/dist/delete-BYCIZOZG.js.map +0 -1
- package/dist/delete-E5VYCRYX.mjs +0 -39
- package/dist/delete-E5VYCRYX.mjs.map +0 -1
- package/dist/delete-EK6PUMYW.js +0 -52
- package/dist/delete-EK6PUMYW.js.map +0 -1
- package/dist/delete-ERB4LGWZ.mjs +0 -41
- package/dist/delete-ERB4LGWZ.mjs.map +0 -1
- package/dist/delete-FD3IISGJ.js +0 -38
- package/dist/delete-FD3IISGJ.js.map +0 -1
- package/dist/delete-FE3MRFPM.mjs +0 -52
- package/dist/delete-FE3MRFPM.mjs.map +0 -1
- package/dist/delete-FP5MMDDA.mjs +0 -61
- package/dist/delete-FP5MMDDA.mjs.map +0 -1
- package/dist/delete-FWKI62NT.mjs +0 -39
- package/dist/delete-FWKI62NT.mjs.map +0 -1
- package/dist/delete-HLKQDPTI.js +0 -52
- package/dist/delete-HLKQDPTI.js.map +0 -1
- package/dist/delete-KAVDMRQX.mjs +0 -59
- package/dist/delete-KAVDMRQX.mjs.map +0 -1
- package/dist/delete-M4ZCKWOU.mjs +0 -52
- package/dist/delete-M4ZCKWOU.mjs.map +0 -1
- package/dist/delete-NGPOOTEX.mjs +0 -42
- package/dist/delete-NGPOOTEX.mjs.map +0 -1
- package/dist/delete-NN4CSTK5.js +0 -44
- package/dist/delete-NN4CSTK5.js.map +0 -1
- package/dist/delete-NRW5THMB.js +0 -39
- package/dist/delete-NRW5THMB.js.map +0 -1
- package/dist/delete-SZG6DJUR.mjs +0 -52
- package/dist/delete-SZG6DJUR.mjs.map +0 -1
- package/dist/delete-UMDNW3RR.mjs +0 -59
- package/dist/delete-UMDNW3RR.mjs.map +0 -1
- package/dist/delete-UVGITJ2L.mjs +0 -38
- package/dist/delete-UVGITJ2L.mjs.map +0 -1
- package/dist/delete-VBP7TKUH.js +0 -41
- package/dist/delete-VBP7TKUH.js.map +0 -1
- package/dist/delete-Y3DTH336.js +0 -59
- package/dist/delete-Y3DTH336.js.map +0 -1
- package/dist/delete-ZM3GFW2Z.js +0 -59
- package/dist/delete-ZM3GFW2Z.js.map +0 -1
- package/dist/delete-ZSN6PWGA.js +0 -59
- package/dist/delete-ZSN6PWGA.js.map +0 -1
- package/dist/docs-23TMQCLZ.js +0 -77
- package/dist/docs-23TMQCLZ.js.map +0 -1
- package/dist/docs-YG2DQVHD.mjs +0 -77
- package/dist/docs-YG2DQVHD.mjs.map +0 -1
- package/dist/download-B4Z4TAXZ.js +0 -100
- package/dist/download-B4Z4TAXZ.js.map +0 -1
- package/dist/download-JPL3BO4H.mjs +0 -100
- package/dist/download-JPL3BO4H.mjs.map +0 -1
- package/dist/duplicate-IYUSDPY2.js +0 -45
- package/dist/duplicate-IYUSDPY2.js.map +0 -1
- package/dist/duplicate-OWG7P745.mjs +0 -45
- package/dist/duplicate-OWG7P745.mjs.map +0 -1
- package/dist/export-4A6ILAPM.mjs +0 -103
- package/dist/export-4A6ILAPM.mjs.map +0 -1
- package/dist/export-BUFJDFWC.js +0 -103
- package/dist/export-BUFJDFWC.js.map +0 -1
- package/dist/get-37E7GAV3.js +0 -76
- package/dist/get-37E7GAV3.js.map +0 -1
- package/dist/get-4D2MVW4T.js +0 -49
- package/dist/get-4D2MVW4T.js.map +0 -1
- package/dist/get-576OERBE.mjs +0 -66
- package/dist/get-576OERBE.mjs.map +0 -1
- package/dist/get-5GQP5EDN.mjs +0 -71
- package/dist/get-5GQP5EDN.mjs.map +0 -1
- package/dist/get-6DKM4MZL.mjs +0 -70
- package/dist/get-6DKM4MZL.mjs.map +0 -1
- package/dist/get-BO7KWXNS.js +0 -70
- package/dist/get-BO7KWXNS.js.map +0 -1
- package/dist/get-BQH2FJBV.mjs +0 -49
- package/dist/get-BQH2FJBV.mjs.map +0 -1
- package/dist/get-DCEQN75Y.mjs +0 -71
- package/dist/get-DCEQN75Y.mjs.map +0 -1
- package/dist/get-DEFHJ7CN.js +0 -94
- package/dist/get-DEFHJ7CN.js.map +0 -1
- package/dist/get-DX5U344V.mjs +0 -149
- package/dist/get-DX5U344V.mjs.map +0 -1
- package/dist/get-EWYM6FYK.js +0 -54
- package/dist/get-EWYM6FYK.js.map +0 -1
- package/dist/get-HY3N72VT.js +0 -71
- package/dist/get-HY3N72VT.js.map +0 -1
- package/dist/get-I2CSBUKB.js +0 -56
- package/dist/get-I2CSBUKB.js.map +0 -1
- package/dist/get-I6EY4PC6.mjs +0 -54
- package/dist/get-I6EY4PC6.mjs.map +0 -1
- package/dist/get-JDHZ2YUC.mjs +0 -85
- package/dist/get-JDHZ2YUC.mjs.map +0 -1
- package/dist/get-KSATLDNX.mjs +0 -56
- package/dist/get-KSATLDNX.mjs.map +0 -1
- package/dist/get-L5HUN5CE.mjs +0 -94
- package/dist/get-L5HUN5CE.mjs.map +0 -1
- package/dist/get-LIQYXM3J.mjs +0 -76
- package/dist/get-LIQYXM3J.mjs.map +0 -1
- package/dist/get-NICBHRKG.js +0 -51
- package/dist/get-NICBHRKG.js.map +0 -1
- package/dist/get-NXV4JPXT.mjs +0 -51
- package/dist/get-NXV4JPXT.mjs.map +0 -1
- package/dist/get-OH6XFEO7.js +0 -149
- package/dist/get-OH6XFEO7.js.map +0 -1
- package/dist/get-OW77HE3C.mjs +0 -67
- package/dist/get-OW77HE3C.mjs.map +0 -1
- package/dist/get-P5MUOCUP.js +0 -68
- package/dist/get-P5MUOCUP.js.map +0 -1
- package/dist/get-PHEE7JVL.mjs +0 -71
- package/dist/get-PHEE7JVL.mjs.map +0 -1
- package/dist/get-QYIM3DCN.mjs +0 -68
- package/dist/get-QYIM3DCN.mjs.map +0 -1
- package/dist/get-R6F56IVZ.js +0 -67
- package/dist/get-R6F56IVZ.js.map +0 -1
- package/dist/get-RWF3UWIF.js +0 -71
- package/dist/get-RWF3UWIF.js.map +0 -1
- package/dist/get-T6TAL2GB.js +0 -52
- package/dist/get-T6TAL2GB.js.map +0 -1
- package/dist/get-TNDPILF3.js +0 -85
- package/dist/get-TNDPILF3.js.map +0 -1
- package/dist/get-UV3YT4VH.js +0 -66
- package/dist/get-UV3YT4VH.js.map +0 -1
- package/dist/get-X4Q4RZQC.mjs +0 -52
- package/dist/get-X4Q4RZQC.mjs.map +0 -1
- package/dist/get-XIK4FEGG.js +0 -71
- package/dist/get-XIK4FEGG.js.map +0 -1
- package/dist/health-LCGP7UDT.js +0 -73
- package/dist/health-LCGP7UDT.js.map +0 -1
- package/dist/health-MCMRR6RQ.mjs +0 -73
- package/dist/health-MCMRR6RQ.mjs.map +0 -1
- package/dist/ingestion-templates-7TLETXIF.mjs +0 -169
- package/dist/ingestion-templates-7TLETXIF.mjs.map +0 -1
- package/dist/ingestion-templates-AT5AKWJB.js +0 -169
- package/dist/ingestion-templates-AT5AKWJB.js.map +0 -1
- package/dist/init-SQ5UUFDM.js +0 -16
- package/dist/init-SQ5UUFDM.js.map +0 -1
- package/dist/init-UGSR2T2P.mjs +0 -16
- package/dist/init-UGSR2T2P.mjs.map +0 -1
- package/dist/init-shell-2JQCBGMG.mjs +0 -71
- package/dist/init-shell-2JQCBGMG.mjs.map +0 -1
- package/dist/init-shell-UDTYTWJ4.js +0 -71
- package/dist/init-shell-UDTYTWJ4.js.map +0 -1
- package/dist/install-JNBCGN7Q.mjs +0 -191
- package/dist/install-JNBCGN7Q.mjs.map +0 -1
- package/dist/install-VBJKW5WP.js +0 -191
- package/dist/install-VBJKW5WP.js.map +0 -1
- package/dist/list-2ALO3KFG.js +0 -87
- package/dist/list-2ALO3KFG.js.map +0 -1
- package/dist/list-2YGHM2AD.mjs +0 -76
- package/dist/list-2YGHM2AD.mjs.map +0 -1
- package/dist/list-3XJ7VZN4.mjs +0 -75
- package/dist/list-3XJ7VZN4.mjs.map +0 -1
- package/dist/list-47FO2DBS.js +0 -80
- package/dist/list-47FO2DBS.js.map +0 -1
- package/dist/list-4JFVZU6U.mjs +0 -78
- package/dist/list-4JFVZU6U.mjs.map +0 -1
- package/dist/list-5DNRGKML.mjs +0 -80
- package/dist/list-5DNRGKML.mjs.map +0 -1
- package/dist/list-6CPPEJQV.js +0 -75
- package/dist/list-6CPPEJQV.js.map +0 -1
- package/dist/list-6UYNGBNA.mjs +0 -75
- package/dist/list-6UYNGBNA.mjs.map +0 -1
- package/dist/list-7F3TLLLA.js +0 -85
- package/dist/list-7F3TLLLA.js.map +0 -1
- package/dist/list-AVYXRPYR.mjs +0 -53
- package/dist/list-AVYXRPYR.mjs.map +0 -1
- package/dist/list-B5QJP7XO.mjs +0 -122
- package/dist/list-B5QJP7XO.mjs.map +0 -1
- package/dist/list-BI6VDR3L.mjs +0 -80
- package/dist/list-BI6VDR3L.mjs.map +0 -1
- package/dist/list-BIXZNQNL.mjs +0 -90
- package/dist/list-BIXZNQNL.mjs.map +0 -1
- package/dist/list-E2NKP4RN.mjs +0 -71
- package/dist/list-E2NKP4RN.mjs.map +0 -1
- package/dist/list-EX74E4W3.js +0 -82
- package/dist/list-EX74E4W3.js.map +0 -1
- package/dist/list-F7RK6OGO.js +0 -71
- package/dist/list-F7RK6OGO.js.map +0 -1
- package/dist/list-FQVXBMOV.js +0 -82
- package/dist/list-FQVXBMOV.js.map +0 -1
- package/dist/list-FTAHO7RS.js +0 -53
- package/dist/list-FTAHO7RS.js.map +0 -1
- package/dist/list-HJFLTMZZ.js +0 -80
- package/dist/list-HJFLTMZZ.js.map +0 -1
- package/dist/list-HZCZZBHB.js +0 -83
- package/dist/list-HZCZZBHB.js.map +0 -1
- package/dist/list-IIUX33VL.mjs +0 -86
- package/dist/list-IIUX33VL.mjs.map +0 -1
- package/dist/list-JFASUTLY.js +0 -78
- package/dist/list-JFASUTLY.js.map +0 -1
- package/dist/list-KJIOIAVI.mjs +0 -80
- package/dist/list-KJIOIAVI.mjs.map +0 -1
- package/dist/list-LKNXTUMI.js +0 -104
- package/dist/list-LKNXTUMI.js.map +0 -1
- package/dist/list-M34E5BJ5.js +0 -80
- package/dist/list-M34E5BJ5.js.map +0 -1
- package/dist/list-MX4GYY6P.mjs +0 -87
- package/dist/list-MX4GYY6P.mjs.map +0 -1
- package/dist/list-O5SCIB3L.js +0 -75
- package/dist/list-O5SCIB3L.js.map +0 -1
- package/dist/list-O6OJ5XHC.mjs +0 -72
- package/dist/list-O6OJ5XHC.mjs.map +0 -1
- package/dist/list-ODC5L7LD.mjs +0 -83
- package/dist/list-ODC5L7LD.mjs.map +0 -1
- package/dist/list-Q5WBWW4Q.mjs +0 -82
- package/dist/list-Q5WBWW4Q.mjs.map +0 -1
- package/dist/list-QA563QDB.js +0 -90
- package/dist/list-QA563QDB.js.map +0 -1
- package/dist/list-RJFCSUUQ.mjs +0 -111
- package/dist/list-RJFCSUUQ.mjs.map +0 -1
- package/dist/list-RMHLZBQG.js +0 -76
- package/dist/list-RMHLZBQG.js.map +0 -1
- package/dist/list-SRYZRJCV.js +0 -111
- package/dist/list-SRYZRJCV.js.map +0 -1
- package/dist/list-TOSZ7BU7.js +0 -86
- package/dist/list-TOSZ7BU7.js.map +0 -1
- package/dist/list-UQQ2PAU3.mjs +0 -104
- package/dist/list-UQQ2PAU3.mjs.map +0 -1
- package/dist/list-V2WO7LLU.js +0 -72
- package/dist/list-V2WO7LLU.js.map +0 -1
- package/dist/list-VA5A3CCK.mjs +0 -75
- package/dist/list-VA5A3CCK.mjs.map +0 -1
- package/dist/list-X6EIZ5MP.js +0 -75
- package/dist/list-X6EIZ5MP.js.map +0 -1
- package/dist/list-YUYYYQ7E.js +0 -122
- package/dist/list-YUYYYQ7E.js.map +0 -1
- package/dist/list-Z4GK3RXW.js +0 -78
- package/dist/list-Z4GK3RXW.js.map +0 -1
- package/dist/list-ZBKYVBPN.mjs +0 -85
- package/dist/list-ZBKYVBPN.mjs.map +0 -1
- package/dist/list-ZDLAHVOP.mjs +0 -78
- package/dist/list-ZDLAHVOP.mjs.map +0 -1
- package/dist/list-ZONPFTHT.mjs +0 -82
- package/dist/list-ZONPFTHT.mjs.map +0 -1
- package/dist/login-UWJ4SQ3T.mjs +0 -279
- package/dist/login-UWJ4SQ3T.mjs.map +0 -1
- package/dist/login-Y3TEPZOC.js +0 -279
- package/dist/login-Y3TEPZOC.js.map +0 -1
- package/dist/logout-RTWQU22E.mjs +0 -181
- package/dist/logout-RTWQU22E.mjs.map +0 -1
- package/dist/logout-TXOAFCK7.js +0 -181
- package/dist/logout-TXOAFCK7.js.map +0 -1
- package/dist/open-2IGFGDDB.mjs +0 -47
- package/dist/open-2IGFGDDB.mjs.map +0 -1
- package/dist/open-TCBDPKWM.js +0 -47
- package/dist/open-TCBDPKWM.js.map +0 -1
- package/dist/pull-3MXPXKVF.mjs +0 -27
- package/dist/pull-3MXPXKVF.mjs.map +0 -1
- package/dist/pull-5RX2YX5P.js +0 -27
- package/dist/pull-5RX2YX5P.js.map +0 -1
- package/dist/push-7L3NXCCJ.mjs +0 -27
- package/dist/push-7L3NXCCJ.mjs.map +0 -1
- package/dist/push-QPS47QAN.js +0 -27
- package/dist/push-QPS47QAN.js.map +0 -1
- package/dist/query-2PAEPPLR.js +0 -122
- package/dist/query-2PAEPPLR.js.map +0 -1
- package/dist/query-FJ4JJLRH.mjs +0 -122
- package/dist/query-FJ4JJLRH.mjs.map +0 -1
- package/dist/records-add-K6ZRY3MM.mjs +0 -98
- package/dist/records-add-K6ZRY3MM.mjs.map +0 -1
- package/dist/records-add-OQK2SWSP.js +0 -98
- package/dist/records-add-OQK2SWSP.js.map +0 -1
- package/dist/records-delete-DPNRLQRU.mjs +0 -46
- package/dist/records-delete-DPNRLQRU.mjs.map +0 -1
- package/dist/records-delete-UC3XJNIF.js +0 -46
- package/dist/records-delete-UC3XJNIF.js.map +0 -1
- package/dist/records-list-AC7ADD4R.js +0 -89
- package/dist/records-list-AC7ADD4R.js.map +0 -1
- package/dist/records-list-EEDFGR5M.mjs +0 -89
- package/dist/records-list-EEDFGR5M.mjs.map +0 -1
- package/dist/records-update-R5G7AOMD.js +0 -53
- package/dist/records-update-R5G7AOMD.js.map +0 -1
- package/dist/records-update-V23XILMF.mjs +0 -53
- package/dist/records-update-V23XILMF.mjs.map +0 -1
- package/dist/remove-JS3XWII2.mjs +0 -114
- package/dist/remove-JS3XWII2.mjs.map +0 -1
- package/dist/remove-QU7WDHPI.js +0 -114
- package/dist/remove-QU7WDHPI.js.map +0 -1
- package/dist/rename-AQZWJOSA.js +0 -42
- package/dist/rename-AQZWJOSA.js.map +0 -1
- package/dist/rename-NX4OMJDP.mjs +0 -42
- package/dist/rename-NX4OMJDP.mjs.map +0 -1
- package/dist/request-increase-FLFEPGIC.js +0 -37
- package/dist/request-increase-FLFEPGIC.js.map +0 -1
- package/dist/request-increase-NHM27JXH.mjs +0 -37
- package/dist/request-increase-NHM27JXH.mjs.map +0 -1
- package/dist/restore-HTAPXIPP.js +0 -73
- package/dist/restore-HTAPXIPP.js.map +0 -1
- package/dist/restore-R5LY5MWO.mjs +0 -73
- package/dist/restore-R5LY5MWO.mjs.map +0 -1
- package/dist/revoke-2JIUV7JE.mjs +0 -41
- package/dist/revoke-2JIUV7JE.mjs.map +0 -1
- package/dist/revoke-GH3YEBRW.js +0 -44
- package/dist/revoke-GH3YEBRW.js.map +0 -1
- package/dist/revoke-MS5OZQHS.js +0 -41
- package/dist/revoke-MS5OZQHS.js.map +0 -1
- package/dist/revoke-TQJVF3BL.mjs +0 -44
- package/dist/revoke-TQJVF3BL.mjs.map +0 -1
- package/dist/rotate-QUP62JOC.mjs +0 -52
- package/dist/rotate-QUP62JOC.mjs.map +0 -1
- package/dist/rotate-U3RJTWOO.js +0 -52
- package/dist/rotate-U3RJTWOO.js.map +0 -1
- package/dist/run-2KC3XYCD.js +0 -77
- package/dist/run-2KC3XYCD.js.map +0 -1
- package/dist/run-35JPAOLO.mjs +0 -83
- package/dist/run-35JPAOLO.mjs.map +0 -1
- package/dist/run-5YPCH5US.mjs +0 -77
- package/dist/run-5YPCH5US.mjs.map +0 -1
- package/dist/run-6BUAGYXY.mjs +0 -142
- package/dist/run-6BUAGYXY.mjs.map +0 -1
- package/dist/run-BB27OOPE.js +0 -131
- package/dist/run-BB27OOPE.js.map +0 -1
- package/dist/run-BPTFP3HA.mjs +0 -144
- package/dist/run-BPTFP3HA.mjs.map +0 -1
- package/dist/run-DVPUVKTV.mjs +0 -131
- package/dist/run-DVPUVKTV.mjs.map +0 -1
- package/dist/run-GJEOP5LP.js +0 -144
- package/dist/run-GJEOP5LP.js.map +0 -1
- package/dist/run-JLC2AGGB.js +0 -83
- package/dist/run-JLC2AGGB.js.map +0 -1
- package/dist/run-P5B7FK6K.js +0 -142
- package/dist/run-P5B7FK6K.js.map +0 -1
- package/dist/search-FMFV6U6P.mjs +0 -108
- package/dist/search-FMFV6U6P.mjs.map +0 -1
- package/dist/search-LEF4NLQJ.js +0 -108
- package/dist/search-LEF4NLQJ.js.map +0 -1
- package/dist/set-7Q2IUUPV.mjs +0 -105
- package/dist/set-7Q2IUUPV.mjs.map +0 -1
- package/dist/set-DYXQGJNE.js +0 -59
- package/dist/set-DYXQGJNE.js.map +0 -1
- package/dist/set-FVXIBW4X.js +0 -105
- package/dist/set-FVXIBW4X.js.map +0 -1
- package/dist/set-PMA5UWDK.mjs +0 -59
- package/dist/set-PMA5UWDK.mjs.map +0 -1
- package/dist/status-DS55UJ7O.mjs +0 -153
- package/dist/status-DS55UJ7O.mjs.map +0 -1
- package/dist/status-GSPWZ255.mjs +0 -56
- package/dist/status-GSPWZ255.mjs.map +0 -1
- package/dist/status-KH64EWPP.js +0 -153
- package/dist/status-KH64EWPP.js.map +0 -1
- package/dist/status-M4GI2HR3.js +0 -56
- package/dist/status-M4GI2HR3.js.map +0 -1
- package/dist/status-OAD2U66Z.js +0 -122
- package/dist/status-OAD2U66Z.js.map +0 -1
- package/dist/status-U3EPMBTN.mjs +0 -122
- package/dist/status-U3EPMBTN.mjs.map +0 -1
- package/dist/sync-PKDE2D7V.js +0 -132
- package/dist/sync-PKDE2D7V.js.map +0 -1
- package/dist/sync-XV5HX5TO.mjs +0 -132
- package/dist/sync-XV5HX5TO.mjs.map +0 -1
- package/dist/tail-CKK6GFNI.js +0 -108
- package/dist/tail-CKK6GFNI.js.map +0 -1
- package/dist/tail-D26CEKSH.mjs +0 -108
- package/dist/tail-D26CEKSH.mjs.map +0 -1
- package/dist/unset-FGAQM4WA.js +0 -107
- package/dist/unset-FGAQM4WA.js.map +0 -1
- package/dist/unset-TVSHRR64.mjs +0 -107
- package/dist/unset-TVSHRR64.mjs.map +0 -1
- package/dist/update-337XCLM7.mjs +0 -65
- package/dist/update-337XCLM7.mjs.map +0 -1
- package/dist/update-43JHGSN7.js +0 -106
- package/dist/update-43JHGSN7.js.map +0 -1
- package/dist/update-4KGPCVCD.js +0 -71
- package/dist/update-4KGPCVCD.js.map +0 -1
- package/dist/update-5DIMZPJB.mjs +0 -71
- package/dist/update-5DIMZPJB.mjs.map +0 -1
- package/dist/update-5WVIKR5E.js +0 -48
- package/dist/update-5WVIKR5E.js.map +0 -1
- package/dist/update-AAZVLFRJ.js +0 -75
- package/dist/update-AAZVLFRJ.js.map +0 -1
- package/dist/update-APD7MSPV.js +0 -61
- package/dist/update-APD7MSPV.js.map +0 -1
- package/dist/update-AR7L7TOZ.js +0 -48
- package/dist/update-AR7L7TOZ.js.map +0 -1
- package/dist/update-C3I3BHWG.js +0 -63
- package/dist/update-C3I3BHWG.js.map +0 -1
- package/dist/update-CDBNRXSO.mjs +0 -106
- package/dist/update-CDBNRXSO.mjs.map +0 -1
- package/dist/update-CXYYWVNO.mjs +0 -75
- package/dist/update-CXYYWVNO.mjs.map +0 -1
- package/dist/update-DUJU3A4R.mjs +0 -48
- package/dist/update-DUJU3A4R.mjs.map +0 -1
- package/dist/update-E3GH3WEX.mjs +0 -83
- package/dist/update-E3GH3WEX.mjs.map +0 -1
- package/dist/update-HHGQ2DVM.js +0 -83
- package/dist/update-HHGQ2DVM.js.map +0 -1
- package/dist/update-IFDJZ6LW.js +0 -66
- package/dist/update-IFDJZ6LW.js.map +0 -1
- package/dist/update-JEGVDVSK.js +0 -51
- package/dist/update-JEGVDVSK.js.map +0 -1
- package/dist/update-JL3MKZXC.mjs +0 -66
- package/dist/update-JL3MKZXC.mjs.map +0 -1
- package/dist/update-JUTNNHSA.mjs +0 -51
- package/dist/update-JUTNNHSA.mjs.map +0 -1
- package/dist/update-MBBSJQJL.mjs +0 -79
- package/dist/update-MBBSJQJL.mjs.map +0 -1
- package/dist/update-NOYJVXCB.mjs +0 -63
- package/dist/update-NOYJVXCB.mjs.map +0 -1
- package/dist/update-OFUQFYBD.js +0 -76
- package/dist/update-OFUQFYBD.js.map +0 -1
- package/dist/update-OZC2S3BC.js +0 -79
- package/dist/update-OZC2S3BC.js.map +0 -1
- package/dist/update-P4PNDOMU.mjs +0 -63
- package/dist/update-P4PNDOMU.mjs.map +0 -1
- package/dist/update-RJFENG32.mjs +0 -48
- package/dist/update-RJFENG32.mjs.map +0 -1
- package/dist/update-W2RQW53I.js +0 -65
- package/dist/update-W2RQW53I.js.map +0 -1
- package/dist/update-WFGCL4JS.mjs +0 -61
- package/dist/update-WFGCL4JS.mjs.map +0 -1
- package/dist/update-WTIR2BYE.js +0 -63
- package/dist/update-WTIR2BYE.js.map +0 -1
- package/dist/update-X7J6WRG3.mjs +0 -76
- package/dist/update-X7J6WRG3.mjs.map +0 -1
- package/dist/upload-7O3K4YAL.mjs +0 -80
- package/dist/upload-7O3K4YAL.mjs.map +0 -1
- package/dist/upload-DJA44RJ3.js +0 -80
- package/dist/upload-DJA44RJ3.js.map +0 -1
- package/dist/versions-2JD6EKCA.js +0 -85
- package/dist/versions-2JD6EKCA.js.map +0 -1
- package/dist/versions-HXI6GAD2.mjs +0 -85
- package/dist/versions-HXI6GAD2.mjs.map +0 -1
- package/dist/whoami-EI52YRCH.js +0 -30
- package/dist/whoami-EI52YRCH.js.map +0 -1
- package/dist/whoami-KGRA4QEY.mjs +0 -30
- package/dist/whoami-KGRA4QEY.mjs.map +0 -1
- package/dist/wrap-LBMHL6N6.mjs +0 -33
- package/dist/wrap-LBMHL6N6.mjs.map +0 -1
- package/dist/wrap-O7DQWEVA.js +0 -33
- package/dist/wrap-O7DQWEVA.js.map +0 -1
- /package/dist/{chunk-RIPASL56.mjs.map → chunk-2O4ILSP5.mjs.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/client-sdk/services/model-defaults/model-defaults-api.service.ts"],"sourcesContent":["import { DEFAULT_ENDPOINT } from \"@/internal/constants\";\nimport { buildAuthHeaders } from \"@/internal/api/auth\";\nimport { formatApiErrorMessage } from \"@/client-sdk/services/_shared/format-api-error\";\n\nexport type ModelDefaultScopeType = \"ORGANIZATION\" | \"TEAM\" | \"PROJECT\";\n\nexport interface ModelDefaultScopeRef {\n scopeType: ModelDefaultScopeType;\n scopeId: string;\n}\n\nexport interface ConfigRow {\n id: string;\n config: Record<string, string>;\n scopes: Array<{ type: ModelDefaultScopeType; id: string; name: string }>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface EffectiveResolution {\n model: string;\n source: string;\n scope: string | null;\n}\n\nexport interface ModelDefaultsSnapshot {\n scope: {\n projectId: string;\n teamId: string | null;\n organizationId: string | null;\n organizationName: string | null;\n };\n effective: {\n DEFAULT: EffectiveResolution | null;\n FAST: EffectiveResolution | null;\n EMBEDDINGS: EffectiveResolution | null;\n };\n configs: ConfigRow[];\n}\n\nexport interface CreateConfigBody {\n config: Record<string, string>;\n scopes: ModelDefaultScopeRef[];\n}\n\nexport interface UpdateConfigBody {\n config?: Record<string, string>;\n scopes?: ModelDefaultScopeRef[];\n}\n\nexport class ModelDefaultsApiError extends Error {\n constructor(\n message: string,\n public readonly operation: string,\n public readonly originalError?: unknown,\n ) {\n super(message);\n this.name = \"ModelDefaultsApiError\";\n }\n}\n\nexport class ModelDefaultsApiService {\n private readonly apiKey: string;\n private readonly endpoint: string;\n\n constructor(config?: { apiKey?: string; endpoint?: string }) {\n this.apiKey = config?.apiKey ?? process.env.LANGWATCH_API_KEY ?? \"\";\n this.endpoint =\n config?.endpoint ?? process.env.LANGWATCH_ENDPOINT ?? DEFAULT_ENDPOINT;\n }\n\n private async request<T>(\n path: string,\n options?: RequestInit & { allowNoContent?: boolean },\n ): Promise<T> {\n const response = await fetch(`${this.endpoint}${path}`, {\n ...options,\n headers: {\n ...buildAuthHeaders({ apiKey: this.apiKey }),\n \"Content-Type\": \"application/json\",\n ...options?.headers,\n },\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n let parsed: unknown = errorText;\n try {\n parsed = JSON.parse(errorText);\n } catch {\n // leave as raw text\n }\n const message = formatApiErrorMessage({\n error: parsed,\n options: { status: response.status },\n });\n throw new ModelDefaultsApiError(\n `HTTP ${response.status}: ${message}`,\n options?.method ?? \"GET\",\n parsed,\n );\n }\n\n if (response.status === 204 || options?.allowNoContent) {\n return undefined as T;\n }\n return response.json() as Promise<T>;\n }\n\n async getSnapshot(): Promise<ModelDefaultsSnapshot> {\n return this.request<ModelDefaultsSnapshot>(\"/api/model-defaults\");\n }\n\n async createConfig(body: CreateConfigBody): Promise<{ id: string }> {\n return this.request<{ id: string }>(\"/api/model-defaults\", {\n method: \"POST\",\n body: JSON.stringify(body),\n });\n }\n\n async updateConfig(id: string, body: UpdateConfigBody): Promise<void> {\n await this.request<void>(\n `/api/model-defaults/${encodeURIComponent(id)}`,\n {\n method: \"PUT\",\n body: JSON.stringify(body),\n allowNoContent: true,\n },\n );\n }\n\n async deleteConfig(id: string): Promise<void> {\n await this.request<void>(\n `/api/model-defaults/${encodeURIComponent(id)}`,\n {\n method: \"DELETE\",\n allowNoContent: true,\n },\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAkDO,IAAM,wBAAN,cAAoC,MAAM;AAAA,EAC/C,YACE,SACgB,WACA,eAChB;AACA,UAAM,OAAO;AAHG;AACA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAEO,IAAM,0BAAN,MAA8B;AAAA,EAInC,YAAY,QAAiD;AAjE/D;AAkEI,SAAK,UAAS,4CAAQ,WAAR,YAAkB,QAAQ,IAAI,sBAA9B,YAAmD;AACjE,SAAK,YACH,4CAAQ,aAAR,YAAoB,QAAQ,IAAI,uBAAhC,YAAsD;AAAA,EAC1D;AAAA,EAEA,MAAc,QACZ,MACA,SACY;AA1EhB;AA2EI,UAAM,WAAW,MAAM,MAAM,GAAG,KAAK,QAAQ,GAAG,IAAI,IAAI,iCACnD,UADmD;AAAA,MAEtD,SAAS,gDACJ,iBAAiB,EAAE,QAAQ,KAAK,OAAO,CAAC,IADpC;AAAA,QAEP,gBAAgB;AAAA,UACb,mCAAS;AAAA,IAEhB,EAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,YAAY,MAAM,SAAS,KAAK;AACtC,UAAI,SAAkB;AACtB,UAAI;AACF,iBAAS,KAAK,MAAM,SAAS;AAAA,MAC/B,SAAQ;AAAA,MAER;AACA,YAAM,UAAU,sBAAsB;AAAA,QACpC,OAAO;AAAA,QACP,SAAS,EAAE,QAAQ,SAAS,OAAO;AAAA,MACrC,CAAC;AACD,YAAM,IAAI;AAAA,QACR,QAAQ,SAAS,MAAM,KAAK,OAAO;AAAA,SACnC,wCAAS,WAAT,YAAmB;AAAA,QACnB;AAAA,MACF;AAAA,IACF;AAEA,QAAI,SAAS,WAAW,QAAO,mCAAS,iBAAgB;AACtD,aAAO;AAAA,IACT;AACA,WAAO,SAAS,KAAK;AAAA,EACvB;AAAA,EAEA,MAAM,cAA8C;AAClD,WAAO,KAAK,QAA+B,qBAAqB;AAAA,EAClE;AAAA,EAEA,MAAM,aAAa,MAAiD;AAClE,WAAO,KAAK,QAAwB,uBAAuB;AAAA,MACzD,QAAQ;AAAA,MACR,MAAM,KAAK,UAAU,IAAI;AAAA,IAC3B,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,aAAa,IAAY,MAAuC;AACpE,UAAM,KAAK;AAAA,MACT,uBAAuB,mBAAmB,EAAE,CAAC;AAAA,MAC7C;AAAA,QACE,QAAQ;AAAA,QACR,MAAM,KAAK,UAAU,IAAI;AAAA,QACzB,gBAAgB;AAAA,MAClB;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,aAAa,IAA2B;AAC5C,UAAM,KAAK;AAAA,MACT,uBAAuB,mBAAmB,EAAE,CAAC;AAAA,MAC7C;AAAA,QACE,QAAQ;AAAA,QACR,gBAAgB;AAAA,MAClB;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
package/dist/chunk-OGAE7BVQ.js
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
|
|
2
|
-
|
|
3
|
-
var _chunkBRPEG3YQjs = require('./chunk-BRPEG3YQ.js');
|
|
4
|
-
|
|
5
|
-
// src/cli/utils/governance/config.ts
|
|
6
|
-
var _fs = require('fs'); var fs = _interopRequireWildcard(_fs);
|
|
7
|
-
var _os = require('os'); var os = _interopRequireWildcard(_os);
|
|
8
|
-
var _path = require('path'); var path = _interopRequireWildcard(_path);
|
|
9
|
-
function defaults() {
|
|
10
|
-
var _a;
|
|
11
|
-
const cp = (_a = process.env.LANGWATCH_ENDPOINT) != null ? _a : "https://app.langwatch.ai";
|
|
12
|
-
const explicitGw = process.env.LANGWATCH_GATEWAY_URL;
|
|
13
|
-
const gw = explicitGw != null ? explicitGw : /^https?:\/\/(localhost|127\.0\.0\.1)/.test(cp) ? "http://localhost:5563" : "https://gateway.langwatch.ai";
|
|
14
|
-
return { gateway_url: gw, control_plane_url: cp };
|
|
15
|
-
}
|
|
16
|
-
var VK_SECRET_PREFIX = "vk-lw-";
|
|
17
|
-
function isCanonicalVkSecret(secret) {
|
|
18
|
-
return !!secret && secret.startsWith(VK_SECRET_PREFIX);
|
|
19
|
-
}
|
|
20
|
-
function configPath() {
|
|
21
|
-
const env = process.env.LANGWATCH_CLI_CONFIG;
|
|
22
|
-
if (env) return env;
|
|
23
|
-
return path.join(os.homedir(), ".langwatch", "config.json");
|
|
24
|
-
}
|
|
25
|
-
function loadConfig() {
|
|
26
|
-
const p = configPath();
|
|
27
|
-
if (!fs.existsSync(p)) return defaults();
|
|
28
|
-
try {
|
|
29
|
-
const text = fs.readFileSync(p, "utf8");
|
|
30
|
-
const parsed = JSON.parse(text);
|
|
31
|
-
const cfg = _chunkBRPEG3YQjs.__spreadValues.call(void 0, _chunkBRPEG3YQjs.__spreadValues.call(void 0, {}, defaults()), parsed);
|
|
32
|
-
if (cfg.default_personal_vk && !isCanonicalVkSecret(cfg.default_personal_vk.secret)) {
|
|
33
|
-
delete cfg.default_personal_vk;
|
|
34
|
-
}
|
|
35
|
-
return cfg;
|
|
36
|
-
} catch (err) {
|
|
37
|
-
throw new Error(`Failed to parse ${p}: ${err.message}`);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
function saveConfig(cfg) {
|
|
41
|
-
const p = configPath();
|
|
42
|
-
const dir = path.dirname(p);
|
|
43
|
-
fs.mkdirSync(dir, { recursive: true, mode: 448 });
|
|
44
|
-
const tmp = p + ".tmp";
|
|
45
|
-
fs.writeFileSync(tmp, JSON.stringify(cfg, null, 2), { mode: 384 });
|
|
46
|
-
fs.renameSync(tmp, p);
|
|
47
|
-
}
|
|
48
|
-
function clearConfig() {
|
|
49
|
-
const p = configPath();
|
|
50
|
-
try {
|
|
51
|
-
fs.unlinkSync(p);
|
|
52
|
-
} catch (err) {
|
|
53
|
-
if (err.code !== "ENOENT") throw err;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
function isLoggedIn(cfg) {
|
|
57
|
-
return !!cfg && !!cfg.access_token;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
exports.configPath = configPath; exports.loadConfig = loadConfig; exports.saveConfig = saveConfig; exports.clearConfig = clearConfig; exports.isLoggedIn = isLoggedIn;
|
|
67
|
-
//# sourceMappingURL=chunk-OGAE7BVQ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/chunk-OGAE7BVQ.js","../src/cli/utils/governance/config.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACA;ACGA,+DAAoB;AACpB,+DAAoB;AACpB,uEAAsB;AA0FtB,SAAS,QAAA,CAAA,EAA6B;AAnGtC,EAAA,IAAA,EAAA;AA0GE,EAAA,MAAM,GAAA,EAAA,CAAK,GAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,kBAAA,EAAA,GAAZ,KAAA,EAAA,GAAA,EAAkC,0BAAA;AAC7C,EAAA,MAAM,WAAA,EAAa,OAAA,CAAQ,GAAA,CAAI,qBAAA;AAU/B,EAAA,MAAM,GAAA,EACJ,WAAA,GAAA,KAAA,EAAA,WAAA,EACC,sCAAA,CAAuC,IAAA,CAAK,EAAE,EAAA,EAC3C,wBAAA,EACA,8BAAA;AACN,EAAA,OAAO,EAAE,WAAA,EAAa,EAAA,EAAI,iBAAA,EAAmB,GAAG,CAAA;AAClD;AASA,IAAM,iBAAA,EAAmB,QAAA;AAOlB,SAAS,mBAAA,CAAoB,MAAA,EAAqC;AACvE,EAAA,OAAO,CAAC,CAAC,OAAA,GAAU,MAAA,CAAO,UAAA,CAAW,gBAAgB,CAAA;AACvD;AAMO,SAAS,UAAA,CAAA,EAAqB;AACnC,EAAA,MAAM,IAAA,EAAM,OAAA,CAAQ,GAAA,CAAI,oBAAA;AACxB,EAAA,GAAA,CAAI,GAAA,EAAK,OAAO,GAAA;AAChB,EAAA,OAAY,IAAA,CAAA,IAAA,CAAQ,EAAA,CAAA,OAAA,CAAQ,CAAA,EAAG,YAAA,EAAc,aAAa,CAAA;AAC5D;AAGO,SAAS,UAAA,CAAA,EAA+B;AAC7C,EAAA,MAAM,EAAA,EAAI,UAAA,CAAW,CAAA;AACrB,EAAA,GAAA,CAAI,CAAI,EAAA,CAAA,UAAA,CAAW,CAAC,CAAA,EAAG,OAAO,QAAA,CAAS,CAAA;AACvC,EAAA,IAAI;AACF,IAAA,MAAM,KAAA,EAAU,EAAA,CAAA,YAAA,CAAa,CAAA,EAAG,MAAM,CAAA;AACtC,IAAA,MAAM,OAAA,EAAS,IAAA,CAAK,KAAA,CAAM,IAAI,CAAA;AAC9B,IAAA,MAAM,IAAA,EAAM,6CAAA,6CAAA,CAAA,CAAA,EAAK,QAAA,CAAS,CAAA,CAAA,EAAM,MAAA,CAAA;AAMhC,IAAA,GAAA,CACE,GAAA,CAAI,oBAAA,GACJ,CAAC,mBAAA,CAAoB,GAAA,CAAI,mBAAA,CAAoB,MAAM,CAAA,EACnD;AACA,MAAA,OAAO,GAAA,CAAI,mBAAA;AAAA,IACb;AACA,IAAA,OAAO,GAAA;AAAA,EACT,EAAA,MAAA,CAAS,GAAA,EAAK;AACZ,IAAA,MAAM,IAAI,KAAA,CAAM,CAAA,gBAAA,EAAmB,CAAC,CAAA,EAAA,EAAM,GAAA,CAAc,OAAO,CAAA,CAAA;AACjE,EAAA;AACF;AAGwD;AACjC,EAAA;AACK,EAAA;AACwB,EAAA;AAClC,EAAA;AACsC,EAAA;AAClC,EAAA;AACtB;AAGoC;AACb,EAAA;AACjB,EAAA;AACa,IAAA;AACH,EAAA;AACgD,IAAA;AAC9D,EAAA;AACF;AAG8E;AACtD,EAAA;AACxB;AD/IyD;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/chunk-OGAE7BVQ.js","sourcesContent":[null,"/**\n * Persists langwatch CLI governance credentials at\n * ~/.langwatch/config.json. The file is mode 0600 (atomic rename\n * on save). The shape mirrors what `POST /api/auth/cli/exchange`\n * returns plus a few client-side fields.\n */\n\nimport * as fs from \"node:fs\";\nimport * as os from \"node:os\";\nimport * as path from \"node:path\";\n\nimport type { PlatformToolPolicyMap } from \"./platform-tool-policy\";\n\nexport interface GovernanceConfig {\n /** AI Gateway base URL (e.g. https://gateway.langwatch.ai). */\n gateway_url: string;\n /** Control plane base URL (e.g. https://app.langwatch.ai). */\n control_plane_url: string;\n\n /** Short-lived bearer for the gateway. */\n access_token?: string;\n /** Long-lived token for refreshing access_token. */\n refresh_token?: string;\n /** Unix epoch (seconds) when access_token expires. */\n expires_at?: number;\n\n user?: { id?: string; email?: string; name?: string };\n organization?: { id?: string; slug?: string; name?: string };\n default_personal_vk?: { id?: string; secret?: string; prefix?: string };\n\n /**\n * Personal ingest keys (the project-scoped ingest-only ApiKey\n * `sk-lw-<...>` shape minted by `/api/auth/cli/governance/ingestion-key`),\n * keyed by the tool's source_type slug (`claude_code` / `codex` /\n * `gemini` / `opencode`). One key per source so different wrapped\n * tools surface as their own ingestion source in /me + /messages.\n *\n * When the right key is present for a wrapped tool, the\n * `langwatch <tool>` wrapper injects the standard OTEL_*_EXPORTER\n * env vars pointing at the OTLP endpoint with this key as the\n * Authorization bearer (reusing the cache instead of re-minting).\n *\n * Unset until the wrapper's first auto-mint for that tool.\n */\n default_personal_ingest_keys?: Record<\n string,\n { id?: string; secret?: string; prefix?: string }\n >;\n\n /**\n * Persistent answer to the post-login \"save export block to your\n * shell rc?\" prompt. `skip` = user picked \"never\", stay quiet\n * forever. `undefined` = ask each login that lands in an\n * unconfigured shell. The \"not now\" answer doesn't persist — it\n * lets the next login re-ask on its own.\n */\n shell_rc_preference?: \"skip\";\n\n /**\n * Per-wrapped-tool routing mode answer.\n *\n * \"gateway\" — Path A: route the tool's HTTP calls through\n * the AI Gateway via base-URL swap (full server-\n * side I/O + cost capture, no client OTel).\n * \"ingestion\" — Path B: enable the tool's native OTel exporter\n * pointed at /api/otel + mint the user's personal\n * ingest key (sk-lw-*). For codex this also writes\n * the [otel] block to ~/.codex/config.toml\n * automatically.\n * \"ask\" — re-prompt on the next `langwatch <tool>`. The\n * default when this key is absent.\n *\n * The two modes are mutually exclusive per the no-double-trace\n * rule — gateway capture + OTel emission on the same call would\n * double-count both traces and cost. The wrapper picks Path A\n * by default when a personal VK is configured, and falls back\n * to Path B when no VK + the user opts in.\n */\n tool_mode?: Record<string, \"gateway\" | \"ingestion\" | \"ask\">;\n\n /**\n * Per-(org, tool) path policy cached from the login bootstrap\n * (`/api/auth/cli/bootstrap` → `toolPolicies`). The `langwatch\n * <tool>` wrapper gates path selection on this map so it only\n * offers the paths the org admin permits. Absent for a legacy /\n * offline CLI that never cached it; `resolvePlatformToolPolicy`\n * then falls back to the hardcoded defaults.\n */\n tool_policies?: PlatformToolPolicyMap;\n\n /**\n * Most-recent signed `request_increase_url` returned by the\n * gateway in a 402 budget_exceeded payload — cached so\n * `langwatch request-increase` opens the exact URL the gateway\n * produced (with HMAC'd user/limit/spent params).\n */\n last_request_increase_url?: string;\n}\n\nfunction defaults(): GovernanceConfig {\n // Note: the single source of truth for endpoint resolution at command\n // boundaries is `resolveControlPlaneEndpoint()` in resolveEndpoint.ts.\n // This function only seeds the *initial* GovernanceConfig shape when\n // no file exists yet — at boot, before the user has logged in.\n // `LANGWATCH_URL` legacy alias intentionally NOT read (was undocumented;\n // dropped per rchaves directive 2026-05-05).\n const cp = process.env.LANGWATCH_ENDPOINT ?? \"https://app.langwatch.ai\";\n const explicitGw = process.env.LANGWATCH_GATEWAY_URL;\n // Self-hosted detection: when the user pointed `LANGWATCH_ENDPOINT` at\n // localhost (the standard `make dev` shape) and didn't override the\n // gateway URL, default to the local AI gateway port (5563 per\n // langwatch/CLAUDE.md `make service svc=aigateway`). Without this,\n // `langwatch login` + `whoami` printed the production gateway URL on\n // self-hosted installs and the user's `langwatch claude` calls would\n // route at the wrong place (Ariana QA — same shape as the /me tile\n // base-URL bug Sergey c45e69987 / Alexis 30e52a718 fixed on the\n // control-plane side).\n const gw =\n explicitGw ??\n (/^https?:\\/\\/(localhost|127\\.0\\.0\\.1)/.test(cp)\n ? \"http://localhost:5563\"\n : \"https://gateway.langwatch.ai\");\n return { gateway_url: gw, control_plane_url: cp };\n}\n\n/**\n * Canonical personal-VK secret prefix. Mirrors the control plane's\n * `vk-lw-<ULID>` minting format (langwatch virtualKey.crypto.ts). The\n * gateway rejects anything else as malformed_key before any DB lookup,\n * so a config carrying a legacy-format secret (older `lw_vk_live_*`\n * logins) routes every `langwatch <tool>` call straight to a 401.\n */\nconst VK_SECRET_PREFIX = \"vk-lw-\";\n\n/**\n * Whether a stored secret is in the format the current gateway can\n * parse. Legacy secrets minted before the format change fail this and\n * must be re-issued via a fresh login.\n */\nexport function isCanonicalVkSecret(secret: string | undefined): boolean {\n return !!secret && secret.startsWith(VK_SECRET_PREFIX);\n}\n\n/**\n * Returns the absolute path to the config file. Override with\n * LANGWATCH_CLI_CONFIG for tests / non-default homes.\n */\nexport function configPath(): string {\n const env = process.env.LANGWATCH_CLI_CONFIG;\n if (env) return env;\n return path.join(os.homedir(), \".langwatch\", \"config.json\");\n}\n\n/** Read the config from disk, merging in defaults for missing keys. */\nexport function loadConfig(): GovernanceConfig {\n const p = configPath();\n if (!fs.existsSync(p)) return defaults();\n try {\n const text = fs.readFileSync(p, \"utf8\");\n const parsed = JSON.parse(text) as Partial<GovernanceConfig>;\n const cfg = { ...defaults(), ...parsed };\n // Drop a legacy-format personal VK secret on load. Keeping it would\n // route every `langwatch <tool>` call to a malformed_key 401; once\n // dropped, the wrapper preflight tells the user to re-login and the\n // next login persists a fresh `vk-lw-` secret. A valid canonical\n // secret is never touched, so this won't wipe a working credential.\n if (\n cfg.default_personal_vk &&\n !isCanonicalVkSecret(cfg.default_personal_vk.secret)\n ) {\n delete cfg.default_personal_vk;\n }\n return cfg;\n } catch (err) {\n throw new Error(`Failed to parse ${p}: ${(err as Error).message}`);\n }\n}\n\n/** Write the config atomically (tmp file + rename) with mode 0600. */\nexport function saveConfig(cfg: GovernanceConfig): void {\n const p = configPath();\n const dir = path.dirname(p);\n fs.mkdirSync(dir, { recursive: true, mode: 0o700 });\n const tmp = p + \".tmp\";\n fs.writeFileSync(tmp, JSON.stringify(cfg, null, 2), { mode: 0o600 });\n fs.renameSync(tmp, p);\n}\n\n/** Delete the config file; idempotent. */\nexport function clearConfig(): void {\n const p = configPath();\n try {\n fs.unlinkSync(p);\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code !== \"ENOENT\") throw err;\n }\n}\n\n/** Whether a loaded config has live credentials. */\nexport function isLoggedIn(cfg: GovernanceConfig | null | undefined): boolean {\n return !!cfg && !!cfg.access_token;\n}\n"]}
|
package/dist/chunk-OMOZEGVZ.mjs
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
// src/cli/commands/experiment/resolve-run.ts
|
|
2
|
-
var resolveRunId = async ({
|
|
3
|
-
service,
|
|
4
|
-
experimentSlug,
|
|
5
|
-
runId
|
|
6
|
-
}) => {
|
|
7
|
-
const explicit = runId == null ? void 0 : runId.trim();
|
|
8
|
-
if (explicit) return explicit;
|
|
9
|
-
const { runs } = await service.listRuns({ experimentSlug, pageSize: 1 });
|
|
10
|
-
const latest = runs == null ? void 0 : runs[0];
|
|
11
|
-
if (!latest) {
|
|
12
|
-
throw new Error(
|
|
13
|
-
`No runs found for experiment "${experimentSlug}". Start one first, or pass --run-id <id>.`
|
|
14
|
-
);
|
|
15
|
-
}
|
|
16
|
-
return latest.runId;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export {
|
|
20
|
-
resolveRunId
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=chunk-OMOZEGVZ.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/cli/commands/experiment/resolve-run.ts"],"sourcesContent":["import { ExperimentsApiService } from \"@/client-sdk/services/experiments/experiments-api.service\";\n\n// Resolve which run an experiment subcommand should act on: an explicit\n// --run-id when given, otherwise the latest run for the experiment. The runs\n// list is returned newest-first by the API, so the first entry is the latest.\nexport const resolveRunId = async ({\n service,\n experimentSlug,\n runId,\n}: {\n service: ExperimentsApiService;\n experimentSlug: string;\n runId?: string;\n}): Promise<string> => {\n const explicit = runId?.trim();\n if (explicit) return explicit;\n\n const { runs } = await service.listRuns({ experimentSlug, pageSize: 1 });\n const latest = runs?.[0];\n if (!latest) {\n throw new Error(\n `No runs found for experiment \"${experimentSlug}\". Start one first, or pass --run-id <id>.`,\n );\n }\n return latest.runId;\n};\n"],"mappings":";AAKO,IAAM,eAAe,OAAO;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AACF,MAIuB;AACrB,QAAM,WAAW,+BAAO;AACxB,MAAI,SAAU,QAAO;AAErB,QAAM,EAAE,KAAK,IAAI,MAAM,QAAQ,SAAS,EAAE,gBAAgB,UAAU,EAAE,CAAC;AACvE,QAAM,SAAS,6BAAO;AACtB,MAAI,CAAC,QAAQ;AACX,UAAM,IAAI;AAAA,MACR,iCAAiC,cAAc;AAAA,IACjD;AAAA,EACF;AACA,SAAO,OAAO;AAChB;","names":[]}
|
package/dist/chunk-OMZ3FRPU.mjs
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
NoOpLogger
|
|
3
|
-
} from "./chunk-PONU4KJX.mjs";
|
|
4
|
-
|
|
5
|
-
// src/observability-sdk/features/data-capture/utils.ts
|
|
6
|
-
function validateDataCaptureMode(mode) {
|
|
7
|
-
return ["none", "input", "output", "all"].includes(mode);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
// src/observability-sdk/config.ts
|
|
11
|
-
var observabilitySdkConfig = null;
|
|
12
|
-
function initializeObservabilitySdkConfig(config) {
|
|
13
|
-
observabilitySdkConfig = config;
|
|
14
|
-
}
|
|
15
|
-
function getObservabilitySdkConfig(options) {
|
|
16
|
-
if (!observabilitySdkConfig) {
|
|
17
|
-
const message = "[LangWatch Observability SDK] Please call setupObservability() before using the Observability SDK";
|
|
18
|
-
if ((options == null ? void 0 : options.throwOnUninitialized) || process.env.NODE_ENV === "development") {
|
|
19
|
-
throw new Error(message);
|
|
20
|
-
}
|
|
21
|
-
return {
|
|
22
|
-
logger: new NoOpLogger()
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
return observabilitySdkConfig;
|
|
26
|
-
}
|
|
27
|
-
function getObservabilitySdkLogger() {
|
|
28
|
-
return getObservabilitySdkConfig().logger;
|
|
29
|
-
}
|
|
30
|
-
function getDataCaptureMode() {
|
|
31
|
-
const config = getObservabilitySdkConfig();
|
|
32
|
-
if (!config.dataCapture) {
|
|
33
|
-
return "all";
|
|
34
|
-
}
|
|
35
|
-
if (typeof config.dataCapture === "string") {
|
|
36
|
-
const validModes = ["none", "input", "output", "all"];
|
|
37
|
-
if (validModes.includes(config.dataCapture)) {
|
|
38
|
-
return config.dataCapture;
|
|
39
|
-
}
|
|
40
|
-
getObservabilitySdkLogger().warn(
|
|
41
|
-
`Invalid data capture mode: ${config.dataCapture}. Using default: "all"`
|
|
42
|
-
);
|
|
43
|
-
return "all";
|
|
44
|
-
}
|
|
45
|
-
if (typeof config.dataCapture === "object" && config.dataCapture.mode && validateDataCaptureMode(config.dataCapture.mode)) {
|
|
46
|
-
return config.dataCapture.mode;
|
|
47
|
-
}
|
|
48
|
-
return "all";
|
|
49
|
-
}
|
|
50
|
-
function shouldCaptureInput() {
|
|
51
|
-
const mode = getDataCaptureMode();
|
|
52
|
-
return mode === "input" || mode === "all";
|
|
53
|
-
}
|
|
54
|
-
function shouldCaptureOutput() {
|
|
55
|
-
const mode = getDataCaptureMode();
|
|
56
|
-
return mode === "output" || mode === "all";
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export {
|
|
60
|
-
initializeObservabilitySdkConfig,
|
|
61
|
-
getDataCaptureMode,
|
|
62
|
-
shouldCaptureInput,
|
|
63
|
-
shouldCaptureOutput
|
|
64
|
-
};
|
|
65
|
-
//# sourceMappingURL=chunk-OMZ3FRPU.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/observability-sdk/features/data-capture/utils.ts","../src/observability-sdk/config.ts"],"sourcesContent":["import { type DataCaptureMode } from \"./types\";\n\n/**\n * Validates a data capture mode.\n */\nexport function validateDataCaptureMode(mode: DataCaptureMode): boolean {\n return [\"none\", \"input\", \"output\", \"all\"].includes(mode);\n}\n","import { type Logger, NoOpLogger } from \"../logger/index.js\";\nimport {\n type DataCaptureMode,\n type DataCaptureOptions,\n} from \"./features/data-capture/types.js\";\nimport { validateDataCaptureMode } from \"./features/data-capture/utils.js\";\n\n/**\n * @module observability/config\n * @description\n * Provides configuration management for the LangWatch Observability SDK, including logger and data capture settings.\n *\n * @remarks\n * This module allows you to initialize, retrieve, and reset the global observability configuration. It also provides utilities for determining data capture behavior based on context and configuration.\n *\n * @see {@link ObservabilityConfig}\n * @see {@link initializeObservabilitySdkConfig}\n * @see {@link getObservabilitySdkConfig}\n * @see {@link resetObservabilitySdkConfig}\n * @see {@link getDataCaptureMode}\n * @see {@link shouldCaptureInput}\n * @see {@link shouldCaptureOutput}\n */\n/**\n * Configuration options for the LangWatch Observability SDK.\n *\n * @property logger - The logger instance to use for SDK logging.\n * @property dataCapture - Configuration for automatic data capture. Can be a string, function, or object.\n *\n * @example\n * ```ts\n * import { ObservabilityConfig, initializeObservabilitySdkConfig } from \"@langwatch/observability\";\n *\n * const config: ObservabilityConfig = {\n * logger: new ConsoleLogger(),\n * dataCapture: \"all\",\n * };\n *\n * initializeObservabilitySdkConfig(config);\n * ```\n */\nexport interface ObservabilityConfig {\n /**\n * The logger to use for the observability SDK.\n *\n * @default NoOpLogger\n */\n logger: Logger;\n\n /**\n * Configuration for automatic data capture.\n *\n * @default \"all\"\n */\n dataCapture?: DataCaptureOptions;\n}\n\n/**\n * The observability SDK config.\n */\nlet observabilitySdkConfig: ObservabilityConfig | null = null;\n\n/**\n * Initializes the global observability SDK configuration.\n *\n * @param config - The configuration object to use.\n *\n * @remarks\n * This function should be called once at application startup, before using any observability features.\n *\n * @warning\n * Calling this function will intentionally overwrite any existing configuration. This is by design to allow re-initialization in dynamic or testing environments. If you call this function multiple times, the most recent configuration will take effect.\n *\n * @example\n * ```ts\n * initializeObservabilitySdkConfig({ logger: new ConsoleLogger() });\n * ```\n */\nexport function initializeObservabilitySdkConfig(config: ObservabilityConfig) {\n observabilitySdkConfig = config;\n}\n\n/**\n * Resets the global observability SDK configuration to its initial state (`null`).\n *\n * @remarks\n * Useful for testing or re-initializing the SDK in dynamic environments.\n *\n * @example\n * ```ts\n * resetObservabilitySdkConfig();\n * ```\n */\nexport function resetObservabilitySdkConfig() {\n observabilitySdkConfig = null;\n}\n\n/**\n * Retrieves the current observability SDK configuration.\n *\n * @param options - Optional settings.\n * @param options.throwOnUninitialized - If true, throws an error if the config is not initialized. Defaults to `false` unless `NODE_ENV` is `development`.\n * @returns The current {@link ObservabilityConfig}.\n *\n * @throws {Error} If the config is uninitialized and `throwOnUninitialized` is true or in development mode.\n *\n * @example\n * ```ts\n * const config = getObservabilitySdkConfig();\n * ```\n */\nexport function getObservabilitySdkConfig(options?: {\n throwOnUninitialized?: boolean;\n}): ObservabilityConfig {\n if (!observabilitySdkConfig) {\n const message =\n \"[LangWatch Observability SDK] Please call setupObservability() before using the Observability SDK\";\n\n if (\n options?.throwOnUninitialized ||\n process.env.NODE_ENV === \"development\"\n ) {\n throw new Error(message);\n }\n\n // Use a default logger that can be configured\n return {\n logger: new NoOpLogger(),\n };\n }\n return observabilitySdkConfig;\n}\n\n/**\n * Gets the logger instance from the current observability SDK configuration.\n *\n * @returns The configured {@link Logger} instance.\n *\n * @example\n * ```ts\n * const logger = getObservabilitySdkLogger();\n * logger.info(\"Observability initialized\");\n * ```\n */\nexport function getObservabilitySdkLogger(): Logger {\n return getObservabilitySdkConfig().logger;\n}\n\n/**\n * Determines the effective data capture mode.\n *\n * @returns The resolved {@link DataCaptureMode} (\"all\", \"input\", or \"output\").\n *\n * @remarks\n * The mode is determined by the configuration, which can be a string, function, or object. Defaults to \"all\" if not specified.\n *\n * @example\n * ```ts\n * const mode = getDataCaptureMode();\n * ```\n */\nexport function getDataCaptureMode(): DataCaptureMode {\n const config = getObservabilitySdkConfig();\n\n if (!config.dataCapture) {\n return \"all\"; // Default: capture both input and output\n }\n\n // Handle different config formats\n if (typeof config.dataCapture === \"string\") {\n const validModes: DataCaptureMode[] = [\"none\", \"input\", \"output\", \"all\"];\n if (validModes.includes(config.dataCapture)) {\n return config.dataCapture;\n }\n\n\n getObservabilitySdkLogger().warn(\n `Invalid data capture mode: ${config.dataCapture}. Using default: \"all\"`,\n );\n\n return \"all\";\n }\n\n if (typeof config.dataCapture === \"object\" && config.dataCapture.mode &&validateDataCaptureMode(config.dataCapture.mode)) {\n return config.dataCapture.mode;\n }\n\n return \"all\"; // Default fallback\n}\n\n/**\n * Determines if input data should be captured.\n *\n * @returns `true` if input should be captured, otherwise `false`.\n *\n * @example\n * ```ts\n * if (shouldCaptureInput()) {\n * // Capture input\n * }\n * ```\n */\nexport function shouldCaptureInput(): boolean {\n const mode = getDataCaptureMode();\n return mode === \"input\" || mode === \"all\";\n}\n\n/**\n * Determines if output data should be captured.\n *\n * @returns `true` if output should be captured, otherwise `false`.\n *\n * @example\n * ```ts\n * if (shouldCaptureOutput()) {\n * // Capture output\n * }\n * ```\n */\nexport function shouldCaptureOutput(): boolean {\n const mode = getDataCaptureMode();\n return mode === \"output\" || mode === \"all\";\n}\n"],"mappings":";;;;;AAKO,SAAS,wBAAwB,MAAgC;AACtE,SAAO,CAAC,QAAQ,SAAS,UAAU,KAAK,EAAE,SAAS,IAAI;AACzD;;;ACqDA,IAAI,yBAAqD;AAkBlD,SAAS,iCAAiC,QAA6B;AAC5E,2BAAyB;AAC3B;AA+BO,SAAS,0BAA0B,SAElB;AACtB,MAAI,CAAC,wBAAwB;AAC3B,UAAM,UACJ;AAEF,SACE,mCAAS,yBACT,QAAQ,IAAI,aAAa,eACzB;AACA,YAAM,IAAI,MAAM,OAAO;AAAA,IACzB;AAGA,WAAO;AAAA,MACL,QAAQ,IAAI,WAAW;AAAA,IACzB;AAAA,EACF;AACA,SAAO;AACT;AAaO,SAAS,4BAAoC;AAClD,SAAO,0BAA0B,EAAE;AACrC;AAeO,SAAS,qBAAsC;AACpD,QAAM,SAAS,0BAA0B;AAEzC,MAAI,CAAC,OAAO,aAAa;AACvB,WAAO;AAAA,EACT;AAGA,MAAI,OAAO,OAAO,gBAAgB,UAAU;AAC1C,UAAM,aAAgC,CAAC,QAAQ,SAAS,UAAU,KAAK;AACvE,QAAI,WAAW,SAAS,OAAO,WAAW,GAAG;AAC3C,aAAO,OAAO;AAAA,IAChB;AAGA,8BAA0B,EAAE;AAAA,MAC1B,8BAA8B,OAAO,WAAW;AAAA,IAClD;AAEA,WAAO;AAAA,EACT;AAEA,MAAI,OAAO,OAAO,gBAAgB,YAAY,OAAO,YAAY,QAAO,wBAAwB,OAAO,YAAY,IAAI,GAAG;AACxH,WAAO,OAAO,YAAY;AAAA,EAC5B;AAEA,SAAO;AACT;AAcO,SAAS,qBAA8B;AAC5C,QAAM,OAAO,mBAAmB;AAChC,SAAO,SAAS,WAAW,SAAS;AACtC;AAcO,SAAS,sBAA+B;AAC7C,QAAM,OAAO,mBAAmB;AAChC,SAAO,SAAS,YAAY,SAAS;AACvC;","names":[]}
|
package/dist/chunk-OOXU4LFW.js
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
-
|
|
3
|
-
var _chunkHDA25KWZjs = require('./chunk-HDA25KWZ.js');
|
|
4
|
-
|
|
5
|
-
// src/observability-sdk/features/data-capture/utils.ts
|
|
6
|
-
function validateDataCaptureMode(mode) {
|
|
7
|
-
return ["none", "input", "output", "all"].includes(mode);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
// src/observability-sdk/config.ts
|
|
11
|
-
var observabilitySdkConfig = null;
|
|
12
|
-
function initializeObservabilitySdkConfig(config) {
|
|
13
|
-
observabilitySdkConfig = config;
|
|
14
|
-
}
|
|
15
|
-
function getObservabilitySdkConfig(options) {
|
|
16
|
-
if (!observabilitySdkConfig) {
|
|
17
|
-
const message = "[LangWatch Observability SDK] Please call setupObservability() before using the Observability SDK";
|
|
18
|
-
if ((options == null ? void 0 : options.throwOnUninitialized) || process.env.NODE_ENV === "development") {
|
|
19
|
-
throw new Error(message);
|
|
20
|
-
}
|
|
21
|
-
return {
|
|
22
|
-
logger: new (0, _chunkHDA25KWZjs.NoOpLogger)()
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
return observabilitySdkConfig;
|
|
26
|
-
}
|
|
27
|
-
function getObservabilitySdkLogger() {
|
|
28
|
-
return getObservabilitySdkConfig().logger;
|
|
29
|
-
}
|
|
30
|
-
function getDataCaptureMode() {
|
|
31
|
-
const config = getObservabilitySdkConfig();
|
|
32
|
-
if (!config.dataCapture) {
|
|
33
|
-
return "all";
|
|
34
|
-
}
|
|
35
|
-
if (typeof config.dataCapture === "string") {
|
|
36
|
-
const validModes = ["none", "input", "output", "all"];
|
|
37
|
-
if (validModes.includes(config.dataCapture)) {
|
|
38
|
-
return config.dataCapture;
|
|
39
|
-
}
|
|
40
|
-
getObservabilitySdkLogger().warn(
|
|
41
|
-
`Invalid data capture mode: ${config.dataCapture}. Using default: "all"`
|
|
42
|
-
);
|
|
43
|
-
return "all";
|
|
44
|
-
}
|
|
45
|
-
if (typeof config.dataCapture === "object" && config.dataCapture.mode && validateDataCaptureMode(config.dataCapture.mode)) {
|
|
46
|
-
return config.dataCapture.mode;
|
|
47
|
-
}
|
|
48
|
-
return "all";
|
|
49
|
-
}
|
|
50
|
-
function shouldCaptureInput() {
|
|
51
|
-
const mode = getDataCaptureMode();
|
|
52
|
-
return mode === "input" || mode === "all";
|
|
53
|
-
}
|
|
54
|
-
function shouldCaptureOutput() {
|
|
55
|
-
const mode = getDataCaptureMode();
|
|
56
|
-
return mode === "output" || mode === "all";
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
exports.initializeObservabilitySdkConfig = initializeObservabilitySdkConfig; exports.getDataCaptureMode = getDataCaptureMode; exports.shouldCaptureInput = shouldCaptureInput; exports.shouldCaptureOutput = shouldCaptureOutput;
|
|
65
|
-
//# sourceMappingURL=chunk-OOXU4LFW.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/chunk-OOXU4LFW.js","../src/observability-sdk/features/data-capture/utils.ts","../src/observability-sdk/config.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACA;ACCO,SAAS,uBAAA,CAAwB,IAAA,EAAgC;AACtE,EAAA,OAAO,CAAC,MAAA,EAAQ,OAAA,EAAS,QAAA,EAAU,KAAK,CAAA,CAAE,QAAA,CAAS,IAAI,CAAA;AACzD;ADCA;AACA;AEmDA,IAAI,uBAAA,EAAqD,IAAA;AAkBlD,SAAS,gCAAA,CAAiC,MAAA,EAA6B;AAC5E,EAAA,uBAAA,EAAyB,MAAA;AAC3B;AA+BO,SAAS,yBAAA,CAA0B,OAAA,EAElB;AACtB,EAAA,GAAA,CAAI,CAAC,sBAAA,EAAwB;AAC3B,IAAA,MAAM,QAAA,EACJ,mGAAA;AAEF,IAAA,GAAA,CAAA,CACE,QAAA,GAAA,KAAA,EAAA,KAAA,EAAA,EAAA,OAAA,CAAS,oBAAA,EAAA,GACT,OAAA,CAAQ,GAAA,CAAI,SAAA,IAAa,aAAA,EACzB;AACA,MAAA,MAAM,IAAI,KAAA,CAAM,OAAO,CAAA;AAAA,IACzB;AAGA,IAAA,OAAO;AAAA,MACL,MAAA,EAAQ,IAAI,gCAAA,CAAW;AAAA,IACzB,CAAA;AAAA,EACF;AACA,EAAA,OAAO,sBAAA;AACT;AAaO,SAAS,yBAAA,CAAA,EAAoC;AAClD,EAAA,OAAO,yBAAA,CAA0B,CAAA,CAAE,MAAA;AACrC;AAeO,SAAS,kBAAA,CAAA,EAAsC;AACpD,EAAA,MAAM,OAAA,EAAS,yBAAA,CAA0B,CAAA;AAEzC,EAAA,GAAA,CAAI,CAAC,MAAA,CAAO,WAAA,EAAa;AACvB,IAAA,OAAO,KAAA;AAAA,EACT;AAGA,EAAA,GAAA,CAAI,OAAO,MAAA,CAAO,YAAA,IAAgB,QAAA,EAAU;AAC1C,IAAA,MAAM,WAAA,EAAgC,CAAC,MAAA,EAAQ,OAAA,EAAS,QAAA,EAAU,KAAK,CAAA;AACvE,IAAA,GAAA,CAAI,UAAA,CAAW,QAAA,CAAS,MAAA,CAAO,WAAW,CAAA,EAAG;AAC3C,MAAA,OAAO,MAAA,CAAO,WAAA;AAAA,IAChB;AAGA,IAAA,yBAAA,CAA0B,CAAA,CAAE,IAAA;AAAA,MAC1B,CAAA,2BAAA,EAA8B,MAAA,CAAO,WAAW,CAAA,sBAAA;AAAA,IAClD,CAAA;AAEA,IAAA,OAAO,KAAA;AAAA,EACT;AAEA,EAAA,GAAA,CAAI,OAAO,MAAA,CAAO,YAAA,IAAgB,SAAA,GAAY,MAAA,CAAO,WAAA,CAAY,KAAA,GAAO,uBAAA,CAAwB,MAAA,CAAO,WAAA,CAAY,IAAI,CAAA,EAAG;AACxH,IAAA,OAAO,MAAA,CAAO,WAAA,CAAY,IAAA;AAAA,EAC5B;AAEA,EAAA,OAAO,KAAA;AACT;AAcO,SAAS,kBAAA,CAAA,EAA8B;AAC5C,EAAA,MAAM,KAAA,EAAO,kBAAA,CAAmB,CAAA;AAChC,EAAA,OAAO,KAAA,IAAS,QAAA,GAAW,KAAA,IAAS,KAAA;AACtC;AAcO,SAAS,mBAAA,CAAA,EAA+B;AAC7C,EAAA,MAAM,KAAA,EAAO,kBAAA,CAAmB,CAAA;AAChC,EAAA,OAAO,KAAA,IAAS,SAAA,GAAY,KAAA,IAAS,KAAA;AACvC;AFrKA;AACA;AACE;AACA;AACA;AACA;AACF,iOAAC","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/chunk-OOXU4LFW.js","sourcesContent":[null,"import { type DataCaptureMode } from \"./types\";\n\n/**\n * Validates a data capture mode.\n */\nexport function validateDataCaptureMode(mode: DataCaptureMode): boolean {\n return [\"none\", \"input\", \"output\", \"all\"].includes(mode);\n}\n","import { type Logger, NoOpLogger } from \"../logger/index.js\";\nimport {\n type DataCaptureMode,\n type DataCaptureOptions,\n} from \"./features/data-capture/types.js\";\nimport { validateDataCaptureMode } from \"./features/data-capture/utils.js\";\n\n/**\n * @module observability/config\n * @description\n * Provides configuration management for the LangWatch Observability SDK, including logger and data capture settings.\n *\n * @remarks\n * This module allows you to initialize, retrieve, and reset the global observability configuration. It also provides utilities for determining data capture behavior based on context and configuration.\n *\n * @see {@link ObservabilityConfig}\n * @see {@link initializeObservabilitySdkConfig}\n * @see {@link getObservabilitySdkConfig}\n * @see {@link resetObservabilitySdkConfig}\n * @see {@link getDataCaptureMode}\n * @see {@link shouldCaptureInput}\n * @see {@link shouldCaptureOutput}\n */\n/**\n * Configuration options for the LangWatch Observability SDK.\n *\n * @property logger - The logger instance to use for SDK logging.\n * @property dataCapture - Configuration for automatic data capture. Can be a string, function, or object.\n *\n * @example\n * ```ts\n * import { ObservabilityConfig, initializeObservabilitySdkConfig } from \"@langwatch/observability\";\n *\n * const config: ObservabilityConfig = {\n * logger: new ConsoleLogger(),\n * dataCapture: \"all\",\n * };\n *\n * initializeObservabilitySdkConfig(config);\n * ```\n */\nexport interface ObservabilityConfig {\n /**\n * The logger to use for the observability SDK.\n *\n * @default NoOpLogger\n */\n logger: Logger;\n\n /**\n * Configuration for automatic data capture.\n *\n * @default \"all\"\n */\n dataCapture?: DataCaptureOptions;\n}\n\n/**\n * The observability SDK config.\n */\nlet observabilitySdkConfig: ObservabilityConfig | null = null;\n\n/**\n * Initializes the global observability SDK configuration.\n *\n * @param config - The configuration object to use.\n *\n * @remarks\n * This function should be called once at application startup, before using any observability features.\n *\n * @warning\n * Calling this function will intentionally overwrite any existing configuration. This is by design to allow re-initialization in dynamic or testing environments. If you call this function multiple times, the most recent configuration will take effect.\n *\n * @example\n * ```ts\n * initializeObservabilitySdkConfig({ logger: new ConsoleLogger() });\n * ```\n */\nexport function initializeObservabilitySdkConfig(config: ObservabilityConfig) {\n observabilitySdkConfig = config;\n}\n\n/**\n * Resets the global observability SDK configuration to its initial state (`null`).\n *\n * @remarks\n * Useful for testing or re-initializing the SDK in dynamic environments.\n *\n * @example\n * ```ts\n * resetObservabilitySdkConfig();\n * ```\n */\nexport function resetObservabilitySdkConfig() {\n observabilitySdkConfig = null;\n}\n\n/**\n * Retrieves the current observability SDK configuration.\n *\n * @param options - Optional settings.\n * @param options.throwOnUninitialized - If true, throws an error if the config is not initialized. Defaults to `false` unless `NODE_ENV` is `development`.\n * @returns The current {@link ObservabilityConfig}.\n *\n * @throws {Error} If the config is uninitialized and `throwOnUninitialized` is true or in development mode.\n *\n * @example\n * ```ts\n * const config = getObservabilitySdkConfig();\n * ```\n */\nexport function getObservabilitySdkConfig(options?: {\n throwOnUninitialized?: boolean;\n}): ObservabilityConfig {\n if (!observabilitySdkConfig) {\n const message =\n \"[LangWatch Observability SDK] Please call setupObservability() before using the Observability SDK\";\n\n if (\n options?.throwOnUninitialized ||\n process.env.NODE_ENV === \"development\"\n ) {\n throw new Error(message);\n }\n\n // Use a default logger that can be configured\n return {\n logger: new NoOpLogger(),\n };\n }\n return observabilitySdkConfig;\n}\n\n/**\n * Gets the logger instance from the current observability SDK configuration.\n *\n * @returns The configured {@link Logger} instance.\n *\n * @example\n * ```ts\n * const logger = getObservabilitySdkLogger();\n * logger.info(\"Observability initialized\");\n * ```\n */\nexport function getObservabilitySdkLogger(): Logger {\n return getObservabilitySdkConfig().logger;\n}\n\n/**\n * Determines the effective data capture mode.\n *\n * @returns The resolved {@link DataCaptureMode} (\"all\", \"input\", or \"output\").\n *\n * @remarks\n * The mode is determined by the configuration, which can be a string, function, or object. Defaults to \"all\" if not specified.\n *\n * @example\n * ```ts\n * const mode = getDataCaptureMode();\n * ```\n */\nexport function getDataCaptureMode(): DataCaptureMode {\n const config = getObservabilitySdkConfig();\n\n if (!config.dataCapture) {\n return \"all\"; // Default: capture both input and output\n }\n\n // Handle different config formats\n if (typeof config.dataCapture === \"string\") {\n const validModes: DataCaptureMode[] = [\"none\", \"input\", \"output\", \"all\"];\n if (validModes.includes(config.dataCapture)) {\n return config.dataCapture;\n }\n\n\n getObservabilitySdkLogger().warn(\n `Invalid data capture mode: ${config.dataCapture}. Using default: \"all\"`,\n );\n\n return \"all\";\n }\n\n if (typeof config.dataCapture === \"object\" && config.dataCapture.mode &&validateDataCaptureMode(config.dataCapture.mode)) {\n return config.dataCapture.mode;\n }\n\n return \"all\"; // Default fallback\n}\n\n/**\n * Determines if input data should be captured.\n *\n * @returns `true` if input should be captured, otherwise `false`.\n *\n * @example\n * ```ts\n * if (shouldCaptureInput()) {\n * // Capture input\n * }\n * ```\n */\nexport function shouldCaptureInput(): boolean {\n const mode = getDataCaptureMode();\n return mode === \"input\" || mode === \"all\";\n}\n\n/**\n * Determines if output data should be captured.\n *\n * @returns `true` if output should be captured, otherwise `false`.\n *\n * @example\n * ```ts\n * if (shouldCaptureOutput()) {\n * // Capture output\n * }\n * ```\n */\nexport function shouldCaptureOutput(): boolean {\n const mode = getDataCaptureMode();\n return mode === \"output\" || mode === \"all\";\n}\n"]}
|
package/dist/chunk-OSAFGMGH.mjs
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
createLangWatchApiClient
|
|
3
|
-
} from "./chunk-S2UWK4HL.mjs";
|
|
4
|
-
import {
|
|
5
|
-
extractStatusFromResponse,
|
|
6
|
-
formatApiErrorForOperation
|
|
7
|
-
} from "./chunk-J3KM7ZO7.mjs";
|
|
8
|
-
|
|
9
|
-
// src/client-sdk/services/suites/suites-api.service.ts
|
|
10
|
-
var SuitesApiError = class extends Error {
|
|
11
|
-
constructor(message, operation, originalError) {
|
|
12
|
-
super(message);
|
|
13
|
-
this.operation = operation;
|
|
14
|
-
this.originalError = originalError;
|
|
15
|
-
this.name = "SuitesApiError";
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
var SuitesApiService = class {
|
|
19
|
-
constructor(config) {
|
|
20
|
-
var _a;
|
|
21
|
-
this.apiClient = (_a = config == null ? void 0 : config.langwatchApiClient) != null ? _a : createLangWatchApiClient();
|
|
22
|
-
}
|
|
23
|
-
handleApiError(operation, error) {
|
|
24
|
-
const message = formatApiErrorForOperation({ operation, error, options: {
|
|
25
|
-
status: extractStatusFromResponse(error)
|
|
26
|
-
} });
|
|
27
|
-
throw new SuitesApiError(message, operation, error);
|
|
28
|
-
}
|
|
29
|
-
async getAll() {
|
|
30
|
-
const { data, error } = await this.apiClient.GET("/api/suites");
|
|
31
|
-
if (error) this.handleApiError("list suites", error);
|
|
32
|
-
return data;
|
|
33
|
-
}
|
|
34
|
-
async get(id) {
|
|
35
|
-
const { data, error } = await this.apiClient.GET("/api/suites/{id}", {
|
|
36
|
-
params: { path: { id } }
|
|
37
|
-
});
|
|
38
|
-
if (error) this.handleApiError(`get suite "${id}"`, error);
|
|
39
|
-
return data;
|
|
40
|
-
}
|
|
41
|
-
async create(params) {
|
|
42
|
-
const { data, error } = await this.apiClient.POST("/api/suites", {
|
|
43
|
-
body: params
|
|
44
|
-
});
|
|
45
|
-
if (error) this.handleApiError("create suite", error);
|
|
46
|
-
return data;
|
|
47
|
-
}
|
|
48
|
-
async update(id, params) {
|
|
49
|
-
const { data, error } = await this.apiClient.PATCH("/api/suites/{id}", {
|
|
50
|
-
params: { path: { id } },
|
|
51
|
-
body: params
|
|
52
|
-
});
|
|
53
|
-
if (error) this.handleApiError(`update suite "${id}"`, error);
|
|
54
|
-
return data;
|
|
55
|
-
}
|
|
56
|
-
async duplicate(id) {
|
|
57
|
-
const { data, error } = await this.apiClient.POST("/api/suites/{id}/duplicate", {
|
|
58
|
-
params: { path: { id } }
|
|
59
|
-
});
|
|
60
|
-
if (error) this.handleApiError(`duplicate suite "${id}"`, error);
|
|
61
|
-
return data;
|
|
62
|
-
}
|
|
63
|
-
async run(id, idempotencyKey) {
|
|
64
|
-
const { data, error } = await this.apiClient.POST("/api/suites/{id}/run", {
|
|
65
|
-
params: { path: { id } },
|
|
66
|
-
body: {
|
|
67
|
-
idempotencyKey: idempotencyKey != null ? idempotencyKey : `cli-${Date.now()}-${Math.random().toString(36).slice(2)}`
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
if (error) this.handleApiError(`run suite "${id}"`, error);
|
|
71
|
-
return data;
|
|
72
|
-
}
|
|
73
|
-
async delete(id) {
|
|
74
|
-
const { data, error } = await this.apiClient.DELETE("/api/suites/{id}", {
|
|
75
|
-
params: { path: { id } }
|
|
76
|
-
});
|
|
77
|
-
if (error) this.handleApiError(`delete suite "${id}"`, error);
|
|
78
|
-
return data;
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
export {
|
|
83
|
-
SuitesApiService
|
|
84
|
-
};
|
|
85
|
-
//# sourceMappingURL=chunk-OSAFGMGH.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/client-sdk/services/suites/suites-api.service.ts"],"sourcesContent":["import type { paths } from \"@/internal/generated/openapi/api-client\";\nimport {\n createLangWatchApiClient,\n type LangwatchApiClient,\n} from \"@/internal/api/client\";\nimport type { InternalConfig } from \"@/client-sdk/types\";\nimport {\n extractStatusFromResponse,\n formatApiErrorForOperation,\n} from \"@/client-sdk/services/_shared/format-api-error\";\n\nexport type SuiteResponse = NonNullable<\n paths[\"/api/suites\"][\"get\"][\"responses\"][\"200\"][\"content\"][\"application/json\"]\n>[number] & {\n /** URL to view this suite on the LangWatch platform */\n platformUrl?: string;\n};\n\nexport type CreateSuiteBody = NonNullable<\n paths[\"/api/suites\"][\"post\"][\"requestBody\"]\n>[\"content\"][\"application/json\"];\n\nexport type UpdateSuiteBody = NonNullable<\n paths[\"/api/suites/{id}\"][\"patch\"][\"requestBody\"]\n>[\"content\"][\"application/json\"];\n\nexport type SuiteRunResult =\n paths[\"/api/suites/{id}/run\"][\"post\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\nexport interface SuiteTarget {\n type: \"prompt\" | \"http\" | \"code\" | \"workflow\";\n referenceId: string;\n}\n\nexport class SuitesApiError extends Error {\n constructor(\n message: string,\n public readonly operation: string,\n public readonly originalError?: unknown,\n ) {\n super(message);\n this.name = \"SuitesApiError\";\n }\n}\n\nexport class SuitesApiService {\n private readonly apiClient: LangwatchApiClient;\n\n constructor(config?: Pick<InternalConfig, \"langwatchApiClient\">) {\n this.apiClient = config?.langwatchApiClient ?? createLangWatchApiClient();\n }\n\n private handleApiError(operation: string, error: unknown): never {\n const message = formatApiErrorForOperation({ operation: operation, error: error, options: {\n status: extractStatusFromResponse(error),\n } });\n throw new SuitesApiError(message, operation, error);\n }\n\n async getAll(): Promise<SuiteResponse[]> {\n const { data, error } = await this.apiClient.GET(\"/api/suites\");\n if (error) this.handleApiError(\"list suites\", error);\n return data;\n }\n\n async get(id: string): Promise<SuiteResponse> {\n const { data, error } = await this.apiClient.GET(\"/api/suites/{id}\", {\n params: { path: { id } },\n });\n if (error) this.handleApiError(`get suite \"${id}\"`, error);\n return data;\n }\n\n async create(params: CreateSuiteBody): Promise<SuiteResponse> {\n const { data, error } = await this.apiClient.POST(\"/api/suites\", {\n body: params,\n });\n if (error) this.handleApiError(\"create suite\", error);\n return data;\n }\n\n async update(id: string, params: UpdateSuiteBody): Promise<SuiteResponse> {\n const { data, error } = await this.apiClient.PATCH(\"/api/suites/{id}\", {\n params: { path: { id } },\n body: params,\n });\n if (error) this.handleApiError(`update suite \"${id}\"`, error);\n return data;\n }\n\n async duplicate(id: string): Promise<SuiteResponse> {\n const { data, error } = await this.apiClient.POST(\"/api/suites/{id}/duplicate\", {\n params: { path: { id } },\n });\n if (error) this.handleApiError(`duplicate suite \"${id}\"`, error);\n return data;\n }\n\n async run(id: string, idempotencyKey?: string): Promise<SuiteRunResult> {\n const { data, error } = await this.apiClient.POST(\"/api/suites/{id}/run\", {\n params: { path: { id } },\n body: {\n idempotencyKey: idempotencyKey ?? `cli-${Date.now()}-${Math.random().toString(36).slice(2)}`,\n },\n });\n if (error) this.handleApiError(`run suite \"${id}\"`, error);\n return data;\n }\n\n async delete(id: string): Promise<{ id: string; archived: boolean }> {\n const { data, error } = await this.apiClient.DELETE(\"/api/suites/{id}\", {\n params: { path: { id } },\n });\n if (error) this.handleApiError(`delete suite \"${id}\"`, error);\n return data as unknown as { id: string; archived: boolean };\n }\n}\n"],"mappings":";;;;;;;;;AAkCO,IAAM,iBAAN,cAA6B,MAAM;AAAA,EACxC,YACE,SACgB,WACA,eAChB;AACA,UAAM,OAAO;AAHG;AACA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAEO,IAAM,mBAAN,MAAuB;AAAA,EAG5B,YAAY,QAAqD;AAhDnE;AAiDI,SAAK,aAAY,sCAAQ,uBAAR,YAA8B,yBAAyB;AAAA,EAC1E;AAAA,EAEQ,eAAe,WAAmB,OAAuB;AAC/D,UAAM,UAAU,2BAA2B,EAAE,WAAsB,OAAc,SAAS;AAAA,MACxF,QAAQ,0BAA0B,KAAK;AAAA,IACzC,EAAE,CAAC;AACH,UAAM,IAAI,eAAe,SAAS,WAAW,KAAK;AAAA,EACpD;AAAA,EAEA,MAAM,SAAmC;AACvC,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,IAAI,aAAa;AAC9D,QAAI,MAAO,MAAK,eAAe,eAAe,KAAK;AACnD,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,IAAI,IAAoC;AAC5C,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,IAAI,oBAAoB;AAAA,MACnE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;AAAA,IACzB,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,cAAc,EAAE,KAAK,KAAK;AACzD,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,OAAO,QAAiD;AAC5D,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,KAAK,eAAe;AAAA,MAC/D,MAAM;AAAA,IACR,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,gBAAgB,KAAK;AACpD,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,OAAO,IAAY,QAAiD;AACxE,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,MAAM,oBAAoB;AAAA,MACrE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;AAAA,MACvB,MAAM;AAAA,IACR,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,iBAAiB,EAAE,KAAK,KAAK;AAC5D,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,UAAU,IAAoC;AAClD,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,KAAK,8BAA8B;AAAA,MAC9E,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;AAAA,IACzB,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,oBAAoB,EAAE,KAAK,KAAK;AAC/D,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,IAAI,IAAY,gBAAkD;AACtE,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,KAAK,wBAAwB;AAAA,MACxE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;AAAA,MACvB,MAAM;AAAA,QACJ,gBAAgB,0CAAkB,OAAO,KAAK,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;AAAA,MAC5F;AAAA,IACF,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,cAAc,EAAE,KAAK,KAAK;AACzD,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,OAAO,IAAwD;AACnE,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,OAAO,oBAAoB;AAAA,MACtE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;AAAA,IACzB,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,iBAAiB,EAAE,KAAK,KAAK;AAC5D,WAAO;AAAA,EACT;AACF;","names":[]}
|
package/dist/chunk-OXULVOBF.mjs
DELETED
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
// src/client-sdk/services/experiments/platformErrors.ts
|
|
2
|
-
var ExperimentsError = class extends Error {
|
|
3
|
-
constructor(message) {
|
|
4
|
-
super(message);
|
|
5
|
-
this.name = "ExperimentsError";
|
|
6
|
-
}
|
|
7
|
-
};
|
|
8
|
-
var ExperimentNotFoundError = class extends ExperimentsError {
|
|
9
|
-
constructor(slug) {
|
|
10
|
-
super(`Experiment not found: ${slug}`);
|
|
11
|
-
this.name = "ExperimentNotFoundError";
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
var ExperimentTimeoutError = class extends ExperimentsError {
|
|
15
|
-
constructor(runId, progress, total) {
|
|
16
|
-
super(`Experiment run timed out: ${runId} (${progress}/${total} completed)`);
|
|
17
|
-
this.name = "ExperimentTimeoutError";
|
|
18
|
-
this.runId = runId;
|
|
19
|
-
this.progress = progress;
|
|
20
|
-
this.total = total;
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
var ExperimentRunFailedError = class extends ExperimentsError {
|
|
24
|
-
constructor(runId, errorMessage) {
|
|
25
|
-
super(`Experiment run failed: ${errorMessage}`);
|
|
26
|
-
this.name = "ExperimentRunFailedError";
|
|
27
|
-
this.runId = runId;
|
|
28
|
-
this.errorMessage = errorMessage;
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
var ExperimentsApiError = class extends ExperimentsError {
|
|
32
|
-
constructor(message, statusCode) {
|
|
33
|
-
super(message);
|
|
34
|
-
this.name = "ExperimentsApiError";
|
|
35
|
-
this.statusCode = statusCode;
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
// src/client-sdk/services/experiments/run-status.ts
|
|
40
|
-
var INTERRUPTED_THRESHOLD_MS = 5 * 60 * 1e3;
|
|
41
|
-
var deriveRunStatus = (timestamps, now = Date.now()) => {
|
|
42
|
-
if (timestamps.stoppedAt != null) return "stopped";
|
|
43
|
-
if (timestamps.finishedAt != null) return "completed";
|
|
44
|
-
if (timestamps.updatedAt != null && now - timestamps.updatedAt > INTERRUPTED_THRESHOLD_MS) {
|
|
45
|
-
return "interrupted";
|
|
46
|
-
}
|
|
47
|
-
return "running";
|
|
48
|
-
};
|
|
49
|
-
var isTerminalStatus = (status) => status === "completed" || status === "stopped";
|
|
50
|
-
var DEFAULT_POLL_INTERVAL = 2e3;
|
|
51
|
-
var DEFAULT_POLL_TIMEOUT = 6e5;
|
|
52
|
-
var sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
53
|
-
var pollExperimentRun = async ({
|
|
54
|
-
runId,
|
|
55
|
-
getStatus,
|
|
56
|
-
pollInterval = DEFAULT_POLL_INTERVAL,
|
|
57
|
-
timeout = DEFAULT_POLL_TIMEOUT,
|
|
58
|
-
onProgress,
|
|
59
|
-
now = Date.now
|
|
60
|
-
}) => {
|
|
61
|
-
var _a, _b, _c;
|
|
62
|
-
const startTime = now();
|
|
63
|
-
while (true) {
|
|
64
|
-
if (now() - startTime > timeout) {
|
|
65
|
-
const finalStatus = await getStatus(runId);
|
|
66
|
-
throw new ExperimentTimeoutError(
|
|
67
|
-
runId,
|
|
68
|
-
finalStatus.progress,
|
|
69
|
-
finalStatus.total
|
|
70
|
-
);
|
|
71
|
-
}
|
|
72
|
-
await sleep(pollInterval);
|
|
73
|
-
const status = await getStatus(runId);
|
|
74
|
-
onProgress == null ? void 0 : onProgress(status.progress, status.total);
|
|
75
|
-
if (status.status === "completed") {
|
|
76
|
-
return { status: "completed", summary: (_a = status.summary) != null ? _a : {} };
|
|
77
|
-
}
|
|
78
|
-
if (status.status === "failed") {
|
|
79
|
-
throw new ExperimentRunFailedError(runId, (_b = status.error) != null ? _b : "Unknown error");
|
|
80
|
-
}
|
|
81
|
-
if (status.status === "stopped") {
|
|
82
|
-
return {
|
|
83
|
-
status: "stopped",
|
|
84
|
-
summary: (_c = status.summary) != null ? _c : {
|
|
85
|
-
runId,
|
|
86
|
-
totalCells: status.total,
|
|
87
|
-
completedCells: status.progress,
|
|
88
|
-
failedCells: 0,
|
|
89
|
-
duration: now() - startTime
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
var rebaseUrlToEndpoint = (url, newBase) => {
|
|
96
|
-
if (!url) return url;
|
|
97
|
-
try {
|
|
98
|
-
const parsedUrl = new URL(url);
|
|
99
|
-
const parsedNewBase = new URL(newBase);
|
|
100
|
-
return `${parsedNewBase.origin}${parsedUrl.pathname}${parsedUrl.search}${parsedUrl.hash}`;
|
|
101
|
-
} catch (e) {
|
|
102
|
-
return url;
|
|
103
|
-
}
|
|
104
|
-
};
|
|
105
|
-
var fetchResultsWithRetry = async ({
|
|
106
|
-
getResults,
|
|
107
|
-
isEmpty,
|
|
108
|
-
expectsRows,
|
|
109
|
-
delay = DEFAULT_POLL_INTERVAL,
|
|
110
|
-
maxAttempts = 6
|
|
111
|
-
}) => {
|
|
112
|
-
let lastError;
|
|
113
|
-
for (let attempt = 1; attempt <= maxAttempts; attempt++) {
|
|
114
|
-
try {
|
|
115
|
-
const results = await getResults();
|
|
116
|
-
if (expectsRows && isEmpty(results) && attempt < maxAttempts) {
|
|
117
|
-
await sleep(delay);
|
|
118
|
-
continue;
|
|
119
|
-
}
|
|
120
|
-
return results;
|
|
121
|
-
} catch (error) {
|
|
122
|
-
lastError = error;
|
|
123
|
-
if (expectsRows && attempt < maxAttempts) {
|
|
124
|
-
await sleep(delay);
|
|
125
|
-
continue;
|
|
126
|
-
}
|
|
127
|
-
throw error;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
throw lastError;
|
|
131
|
-
};
|
|
132
|
-
|
|
133
|
-
export {
|
|
134
|
-
ExperimentNotFoundError,
|
|
135
|
-
ExperimentTimeoutError,
|
|
136
|
-
ExperimentRunFailedError,
|
|
137
|
-
ExperimentsApiError,
|
|
138
|
-
deriveRunStatus,
|
|
139
|
-
isTerminalStatus,
|
|
140
|
-
pollExperimentRun,
|
|
141
|
-
rebaseUrlToEndpoint,
|
|
142
|
-
fetchResultsWithRetry
|
|
143
|
-
};
|
|
144
|
-
//# sourceMappingURL=chunk-OXULVOBF.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/client-sdk/services/experiments/platformErrors.ts","../src/client-sdk/services/experiments/run-status.ts"],"sourcesContent":["/**\n * Error classes for platform experiments API (Experiments Workbench)\n */\n\n/**\n * Base error for experiment operations\n */\nexport class ExperimentsError extends Error {\n constructor(message: string) {\n super(message);\n this.name = \"ExperimentsError\";\n }\n}\n\n/**\n * Error when experiment is not found\n */\nexport class ExperimentNotFoundError extends ExperimentsError {\n constructor(slug: string) {\n super(`Experiment not found: ${slug}`);\n this.name = \"ExperimentNotFoundError\";\n }\n}\n\n/**\n * Error when experiment run times out\n */\nexport class ExperimentTimeoutError extends ExperimentsError {\n readonly runId: string;\n readonly progress: number;\n readonly total: number;\n\n constructor(runId: string, progress: number, total: number) {\n super(`Experiment run timed out: ${runId} (${progress}/${total} completed)`);\n this.name = \"ExperimentTimeoutError\";\n this.runId = runId;\n this.progress = progress;\n this.total = total;\n }\n}\n\n/**\n * Error when experiment run fails\n */\nexport class ExperimentRunFailedError extends ExperimentsError {\n readonly runId: string;\n readonly errorMessage: string;\n\n constructor(runId: string, errorMessage: string) {\n super(`Experiment run failed: ${errorMessage}`);\n this.name = \"ExperimentRunFailedError\";\n this.runId = runId;\n this.errorMessage = errorMessage;\n }\n}\n\n/**\n * Error from the experiments API\n */\nexport class ExperimentsApiError extends ExperimentsError {\n readonly statusCode: number;\n\n constructor(message: string, statusCode: number) {\n super(message);\n this.name = \"ExperimentsApiError\";\n this.statusCode = statusCode;\n }\n}\n","// Experiment runs are stored as a timestamp-driven state in ClickHouse: a run\n// is \"completed\" once finishedAt is set, \"stopped\" once stoppedAt is set, and\n// otherwise still \"running\". A run that stopped emitting updates a while ago\n// without ever finishing is reported as \"interrupted\": the SDK process likely\n// died before sending finished_at/stopped_at.\n\nimport type { ExperimentRunSummary } from \"./platformTypes\";\nimport {\n ExperimentTimeoutError,\n ExperimentRunFailedError,\n} from \"./platformErrors\";\n\nexport const INTERRUPTED_THRESHOLD_MS = 5 * 60 * 1000;\n\nexport type RunStatus = \"completed\" | \"stopped\" | \"running\" | \"interrupted\";\n\nexport interface RunTimestamps {\n createdAt?: number | null;\n updatedAt?: number | null;\n finishedAt?: number | null;\n stoppedAt?: number | null;\n}\n\nexport const deriveRunStatus = (\n timestamps: RunTimestamps,\n now: number = Date.now(),\n): RunStatus => {\n if (timestamps.stoppedAt != null) return \"stopped\";\n if (timestamps.finishedAt != null) return \"completed\";\n if (\n timestamps.updatedAt != null &&\n now - timestamps.updatedAt > INTERRUPTED_THRESHOLD_MS\n ) {\n return \"interrupted\";\n }\n return \"running\";\n};\n\nexport const isTerminalStatus = (status: RunStatus): boolean =>\n status === \"completed\" || status === \"stopped\";\n\nexport const DEFAULT_POLL_INTERVAL = 2000;\nexport const DEFAULT_POLL_TIMEOUT = 600000; // 10 minutes\n\n/**\n * Status payload returned by the polling endpoint\n * (`GET /api/evaluations/v3/runs/{runId}`).\n */\nexport interface PollRunStatus {\n status: string;\n progress: number;\n total: number;\n summary?: ExperimentRunSummary;\n error?: string;\n}\n\nexport interface PollExperimentRunResult {\n status: \"completed\" | \"stopped\";\n summary: ExperimentRunSummary;\n}\n\nconst sleep = (ms: number): Promise<void> =>\n new Promise((resolve) => setTimeout(resolve, ms));\n\n/**\n * Poll a run to completion.\n *\n * Calls `getStatus(runId)` every `pollInterval` ms until the run reports a\n * terminal status, mirroring the python SDK poll loop. Resolves on `completed`\n * or `stopped`, throws `ExperimentRunFailedError` on `failed`, and throws\n * `ExperimentTimeoutError` if `timeout` ms elapse first.\n *\n * The status fetcher is injected so both the experiment and workflow paths can\n * reuse the same loop.\n */\nexport const pollExperimentRun = async ({\n runId,\n getStatus,\n pollInterval = DEFAULT_POLL_INTERVAL,\n timeout = DEFAULT_POLL_TIMEOUT,\n onProgress,\n now = Date.now,\n}: {\n runId: string;\n getStatus: (runId: string) => Promise<PollRunStatus>;\n pollInterval?: number;\n timeout?: number;\n onProgress?: (progress: number, total: number) => void;\n now?: () => number;\n}): Promise<PollExperimentRunResult> => {\n const startTime = now();\n\n while (true) {\n if (now() - startTime > timeout) {\n const finalStatus = await getStatus(runId);\n throw new ExperimentTimeoutError(\n runId,\n finalStatus.progress,\n finalStatus.total,\n );\n }\n\n await sleep(pollInterval);\n\n const status = await getStatus(runId);\n onProgress?.(status.progress, status.total);\n\n if (status.status === \"completed\") {\n return { status: \"completed\", summary: status.summary ?? {} };\n }\n\n if (status.status === \"failed\") {\n throw new ExperimentRunFailedError(runId, status.error ?? \"Unknown error\");\n }\n\n if (status.status === \"stopped\") {\n return {\n status: \"stopped\",\n summary: status.summary ?? {\n runId,\n totalCells: status.total,\n completedCells: status.progress,\n failedCells: 0,\n duration: now() - startTime,\n },\n };\n }\n }\n};\n\n/**\n * Replace the domain of a URL with a new base, preserving path/query/fragment.\n *\n * The platform returns its own (cloud) URL for a run; rebasing it onto the\n * configured endpoint keeps a self-hosted run pointing at the local instance\n * instead of app.langwatch.ai. Returns the original string if either URL is\n * unparseable.\n */\nexport const rebaseUrlToEndpoint = (url: string, newBase: string): string => {\n if (!url) return url;\n try {\n const parsedUrl = new URL(url);\n const parsedNewBase = new URL(newBase);\n return `${parsedNewBase.origin}${parsedUrl.pathname}${parsedUrl.search}${parsedUrl.hash}`;\n } catch {\n return url;\n }\n};\n\n/**\n * Fetch a run's per-row results, retrying through the brief post-completion\n * window where the results endpoint 404s (\"not yet available\") or returns an\n * empty dataset because the ClickHouse projection has not caught up yet.\n *\n * Generic over the result shape: `getResults` performs one fetch and `isEmpty`\n * reports whether it came back without rows. When the run reported rows\n * (`expectsRows`), an empty or failed read is retried up to `maxAttempts` with a\n * fixed `delay`; otherwise the first read is returned. The same loop backs both\n * the experiment and workflow SDK paths and mirrors the python SDK.\n */\nexport const fetchResultsWithRetry = async <T>({\n getResults,\n isEmpty,\n expectsRows,\n delay = DEFAULT_POLL_INTERVAL,\n maxAttempts = 6,\n}: {\n getResults: () => Promise<T>;\n isEmpty: (results: T) => boolean;\n expectsRows: boolean;\n delay?: number;\n maxAttempts?: number;\n}): Promise<T> => {\n let lastError: unknown;\n for (let attempt = 1; attempt <= maxAttempts; attempt++) {\n try {\n const results = await getResults();\n if (expectsRows && isEmpty(results) && attempt < maxAttempts) {\n await sleep(delay);\n continue;\n }\n return results;\n } catch (error) {\n lastError = error;\n // Only the rows-expected path waits out the post-completion projection\n // lag (a 404 / \"not yet available\" right after the run finishes). With no\n // rows expected a thrown error is terminal, so surface it immediately\n // instead of delaying through every attempt.\n if (expectsRows && attempt < maxAttempts) {\n await sleep(delay);\n continue;\n }\n throw error;\n }\n }\n throw lastError;\n};\n"],"mappings":";AAOO,IAAM,mBAAN,cAA+B,MAAM;AAAA,EAC1C,YAAY,SAAiB;AAC3B,UAAM,OAAO;AACb,SAAK,OAAO;AAAA,EACd;AACF;AAKO,IAAM,0BAAN,cAAsC,iBAAiB;AAAA,EAC5D,YAAY,MAAc;AACxB,UAAM,yBAAyB,IAAI,EAAE;AACrC,SAAK,OAAO;AAAA,EACd;AACF;AAKO,IAAM,yBAAN,cAAqC,iBAAiB;AAAA,EAK3D,YAAY,OAAe,UAAkB,OAAe;AAC1D,UAAM,6BAA6B,KAAK,KAAK,QAAQ,IAAI,KAAK,aAAa;AAC3E,SAAK,OAAO;AACZ,SAAK,QAAQ;AACb,SAAK,WAAW;AAChB,SAAK,QAAQ;AAAA,EACf;AACF;AAKO,IAAM,2BAAN,cAAuC,iBAAiB;AAAA,EAI7D,YAAY,OAAe,cAAsB;AAC/C,UAAM,0BAA0B,YAAY,EAAE;AAC9C,SAAK,OAAO;AACZ,SAAK,QAAQ;AACb,SAAK,eAAe;AAAA,EACtB;AACF;AAKO,IAAM,sBAAN,cAAkC,iBAAiB;AAAA,EAGxD,YAAY,SAAiB,YAAoB;AAC/C,UAAM,OAAO;AACb,SAAK,OAAO;AACZ,SAAK,aAAa;AAAA,EACpB;AACF;;;ACvDO,IAAM,2BAA2B,IAAI,KAAK;AAW1C,IAAM,kBAAkB,CAC7B,YACA,MAAc,KAAK,IAAI,MACT;AACd,MAAI,WAAW,aAAa,KAAM,QAAO;AACzC,MAAI,WAAW,cAAc,KAAM,QAAO;AAC1C,MACE,WAAW,aAAa,QACxB,MAAM,WAAW,YAAY,0BAC7B;AACA,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,IAAM,mBAAmB,CAAC,WAC/B,WAAW,eAAe,WAAW;AAEhC,IAAM,wBAAwB;AAC9B,IAAM,uBAAuB;AAmBpC,IAAM,QAAQ,CAAC,OACb,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,EAAE,CAAC;AAa3C,IAAM,oBAAoB,OAAO;AAAA,EACtC;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,EACV;AAAA,EACA,MAAM,KAAK;AACb,MAOwC;AAzFxC;AA0FE,QAAM,YAAY,IAAI;AAEtB,SAAO,MAAM;AACX,QAAI,IAAI,IAAI,YAAY,SAAS;AAC/B,YAAM,cAAc,MAAM,UAAU,KAAK;AACzC,YAAM,IAAI;AAAA,QACR;AAAA,QACA,YAAY;AAAA,QACZ,YAAY;AAAA,MACd;AAAA,IACF;AAEA,UAAM,MAAM,YAAY;AAExB,UAAM,SAAS,MAAM,UAAU,KAAK;AACpC,6CAAa,OAAO,UAAU,OAAO;AAErC,QAAI,OAAO,WAAW,aAAa;AACjC,aAAO,EAAE,QAAQ,aAAa,UAAS,YAAO,YAAP,YAAkB,CAAC,EAAE;AAAA,IAC9D;AAEA,QAAI,OAAO,WAAW,UAAU;AAC9B,YAAM,IAAI,yBAAyB,QAAO,YAAO,UAAP,YAAgB,eAAe;AAAA,IAC3E;AAEA,QAAI,OAAO,WAAW,WAAW;AAC/B,aAAO;AAAA,QACL,QAAQ;AAAA,QACR,UAAS,YAAO,YAAP,YAAkB;AAAA,UACzB;AAAA,UACA,YAAY,OAAO;AAAA,UACnB,gBAAgB,OAAO;AAAA,UACvB,aAAa;AAAA,UACb,UAAU,IAAI,IAAI;AAAA,QACpB;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAUO,IAAM,sBAAsB,CAAC,KAAa,YAA4B;AAC3E,MAAI,CAAC,IAAK,QAAO;AACjB,MAAI;AACF,UAAM,YAAY,IAAI,IAAI,GAAG;AAC7B,UAAM,gBAAgB,IAAI,IAAI,OAAO;AACrC,WAAO,GAAG,cAAc,MAAM,GAAG,UAAU,QAAQ,GAAG,UAAU,MAAM,GAAG,UAAU,IAAI;AAAA,EACzF,SAAQ;AACN,WAAO;AAAA,EACT;AACF;AAaO,IAAM,wBAAwB,OAAU;AAAA,EAC7C;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,cAAc;AAChB,MAMkB;AAChB,MAAI;AACJ,WAAS,UAAU,GAAG,WAAW,aAAa,WAAW;AACvD,QAAI;AACF,YAAM,UAAU,MAAM,WAAW;AACjC,UAAI,eAAe,QAAQ,OAAO,KAAK,UAAU,aAAa;AAC5D,cAAM,MAAM,KAAK;AACjB;AAAA,MACF;AACA,aAAO;AAAA,IACT,SAAS,OAAO;AACd,kBAAY;AAKZ,UAAI,eAAe,UAAU,aAAa;AACxC,cAAM,MAAM,KAAK;AACjB;AAAA,MACF;AACA,YAAM;AAAA,IACR;AAAA,EACF;AACA,QAAM;AACR;","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/logger/index.ts","../src/observability-sdk/semconv/attributes.ts"],"sourcesContent":["// Logger utility for SDKs\n//\n// Usage:\n// - If you pass your own Logger implementation, the SDK will use it as-is (no log level filtering or prefixing applied).\n// - If you use ConsoleLogger, you can specify log level and prefix options.\n// - NoOpLogger disables all logging.\n//\n// Example:\n// const logger = new ConsoleLogger({ level: \"warn\", prefix: \"SDK\" });\n// logger.info(\"This will not show\");\n// logger.warn(\"This will show with prefix\");\n//\n// // If you pass your own logger, SDK will not filter logs:\n// const customLogger: Logger = { ... };\n// // SDK uses customLogger as-is\n\nexport type LogLevel = \"debug\" | \"info\" | \"warn\" | \"error\";\n\nconst logLevelOrder: Record<LogLevel, number> = {\n debug: 0,\n info: 1,\n warn: 2,\n error: 3,\n} as const;\n\nexport interface Logger {\n debug: (message: string, ...args: unknown[]) => void;\n info: (message: string, ...args: unknown[]) => void;\n warn: (message: string, ...args: unknown[]) => void;\n error: (message: string, ...args: unknown[]) => void;\n}\n\nexport class NoOpLogger implements Logger {\n debug: () => void = () => { /* noop */ }\n info: () => void = () => { /* noop */ }\n warn: () => void = () => { /* noop */ }\n error: () => void = () => { /* noop */ }\n}\n\ninterface ConsoleLoggerOptions {\n level: LogLevel;\n prefix?: string;\n}\n\n/**\n * ConsoleLogger applies log level filtering and optional prefixing.\n * If you pass your own Logger, the SDK will not apply log level filtering or prefixing.\n */\nexport class ConsoleLogger implements Logger {\n private level: LogLevel;\n private prefix?: string;\n\n constructor(options: ConsoleLoggerOptions = { level: \"warn\" }) {\n this.level = options.level;\n this.prefix = options.prefix;\n }\n\n private shouldLog(level: LogLevel): boolean {\n return logLevelOrder[level] >= logLevelOrder[this.level];\n }\n\n private format(message: string): string {\n return this.prefix ? `[${this.prefix}] ${message}` : message;\n }\n\n debug: (message: string, ...args: unknown[]) => void = (message: string, ...args: unknown[]): void => {\n if (this.shouldLog(\"debug\")) console.debug(this.format(message), ...args);\n };\n info: (message: string, ...args: unknown[]) => void = (message: string, ...args: unknown[]): void => {\n if (this.shouldLog(\"info\")) console.info(this.format(message), ...args);\n };\n warn: (message: string, ...args: unknown[]) => void = (message: string, ...args: unknown[]): void => {\n if (this.shouldLog(\"warn\")) console.warn(this.format(message), ...args);\n }\n error: (message: string, ...args: unknown[]) => void = (message: string, ...args: unknown[]): void => {\n if (this.shouldLog(\"error\")) console.error(this.format(message), ...args);\n }\n}\n","/*\n This file contains the semantic conventions for attributes either owned by LangWatch, or\n which are no yet part of the OpenTelemetry semantic conventions for Gen AI.\n\n Any that are not yet part of the OpenTelemetry semantic conventions for Gen AI are\n marked with an UNSTABLE_ prefix.\n*/\n\n/**\n * LangWatch input data attribute key\n * Used to store the input data for a span or event\n */\nexport const ATTR_LANGWATCH_INPUT = \"langwatch.input\";\n\n/**\n * LangWatch output data attribute key\n * Used to store the output data for a span or event\n */\nexport const ATTR_LANGWATCH_OUTPUT = \"langwatch.output\";\n\n/**\n * LangWatch span type attribute key\n * Used to identify the type of span being traced\n */\nexport const ATTR_LANGWATCH_SPAN_TYPE = \"langwatch.span.type\";\n\n/**\n * LangWatch RAG contexts attribute key\n * Used to store retrieval-augmented generation contexts\n */\nexport const ATTR_LANGWATCH_RAG_CONTEXTS = \"langwatch.rag.contexts\";\n\n/**\n * LangWatch metrics attribute key\n * Used to store custom metrics data\n */\nexport const ATTR_LANGWATCH_METRICS = \"langwatch.metrics\";\n\n/**\n * LangWatch SDK version attribute key\n * Used to track the version of the LangWatch SDK being used\n */\nexport const ATTR_LANGWATCH_SDK_VERSION = \"langwatch.sdk.version\";\n\n/**\n * LangWatch SDK name attribute key\n * Used to identify the LangWatch SDK implementation\n */\nexport const ATTR_LANGWATCH_SDK_NAME = \"langwatch.sdk.name\";\n\n/**\n * LangWatch SDK language attribute key\n * Used to identify the programming language of the SDK\n */\nexport const ATTR_LANGWATCH_SDK_LANGUAGE = \"langwatch.sdk.language\";\n\n/**\n * LangWatch timestamps attribute key\n * Used to store timing information for events\n */\nexport const ATTR_LANGWATCH_TIMESTAMPS = \"langwatch.timestamps\";\n\n/**\n * LangWatch custom evaluation attribute key\n * Used to store custom evaluation data\n */\nexport const ATTR_LANGWATCH_EVALUATION_CUSTOM = \"langwatch.evaluation.custom\";\n\n/**\n * LangWatch parameters attribute key\n * Used to store parameter data for operations\n */\nexport const ATTR_LANGWATCH_PARAMS = \"langwatch.params\";\n\n/**\n * LangWatch customer ID attribute key\n * Used to identify the customer associated with the trace\n */\nexport const ATTR_LANGWATCH_CUSTOMER_ID = \"langwatch.customer.id\";\n\n/**\n * LangWatch thread ID attribute key\n * Used to group related operations within a conversation thread\n */\nexport const ATTR_LANGWATCH_THREAD_ID = \"langwatch.thread.id\";\n\n/**\n * LangWatch user ID attribute key\n * Used to store the user ID for a span or event\n */\nexport const ATTR_LANGWATCH_USER_ID = \"langwatch.user.id\";\n\n/**\n * LangWatch labels attribute key\n * Used to store labels for a span or event\n */\nexport const ATTR_LANGWATCH_LABELS = \"langwatch.labels\";\n\n/**\n * LangWatch tags attribute key\n * Used to store tags for a span or event\n *\n * @deprecated: Please use `ATTR_LANGWATCH_LABELS`.\n */\nexport const ATTR_LANGWATCH_TAGS = \"langwatch.labels\";\n\n/**\n * LangWatch streaming attribute key\n * Used to indicate if the operation involves streaming\n */\nexport const ATTR_LANGWATCH_STREAMING = \"langwatch.gen_ai.streaming\";\n\n/**\n * LangWatch prompt ID attribute key\n * Used to identify the specific prompt being used\n */\nexport const ATTR_LANGWATCH_PROMPT_ID = \"langwatch.prompt.id\";\n\n/**\n * LangWatch prompt ID attribute key\n * Used to identify the specific prompt being used\n */\nexport const ATTR_LANGWATCH_PROMPT_HANDLE = \"langwatch.prompt.handle\";\n\n/**\n * LangWatch prompt version ID attribute key\n * Used to identify the specific version of a prompt\n */\nexport const ATTR_LANGWATCH_PROMPT_VERSION_ID = \"langwatch.prompt.version.id\";\n\n/**\n * LangWatch prompt variables attribute key\n * Used to store variables used in prompt templates\n */\nexport const ATTR_LANGWATCH_PROMPT_VARIABLES = \"langwatch.prompt.variables\";\n\n/**\n * LangWatch prompt selected ID attribute key\n * Used to identify which prompt was selected from a set\n */\nexport const ATTR_LANGWATCH_PROMPT_SELECTED_ID = \"langwatch.prompt.selected.id\";\n\n/**\n * LangWatch prompt version number attribute key\n * Used to track the version number of a prompt\n */\nexport const ATTR_LANGWATCH_PROMPT_VERSION_NUMBER =\n \"langwatch.prompt.version.number\";\n\n/**\n * LangWatch LangChain tags attribute key\n * Used to store tags associated with LangChain operations\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_TAGS = \"langwatch.langchain.tags\";\n\n/**\n * LangWatch LangChain event name attribute key\n * Used to identify the specific LangChain event type\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_EVENT_NAME =\n \"langwatch.langchain.event_name\";\n\n/**\n * LangWatch LangChain run ID attribute key\n * Used to identify a specific LangChain run\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_RUN_ID = \"langwatch.langchain.run.id\";\n\n/**\n * LangWatch LangChain run tags attribute key\n * Used to store tags associated with a LangChain run\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_RUN_TAGS = \"langwatch.langchain.run.tags\";\n\n/**\n * LangWatch LangChain run type attribute key\n * Used to identify the type of LangChain run\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_RUN_TYPE = \"langwatch.langchain.run.type\";\n\n/**\n * LangWatch LangChain run metadata attribute key\n * Used to store metadata associated with a LangChain run\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_RUN_METADATA =\n \"langwatch.langchain.run.metadata\";\n\n/**\n * LangWatch LangChain run extra parameters attribute key\n * Used to store additional parameters for a LangChain run\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_RUN_EXTRA_PARAMS =\n \"langwatch.langchain.run.extra_params\";\n\n/**\n * LangWatch LangChain run parent ID attribute key\n * Used to identify the parent run in a hierarchical structure\n */\nexport const ATTR_LANGWATCH_LANGCHAIN_RUN_PARENT_ID =\n \"langwatch.langchain.run.parent.id\";\n"],"mappings":";;;;;AAkBA,IAAM,gBAA0C;AAAA,EAC9C,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AACT;AASO,IAAM,aAAN,MAAmC;AAAA,EAAnC;AACL,iBAAoB,MAAM;AAAA,IAAa;AACvC,gBAAmB,MAAM;AAAA,IAAa;AACtC,gBAAmB,MAAM;AAAA,IAAa;AACtC,iBAAoB,MAAM;AAAA,IAAa;AAAA;AACzC;AAWO,IAAM,gBAAN,MAAsC;AAAA,EAI3C,YAAY,UAAgC,EAAE,OAAO,OAAO,GAAG;AAa/D,iBAAuD,CAAC,YAAoB,SAA0B;AACpG,UAAI,KAAK,UAAU,OAAO,EAAG,SAAQ,MAAM,KAAK,OAAO,OAAO,GAAG,GAAG,IAAI;AAAA,IAC1E;AACA,gBAAsD,CAAC,YAAoB,SAA0B;AACnG,UAAI,KAAK,UAAU,MAAM,EAAG,SAAQ,KAAK,KAAK,OAAO,OAAO,GAAG,GAAG,IAAI;AAAA,IACxE;AACA,gBAAsD,CAAC,YAAoB,SAA0B;AACnG,UAAI,KAAK,UAAU,MAAM,EAAG,SAAQ,KAAK,KAAK,OAAO,OAAO,GAAG,GAAG,IAAI;AAAA,IACxE;AACA,iBAAuD,CAAC,YAAoB,SAA0B;AACpG,UAAI,KAAK,UAAU,OAAO,EAAG,SAAQ,MAAM,KAAK,OAAO,OAAO,GAAG,GAAG,IAAI;AAAA,IAC1E;AAvBE,SAAK,QAAQ,QAAQ;AACrB,SAAK,SAAS,QAAQ;AAAA,EACxB;AAAA,EAEQ,UAAU,OAA0B;AAC1C,WAAO,cAAc,KAAK,KAAK,cAAc,KAAK,KAAK;AAAA,EACzD;AAAA,EAEQ,OAAO,SAAyB;AACtC,WAAO,KAAK,SAAS,IAAI,KAAK,MAAM,KAAK,OAAO,KAAK;AAAA,EACvD;AAcF;;;AC7EA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYO,IAAM,uBAAuB;AAM7B,IAAM,wBAAwB;AAM9B,IAAM,2BAA2B;AAMjC,IAAM,8BAA8B;AAMpC,IAAM,yBAAyB;AAM/B,IAAM,6BAA6B;AAMnC,IAAM,0BAA0B;AAMhC,IAAM,8BAA8B;AAMpC,IAAM,4BAA4B;AAMlC,IAAM,mCAAmC;AAMzC,IAAM,wBAAwB;AAM9B,IAAM,6BAA6B;AAMnC,IAAM,2BAA2B;AAMjC,IAAM,yBAAyB;AAM/B,IAAM,wBAAwB;AAQ9B,IAAM,sBAAsB;AAM5B,IAAM,2BAA2B;AAMjC,IAAM,2BAA2B;AAMjC,IAAM,+BAA+B;AAMrC,IAAM,mCAAmC;AAMzC,IAAM,kCAAkC;AAMxC,IAAM,oCAAoC;AAM1C,IAAM,uCACX;AAMK,IAAM,gCAAgC;AAMtC,IAAM,sCACX;AAMK,IAAM,kCAAkC;AAMxC,IAAM,oCAAoC;AAM1C,IAAM,oCAAoC;AAM1C,IAAM,wCACX;AAMK,IAAM,4CACX;AAMK,IAAM,yCACX;","names":[]}
|