vellum-ai 1.3.1__py3-none-any.whl → 1.3.3__py3-none-any.whl

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.
Files changed (49) hide show
  1. vellum/__init__.py +6 -0
  2. vellum/client/README.md +5 -5
  3. vellum/client/__init__.py +20 -0
  4. vellum/client/core/client_wrapper.py +2 -2
  5. vellum/client/raw_client.py +20 -0
  6. vellum/client/reference.md +61 -27
  7. vellum/client/resources/ad_hoc/client.py +29 -29
  8. vellum/client/resources/ad_hoc/raw_client.py +13 -13
  9. vellum/client/resources/events/client.py +69 -33
  10. vellum/client/resources/events/raw_client.py +13 -9
  11. vellum/client/types/__init__.py +6 -0
  12. vellum/client/types/create_workflow_event_request.py +7 -0
  13. vellum/client/types/deprecated_prompt_request_input.py +8 -0
  14. vellum/client/types/event_create_response.py +5 -0
  15. vellum/client/types/logical_operator.py +1 -0
  16. vellum/client/types/processing_failure_reason_enum.py +3 -1
  17. vellum/client/types/slim_document.py +1 -0
  18. vellum/client/types/workflow_input.py +31 -0
  19. vellum/types/create_workflow_event_request.py +3 -0
  20. vellum/types/deprecated_prompt_request_input.py +3 -0
  21. vellum/types/workflow_input.py +3 -0
  22. vellum/workflows/constants.py +3 -0
  23. vellum/workflows/emitters/vellum_emitter.py +55 -9
  24. vellum/workflows/events/node.py +1 -0
  25. vellum/workflows/events/tests/test_event.py +1 -0
  26. vellum/workflows/events/workflow.py +1 -0
  27. vellum/workflows/nodes/core/retry_node/tests/test_node.py +1 -2
  28. vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py +16 -0
  29. vellum/workflows/nodes/displayable/code_execution_node/tests/test_node.py +3 -13
  30. vellum/workflows/nodes/displayable/tool_calling_node/utils.py +6 -13
  31. vellum/workflows/nodes/tests/test_utils.py +23 -0
  32. vellum/workflows/nodes/utils.py +14 -0
  33. vellum/workflows/runner/runner.py +33 -12
  34. vellum/workflows/state/tests/test_state.py +14 -0
  35. vellum/workflows/types/code_execution_node_wrappers.py +5 -1
  36. vellum/workflows/utils/vellum_variables.py +11 -2
  37. {vellum_ai-1.3.1.dist-info → vellum_ai-1.3.3.dist-info}/METADATA +1 -1
  38. {vellum_ai-1.3.1.dist-info → vellum_ai-1.3.3.dist-info}/RECORD +49 -40
  39. vellum_cli/__init__.py +21 -0
  40. vellum_cli/move.py +56 -0
  41. vellum_cli/tests/test_move.py +154 -0
  42. vellum_ee/workflows/display/base.py +1 -0
  43. vellum_ee/workflows/display/editor/types.py +1 -0
  44. vellum_ee/workflows/display/nodes/base_node_display.py +1 -0
  45. vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_prompt_node_serialization.py +16 -5
  46. vellum_ee/workflows/display/tests/workflow_serialization/test_web_search_node_serialization.py +81 -0
  47. {vellum_ai-1.3.1.dist-info → vellum_ai-1.3.3.dist-info}/LICENSE +0 -0
  48. {vellum_ai-1.3.1.dist-info → vellum_ai-1.3.3.dist-info}/WHEEL +0 -0
  49. {vellum_ai-1.3.1.dist-info → vellum_ai-1.3.3.dist-info}/entry_points.txt +0 -0
@@ -1,11 +1,12 @@
1
1
  vellum_cli/CONTRIBUTING.md,sha256=FtDC7BGxSeMnwCXAUssFsAIElXtmJE-O5Z7BpolcgvI,2935
2
2
  vellum_cli/README.md,sha256=2NudRoLzWxNKqnuVy1JuQ7DerIaxWGYkrH8kMd-asIE,90
3
- vellum_cli/__init__.py,sha256=rHcUFsfu-nivhX02R-6dmYr9ee6LMA-wy2DrFnOhC4Q,13030
3
+ vellum_cli/__init__.py,sha256=CCTCiCvwxjFHXVSKhzUtZ3GE_h4HrbLEX_XC3qjPuAk,13618
4
4
  vellum_cli/aliased_group.py,sha256=ugW498j0yv4ALJ8vS9MsO7ctDW7Jlir9j6nE_uHAP8c,3363
5
5
  vellum_cli/config.py,sha256=qJrd8W__UZZaUMAG6BO3sxfkgpCoOS4NA3QfqneW-jE,9588
6
6
  vellum_cli/image_push.py,sha256=eeOBqKtKkPu6Kgm_jQCVCivogzAcdlIlkv61-QxH67c,11006
7
7
  vellum_cli/init.py,sha256=WpnMXPItPmh0f0bBGIer3p-e5gu8DUGwSArT_FuoMEw,5093
8
8
  vellum_cli/logger.py,sha256=dcM_OmgqXLo93vDYswO5ylyUQQcTfnA5GTd5tbIt3wM,1446
9
+ vellum_cli/move.py,sha256=lCHQ-U4BspgS512GxFFvUrglitaHkWfuKn1Hpfcn7-Q,2053
9
10
  vellum_cli/ping.py,sha256=p_BCCRjgPhng6JktuECtkDQLbhopt6JpmrtGoLnLJT8,1161
10
11
  vellum_cli/pull.py,sha256=udYyPlJ6VKDdh78rApNJOZgxHl82fcV6iGnRPSdX1LY,14750
11
12
  vellum_cli/push.py,sha256=KpBGq7B-ffwa9QTHsTRSk73l-tfKc3gyiBSn9Pwlsak,11878
@@ -16,6 +17,7 @@ vellum_cli/tests/test_image_push.py,sha256=X0YOPdoaAnWtK9IQTxaN_wWpw08-5G3v76k1W
16
17
  vellum_cli/tests/test_image_push_error_handling.py,sha256=QRH0eYNEEIkD2-EVFQWYexOKlhMB6puh1GouovrE-VU,7647
17
18
  vellum_cli/tests/test_init.py,sha256=C_rV4lu-ab5iFoLRizs1XAUnSPdMf7oFuc1i4N4udOU,18285
18
19
  vellum_cli/tests/test_main.py,sha256=qDZG-aQauPwBwM6A2DIu1494n47v3pL28XakTbLGZ-k,272
20
+ vellum_cli/tests/test_move.py,sha256=FIrL1xlH5oFKGX2MugcTKL8JilpopmUC7hP5OaqF5zw,5213
19
21
  vellum_cli/tests/test_ping.py,sha256=b3aQLd-N59_8w2rRiWqwpB1rlHaKEYVbAj1Y3hi7A-g,2605
20
22
  vellum_cli/tests/test_pull.py,sha256=f7dK61y82LlJm-FAv-IpfmscJijIfZZrR-rzN1TKkU0,49421
21
23
  vellum_cli/tests/test_push.py,sha256=10G-H88tdiYvg9CaC8OXOf25UEzWkWWB01vNhuxzjog,41944
@@ -23,12 +25,12 @@ vellum_ee/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
25
  vellum_ee/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
26
  vellum_ee/workflows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
27
  vellum_ee/workflows/display/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
- vellum_ee/workflows/display/base.py,sha256=po1YIXOupglAFi1-_zsgNH-VwIjHfy5GCvii6Wzntu0,1878
28
+ vellum_ee/workflows/display/base.py,sha256=R3f2T8FlZrXn2FawAmpVuLB3fKFWw11mCUulWAyIKA0,1912
27
29
  vellum_ee/workflows/display/editor/__init__.py,sha256=MSAgY91xCEg2neH5d8jXx5wRdR962ftZVa6vO9BGq9k,167
28
- vellum_ee/workflows/display/editor/types.py,sha256=x-tOOCJ6CF4HmiKDfCmcc3bOVfc1EBlP5o6u5WEfLoY,567
30
+ vellum_ee/workflows/display/editor/types.py,sha256=JXpd8E7dsInbDp5T7ra0-T6XvdQB9RAHhZ1Lc8_0Fk4,601
29
31
  vellum_ee/workflows/display/exceptions.py,sha256=Oys39dHoW-s-1dnlRSZxTntMq8_macj-b2CT_6dqzJs,355
