vellum-ai 0.12.7__py3-none-any.whl → 0.12.9__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- vellum/client/core/client_wrapper.py +1 -1
- vellum/evaluations/resources.py +2 -2
- vellum/prompts/__init__.py +0 -0
- vellum/prompts/blocks/__init__.py +0 -0
- vellum/prompts/blocks/compilation.py +190 -0
- vellum/prompts/blocks/exceptions.py +2 -0
- vellum/prompts/blocks/tests/__init__.py +0 -0
- vellum/prompts/blocks/tests/test_compilation.py +110 -0
- vellum/prompts/blocks/types.py +36 -0
- vellum/utils/__init__.py +0 -0
- vellum/utils/templating/__init__.py +0 -0
- vellum/utils/templating/constants.py +28 -0
- vellum/{workflows/nodes/core/templating_node → utils/templating}/render.py +1 -1
- vellum/workflows/nodes/bases/__init__.py +0 -2
- vellum/workflows/nodes/bases/base.py +2 -6
- vellum/workflows/nodes/core/inline_subworkflow_node/node.py +13 -7
- vellum/workflows/nodes/core/inline_subworkflow_node/tests/__init__.py +0 -0
- vellum/workflows/nodes/core/inline_subworkflow_node/tests/test_node.py +41 -0
- vellum/workflows/nodes/core/map_node/node.py +1 -1
- vellum/workflows/nodes/core/templating_node/node.py +12 -31
- vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py +66 -0
- vellum/workflows/nodes/core/try_node/node.py +1 -3
- vellum/workflows/nodes/core/try_node/tests/test_node.py +1 -1
- vellum/workflows/nodes/displayable/bases/api_node/node.py +2 -2
- vellum/workflows/nodes/displayable/bases/search_node.py +5 -2
- vellum/workflows/nodes/displayable/subworkflow_deployment_node/node.py +4 -2
- vellum/workflows/nodes/experimental/README.md +6 -0
- vellum/workflows/nodes/experimental/__init__.py +0 -0
- vellum/workflows/nodes/experimental/openai_chat_completion_node/__init__.py +5 -0
- vellum/workflows/nodes/experimental/openai_chat_completion_node/node.py +260 -0
- vellum/workflows/sandbox.py +7 -5
- vellum/workflows/state/context.py +5 -4
- vellum/workflows/tests/test_sandbox.py +2 -2
- vellum/workflows/utils/tests/test_vellum_variables.py +3 -0
- vellum/workflows/utils/vellum_variables.py +5 -4
- vellum/workflows/workflows/base.py +5 -2
- {vellum_ai-0.12.7.dist-info → vellum_ai-0.12.9.dist-info}/METADATA +2 -1
- {vellum_ai-0.12.7.dist-info → vellum_ai-0.12.9.dist-info}/RECORD +48 -33
- vellum_cli/tests/test_push.py +1 -1
- vellum_ee/workflows/display/nodes/vellum/inline_subworkflow_node.py +6 -1
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_templating_node_serialization.py +207 -0
- vellum/workflows/nodes/bases/base_subworkflow_node/__init__.py +0 -5
- vellum/workflows/nodes/bases/base_subworkflow_node/node.py +0 -10
- /vellum/{workflows/nodes/core/templating_node → utils/templating}/custom_filters.py +0 -0
- /vellum/{workflows/nodes/core/templating_node → utils/templating}/exceptions.py +0 -0
- /vellum/{evaluations/utils → utils}/typing.py +0 -0
- /vellum/{evaluations/utils → utils}/uuid.py +0 -0
- {vellum_ai-0.12.7.dist-info → vellum_ai-0.12.9.dist-info}/LICENSE +0 -0
- {vellum_ai-0.12.7.dist-info → vellum_ai-0.12.9.dist-info}/WHEEL +0 -0
- {vellum_ai-0.12.7.dist-info → vellum_ai-0.12.9.dist-info}/entry_points.txt +0 -0
@@ -12,7 +12,7 @@ vellum_cli/tests/conftest.py,sha256=eFGwBxib3Nki830lIFintB0b6r4x8T_KMnmzhlTY5x0,
|
|
12
12
|
vellum_cli/tests/test_config.py,sha256=uvKGDc8BoVyT9_H0Z-g8469zVxomn6Oi3Zj-vK7O_wU,2631
|
13
13
|
vellum_cli/tests/test_main.py,sha256=qDZG-aQauPwBwM6A2DIu1494n47v3pL28XakTbLGZ-k,272
|
14
14
|
vellum_cli/tests/test_pull.py,sha256=Bnf21VjfiRb_j495idz5N8afucagtiktNCtVMvU8tGs,18977
|
15
|
-
vellum_cli/tests/test_push.py,sha256=
|
15
|
+
vellum_cli/tests/test_push.py,sha256=NpwGXuZSzrR7B6hBO1UF9O8im13_LlpSqncVSdzYDiQ,5812
|
16
16
|
vellum_ee/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
17
|
vellum_ee/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
18
18
|
vellum_ee/workflows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -34,7 +34,7 @@ vellum_ee/workflows/display/nodes/vellum/error_node.py,sha256=ygTjSjYDI4DtkxADWu
|
|
34
34
|
vellum_ee/workflows/display/nodes/vellum/final_output_node.py,sha256=t5iJQVoRT5g-v2IiUb4kFYdvUVKch0zn27016pzDZoo,2761
|
35
35
|
vellum_ee/workflows/display/nodes/vellum/guardrail_node.py,sha256=3TJvHX_Uuf_gr94VkYc_zmNH8I5p71ChIeoAbJZ3ddY,2158
|
36
36
|
vellum_ee/workflows/display/nodes/vellum/inline_prompt_node.py,sha256=DYhxHgFT06CNCpovO4Z-wFPqCjFKxyl89ygFs8AucRQ,7189
|
37
|
-
vellum_ee/workflows/display/nodes/vellum/inline_subworkflow_node.py,sha256=
|
37
|
+
vellum_ee/workflows/display/nodes/vellum/inline_subworkflow_node.py,sha256=IqPQdlxLdaMirgDbOSxq17d8bolqqjjRPy4t3YCBhmc,5028
|
38
38
|
vellum_ee/workflows/display/nodes/vellum/map_node.py,sha256=AqUlItgSZij12qRKguKVmDbbaLuDy3Cdom5uOlJPqrc,3640
|
39
39
|
vellum_ee/workflows/display/nodes/vellum/merge_node.py,sha256=jzO63B9KiEAncnBqmz2ZTcxjmEHozMEe7WnfpcpsQYg,3195
|
40
40
|
vellum_ee/workflows/display/nodes/vellum/note_node.py,sha256=9VpC3h0RYOxJuRbjDwidBYlLKakkmlEnDMBh2C7lHcY,1107
|
@@ -60,6 +60,7 @@ vellum_ee/workflows/display/tests/workflow_serialization/test_basic_merge_node_s
|
|
60
60
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_prompt_deployment_serialization.py,sha256=NkpgaTbu6nLr3iwgsSNtiHyiNDCUaFakd1JaoW6CC6Y,9489
|
61
61
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_search_node_serialization.py,sha256=9R6ELHBn9tsp3cy15q1qp1OByyCxFOVdrM67EwCYY50,12984
|
62
62
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_subworkflow_deployment_serialization.py,sha256=8bz0vm_EyQKSjnwS5vqqgnjE9ygvm-CaPKcwCfeOrlo,12704
|
63
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_templating_node_serialization.py,sha256=6LrGPS7e9CWpjFq2hpliSzP9kDpZ9KqvBNlNO3sq8cs,8063
|
63
64
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_terminal_node_serialization.py,sha256=xG8nKA1iKXxUe1fnD2X6qm7cUGW14iq2P-L16zhcKC8,4271
|
64
65
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_serialization.py,sha256=1_02RbghUwhKMr8VtRaPjHOXAX59hgWw1rJ2EDyKs-E,2880
|
65
66
|
vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py,sha256=BGCgJ3WWiYK5fWJp_Yz-aWQPli5sIKOhLTVYfG9Tpq8,9177
|
@@ -76,7 +77,7 @@ vellum/client/README.md,sha256=JkCJjmMZl4jrPj46pkmL9dpK4gSzQQmP5I7z4aME4LY,4749
|
|
76
77
|
vellum/client/__init__.py,sha256=o4m7iRZWEV8rP3GkdaztHAjNmjxjWERlarviFoHzuKI,110927
|
77
78
|
vellum/client/core/__init__.py,sha256=SQ85PF84B9MuKnBwHNHWemSGuy-g_515gFYNFhvEE0I,1438
|
78
79
|
vellum/client/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
|
79
|
-
vellum/client/core/client_wrapper.py,sha256=
|
80
|
+
vellum/client/core/client_wrapper.py,sha256=W6xaTM0O9LGmf_593EW5mnu33zCfMxGoWxp7zMTtbok,1868
|
80
81
|
vellum/client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
81
82
|
vellum/client/core/file.py,sha256=X9IbmkZmB2bB_DpmZAO3crWdXagOakAyn6UCOCImCPg,2322
|
82
83
|
vellum/client/core/http_client.py,sha256=R0pQpCppnEtxccGvXl4uJ76s7ro_65Fo_erlNNLp_AI,19228
|
@@ -649,17 +650,22 @@ vellum/errors/not_found_error.py,sha256=gC71YBdPyHR46l3RNTs0v9taVvAY0gWRFrcKpKzb
|
|
649
650
|
vellum/evaluations/__init__.py,sha256=hNsLoHSykqXDJP-MwFvu2lExImxo9KEyEJjt_fdAzpE,77
|
650
651
|
vellum/evaluations/constants.py,sha256=Vteml4_csZsMgo_q3-71E3JRCAoN6308TXLu5nfLhmU,116
|
651
652
|
vellum/evaluations/exceptions.py,sha256=6Xacoyv43fJvVf6Dt6Io5a-f9vF12Tx51jzsQRNSqhY,56
|
652
|
-
vellum/evaluations/resources.py,sha256=
|
653
|
+
vellum/evaluations/resources.py,sha256=7xS4eYeRLLz44KLMDL0wwIY80wMy2carFREB85k_Avk,12664
|
653
654
|
vellum/evaluations/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
654
655
|
vellum/evaluations/utils/env.py,sha256=Xj_nxsoU5ox06EOTjRopR4lrigQI6Le6qbWGltYoEGU,276
|
655
656
|
vellum/evaluations/utils/exceptions.py,sha256=dXMAkzqbHV_AP5FjjbegPlfUE0zQDlpA3qOsoOJUxfg,49
|
656
657
|
vellum/evaluations/utils/paginator.py,sha256=rEED_BJAXAM6tM1yMwHePNzszjq_tTq4NbQvi1jWQ_Q,697
|
657
|
-
vellum/evaluations/utils/typing.py,sha256=wx_daFqD69cYkuJTVnvNrpjhqC3uuhbnyJ9_bIwC9OU,327
|
658
|
-
vellum/evaluations/utils/uuid.py,sha256=Ch6wWRgwICxLxJCTl5iE3EdRlZj2zADR-zUMUtjcMWM,214
|
659
658
|
vellum/plugins/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
660
659
|
vellum/plugins/pydantic.py,sha256=EbI0pJMhUS9rLPSkzmAELfnCHrWCJzOrU06T8ommwdw,2334
|
661
660
|
vellum/plugins/utils.py,sha256=U9ZY9KdE3RRvbcG01hXxu9CvfJD6Fo7nJDgcHjQn0FI,606
|
662
661
|
vellum/plugins/vellum_mypy.py,sha256=VC15EzjTsXOb9uF1bky4rcxePP-0epMVmCsLB2z4Dh8,24816
|
662
|
+
vellum/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
663
|
+
vellum/prompts/blocks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
664
|
+
vellum/prompts/blocks/compilation.py,sha256=GVxV0iaVp72RCNMlLtUasfg25jBjbeEu3u97QUSbrQo,7506
|
665
|
+
vellum/prompts/blocks/exceptions.py,sha256=vmk5PV6Vyw9nKjZYQDUDW0LH8MfQNIgFvFb_mFWdIRI,50
|
666
|
+
vellum/prompts/blocks/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
667
|
+
vellum/prompts/blocks/tests/test_compilation.py,sha256=0DhMoc4huHR6YnNL-0aBLmWSyUfw2BpRq_gEdKsQmAc,3693
|
668
|
+
vellum/prompts/blocks/types.py,sha256=6aSJQco-5kKeadfKVVXF_SrQPlIJgMYVNc-C7so1sY8,975
|
663
669
|
vellum/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
664
670
|
vellum/resources/__init__.py,sha256=sQWK7g_Z4EM7pa7fy6vy3d_DMdTJ4wVcozBn3Lx4Qpo,141
|
665
671
|
vellum/resources/ad_hoc/__init__.py,sha256=UD01D9nS_M7sRKmMbEg4Tv9SlfFj3cWahVxwUEaSLAY,148
|
@@ -1197,6 +1203,14 @@ vellum/types/workflow_result_event_output_data_search_results.py,sha256=UNfCHLQ0
|
|
1197
1203
|
vellum/types/workflow_result_event_output_data_string.py,sha256=rHEVbN0nyf-xoDoSIUEKlUKh6DDoguer4w0iN18JQ2I,178
|
1198
1204
|
vellum/types/workflow_stream_event.py,sha256=PjHGgN0eJm5w-5FJ6__ASC1FU94Gsav_ko5JWkpVvK8,159
|
1199
1205
|
vellum/types/workspace_secret_read.py,sha256=Z6QNXHxVHRdrLXSI31KxngePRwJTVoJYMXVbtPQwrxs,159
|
1206
|
+
vellum/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1207
|
+
vellum/utils/templating/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1208
|
+
vellum/utils/templating/constants.py,sha256=XTNmDsKa7byjw4GMZmzx2dUeYUTeMLZrPgRHcc80Kvc,613
|
1209
|
+
vellum/utils/templating/custom_filters.py,sha256=Q0DahYRHP4KfaUXDt9XxN-DFLBrAxlv90yaVqxScoUw,264
|
1210
|
+
vellum/utils/templating/exceptions.py,sha256=cDp140PP4OnInW4qAvg3KqiSiF70C71UyEAKRBR1Abo,46
|
1211
|
+
vellum/utils/templating/render.py,sha256=0vgkwhu2A6o64aT4fUdTSLFCEMbeRjAKAuvv2k2LYGY,1772
|
1212
|
+
vellum/utils/typing.py,sha256=wx_daFqD69cYkuJTVnvNrpjhqC3uuhbnyJ9_bIwC9OU,327
|
1213
|
+
vellum/utils/uuid.py,sha256=Ch6wWRgwICxLxJCTl5iE3EdRlZj2zADR-zUMUtjcMWM,214
|
1200
1214
|
vellum/version.py,sha256=jq-1PlAYxN9AXuaZqbYk9ak27SgE2lw9Ia5gx1b1gVI,76
|
1201
1215
|
vellum/workflows/README.md,sha256=MLNm-ihc0ao6I8gwwOhXQQBf0jOf-EsA9C519ALYI1o,3610
|
1202
1216
|
vellum/workflows/__init__.py,sha256=CssPsbNvN6rDhoLuqpEv7MMKGa51vE6dvAh6U31Pcio,71
|
@@ -1258,19 +1272,19 @@ vellum/workflows/inputs/__init__.py,sha256=AbFEteIYEvCb14fM3EK7bhM-40-6s494rSlIh
|
|
1258
1272
|
vellum/workflows/inputs/base.py,sha256=1kMgr0WqCYdWUqgFvgSoAMw2067FAlgwhGXLgbIOrLY,2391
|
1259
1273
|
vellum/workflows/logging.py,sha256=_a217XogktV4Ncz6xKFz7WfYmZAzkfVRVuC0rWob8ls,437
|
1260
1274
|
vellum/workflows/nodes/__init__.py,sha256=aVdQVv7Y3Ro3JlqXGpxwaU2zrI06plDHD2aumH5WUIs,1157
|
1261
|
-
vellum/workflows/nodes/bases/__init__.py,sha256=
|
1262
|
-
vellum/workflows/nodes/bases/base.py,sha256=
|
1263
|
-
vellum/workflows/nodes/bases/base_subworkflow_node/__init__.py,sha256=0nkHQiFC4IpA1ZGx60XG0BLUWF6hwUpgqmS3ZrlFGhg,80
|
1264
|
-
vellum/workflows/nodes/bases/base_subworkflow_node/node.py,sha256=vC0gUBQewAUNtP3i2G0-LUpE_kY-r_ijBD_tS1XkQ1E,383
|
1275
|
+
vellum/workflows/nodes/bases/__init__.py,sha256=cniHuz_RXdJ4TQgD8CBzoiKDiPxg62ErdVpCbWICX64,58
|
1276
|
+
vellum/workflows/nodes/bases/base.py,sha256=_Ms_Yov6sIsgWnKb0OWnOG7liqgjFSat0y1OIX36hFA,14235
|
1265
1277
|
vellum/workflows/nodes/bases/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1266
1278
|
vellum/workflows/nodes/bases/tests/test_base_node.py,sha256=ghpLm_ljNBxWs43GlvIId47hOVwKU50XpvZxmlg6_8g,3439
|
1267
1279
|
vellum/workflows/nodes/core/__init__.py,sha256=5zDMCmyt1v0HTJzlUBwq3U9L825yZGZhT9JL18-mRR4,455
|
1268
1280
|
vellum/workflows/nodes/core/error_node/__init__.py,sha256=g7RRnlHhqu4qByfLjBwCunmgGA8dI5gNsjS3h6TwlSI,60
|
1269
1281
|
vellum/workflows/nodes/core/error_node/node.py,sha256=MFHU5vITYSK-L9CuMZ49In2ZeNLWnhZD0f8r5dWvb5Y,1270
|
1270
1282
|
vellum/workflows/nodes/core/inline_subworkflow_node/__init__.py,sha256=nKNEH1QTl-1PcvmYoqSWEl0-t6gAur8GLTXHzklRQfM,84
|
1271
|
-
vellum/workflows/nodes/core/inline_subworkflow_node/node.py,sha256=
|
1283
|
+
vellum/workflows/nodes/core/inline_subworkflow_node/node.py,sha256=btscTP3T5VzvuNpbzaUlRZ1ahMkTox0Vyv17tI7YFUw,3467
|
1284
|
+
vellum/workflows/nodes/core/inline_subworkflow_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1285
|
+
vellum/workflows/nodes/core/inline_subworkflow_node/tests/test_node.py,sha256=99LLPgHMqohGL-G4KqOSjeVlDR_FH8Rv1gtRii85MC4,1143
|
1272
1286
|
vellum/workflows/nodes/core/map_node/__init__.py,sha256=MXpZYmGfhsMJHqqlpd64WiJRtbAtAMQz-_3fCU_cLV0,56
|
1273
|
-
vellum/workflows/nodes/core/map_node/node.py,sha256=
|
1287
|
+
vellum/workflows/nodes/core/map_node/node.py,sha256=5Bqi0co1T9Ex_sTlyTDMGahwsUWd9NCO0vTY6UqsZeQ,7286
|
1274
1288
|
vellum/workflows/nodes/core/map_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1275
1289
|
vellum/workflows/nodes/core/map_node/tests/test_node.py,sha256=RHSZs7t6mW3UWvRrXnHZqaXVdRT2ZquOK_YHJ-gzXsU,1871
|
1276
1290
|
vellum/workflows/nodes/core/retry_node/__init__.py,sha256=lN2bIy5a3Uzhs_FYCrooADyYU6ZGShtvLKFWpelwPvo,60
|
@@ -1278,28 +1292,25 @@ vellum/workflows/nodes/core/retry_node/node.py,sha256=IjNcpzFmHyBUjOHEoULLbKf85B
|
|
1278
1292
|
vellum/workflows/nodes/core/retry_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1279
1293
|
vellum/workflows/nodes/core/retry_node/tests/test_node.py,sha256=QXTnHwmJHISxXjvZMeuuEo0iVugVMJyaJoggI8yKXfI,3132
|
1280
1294
|
vellum/workflows/nodes/core/templating_node/__init__.py,sha256=GmyuYo81_A1_Bz6id69ozVFS6FKiuDsZTiA3I6MaL2U,70
|
1281
|
-
vellum/workflows/nodes/core/templating_node/
|
1282
|
-
vellum/workflows/nodes/core/templating_node/
|
1283
|
-
vellum/workflows/nodes/core/templating_node/node.py,sha256=Q5U5lAW1nhGFJPc94Gxnq1s5RWrbOo7G_AY4n-ABmGg,4504
|
1284
|
-
vellum/workflows/nodes/core/templating_node/render.py,sha256=OpJp0NAH6qcEL6K9lxR0qjpFb75TYNttJR5iCos8tmg,1792
|
1285
|
-
vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py,sha256=0BtXeSix7KGIuKzlPFTMLATpNnFPhut1UV_srGptkt0,1120
|
1295
|
+
vellum/workflows/nodes/core/templating_node/node.py,sha256=N-NOBd-UY91qO9orCcW4KEbhNvDQivZPA-PCxs-M0RM,4204
|
1296
|
+
vellum/workflows/nodes/core/templating_node/tests/test_templating_node.py,sha256=nW_kyJ9RAqz45_kJE_rlhOOvbV4OO3hecP-P-ydQpkw,2845
|
1286
1297
|
vellum/workflows/nodes/core/try_node/__init__.py,sha256=JVD4DrldTIqFQQFrubs9KtWCCc0YCAc7Fzol5ZWIWeM,56
|
1287
|
-
vellum/workflows/nodes/core/try_node/node.py,sha256=
|
1298
|
+
vellum/workflows/nodes/core/try_node/node.py,sha256=e4gavIJ9AHM0JCKOrBIeKC4aHxmJK3j17XTBaipqfpc,6637
|
1288
1299
|
vellum/workflows/nodes/core/try_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1289
|
-
vellum/workflows/nodes/core/try_node/tests/test_node.py,sha256=
|
1300
|
+
vellum/workflows/nodes/core/try_node/tests/test_node.py,sha256=Wc2kLl-MkffsBxl3IiFaqLd16e2Iosxhk7qBnojPvQg,4092
|
1290
1301
|
vellum/workflows/nodes/displayable/__init__.py,sha256=6F_4DlSwvHuilWnIalp8iDjjDXl0Nmz4QzJV2PYe5RI,1023
|
1291
1302
|
vellum/workflows/nodes/displayable/api_node/__init__.py,sha256=MoxdQSnidIj1Nf_d-hTxlOxcZXaZnsWFDbE-PkTK24o,56
|
1292
1303
|
vellum/workflows/nodes/displayable/api_node/node.py,sha256=ehvJNkI-L_WLn8pszCaRkQuhRDgioCLaX6TT72KM_9E,2111
|
1293
1304
|
vellum/workflows/nodes/displayable/bases/__init__.py,sha256=0mWIx3qUrzllV7jqt7wN03vWGMuI1WrrLZeMLT2Cl2c,304
|
1294
1305
|
vellum/workflows/nodes/displayable/bases/api_node/__init__.py,sha256=1jwx4WC358CLA1jgzl_UD-rZmdMm2v9Mps39ndwCD7U,64
|
1295
|
-
vellum/workflows/nodes/displayable/bases/api_node/node.py,sha256=
|
1306
|
+
vellum/workflows/nodes/displayable/bases/api_node/node.py,sha256=ywPwCxDesgnE86Wjyf2ZyG2Dr2O7xW8D4tPHZB5Se_s,2477
|
1296
1307
|
vellum/workflows/nodes/displayable/bases/base_prompt_node/__init__.py,sha256=Org3xTvgp1pA0uUXFfnJr29D3HzCey2lEdYF4zbIUgo,70
|
1297
1308
|
vellum/workflows/nodes/displayable/bases/base_prompt_node/node.py,sha256=EvylK1rGKpd4iiooEW9O5A9Q8DMTtBwETe_GtQT8M-E,2139
|
1298
1309
|
vellum/workflows/nodes/displayable/bases/inline_prompt_node/__init__.py,sha256=Hl35IAoepRpE-j4cALaXVJIYTYOF3qszyVbxTj4kS1s,82
|
1299
1310
|
vellum/workflows/nodes/displayable/bases/inline_prompt_node/constants.py,sha256=fnjiRWLoRlC4Puo5oQcpZD5Hd-EesxsAo9l5tGAkpZQ,270
|
1300
1311
|
vellum/workflows/nodes/displayable/bases/inline_prompt_node/node.py,sha256=fypgmZHgaDtGqSBC8rjYiyryJ0H58LPt_CafLfAprO0,6341
|
1301
1312
|
vellum/workflows/nodes/displayable/bases/prompt_deployment_node.py,sha256=zdpNJoawB5PedsCCfgOGDDoWuif0jNtlV-K9sFL6cNQ,4968
|
1302
|
-
vellum/workflows/nodes/displayable/bases/search_node.py,sha256=
|
1313
|
+
vellum/workflows/nodes/displayable/bases/search_node.py,sha256=Gq6CqvTxg4TPm7OBbAA9wnuSwtiKoxFINjMHX-_oNdE,3687
|
1303
1314
|
vellum/workflows/nodes/displayable/code_execution_node/__init__.py,sha256=0FLWMMktpzSnmBMizQglBpcPrP80fzVsoJwJgf822Cg,76
|
1304
1315
|
vellum/workflows/nodes/displayable/code_execution_node/node.py,sha256=JgyTgZRSb-gSXL4ccHn4VkPcPZFOkVK5ohPazPqSWFw,8652
|
1305
1316
|
vellum/workflows/nodes/displayable/code_execution_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -1326,11 +1337,15 @@ vellum/workflows/nodes/displayable/prompt_deployment_node/node.py,sha256=cpOrqQQ
|
|
1326
1337
|
vellum/workflows/nodes/displayable/search_node/__init__.py,sha256=hpBpvbrDYf43DElRZFLzieSn8weXiwNiiNOJurERQbs,62
|
1327
1338
|
vellum/workflows/nodes/displayable/search_node/node.py,sha256=yhFWulbNmSQoDAwtTSGD4AtKmBbcykezRGRG16xga_0,1311
|
1328
1339
|
vellum/workflows/nodes/displayable/subworkflow_deployment_node/__init__.py,sha256=9yYM6001YZeqI1VOk1QuEM_yrffk_EdsO7qaPzINKds,92
|
1329
|
-
vellum/workflows/nodes/displayable/subworkflow_deployment_node/node.py,sha256=
|
1340
|
+
vellum/workflows/nodes/displayable/subworkflow_deployment_node/node.py,sha256=FgS1ZMnIBliqEMNKX2ChE80bw4IVHEQ6IGiTDvF0RZw,7226
|
1330
1341
|
vellum/workflows/nodes/displayable/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1331
1342
|
vellum/workflows/nodes/displayable/tests/test_inline_text_prompt_node.py,sha256=UI_RMmXn9qwB-StnFPvkDd9FctBQAg43wrfouqvPepk,4701
|
1332
1343
|
vellum/workflows/nodes/displayable/tests/test_search_node_wth_text_output.py,sha256=4CMwDtXwTaEvFfDpA6j2iLqc7S6IICSkvVZOobEpeps,6954
|
1333
1344
|
vellum/workflows/nodes/displayable/tests/test_text_prompt_deployment_node.py,sha256=KqKJtJ0vuNoPuUPMdILmBTt4a2fBBxxun-nmOI7T8jo,2585
|
1345
|
+
vellum/workflows/nodes/experimental/README.md,sha256=eF6DfIL8t-HbF9-mcofOMymKrraiBHDLKTlnBa51ZiE,284
|
1346
|
+
vellum/workflows/nodes/experimental/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1347
|
+
vellum/workflows/nodes/experimental/openai_chat_completion_node/__init__.py,sha256=lsyD9laR9p7kx5-BXGH2gUTM242UhKy8SMV0SR6S2iE,90
|
1348
|
+
vellum/workflows/nodes/experimental/openai_chat_completion_node/node.py,sha256=1EGeiaT-Zoo6pttQFKKBcdf3dmhAbjKGaErYD5FFwlc,10185
|
1334
1349
|
vellum/workflows/nodes/utils.py,sha256=EZt7CzJmgQBR_GWFpZr8d-oaoti3tolTd2Cv9wm7dKo,1087
|
1335
1350
|
vellum/workflows/outputs/__init__.py,sha256=AyZ4pRh_ACQIGvkf0byJO46EDnSix1ZCAXfvh-ms1QE,94
|
1336
1351
|
vellum/workflows/outputs/base.py,sha256=a7W6rNSDSawwGAXYjNTF2iHb9lnZu7WFSOagZIyy__k,7976
|
@@ -1353,16 +1368,16 @@ vellum/workflows/resolvers/__init__.py,sha256=eH6hTvZO4IciDaf_cf7aM2vs-DkBDyJPyc
|
|
1353
1368
|
vellum/workflows/resolvers/base.py,sha256=WHra9LRtlTuB1jmuNqkfVE2JUgB61Cyntn8f0b0WZg4,411
|
1354
1369
|
vellum/workflows/runner/__init__.py,sha256=i1iG5sAhtpdsrlvwgH6B-m49JsINkiWyPWs8vyT-bqM,72
|
1355
1370
|
vellum/workflows/runner/runner.py,sha256=RXnLEmSJFbp0u4vKF7rvD2fscuYfcRYkspIJINnvFAI,27607
|
1356
|
-
vellum/workflows/sandbox.py,sha256=
|
1371
|
+
vellum/workflows/sandbox.py,sha256=GVJzVjMuYzOBnSrboB0_6MMRZWBluAyQ2o7syeaeBd0,2235
|
1357
1372
|
vellum/workflows/state/__init__.py,sha256=yUUdR-_Vl7UiixNDYQZ-GEM_kJI9dnOia75TtuNEsnE,60
|
1358
1373
|
vellum/workflows/state/base.py,sha256=jpSzF1OQd3-fqi6dMGlNsQl-7JnJxCdzWIigmX8Wz-I,14425
|
1359
|
-
vellum/workflows/state/context.py,sha256=
|
1374
|
+
vellum/workflows/state/context.py,sha256=_NeGQpYo8yNuh0Tfh3OvcB_bG_-GC8b3ZLLl83Pf8-I,1279
|
1360
1375
|
vellum/workflows/state/encoder.py,sha256=kRrqwD0vFCiSRZR3rg8Sjkh8sDEerQQhlvmdSYQAOl8,1741
|
1361
1376
|
vellum/workflows/state/store.py,sha256=VYGBQgN1bpd1as5eGiouV_7scg8QsRs4_1aqZAGIsRQ,793
|
1362
1377
|
vellum/workflows/state/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1363
1378
|
vellum/workflows/state/tests/test_state.py,sha256=BQjcdREIK1MPuGhivRUgpynVJLftjEpH9RG3cRKxQEY,3310
|
1364
1379
|
vellum/workflows/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1365
|
-
vellum/workflows/tests/test_sandbox.py,sha256=
|
1380
|
+
vellum/workflows/tests/test_sandbox.py,sha256=JKwaluI-lODQo7Ek9sjDstjL_WTdSqUlVik6ZVTfVOA,1826
|
1366
1381
|
vellum/workflows/types/__init__.py,sha256=KxUTMBGzuRCfiMqzzsykOeVvrrkaZmTTo1a7SLu8gRM,68
|
1367
1382
|
vellum/workflows/types/core.py,sha256=D2NcSBwGgWj_mtXZqe3KnEQcb5qd5HzqAwnxwmlCfCw,899
|
1368
1383
|
vellum/workflows/types/generics.py,sha256=ZkfoRhWs042i5IjA99v2wIhmh1u-Wieo3LzosgGWJVk,600
|
@@ -1377,15 +1392,15 @@ vellum/workflows/utils/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NM
|
|
1377
1392
|
vellum/workflows/utils/tests/test_functions.py,sha256=ytdruS55aO2egsb5sAv8_9jf68L1cJoZu2uKV2iamrg,8083
|
1378
1393
|
vellum/workflows/utils/tests/test_names.py,sha256=aOqpyvMsOEK_9mg_-yaNxQDW7QQfwqsYs37PseyLhxw,402
|
1379
1394
|
vellum/workflows/utils/tests/test_uuids.py,sha256=i77ABQ0M3S-aFLzDXHJq_yr5FPkJEWCMBn1HJ3DObrE,437
|
1380
|
-
vellum/workflows/utils/tests/test_vellum_variables.py,sha256=
|
1395
|
+
vellum/workflows/utils/tests/test_vellum_variables.py,sha256=6H-BpmbIEmVRO75QQ3Rfy4bEUMMP2qwGzx2Gp1uXbfw,879
|
1381
1396
|
vellum/workflows/utils/uuids.py,sha256=DFzPv9RCvsKhvdTEIQyfSek2A31D6S_QcmeLPbgrgTY,739
|
1382
|
-
vellum/workflows/utils/vellum_variables.py,sha256=
|
1397
|
+
vellum/workflows/utils/vellum_variables.py,sha256=g5xHYB8etfHE32ek19nP6Anf8NyjhmUtOwO2KmQ5xZU,3111
|
1383
1398
|
vellum/workflows/vellum_client.py,sha256=ODrq_TSl-drX2aezXegf7pizpWDVJuTXH-j6528t75s,683
|
1384
1399
|
vellum/workflows/workflows/__init__.py,sha256=KY45TqvavCCvXIkyCFMEc0dc6jTMOUci93U2DUrlZYc,66
|
1385
|
-
vellum/workflows/workflows/base.py,sha256=
|
1400
|
+
vellum/workflows/workflows/base.py,sha256=FxK6ZNrQtuqcgZxWXy4_ole1LeeTiZI8VlxavRd3VbA,17119
|
1386
1401
|
vellum/workflows/workflows/event_filters.py,sha256=GSxIgwrX26a1Smfd-6yss2abGCnadGsrSZGa7t7LpJA,2008
|
1387
|
-
vellum_ai-0.12.
|
1388
|
-
vellum_ai-0.12.
|
1389
|
-
vellum_ai-0.12.
|
1390
|
-
vellum_ai-0.12.
|
1391
|
-
vellum_ai-0.12.
|
1402
|
+
vellum_ai-0.12.9.dist-info/LICENSE,sha256=hOypcdt481qGNISA784bnAGWAE6tyIf9gc2E78mYC3E,1574
|
1403
|
+
vellum_ai-0.12.9.dist-info/METADATA,sha256=XnLz57ZnuFRq6HV_sXjLRLt2cBE7jKWY0HoCKn7G1Fs,5160
|
1404
|
+
vellum_ai-0.12.9.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
1405
|
+
vellum_ai-0.12.9.dist-info/entry_points.txt,sha256=HCH4yc_V3J_nDv3qJzZ_nYS8llCHZViCDP1ejgCc5Ak,42
|
1406
|
+
vellum_ai-0.12.9.dist-info/RECORD,,
|
vellum_cli/tests/test_push.py
CHANGED
@@ -8,7 +8,7 @@ from uuid import uuid4
|
|
8
8
|
from click.testing import CliRunner
|
9
9
|
|
10
10
|
from vellum.client.types.workflow_push_response import WorkflowPushResponse
|
11
|
-
from vellum.
|
11
|
+
from vellum.utils.uuid import is_valid_uuid
|
12
12
|
from vellum_cli import main as cli_main
|
13
13
|
|
14
14
|
|
@@ -61,6 +61,11 @@ class BaseInlineSubworkflowNodeDisplay(
|
|
61
61
|
display_context: WorkflowDisplayContext,
|
62
62
|
) -> Tuple[List[NodeInput], List[VellumVariable]]:
|
63
63
|
subworkflow_inputs = raise_if_descriptor(node.subworkflow_inputs)
|
64
|
+
subworkflow_entries = (
|
65
|
+
[(variable_name, variable_value) for variable_name, variable_value in subworkflow_inputs.items()]
|
66
|
+
if isinstance(subworkflow_inputs, dict)
|
67
|
+
else [(variable_ref.name, variable_value) for variable_ref, variable_value in subworkflow_inputs]
|
68
|
+
)
|
64
69
|
node_inputs = [
|
65
70
|
create_node_input(
|
66
71
|
node_id=node_id,
|
@@ -69,7 +74,7 @@ class BaseInlineSubworkflowNodeDisplay(
|
|
69
74
|
display_context=display_context,
|
70
75
|
input_id=self.workflow_input_ids_by_name.get(variable_name),
|
71
76
|
)
|
72
|
-
for variable_name, variable_value in
|
77
|
+
for variable_name, variable_value in subworkflow_entries
|
73
78
|
]
|
74
79
|
node_inputs_by_key = {node_input.key: node_input for node_input in node_inputs}
|
75
80
|
workflow_inputs = [
|
vellum_ee/workflows/display/tests/workflow_serialization/test_basic_templating_node_serialization.py
ADDED
@@ -0,0 +1,207 @@
|
|
1
|
+
from deepdiff import DeepDiff
|
2
|
+
|
3
|
+
from vellum_ee.workflows.display.workflows import VellumWorkflowDisplay
|
4
|
+
from vellum_ee.workflows.display.workflows.get_vellum_workflow_display_class import get_workflow_display
|
5
|
+
|
6
|
+
from tests.workflows.basic_templating_node.workflow_with_json_input import BasicTemplatingNodeWorkflowWithJson
|
7
|
+
|
8
|
+
|
9
|
+
def test_serialize_workflow():
|
10
|
+
# GIVEN a Workflow that uses a vellum templating node",
|
11
|
+
|
12
|
+
# WHEN we serialize it
|
13
|
+
workflow_display = get_workflow_display(
|
14
|
+
base_display_class=VellumWorkflowDisplay, workflow_class=BasicTemplatingNodeWorkflowWithJson
|
15
|
+
)
|
16
|
+
|
17
|
+
serialized_workflow: dict = workflow_display.serialize()
|
18
|
+
|
19
|
+
# THEN we should get a serialized representation of the Workflow
|
20
|
+
assert serialized_workflow.keys() == {
|
21
|
+
"workflow_raw_data",
|
22
|
+
"input_variables",
|
23
|
+
"output_variables",
|
24
|
+
}
|
25
|
+
|
26
|
+
# AND its input variables should be what we expect
|
27
|
+
input_variables = serialized_workflow["input_variables"]
|
28
|
+
assert len(input_variables) == 1
|
29
|
+
assert input_variables == [
|
30
|
+
{
|
31
|
+
"id": "f4435f88-703f-40e5-9197-d39b0e43ab72",
|
32
|
+
"key": "info",
|
33
|
+
"type": "JSON",
|
34
|
+
"default": None,
|
35
|
+
"required": True,
|
36
|
+
"extensions": {"color": None},
|
37
|
+
}
|
38
|
+
]
|
39
|
+
|
40
|
+
# AND its output variables should be what we expect
|
41
|
+
output_variables = serialized_workflow["output_variables"]
|
42
|
+
assert len(output_variables) == 1
|
43
|
+
assert not DeepDiff(
|
44
|
+
[{"id": "62ec9b08-6437-4f8d-bc20-983d317bc348", "key": "result", "type": "JSON"}],
|
45
|
+
output_variables,
|
46
|
+
ignore_order=True,
|
47
|
+
)
|
48
|
+
|
49
|
+
# AND its raw data should be what we expect
|
50
|
+
workflow_raw_data = serialized_workflow["workflow_raw_data"]
|
51
|
+
assert workflow_raw_data.keys() == {"edges", "nodes", "display_data", "definition"}
|
52
|
+
assert len(workflow_raw_data["edges"]) == 2
|
53
|
+
assert len(workflow_raw_data["nodes"]) == 3
|
54
|
+
|
55
|
+
# AND each node should be serialized correctly
|
56
|
+
entrypoint_node = workflow_raw_data["nodes"][0]
|
57
|
+
assert entrypoint_node == {
|
58
|
+
"id": "09579c0a-acbf-4e04-8724-2230a8aa6534",
|
59
|
+
"type": "ENTRYPOINT",
|
60
|
+
"inputs": [],
|
61
|
+
"data": {"label": "Entrypoint Node", "source_handle_id": "34069190-0942-4e0c-8700-b33b9dea4ea0"},
|
62
|
+
"display_data": {"position": {"x": 0.0, "y": 0.0}},
|
63
|
+
"definition": {"name": "BaseNode", "module": ["vellum", "workflows", "nodes", "bases", "base"], "bases": []},
|
64
|
+
}
|
65
|
+
|
66
|
+
templating_node = workflow_raw_data["nodes"][1]
|
67
|
+
assert not DeepDiff(
|
68
|
+
{
|
69
|
+
"id": "51cbe21d-0232-4362-bc54-5bc283297aa6",
|
70
|
+
"type": "TEMPLATING",
|
71
|
+
"inputs": [
|
72
|
+
{
|
73
|
+
"id": "7c775379-d589-4d79-b876-dcd224d72966",
|
74
|
+
"key": "template",
|
75
|
+
"value": {
|
76
|
+
"rules": [
|
77
|
+
{
|
78
|
+
"type": "CONSTANT_VALUE",
|
79
|
+
"data": {"type": "STRING", "value": "The meaning of {{ info }} is not known"},
|
80
|
+
}
|
81
|
+
],
|
82
|
+
"combinator": "OR",
|
83
|
+
},
|
84
|
+
},
|
85
|
+
{
|
86
|
+
"id": "bb712499-4265-4d71-bc14-0c3d8ca6a7de",
|
87
|
+
"key": "info",
|
88
|
+
"value": {
|
89
|
+
"rules": [
|
90
|
+
{
|
91
|
+
"type": "INPUT_VARIABLE",
|
92
|
+
"data": {"input_variable_id": "f4435f88-703f-40e5-9197-d39b0e43ab72"},
|
93
|
+
}
|
94
|
+
],
|
95
|
+
"combinator": "OR",
|
96
|
+
},
|
97
|
+
},
|
98
|
+
],
|
99
|
+
"data": {
|
100
|
+
"label": "Example Templating Node",
|
101
|
+
"output_id": "6834cae4-8173-4fa6-88f7-bc09d335bdd1",
|
102
|
+
"error_output_id": None,
|
103
|
+
"source_handle_id": "39317827-df43-4f5a-bfbc-20bffc839748",
|
104
|
+
"target_handle_id": "58427684-3848-498a-8299-c6b0fc70265d",
|
105
|
+
"template_node_input_id": "7c775379-d589-4d79-b876-dcd224d72966",
|
106
|
+
"output_type": "JSON",
|
107
|
+
},
|
108
|
+
"display_data": {"position": {"x": 0.0, "y": 0.0}},
|
109
|
+
"definition": {
|
110
|
+
"name": "ExampleTemplatingNode",
|
111
|
+
"module": ["tests", "workflows", "basic_templating_node", "workflow_with_json_input"],
|
112
|
+
"bases": [
|
113
|
+
{
|
114
|
+
"name": "TemplatingNode",
|
115
|
+
"module": ["vellum", "workflows", "nodes", "core", "templating_node", "node"],
|
116
|
+
}
|
117
|
+
],
|
118
|
+
},
|
119
|
+
},
|
120
|
+
templating_node,
|
121
|
+
)
|
122
|
+
|
123
|
+
final_output_node = workflow_raw_data["nodes"][-1]
|
124
|
+
assert not DeepDiff(
|
125
|
+
{
|
126
|
+
"id": "9f75228b-1d5b-4c30-a581-6087e6a1b738",
|
127
|
+
"type": "TERMINAL",
|
128
|
+
"data": {
|
129
|
+
"label": "Final Output",
|
130
|
+
"name": "result",
|
131
|
+
"target_handle_id": "16ba108e-61a8-4338-8a5b-4f1278d7fd7b",
|
132
|
+
"output_id": "62ec9b08-6437-4f8d-bc20-983d317bc348",
|
133
|
+
"output_type": "JSON",
|
134
|
+
"node_input_id": "310072db-6d07-4d29-8e5c-9c6909300925",
|
135
|
+
},
|
136
|
+
"inputs": [
|
137
|
+
{
|
138
|
+
"id": "310072db-6d07-4d29-8e5c-9c6909300925",
|
139
|
+
"key": "node_input",
|
140
|
+
"value": {
|
141
|
+
"rules": [
|
142
|
+
{
|
143
|
+
"type": "NODE_OUTPUT",
|
144
|
+
"data": {
|
145
|
+
"node_id": "51cbe21d-0232-4362-bc54-5bc283297aa6",
|
146
|
+
"output_id": "6834cae4-8173-4fa6-88f7-bc09d335bdd1",
|
147
|
+
},
|
148
|
+
}
|
149
|
+
],
|
150
|
+
"combinator": "OR",
|
151
|
+
},
|
152
|
+
}
|
153
|
+
],
|
154
|
+
"display_data": {"position": {"x": 0.0, "y": 0.0}},
|
155
|
+
"definition": {
|
156
|
+
"name": "FinalOutputNode",
|
157
|
+
"module": ["vellum", "workflows", "nodes", "displayable", "final_output_node", "node"],
|
158
|
+
"bases": [
|
159
|
+
{"name": "BaseNode", "module": ["vellum", "workflows", "nodes", "bases", "base"], "bases": []}
|
160
|
+
],
|
161
|
+
},
|
162
|
+
},
|
163
|
+
final_output_node,
|
164
|
+
ignore_order=True,
|
165
|
+
)
|
166
|
+
|
167
|
+
# AND each edge should be serialized correctly
|
168
|
+
serialized_edges = workflow_raw_data["edges"]
|
169
|
+
assert not DeepDiff(
|
170
|
+
[
|
171
|
+
{
|
172
|
+
"id": "9f753b40-68de-4186-838e-806a14853935",
|
173
|
+
"source_node_id": "09579c0a-acbf-4e04-8724-2230a8aa6534",
|
174
|
+
"source_handle_id": "34069190-0942-4e0c-8700-b33b9dea4ea0",
|
175
|
+
"target_node_id": "51cbe21d-0232-4362-bc54-5bc283297aa6",
|
176
|
+
"target_handle_id": "58427684-3848-498a-8299-c6b0fc70265d",
|
177
|
+
"type": "DEFAULT",
|
178
|
+
},
|
179
|
+
{
|
180
|
+
"id": "00cbff5c-5cce-4ef4-81b2-1a11d9b42597",
|
181
|
+
"source_node_id": "51cbe21d-0232-4362-bc54-5bc283297aa6",
|
182
|
+
"source_handle_id": "39317827-df43-4f5a-bfbc-20bffc839748",
|
183
|
+
"target_node_id": "9f75228b-1d5b-4c30-a581-6087e6a1b738",
|
184
|
+
"target_handle_id": "16ba108e-61a8-4338-8a5b-4f1278d7fd7b",
|
185
|
+
"type": "DEFAULT",
|
186
|
+
},
|
187
|
+
],
|
188
|
+
serialized_edges,
|
189
|
+
ignore_order=True,
|
190
|
+
)
|
191
|
+
|
192
|
+
# AND the display data should be what we expect
|
193
|
+
display_data = workflow_raw_data["display_data"]
|
194
|
+
assert display_data == {
|
195
|
+
"viewport": {
|
196
|
+
"x": 0.0,
|
197
|
+
"y": 0.0,
|
198
|
+
"zoom": 1.0,
|
199
|
+
}
|
200
|
+
}
|
201
|
+
|
202
|
+
# AND the definition should be what we expect
|
203
|
+
definition = workflow_raw_data["definition"]
|
204
|
+
assert definition == {
|
205
|
+
"name": "BasicTemplatingNodeWorkflowWithJson",
|
206
|
+
"module": ["tests", "workflows", "basic_templating_node", "workflow_with_json_input"],
|
207
|
+
}
|
@@ -1,10 +0,0 @@
|
|
1
|
-
from typing import ClassVar, Generic
|
2
|
-
|
3
|
-
from vellum.workflows.nodes.bases import BaseNode
|
4
|
-
from vellum.workflows.types.core import EntityInputsInterface
|
5
|
-
from vellum.workflows.types.generics import StateType
|
6
|
-
|
7
|
-
|
8
|
-
class BaseSubworkflowNode(BaseNode[StateType], Generic[StateType]):
|
9
|
-
# Inputs that are passed to the Subworkflow
|
10
|
-
subworkflow_inputs: ClassVar[EntityInputsInterface] = {}
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|