30
32
  vellum_ee/workflows/display/nodes/__init__.py,sha256=jI1aPBQf8DkmrYoZ4O-wR1duqZByOf5mDFmo_wFJPE4,307
31
- vellum_ee/workflows/display/nodes/base_node_display.py,sha256=bxDJxtNqcyy1LwFltggm63W1ZHZPuwK1NyA6KPLHRQQ,18345
33
+ vellum_ee/workflows/display/nodes/base_node_display.py,sha256=98vszulLRvYz0kAh7ZEOeWOqzMtlpnOZM2lAViOUieA,18393
32
34
  vellum_ee/workflows/display/nodes/get_node_display_class.py,sha256=jI_kUi9LnNLDpY63QtlC4TfN8P571VN4LpzH0I1ZtLk,1149
33
35
  vellum_ee/workflows/display/nodes/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
36
  vellum_ee/workflows/display/nodes/tests/test_base_node_display.py,sha256=wBoCqULS4XO3s9Vwhd9v4g10opfBFqeZgRqB8CoFz0c,3015
@@ -86,7 +88,7 @@ vellum_ee/workflows/display/tests/workflow_serialization/test_basic_default_stat
86
88
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_error_node_serialization.py,sha256=03Mk8OE3kWcoZW9lNBe7v4KThCYN-pXg5Rjbkfx-jOQ,6031
87
89
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_generic_node_serialization.py,sha256=-T0cd2jx1bC0ZNtAESF78fnYD_0nOqo8zMMLwRHUTRM,6227
88
90
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_guardrail_node_serialization.py,sha256=LnZp1YXDn-AaaxiYgxrhCQeH-rLgmlu_r_lvM65EQ5w,7517
89
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_prompt_node_serialization.py,sha256=zOv-CzFZs_9NqlINQ7hzJmd4o8ArDBKB7Eyr1Rfd-BU,25767
91
+ vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_prompt_node_serialization.py,sha256=fze2nu8UlH36giAxu60YQzmYwOm8QK3tv_v7MYBm3WY,26306
90
92
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_subworkflow_serialization.py,sha256=yKmOyunzt5_0cUcqhvCmV2pu81TTkshVi_uN3yt76Wc,21816
91
93
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_map_node_serialization.py,sha256=W4--Ldih7mRMnfyJ9G7kdyeoKkeebSu_5d33TJQzShU,16735
92
94
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_merge_node_serialization.py,sha256=UnfWTfKN8DrOLpjCfWMgENJBjgNLWcRVfexbwERKY-c,8501
@@ -102,6 +104,7 @@ vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling
102
104
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_workflow_deployment_serialization.py,sha256=XIZZr5POo2NLn2uEWm9EC3rejeBMoO4X-JtzTH6mvp4,4074
103
105
  vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_serialization.py,sha256=pLCyMScV88DTBXRH7jXaXOEA1GBq8NIipCUFwIAWnwI,2771
104
106
  vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py,sha256=exT7U-axwtYgFylagScflSQLJEND51qIAx2UATju6JM,6023
107
+ vellum_ee/workflows/display/tests/workflow_serialization/test_web_search_node_serialization.py,sha256=vbDFBrWUPeeW7cxjNA6SXrsHlYcbOAhlQ4C45Vdnr1c,3428
105
108
  vellum_ee/workflows/display/tests/workflow_serialization/test_workflow_input_parameterization_error.py,sha256=vAdmn3YTBDpo55znbydQxsgg9ASqHcvsUPwiBR_7wfo,1461
106
109
  vellum_ee/workflows/display/types.py,sha256=cyZruu4sXAdHjwuFc7dydM4DcFNf-pp_CmulXItxac4,3679
107
110
  vellum_ee/workflows/display/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -145,12 +148,12 @@ vellum_ee/workflows/tests/test_registry.py,sha256=B8xRIuEyLWfSqrYoPldNQXhKPfe50P
145
148
  vellum_ee/workflows/tests/test_serialize_module.py,sha256=lk-4dVnG2HcxxywBXxDR1ieH8D9RJt4lvchoZhtQPdU,2892
146
149
  vellum_ee/workflows/tests/test_server.py,sha256=dXFBraU99Y6cKp2aBhLFXQTScSRcE9WaWjo1z9piqdU,23344
147
150
  vellum_ee/workflows/tests/test_virtual_files.py,sha256=TJEcMR0v2S8CkloXNmCHA0QW0K6pYNGaIjraJz7sFvY,2762
148
- vellum/__init__.py,sha256=8-mW70qyqMe2d4jNe2hgthuXs5n3c0qTlkdV8Nz8qcs,47252
149
- vellum/client/README.md,sha256=Uwq9qIFZAHOVCgEfatfWe4YoW-QYYy6xVA1bMjPvx3k,5601
150
- vellum/client/__init__.py,sha256=LOu_TklkJG01SgXIpPWDhOX2QvKDyd2ZbQyr5H0m31I,72349
151
+ vellum/__init__.py,sha256=lv4OTbPgTegugVOpRy5xJPPwMvC1Zqrg4oFMEwY1KSg,47428
152
+ vellum/client/README.md,sha256=b6XKeYBBbhQx0v1sHWfM0gIJeJhUFF-aqL2ig7ADa08,5564
153
+ vellum/client/__init__.py,sha256=T5Ht_w-Mk_9nzGqdadhQB8V20M0vYj7am06ut0A3P1o,73401
151
154
  vellum/client/core/__init__.py,sha256=lTcqUPXcx4112yLDd70RAPeqq6tu3eFMe1pKOqkW9JQ,1562
152
155
  vellum/client/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
153
- vellum/client/core/client_wrapper.py,sha256=yjqDTK-pFWVYr-n4F1kmy-TuBlGzXJBmaztIfr5uBF0,2840
156
+ vellum/client/core/client_wrapper.py,sha256=8my-Ir86AssDOMCGyePyF0hcUkPe6DsVFwW880WD_c8,2840
154
157
  vellum/client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
155
158
  vellum/client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
156
159
  vellum/client/core/force_multipart.py,sha256=awxh5MtcRYe74ehY8U76jzv6fYM_w_D3Rur7KQQzSDk,429
@@ -170,12 +173,12 @@ vellum/client/errors/internal_server_error.py,sha256=t1-kpoDC2biEuoE-Ne8v1kuQswv
170
173
  vellum/client/errors/not_found_error.py,sha256=YrqVM0oc3qkQbFbmmm6xr300VGfUNxMSy1UQUp2IOE8,336
171
174
  vellum/client/errors/too_many_requests_error.py,sha256=SJJemdgUlQHV_VpxK8UfFNexgZebNT5_MTOeQs6oVgc,397
172
175
  vellum/client/errors/unauthorized_error.py,sha256=waPl5Swiqsk3FQK-Lljzx4KDh4RPZ0wL6BLHjM8onQ8,394
173
- vellum/client/raw_client.py,sha256=IJNaTvVzigyiqHZ9g-nLZzXsV8P7aRUZHdXV0U3ddn8,112401
174
- vellum/client/reference.md,sha256=Y5xeW_q9baKaA9Dcd9RL8MQLcGEGAQZXbiCmcrA7yr0,95032
176
+ vellum/client/raw_client.py,sha256=cmMR0t87iUYvkIE9L4g0dcCmw3uUQNze9rD9CBv5rzs,113481
177
+ vellum/client/reference.md,sha256=IS1XNL62s3_Xz49ncvPJVZNvOMKyi36AYp2gYBt7xx8,95967
175
178
  vellum/client/resources/__init__.py,sha256=R10JFtO6U6QRvNubrmDIjncT7e5q4AiOKjXSK4wFuXc,1609
176
179
  vellum/client/resources/ad_hoc/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
177
- vellum/client/resources/ad_hoc/client.py,sha256=AbK_g9HPL2xEBHymwQ9rGO7js7X1YpNYcqPa-PxlsyM,14400
178
- vellum/client/resources/ad_hoc/raw_client.py,sha256=2eBoWQyB02LUqe7tF8ZZNJdF97XdeHyVY0N3O6EJIxc,24723
180
+ vellum/client/resources/ad_hoc/client.py,sha256=v5I_YzJaaPezsE4KVuMSUXJISstKuJ_9-VUeXakIJhw,14353
181
+ vellum/client/resources/ad_hoc/raw_client.py,sha256=JSbwEoowm41Wm9u4hQNoAIHG_-IX6IYfsBRn2tGZ-gM,24864
179
182
  vellum/client/resources/container_images/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
180
183
  vellum/client/resources/container_images/client.py,sha256=o3K1T2zuU738YsNvHeImytorl8sRCgnuv-u6F9O5fZk,9874
181
184
  vellum/client/resources/container_images/raw_client.py,sha256=ddsLR8tbDa7D-hJsjPU8n3GeTYN71CMwTfPK2_L5Sc4,14422
@@ -194,8 +197,8 @@ vellum/client/resources/documents/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7
194
197
  vellum/client/resources/documents/client.py,sha256=1IjqPf-ucvYK4A5CdtGP_0M4y9l1vBUn_Kq1GeqisxU,16791
195
198
  vellum/client/resources/documents/raw_client.py,sha256=-_94wO-A7RoSY9bea1mp1Qskurak9BJNw9IQ1Jz_MTI,25992
196
199
  vellum/client/resources/events/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
197
- vellum/client/resources/events/client.py,sha256=Ha0IBOo33pTu13pyzJ4vK2LJXikV07KmHznuTb3LQtI,4901
198
- vellum/client/resources/events/raw_client.py,sha256=Y854a-aKV8wnqoXCtvauMINgOnBUe6rqN1A6gQeVBm4,8369
200
+ vellum/client/resources/events/client.py,sha256=gTMjvXxPprTkNEqNBKZU810HBfnjlHjMMLQEiH135JU,6641
201
+ vellum/client/resources/events/raw_client.py,sha256=XsVnKcwkZy5CPFbIvdsfijaPOxjO_1S7g_LvWUKEXfA,8575
199
202
  vellum/client/resources/folder_entities/__init__.py,sha256=BSfCsUFsB-bXr4AwYaCcEU48j5U61VFxajugpspfDS0,195
200
203
  vellum/client/resources/folder_entities/client.py,sha256=F60BvZtI4Bnk2h7Z405JshsCLx7qh_yXZkqe3rPdpus,9291
201
204
  vellum/client/resources/folder_entities/raw_client.py,sha256=uYTdVE-lpzoPzxnXIKCb_A4N8L1R7R-K0rq_0txtV04,10697
@@ -245,7 +248,7 @@ vellum/client/resources/workspace_secrets/raw_client.py,sha256=ZfiNd1NisolmK07QP
245
248
  vellum/client/resources/workspaces/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
246
249
  vellum/client/resources/workspaces/client.py,sha256=36KYa2FDu6h65q2GscUFOJs4qKeiOA6grOYoCc0Gi3E,2936
247
250
  vellum/client/resources/workspaces/raw_client.py,sha256=M3Ewk1ZfEZ44EeTvBtBNoNKi5whwfLY-1GR07SyfDTI,3517
248
- vellum/client/types/__init__.py,sha256=-PQEF1IO-RdF7X4YeQf2ZO-OCPvy0pYxt11__WpVxso,71638
251
+ vellum/client/types/__init__.py,sha256=ZzAl8sIsRT3hkRaCO_tlR9fjgVIM7sQCxmLO_S5WrIo,71915
249
252
  vellum/client/types/ad_hoc_execute_prompt_event.py,sha256=B69EesIH6fpNsdoiJaSG9zF1Sl17FnjoTu4CBkUSoHk,608
250
253
  vellum/client/types/ad_hoc_expand_meta.py,sha256=Kajcj3dKKed5e7uZibRnE3ZonK_bB2JPM-3aLjLfUp4,1295
251
254
  vellum/client/types/ad_hoc_fulfilled_prompt_execution_meta.py,sha256=5kD6ZcbU8P8ynK0lMD8Mh7vHzvQt06ziMyphvWYg6FU,968
@@ -318,6 +321,7 @@ vellum/client/types/container_image_build_config.py,sha256=Hl0PpR6fY8PDS8nvYktBs
318
321
  vellum/client/types/container_image_container_image_tag.py,sha256=TlXkSkD3udi_Cf-ZpiIAM_rkMzHyPrWJCUTm_3JWunA,586
319
322
  vellum/client/types/container_image_read.py,sha256=9vyFH5TGg_WNMIlt47gVfy0pce-SOVyQdOkej7ZjKgk,1101
320
323
  vellum/client/types/create_test_suite_test_case_request.py,sha256=qQCmHY3JcMuQ73l1VkY4Atmf0G2qUT20Tcax2uX3WCU,1610
324
+ vellum/client/types/create_workflow_event_request.py,sha256=0MmlvSgYkpd1HU-DyVJDzEPrgbQCjIeD96iZZZ4fxuU,208
321
325
  vellum/client/types/delimiter_chunker_config.py,sha256=iJqsicj4XkkUc2D807slcvrYrTF3LnSFtYwzFxmJFqE,601
322
326
  vellum/client/types/delimiter_chunker_config_request.py,sha256=EQ3iJK2p7flI3qLwtlMRCrOoPTL3tst0G4U1KU3cvIU,608
323
327
  vellum/client/types/delimiter_chunking.py,sha256=RNhnLZzN5325Tt845uQeA6nCFnRqcXtbxJFw19koBfU,714
@@ -328,6 +332,7 @@ vellum/client/types/deployment_provider_payload_response_payload.py,sha256=xHLQn
328
332
  vellum/client/types/deployment_read.py,sha256=gfkVoVD84glJuUFDX61uMwmhDYg46h2UXcXIhTEA-ls,2040
329
333
  vellum/client/types/deployment_release_tag_deployment_history_item.py,sha256=wVzgUnsa4Up9ReH_rP_l5ssfA0J1Nsfd4AN6lRsxhv4,595
330
334
  vellum/client/types/deployment_release_tag_read.py,sha256=SV_kKYFIjhfD5CR9Ab35pdJpAJSx-7jhk2x_HUiz-Uk,1242
335
+ vellum/client/types/deprecated_prompt_request_input.py,sha256=28_ZOtOsQQXS_X_qH4YyYEzeM-McMzbYXgTRni4fm1Q,255
331
336
  vellum/client/types/docker_service_token.py,sha256=rv0F19r2Sgba_Hbz757HFfTV8UioAQTV2xXkWxfn4sg,578
332
337
  vellum/client/types/document_chat_message_content.py,sha256=pzedhUAhgcmI5jaZFHZB-Ei57f5oixCCneZYki90nGU,709
333
338
  vellum/client/types/document_chat_message_content_request.py,sha256=S1Fb1ngDTbTfMR4z06YT9k5MQL83szNzV38BUxGhRqQ,738
@@ -355,7 +360,7 @@ vellum/client/types/error_detail_response.py,sha256=ojTyfayk-06SGyQ_agQRH7R-4dqp
355
360
  vellum/client/types/error_input.py,sha256=L0b21Sa-hMCSGLbD99_oaGwsvhdJdtifEfKd-1uKn8U,750
356
361
  vellum/client/types/error_vellum_value.py,sha256=5Q1iQJ3wfB-8KoARCK7FVLUxM4Upc9CFhOcKxJjgXLE,690
357
362
  vellum/client/types/error_vellum_value_request.py,sha256=7E9ZGq5OOZLp3v-AUkyn8uXIYiz6MKUzJjfKoqvS_ws,719
358
- vellum/client/types/event_create_response.py,sha256=_ogApuh152-AmqplxBSZPVzf_l5b3FERlDr8g6nbqnk,726
363
+ vellum/client/types/event_create_response.py,sha256=-AMF97kDAKTr0WsufK2st48AHi81e7_pG02dvDmkcLU,808
359
364
  vellum/client/types/execute_api_request_bearer_token.py,sha256=d2cP31_oLVIJ4Olm9wVbDMGfPVJoLgJgQTidJGyyJ7M,184
360
365
  vellum/client/types/execute_api_request_body.py,sha256=WySF2yj9rtx2vF4En0dfZkzPF2FNFtVRFW7P8Mw-hF8,217
361
366
  vellum/client/types/execute_api_request_headers_value.py,sha256=W9Qrqzia725vZZ_cyTzuDMLvVQ5JNkq0GHhM-XewBGk,185
@@ -458,7 +463,7 @@ vellum/client/types/json_input.py,sha256=vF9bbntErx0IwVGB0OqrYooPU7A9wxaHap_CZR_
458
463
  vellum/client/types/json_input_request.py,sha256=TAXQypA_hkTgjnGdojm56TjvsOXd0-uVB6TzcLCioEA,732
459
464
  vellum/client/types/json_vellum_value.py,sha256=v01fKiC-U9asT0GV4iorxWIXoPnG-3Do5hiJOaRO4go,653
460
465
  vellum/client/types/json_vellum_value_request.py,sha256=UqBCzov-GCNhgS8aJRUB2baLISdSX2T2EYDN0PWarJ0,660
461
- vellum/client/types/logical_operator.py,sha256=av5NiF3Z9lyP_qibvInCV_FZzpXoCHo5YMjOqC-Qe4M,654
466
+ vellum/client/types/logical_operator.py,sha256=UET8SvwJEorCZQMpfHyRrOcJIH1-eVX98oj-nhn1FsM,672
462
467
  vellum/client/types/logprobs_enum.py,sha256=D_458cZX2CAb6dX_ovrQ6HARlJkYcZRadKwsi1Cr-JM,151
463
468
  vellum/client/types/map_node_result.py,sha256=5v8rzWo6x7QLFyooHieauuRmBU_N91V5uHAvTHTNc6Q,716
464
469
  vellum/client/types/map_node_result_data.py,sha256=UlboKx1e5onq_4hTJhN80GZd8V2pkOx_uHjTsQQsOgk,663
@@ -580,7 +585,7 @@ vellum/client/types/pdf_search_result_meta_source.py,sha256=KaYx-xvNtOn_ADRDBbb4
580
585
  vellum/client/types/pdf_search_result_meta_source_request.py,sha256=Fh2EUxWyhdP7yW2CUNvSTSZo8EcukgogALr4HpppHvQ,1097
581
586
  vellum/client/types/plain_text_prompt_block.py,sha256=vqZESoqj6P1IyHFmRAk2kmdU3ktsM_852crRCBcYV64,894
582
587
  vellum/client/types/price.py,sha256=f-j-74UUDuX2c-IQxXH78KV8L-jLi6sdsHWVLRKqBy4,574
583
- vellum/client/types/processing_failure_reason_enum.py,sha256=R_KIW7TcQejhc-vLhtNf9SdkYADgoZCn4ch4_RRIvsI,195
588
+ vellum/client/types/processing_failure_reason_enum.py,sha256=cQ3Rmryo7U0Lkh-XZzWIDI9Re-oVh1GZb2cDgMR5sL8,224
584
589
  vellum/client/types/prompt_block.py,sha256=950JeKeNKZ0DQXwCD-Sy9SDMtiR7F-BqCrJZoxZt7JM,886
585
590
  vellum/client/types/prompt_block_state.py,sha256=BRAzTYARoSU36IVZGWMeeqhl5fgFMXCyhJ8rCbfB-f0,163
586
591
  vellum/client/types/prompt_deployment_expand_meta_request.py,sha256=v7sW8hDHULzNa103FB3WugGMsRUnt0ijbzRy476M3fg,1874
@@ -659,7 +664,7 @@ vellum/client/types/sentence_chunker_config_request.py,sha256=Da2ANuD4icLxI74emC
659
664
  vellum/client/types/sentence_chunking.py,sha256=MyEImiN0dhWEVFvD76Q6mCqIEjZcyY__Hhu0j9Gjs6Y,747
660
665
  vellum/client/types/sentence_chunking_request.py,sha256=itrdqiKJJ7UKWVGTfj9sJu3kMSThkBF_Qj-3KqFunP4,776
661
666
  vellum/client/types/slim_deployment_read.py,sha256=lEJ8Fx7QSmqjEK-LcR0y_hX2ywcaPbYjxINwPGy_ofw,1733
662
- vellum/client/types/slim_document.py,sha256=2eSbvk2u8NsFsT3SPmDRvdBJsytJ8zPAVhuTsC-hF8E,2359
667
+ vellum/client/types/slim_document.py,sha256=aytvaz8SF6MSSEA3iLXP7ZgZOw33CA-_bv2iSj5cH24,2409
663
668
  vellum/client/types/slim_document_document_to_document_index.py,sha256=Ogo8OFjtmcHjDmIynB9vckfjSZxFNhKM-cYpqSfREGI,1515
664
669
  vellum/client/types/slim_release_review.py,sha256=vWNkPXk5wZ_scHsWHz_77PfMZRDn-4qUkqVbCKqY1zQ,747
665
670
  vellum/client/types/slim_workflow_deployment.py,sha256=jIciGPCW9QNtDRdq3w_zUdrrE4cg1LWkcoyGM-L6cs0,2085
@@ -864,6 +869,7 @@ vellum/client/types/workflow_execution_view_online_eval_metric_result.py,sha256=
864
869
  vellum/client/types/workflow_execution_workflow_result_event.py,sha256=9au7DnaQu84TOYBDiSlDAjLcdDAxfMHOYwi4zbSQYBk,1047
865
870
  vellum/client/types/workflow_expand_meta_request.py,sha256=jdlSJB-g7vqhdRheEV0Zzi4CAQZSlGBeWlvbihHgeLU,1115
866
871
  vellum/client/types/workflow_initialization_error.py,sha256=1QIqmlPdbBPLEbMP-ThkC30FiIyxPBnK-g9eRKBdrHw,603
872
+ vellum/client/types/workflow_input.py,sha256=0AKNfArTz60M4M_i9J4in7ZpauU7fHmAQLIxtk5z6no,815
867
873
  vellum/client/types/workflow_node_result_data.py,sha256=kd7HHA8rI1eVkKzzmZixf4eY9I0GWFQUHUX1LxMc4iI,952
868
874
  vellum/client/types/workflow_node_result_event.py,sha256=NjEFaYmzEvb-8orEhLnmZWxw9fnf2EoNXlNux2eMjuE,604
869
875
  vellum/client/types/workflow_node_result_event_state.py,sha256=cC3CdfmXR8bPzSG4W6vDnndA9HAnfF3v4UzmyeVwxog,209
@@ -1100,6 +1106,7 @@ vellum/types/container_image_build_config.py,sha256=HwpCCo427Ee0j6_f72AV5gxaTAOR
1100
1106
  vellum/types/container_image_container_image_tag.py,sha256=RgDod58iPXdgq6sMp63qqmRF3gk_gTK1gwLVcgR58QA,173
1101
1107
  vellum/types/container_image_read.py,sha256=36LQzvJaDGH26wjD6_WxgzwkslgRZihSYXu5n4W7abk,158
1102
1108
  vellum/types/create_test_suite_test_case_request.py,sha256=D_d6psjOMWx5jr2c7FwNndSH1ay5afdu5QXckqtBmfU,173
1109
+ vellum/types/create_workflow_event_request.py,sha256=TwlP_GRYV0gpnlyUK8PzvRF9F9RMr1l9sV5jyIzDzpY,167
1103
1110
  vellum/types/delimiter_chunker_config.py,sha256=-YWJgMAU0rfWMFEY4joJP2tO46RwdlVV9dMmI8vCNFc,162
1104
1111
  vellum/types/delimiter_chunker_config_request.py,sha256=_jUh1W8OkCvOVePVujM3Wi55MxVjT4srnTVUeavEq78,170
1105
1112
  vellum/types/delimiter_chunking.py,sha256=V8UitO134joRwoUWgY-RPZhosDPX0OnVRC1k1DNkLx0,156
@@ -1110,6 +1117,7 @@ vellum/types/deployment_provider_payload_response_payload.py,sha256=nuzn6G1Tc5h6
1110
1117
  vellum/types/deployment_read.py,sha256=iJWCAuQLxL3GEMaMvC5SrUUEvVvSIPYWarQZ7yEyjvI,153
1111
1118
  vellum/types/deployment_release_tag_deployment_history_item.py,sha256=JMw5mQrNNJPDhY-fEW-ZtLh36kqytXy6NySfKwFXUr4,184
1112
1119
  vellum/types/deployment_release_tag_read.py,sha256=cZSBv5ueKerzqCpFz9VIKnzNYL72LCMknKlY-q_4qno,165
1120
+ vellum/types/deprecated_prompt_request_input.py,sha256=ddmp-naHZWLRGLOrQXlfM0IWpJbCFQ6SPMP3xl6FJSk,169
1113
1121
  vellum/types/docker_service_token.py,sha256=hQEc1XEqUssp2OMzWDE4igdsBdEOU5Dg-sCHBaaePr4,158
1114
1122
  vellum/types/document_chat_message_content.py,sha256=n_dmayC0_zMooetTlPM0-IGsaxTqIyfXNBEFS7_uOtI,167
1115
1123
  vellum/types/document_chat_message_content_request.py,sha256=dL-Es5ckNEnBTEaOjg95Yo3dpcSOZ6HQNaywC3Qb6DA,175
@@ -1646,6 +1654,7 @@ vellum/types/workflow_execution_view_online_eval_metric_result.py,sha256=dLnk3Cf
1646
1654
  vellum/types/workflow_execution_workflow_result_event.py,sha256=3bNxtChEfqny5eEazFcGmqQpmC8283Q0J2hxLje-uks,178
1647
1655
  vellum/types/workflow_expand_meta_request.py,sha256=Ahb7gjZekJ5qI0HGHLCbn3hCpkX08EnzeXEH_3ivB4E,166
1648
1656
  vellum/types/workflow_initialization_error.py,sha256=ZDbjOAEilOIpioDFdNolGIh8XFP0kssEmf0LEnLAMQw,167
1657
+ vellum/types/workflow_input.py,sha256=W-ANsou365XpgqSimqMzqD-O5J8U3g0HT0dK1Upiq5o,152
1649
1658
  vellum/types/workflow_node_result_data.py,sha256=xJGaXn837DXVIXd8i9IrFuo3iTKufsUlgogwHnW_MZw,163
1650
1659
  vellum/types/workflow_node_result_event.py,sha256=6j8UAupnbsYlO1Qn4RbSMEvLRPhVFV3F2rIg-a2ocUY,164
1651
1660
  vellum/types/workflow_node_result_event_state.py,sha256=dsQ6jjkq1kh3sivg1iTDPSh1TZ8cLtbMqNrGydhZEoo,170
@@ -1702,7 +1711,7 @@ vellum/utils/uuid.py,sha256=Ch6wWRgwICxLxJCTl5iE3EdRlZj2zADR-zUMUtjcMWM,214
1702
1711
  vellum/version.py,sha256=jq-1PlAYxN9AXuaZqbYk9ak27SgE2lw9Ia5gx1b1gVI,76
1703
1712
  vellum/workflows/README.md,sha256=hZdTKBIcsTKPofK68oPkBhyt0nnRh0csqC12k4FMHHA,3597
1704
1713
  vellum/workflows/__init__.py,sha256=CssPsbNvN6rDhoLuqpEv7MMKGa51vE6dvAh6U31Pcio,71
1705
- vellum/workflows/constants.py,sha256=2yg4_uo5gpqViy3ZLSwfC8qTybleYCtOnhA4Rj6bacM,1310
1714
+ vellum/workflows/constants.py,sha256=xweiPRUSVEnGz9BJvpIWu96Gfok89QneARu4K7wj7f8,1358
1706
1715
  vellum/workflows/context.py,sha256=ViyIeMDhUv-MhnynLaXPlvlbYxRU45ySvYidCNSbFZU,2458
1707
1716
  vellum/workflows/descriptors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1708
1717
  vellum/workflows/descriptors/base.py,sha256=fRnRkECyDjfz2QEDCY9Q5mAerlJ6jR0R4nE-MP2VP_k,16558
@@ -1713,21 +1722,21 @@ vellum/workflows/edges/__init__.py,sha256=wSkmAnz9xyi4vZwtDbKxwlplt2skD7n3NsxkvR
1713
1722
  vellum/workflows/edges/edge.py,sha256=N0SnY3gKVuxImPAdCbPMPlHJIXbkQ3fwq_LbJRvVMFc,677
1714
1723
  vellum/workflows/emitters/__init__.py,sha256=d9QFOI3eVg6rzpSFLvrjkDYXWikf1tcp3ruTRa2Boyc,143
1715
1724
  vellum/workflows/emitters/base.py,sha256=Tcp13VMB-GMwEJdl-6XTPckspdOdwpMgBx22-PcQxds,892
1716
- vellum/workflows/emitters/vellum_emitter.py,sha256=hhMX8uXZFH2ZYHJP77uA6U4ECisacwdTBKI7papU79Y,2899
1725
+ vellum/workflows/emitters/vellum_emitter.py,sha256=ECBIRA48WS5rIJd1iWUfye7B5Up7ujL98BTlZwWALKs,4430
1717
1726
  vellum/workflows/environment/__init__.py,sha256=TJz0m9dwIs6YOwCTeuN0HHsU-ecyjc1OJXx4AFy83EQ,121
1718
1727
  vellum/workflows/environment/environment.py,sha256=Ck3RPKXJvtMGx_toqYQQQF-ZwXm5ijVwJpEPTeIJ4_Q,471
1719
1728
  vellum/workflows/errors/__init__.py,sha256=tWGPu5xyAU8gRb8_bl0fL7OfU3wxQ9UH6qVwy4X4P_Q,113
1720
1729
  vellum/workflows/errors/types.py,sha256=nUWuniEfrhdtb-_2GzoDGlYnSJ_yuNUGjVkaKLNr-rM,4049
1721
1730
  vellum/workflows/events/__init__.py,sha256=V4mh766fyA70WvHelm9kfVZGrUgEKcJ9tJt8EepfQYU,832
1722
1731
  vellum/workflows/events/context.py,sha256=vCfMIPmz4j9Om36rRWa35A_JU_VccWWS52_mZkkqxak,3345
1723
- vellum/workflows/events/node.py,sha256=ZL_oGo7cnXfHNBVfl645fm5fgk-NnoAmV6BlR_YdLnk,5847
1732
+ vellum/workflows/events/node.py,sha256=2R5Yk86v6DNNfgPiCCQjrQ9JYKc71xKNokW2f2EFUUU,5883
1724
1733
  vellum/workflows/events/relational_threads.py,sha256=zmLrBCBYpdpQV0snKH3HleST-_hWAMy2LIT0xScfzi4,1516
1725
1734
  vellum/workflows/events/stream.py,sha256=xhXJTZirFi0xad5neAQNogrIQ4h47fpnKbVC3vCM5Js,889
1726
1735
  vellum/workflows/events/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1727
1736
  vellum/workflows/events/tests/test_basic_workflow.py,sha256=Pj6orHsXz37jWC5FARi0Sx2Gjf99Owri2Cvr6Chb79k,1765
1728
- vellum/workflows/events/tests/test_event.py,sha256=c2pM8ZOuES_8XjLYP4cU4cChrZUZ1ZZ3HUNIaaPAxXk,18411
1737
+ vellum/workflows/events/tests/test_event.py,sha256=6R3RuN_lMJ9ooHQ9-HE1p0j2xL0FtGiRxkQ7PucFbD0,18450
1729
1738
  vellum/workflows/events/types.py,sha256=mVrqAH9Hs9SpXm08Hcxdyap_ImQPwGsxRr56rSNMP34,5043
1730
- vellum/workflows/events/workflow.py,sha256=rAj2jH94t-bWqtQRtG8mkxXpQxIfqux06QtKdFK_L54,8960
1739
+ vellum/workflows/events/workflow.py,sha256=XW9tpAmDb9BPj2RLYpdbN-SJz_UhwqKBTaMJkZM2ahM,8996
1731
1740
  vellum/workflows/exceptions.py,sha256=NiBiR3ggfmPxBVqD-H1SqmjI-7mIn0EStSN1BqApvCM,1213
1732
1741
  vellum/workflows/expressions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1733
1742
  vellum/workflows/expressions/accessor.py,sha256=3lu1-_-dBfZdJvtX-q66jbmRAZtqIfdsh_3_JNuzg1E,4462
@@ -1807,10 +1816,10 @@ vellum/workflows/nodes/core/map_node/tests/test_node.py,sha256=Xc2xZY5ShSy-bsIQe
1807
1816
  vellum/workflows/nodes/core/retry_node/__init__.py,sha256=lN2bIy5a3Uzhs_FYCrooADyYU6ZGShtvLKFWpelwPvo,60
1808
1817
  vellum/workflows/nodes/core/retry_node/node.py,sha256=EM4ya8Myr7ADllpjt9q-BAhB3hGrsF8MLZhp5eh4lyo,5590
1809
1818
  vellum/workflows/nodes/core/retry_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1810
- vellum/workflows/nodes/core/retry_node/tests/test_node.py,sha256=PCvD_XROP26k4cVYOdSQUfkDdbTljAJxtOTFzOUoS8c,4450
1819
+ vellum/workflows/nodes/core/retry_node/tests/test_node.py,sha256=XyMtL_ZI6zcqCe0mG4DYjeuZGqX9zm35lnpLUZxsNUk,4368
1811
1820
  vellum/workflows/nodes/core/templating_node/__init__.py,sha256=GmyuYo81_A1_Bz6id69ozVFS6FKiuDsZTiA3I6MaL2U,70
1812
1821
  vellum/workflows/nodes/core/templating_node/node.py,sha256=mn0JEbORWaM-mR7fgUZy-BItZCup8CaxZQaY_g3TSEE,3855
1813
- vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py,sha256=RzX00apXes3Kz7AY0a_Ewx65byRwp2FFc1ceh0AWUOc,14381
1822
+ vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py,sha256=gfLi8lJpTU5jGO1Kt6UuzVz1fQN8dcNhHBZG90enP-s,15013
1814
1823
  vellum/workflows/nodes/core/try_node/__init__.py,sha256=JVD4DrldTIqFQQFrubs9KtWCCc0YCAc7Fzol5ZWIWeM,56
1815
1824
  vellum/workflows/nodes/core/try_node/node.py,sha256=XdyOvlwQ3m4h0-_WNtaBl2t_CdlzPXclulkLOtUcX3E,4388
1816
1825
  vellum/workflows/nodes/core/try_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -1842,7 +1851,7 @@ vellum/workflows/nodes/displayable/code_execution_node/node.py,sha256=cCpZPna1Ex
1842
1851
  vellum/workflows/nodes/displayable/code_execution_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1843
1852
  vellum/workflows/nodes/displayable/code_execution_node/tests/fixtures/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1844
1853
  vellum/workflows/nodes/displayable/code_execution_node/tests/fixtures/main.py,sha256=5QsbmkzSlSbcbWTG_JmIqcP-JNJzOPTKxGzdHos19W4,79
1845
- vellum/workflows/nodes/displayable/code_execution_node/tests/test_node.py,sha256=0lxmU-XXie6qu35qAEfZJ3vKZ1XGvWV4eq9y2RMelOE,38521
1854
+ vellum/workflows/nodes/displayable/code_execution_node/tests/test_node.py,sha256=1XadX-I240ghXDSLBejYfDNUpDZcdQbB6aroCHlIBt4,38285
1846
1855
  vellum/workflows/nodes/displayable/code_execution_node/utils.py,sha256=GxSjRBiH8kNg2dXUVTtnX47fqPIFoGHxRB4ySU6uVPk,3225
1847
1856
  vellum/workflows/nodes/displayable/conditional_node/__init__.py,sha256=AS_EIqFdU1F9t8aLmbZU-rLh9ry6LCJ0uj0D8F0L5Uw,72
1848
1857
  vellum/workflows/nodes/displayable/conditional_node/node.py,sha256=71ZUNfTiD7t2Kai2ypw0tmv1lSf1brQaHAQD-SeUrGE,1101
@@ -1888,7 +1897,7 @@ vellum/workflows/nodes/displayable/tool_calling_node/tests/__init__.py,sha256=47
1888
1897
  vellum/workflows/nodes/displayable/tool_calling_node/tests/test_composio_service.py,sha256=in1fbEz5x1tx3uKv9YXdvOncsHucNL8Ro6Go7lBuuOQ,8962
1889
1898
  vellum/workflows/nodes/displayable/tool_calling_node/tests/test_node.py,sha256=GZoeybB9uM7ai8sBLAtUMHrMVgh-WrJDWrKZci6feDs,11892
1890
1899
  vellum/workflows/nodes/displayable/tool_calling_node/tests/test_utils.py,sha256=SIu5GCj4tIE4fz-cAcdULtQfqZIhrcc3Doo6TWLXBws,8804
1891
- vellum/workflows/nodes/displayable/tool_calling_node/utils.py,sha256=ACEfl2pY65sO0DaMYxuecx2Kxg32HpSh7XXpp8U1J84,23459
1900
+ vellum/workflows/nodes/displayable/tool_calling_node/utils.py,sha256=wymqUCytUHiWKJxJDvMc7cLdJ69zfxNrHXAmXkFSUiQ,23189
1892
1901
  vellum/workflows/nodes/displayable/web_search_node/__init__.py,sha256=8FOnEP-n-U68cvxTlJW9wphIAGHq5aqjzLM-DoSSXnU,61
1893
1902
  vellum/workflows/nodes/displayable/web_search_node/node.py,sha256=NQYux2bOtuBF5E4tn-fXi5y3btURPRrNqMSM9MAZYI4,5091
1894
1903
  vellum/workflows/nodes/displayable/web_search_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -1900,8 +1909,8 @@ vellum/workflows/nodes/experimental/openai_chat_completion_node/node.py,sha256=c
1900
1909
  vellum/workflows/nodes/mocks.py,sha256=a1FjWEIocseMfjzM-i8DNozpUsaW0IONRpZmXBoWlyc,10455
1901
1910
  vellum/workflows/nodes/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1902
1911
  vellum/workflows/nodes/tests/test_mocks.py,sha256=mfPvrs75PKcsNsbJLQAN6PDFoVqs9TmQxpdyFKDdO60,7837
1903
- vellum/workflows/nodes/tests/test_utils.py,sha256=OPVZo9yi8qt0rVqayKhfgh4Hk-dVdIzqfbS89fDhRiE,4913
1904
- vellum/workflows/nodes/utils.py,sha256=CwDobM6T4Whm1B0cekPAIj7pdSxbFGRxx_BqgxZrimg,10265
1912
+ vellum/workflows/nodes/tests/test_utils.py,sha256=BUugAHx2C9YuCwTlsTXV1Glxca0kW3St6T9o_QFatSU,5649
1913
+ vellum/workflows/nodes/utils.py,sha256=wCvf8K5qruT5GwtvnHcQ-LMllktTD8aaFmAGpKQy--c,10720
1905
1914
  vellum/workflows/outputs/__init__.py,sha256=AyZ4pRh_ACQIGvkf0byJO46EDnSix1ZCAXfvh-ms1QE,94
1906
1915
  vellum/workflows/outputs/base.py,sha256=PUn0zhGzYCSZL34JXtXg9zALlXS_cqxZldLilPxDzb8,9614
1907
1916
  vellum/workflows/ports/__init__.py,sha256=bZuMt-R7z5bKwpu4uPW7LlJeePOQWmCcDSXe5frUY5g,101
@@ -1927,7 +1936,7 @@ vellum/workflows/resolvers/resolver.py,sha256=0Y9ArmN_2Gu62TpgYjFvSzhFMMFy7oGWOJ
1927
1936
  vellum/workflows/resolvers/tests/test_resolver.py,sha256=JX6-zjIQShNvt4XYmub6zmY0iUf6z90KZynqvEd33qA,5202
1928
1937
  vellum/workflows/resolvers/types.py,sha256=Hndhlk69g6EKLh_LYg5ILepW5U_h_BYNllfzhS9k8p4,237
1929
1938
  vellum/workflows/runner/__init__.py,sha256=i1iG5sAhtpdsrlvwgH6B-m49JsINkiWyPWs8vyT-bqM,72
1930
- vellum/workflows/runner/runner.py,sha256=jdFFDr-MCVzTm5NKEzOgrw_9osuwdiVk97SRo73uLRQ,39366
1939
+ vellum/workflows/runner/runner.py,sha256=kuW28ozlBi2thQRhgrKigxXtAcOYoGp0M6lYucYsrMw,40321
1931
1940
  vellum/workflows/sandbox.py,sha256=jwlFFQjHDwmbVoBah_Q3i8K_BrzOt-F6TXFauiyVyIk,3021
1932
1941
  vellum/workflows/state/__init__.py,sha256=yUUdR-_Vl7UiixNDYQZ-GEM_kJI9dnOia75TtuNEsnE,60
1933
1942
  vellum/workflows/state/base.py,sha256=m9fCqbZn21GshCVCjJTD1dPZEQjFrsMXqlg7tM9fIwM,24283
@@ -1936,12 +1945,12 @@ vellum/workflows/state/delta.py,sha256=7h8wR10lRCm15SykaPj-gSEvvsMjCwYLPsOx3nsvB
1936
1945
  vellum/workflows/state/encoder.py,sha256=HdNlabmBOcFSeY_dgn4LNtQEugyzsw3p4mvn2ChC1Io,3380
1937
1946
  vellum/workflows/state/store.py,sha256=uVe-oN73KwGV6M6YLhwZMMUQhzTQomsVfVnb8V91gVo,1147
1938
1947
  vellum/workflows/state/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1939
- vellum/workflows/state/tests/test_state.py,sha256=SjQZgovETrosPUeFohaPB9egAkSVe8ptJO5O4Fk2E04,6920
1948
+ vellum/workflows/state/tests/test_state.py,sha256=zEVFIY2any41X2BA5Us_qqKpzH5HRqmyrUJ04GTO0pU,7484
1940
1949
  vellum/workflows/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1941
1950
  vellum/workflows/tests/test_sandbox.py,sha256=JKwaluI-lODQo7Ek9sjDstjL_WTdSqUlVik6ZVTfVOA,1826
1942
1951
  vellum/workflows/tests/test_undefined.py,sha256=zMCVliCXVNLrlC6hEGyOWDnQADJ2g83yc5FIM33zuo8,353
1943
1952
  vellum/workflows/types/__init__.py,sha256=KxUTMBGzuRCfiMqzzsykOeVvrrkaZmTTo1a7SLu8gRM,68
1944
- vellum/workflows/types/code_execution_node_wrappers.py,sha256=3MNIoFZKzVzNS5qFLVuDwMV17QJw72zo7NRf52yMq5A,3074
1953
+ vellum/workflows/types/code_execution_node_wrappers.py,sha256=fewX9bqF_4TZuK-gZYIn12s31-k03vHMGRpvFAPm11Y,3206
1945
1954
  vellum/workflows/types/core.py,sha256=TggDVs2lVya33xvu374EDhMC1b7RRlAAs0zWLaF46BA,1385
1946
1955
  vellum/workflows/types/definition.py,sha256=2vq3uGT-m994zRcla0yTUsMiPLKSDuzEZs7H6U9QbiE,4993
1947
1956
  vellum/workflows/types/generics.py,sha256=8jptbEx1fnJV0Lhj0MpCJOT6yNiEWeTOYOwrEAb5CRU,1576
@@ -1961,7 +1970,7 @@ vellum/workflows/utils/tests/test_names.py,sha256=aOqpyvMsOEK_9mg_-yaNxQDW7QQfwq
1961
1970
  vellum/workflows/utils/tests/test_uuids.py,sha256=i77ABQ0M3S-aFLzDXHJq_yr5FPkJEWCMBn1HJ3DObrE,437
1962
1971
  vellum/workflows/utils/tests/test_vellum_variables.py,sha256=vbnKgm41aB5OXlO-ZIPbhQ6xDiZkT8KMxCLqz4zocWY,1791
1963
1972
  vellum/workflows/utils/uuids.py,sha256=IaZQANz7fhF7la0_J1O50Y6D2PIYv_taRDTRzBT9aWw,1284
1964
- vellum/workflows/utils/vellum_variables.py,sha256=-CohqD3AeyCYzqwyrPZ7mt_lt7ibWLyx0MuS484feJk,5503
1973
+ vellum/workflows/utils/vellum_variables.py,sha256=YHLNiQGWDNssGH1FQoG9Z1jUFZ-zYebWqTLBG4cS-Fg,5837
1965
1974
  vellum/workflows/utils/zip.py,sha256=HVg_YZLmBOTXKaDV3Xhaf3V6sYnfqqZXQ8CpuafkbPY,1181
1966
1975
  vellum/workflows/vellum_client.py,sha256=xkfoucodxNK5JR2-lbRqZx3xzDgExWkP6kySrpi_Ubc,1079
1967
1976
  vellum/workflows/workflows/__init__.py,sha256=KY45TqvavCCvXIkyCFMEc0dc6jTMOUci93U2DUrlZYc,66
@@ -1970,8 +1979,8 @@ vellum/workflows/workflows/event_filters.py,sha256=GSxIgwrX26a1Smfd-6yss2abGCnad
1970
1979
  vellum/workflows/workflows/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1971
1980
  vellum/workflows/workflows/tests/test_base_workflow.py,sha256=ptMntHzVyy8ZuzNgeTuk7hREgKQ5UBdgq8VJFSGaW4Y,20832
1972
1981
  vellum/workflows/workflows/tests/test_context.py,sha256=VJBUcyWVtMa_lE5KxdhgMu0WYNYnUQUDvTF7qm89hJ0,2333
1973
- vellum_ai-1.3.1.dist-info/LICENSE,sha256=hOypcdt481qGNISA784bnAGWAE6tyIf9gc2E78mYC3E,1574
1974
- vellum_ai-1.3.1.dist-info/METADATA,sha256=8eP8UQcNY66V3X1QK8GmDgvQnyi_hHztrZQNUMTCT1M,5547
1975
- vellum_ai-1.3.1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1976
- vellum_ai-1.3.1.dist-info/entry_points.txt,sha256=HCH4yc_V3J_nDv3qJzZ_nYS8llCHZViCDP1ejgCc5Ak,42
1977
- vellum_ai-1.3.1.dist-info/RECORD,,
1982
+ vellum_ai-1.3.3.dist-info/LICENSE,sha256=hOypcdt481qGNISA784bnAGWAE6tyIf9gc2E78mYC3E,1574
1983
+ vellum_ai-1.3.3.dist-info/METADATA,sha256=bNuEdxi3O1ua5f1Q56poP2dIfUnw_dHq58lIVX6pMds,5547
1984
+ vellum_ai-1.3.3.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1985
+ vellum_ai-1.3.3.dist-info/entry_points.txt,sha256=HCH4yc_V3J_nDv3qJzZ_nYS8llCHZViCDP1ejgCc5Ak,42
1986
+ vellum_ai-1.3.3.dist-info/RECORD,,
vellum_cli/__init__.py CHANGED
@@ -5,6 +5,7 @@ import click
5
5
  from vellum_cli.aliased_group import ClickAliasedGroup
6
6
  from vellum_cli.image_push import image_push_command
7
7
  from vellum_cli.init import init_command
8
+ from vellum_cli.move import move_command
8
9
  from vellum_cli.ping import ping_command
9
10
  from vellum_cli.pull import pull_command
10
11
  from vellum_cli.push import push_command
@@ -376,6 +377,26 @@ def image_push(
376
377
  image_push_command(image, tag, workspace, source)
377
378
 
378
379
 
380
+ @workflows.command(name="move")
381
+ @click.argument("old_module", required=True)
382
+ @click.argument("new_module", required=True)
383
+ @click.option("--workspace", type=str, help="The specific Workspace config to use when moving")
384
+ def workflows_move(
385
+ old_module: str,
386
+ new_module: str,
387
+ workspace: Optional[str],
388
+ ) -> None:
389
+ """
390
+ Move/rename a Workflow module. Updates both the filesystem structure and configuration.
391
+ """
392
+
393
+ move_command(
394
+ old_module=old_module,
395
+ new_module=new_module,
396
+ workspace=workspace,
397
+ )
398
+
399
+
379
400
  @workflows.command(name="init")
380
401
  @click.argument("template_name", required=False)
381
402
  @click.option(
vellum_cli/move.py ADDED
@@ -0,0 +1,56 @@
1
+ import os
2
+ import shutil
3
+ from typing import Optional
4
+
5
+ from dotenv import load_dotenv
6
+
7
+ from vellum_cli.config import DEFAULT_WORKSPACE_CONFIG, load_vellum_cli_config
8
+ from vellum_cli.logger import load_cli_logger
9
+ from vellum_cli.push import module_exists
10
+
11
+
12
+ def move_command(
13
+ old_module: str,
14
+ new_module: str,
15
+ workspace: Optional[str] = None,
16
+ ) -> None:
17
+ load_dotenv(dotenv_path=os.path.join(os.getcwd(), ".env"))
18
+ logger = load_cli_logger()
19
+ config = load_vellum_cli_config()
20
+
21
+ if not module_exists(old_module):
22
+ raise ValueError(f"Module '{old_module}' does not exist in the filesystem.")
23
+
24
+ if module_exists(new_module):
25
+ raise ValueError(f"Module '{new_module}' already exists. Cannot move to existing module.")
26
+
27
+ matching_configs = [w for w in config.workflows if w.module == old_module]
28
+
29
+ if workspace:
30
+ matching_configs = [w for w in matching_configs if w.workspace == workspace]
31
+ else:
32
+ matching_configs = [w for w in matching_configs if w.workspace == DEFAULT_WORKSPACE_CONFIG.name]
33
+
34
+ if not matching_configs:
35
+ workspace_msg = (
36
+ f" in workspace '{workspace}'" if workspace else f" in workspace '{DEFAULT_WORKSPACE_CONFIG.name}'"
37
+ )
38
+ raise ValueError(f"No workflow configuration found for module '{old_module}'{workspace_msg}.")
39
+
40
+ logger.info(f"Moving module from '{old_module}' to '{new_module}'...")
41
+
42
+ old_path = os.path.join(os.getcwd(), *old_module.split("."))
43
+ new_path = os.path.join(os.getcwd(), *new_module.split("."))
44
+
45
+ os.makedirs(os.path.dirname(new_path), exist_ok=True)
46
+
47
+ shutil.move(old_path, new_path)
48
+ logger.info(f"Moved filesystem directory from '{old_path}' to '{new_path}'")
49
+
50
+ for workflow_config in matching_configs:
51
+ workflow_config.module = new_module
52
+ logger.info(f"Updated workflow configuration: {workflow_config.workflow_sandbox_id}")
53
+
54
+ config.save()
55
+ logger.info("Updated vellum.lock.json file.")
56
+ logger.info(f"Successfully moved module from '{old_module}' to '{new_module}'")
@@ -0,0 +1,154 @@
1
+ import os
2
+
3
+ from click.testing import CliRunner
4
+
5
+ from vellum_cli import main
6
+ from vellum_cli.config import load_vellum_cli_config
7
+
8
+
9
+ def test_move__happy_path(mock_module):
10
+ """
11
+ Test that the move command successfully moves a module and updates configuration.
12
+ """
13
+
14
+ temp_dir = mock_module.temp_dir
15
+ old_module = mock_module.module
16
+ new_module = "examples.new.workflow"
17
+
18
+ old_module_dir = os.path.join(temp_dir, *old_module.split("."))
19
+ os.makedirs(old_module_dir, exist_ok=True)
20
+ with open(os.path.join(old_module_dir, "workflow.py"), "w") as f:
21
+ f.write("# test workflow")
22
+
23
+ runner = CliRunner()
24
+ result = runner.invoke(main, ["workflows", "move", old_module, new_module])
25
+
26
+ assert result.exit_code == 0
27
+
28
+ assert not os.path.exists(old_module_dir)
29
+
30
+ new_module_dir = os.path.join(temp_dir, *new_module.split("."))
31
+ assert os.path.exists(new_module_dir)
32
+ assert os.path.exists(os.path.join(new_module_dir, "workflow.py"))
33
+
34
+ config = load_vellum_cli_config()
35
+ workflow_config = next((w for w in config.workflows if w.module == new_module), None)
36
+ assert workflow_config is not None
37
+ assert workflow_config.workflow_sandbox_id == mock_module.workflow_sandbox_id
38
+
39
+
40
+ def test_move__old_module_not_exists(mock_module):
41
+ """
42
+ Test that the move command fails when the old module doesn't exist.
43
+ """
44
+
45
+ old_module = "nonexistent.module"
46
+ new_module = "examples.new.workflow"
47
+
48
+ runner = CliRunner()
49
+ result = runner.invoke(main, ["workflows", "move", old_module, new_module])
50
+
51
+ assert result.exit_code != 0
52
+ assert "does not exist in the filesystem" in str(result.exception)
53
+
54
+
55
+ def test_move__new_module_already_exists(mock_module):
56
+ """
57
+ Test that the move command fails when the new module already exists.
58
+ """
59
+
60
+ temp_dir = mock_module.temp_dir
61
+ old_module = mock_module.module
62
+ new_module = "examples.existing.workflow"
63
+
64
+ old_module_dir = os.path.join(temp_dir, *old_module.split("."))
65
+ new_module_dir = os.path.join(temp_dir, *new_module.split("."))
66
+ os.makedirs(old_module_dir, exist_ok=True)
67
+ os.makedirs(new_module_dir, exist_ok=True)
68
+
69
+ runner = CliRunner()
70
+ result = runner.invoke(main, ["workflows", "move", old_module, new_module])
71
+
72
+ assert result.exit_code != 0
73
+ assert "already exists" in str(result.exception)
74
+
75
+
76
+ def test_move__no_workflow_config_found(mock_module):
77
+ """
78
+ Test that the move command fails when no workflow config is found.
79
+ """
80
+
81
+ temp_dir = mock_module.temp_dir
82
+ old_module = "examples.unconfigured.workflow"
83
+ new_module = "examples.new.workflow"
84
+
85
+ old_module_dir = os.path.join(temp_dir, *old_module.split("."))
86
+ os.makedirs(old_module_dir, exist_ok=True)
87
+
88
+ runner = CliRunner()
89
+ result = runner.invoke(main, ["workflows", "move", old_module, new_module])
90
+
91
+ assert result.exit_code != 0
92
+ assert "No workflow configuration found" in str(result.exception)
93
+
94
+
95
+ def test_move__with_workspace_filter(mock_module):
96
+ """
97
+ Test that the move command works with workspace filtering.
98
+ """
99
+
100
+ temp_dir = mock_module.temp_dir
101
+ old_module = mock_module.module
102
+ new_module = "examples.new.workflow"
103
+ workspace = "default"
104
+
105
+ old_module_dir = os.path.join(temp_dir, *old_module.split("."))
106
+ os.makedirs(old_module_dir, exist_ok=True)
107
+ with open(os.path.join(old_module_dir, "workflow.py"), "w") as f:
108
+ f.write("# test workflow")
109
+
110
+ runner = CliRunner()
111
+ result = runner.invoke(main, ["workflows", "move", old_module, new_module, "--workspace", workspace])
112
+
113
+ assert result.exit_code == 0
114
+
115
+ config = load_vellum_cli_config()
116
+ workflow_config = next((w for w in config.workflows if w.module == new_module), None)
117
+ assert workflow_config is not None
118
+ assert workflow_config.workspace == workspace
119
+
120
+
121
+ def test_move__preserves_workflow_metadata(mock_module):
122
+ """
123
+ Test that the move command preserves all workflow metadata except the module name.
124
+ """
125
+
126
+ temp_dir = mock_module.temp_dir
127
+ old_module = mock_module.module
128
+ new_module = "examples.new.workflow"
129
+
130
+ config = load_vellum_cli_config()
131
+ original_config = next((w for w in config.workflows if w.module == old_module), None)
132
+ assert original_config is not None
133
+ original_config.container_image_name = "test-image"
134
+ original_config.container_image_tag = "v1.0"
135
+ original_config.ignore = "sandbox.py"
136
+ config.save()
137
+
138
+ old_module_dir = os.path.join(temp_dir, *old_module.split("."))
139
+ os.makedirs(old_module_dir, exist_ok=True)
140
+ with open(os.path.join(old_module_dir, "workflow.py"), "w") as f:
141
+ f.write("# test workflow")
142
+
143
+ runner = CliRunner()
144
+ result = runner.invoke(main, ["workflows", "move", old_module, new_module])
145
+
146
+ assert result.exit_code == 0
147
+
148
+ config = load_vellum_cli_config()
149
+ workflow_config = next((w for w in config.workflows if w.module == new_module), None)
150
+ assert workflow_config is not None
151
+ assert workflow_config.workflow_sandbox_id == mock_module.workflow_sandbox_id
152
+ assert workflow_config.container_image_name == "test-image"
153
+ assert workflow_config.container_image_tag == "v1.0"
154
+ assert workflow_config.ignore == "sandbox.py"
@@ -56,6 +56,7 @@ class StateValueDisplay:
56
56
  @dataclass
57
57
  class EdgeDisplay:
58
58
  id: UUID
59
+ z_index: Optional[int] = None
59
60
 
60
61
 
61
62
  @dataclass
@@ -17,6 +17,7 @@ class NodeDisplayComment(UniversalBaseModel):
17
17
 
18
18
  class NodeDisplayData(UniversalBaseModel):
19
19
  position: NodeDisplayPosition = Field(default_factory=NodeDisplayPosition)
20
+ z_index: Optional[int] = None
20
21
  width: Optional[int] = None
21
22
  height: Optional[int] = None
22
23
  comment: Optional[NodeDisplayComment] = None
@@ -431,6 +431,7 @@ class BaseNodeDisplay(Generic[NodeType], metaclass=BaseNodeDisplayMeta):
431
431
  )
432
432
  return NodeDisplayData(
433
433
  position=explicit_value.position,
434
+ z_index=explicit_value.z_index,
434
435
  width=explicit_value.width,
435
436
  height=explicit_value.height,
436
437
  comment=comment,