fastworkflow 2.15.9__tar.gz → 2.15.11__tar.gz

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.

Potentially problematic release.


This version of fastworkflow might be problematic. Click here for more details.

Files changed (178) hide show
  1. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/PKG-INFO +1 -1
  2. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/wildcard.py +7 -0
  3. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/intent_detection.py +2 -2
  4. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/parameter_extraction.py +15 -3
  5. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/chat_session.py +8 -1
  6. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/command_executor.py +13 -4
  7. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/find_user_id_by_email.py +6 -5
  8. fastworkflow-2.15.11/fastworkflow/utils/signatures.py +654 -0
  9. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/workflow.py +1 -5
  10. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/pyproject.toml +1 -1
  11. fastworkflow-2.15.9/fastworkflow/utils/signatures.py +0 -477
  12. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/LICENSE +0 -0
  13. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/README.md +0 -0
  14. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/.DS_Store +0 -0
  15. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/__init__.py +0 -0
  16. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_commands/.gitkeep +0 -0
  17. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/__init__.py +0 -0
  18. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/__init__.py +0 -0
  19. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/ErrorCorrection/abort.py +0 -0
  20. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/ErrorCorrection/you_misunderstood.py +0 -0
  21. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/IntentDetection/go_up.py +0 -0
  22. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/IntentDetection/reset_context.py +0 -0
  23. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/IntentDetection/what_can_i_do.py +0 -0
  24. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/IntentDetection/what_is_current_context.py +0 -0
  25. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/_commands/__init__.py +0 -0
  26. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/_workflows/command_metadata_extraction/command_context_model.json +0 -0
  27. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/__main__.py +0 -0
  28. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/ast_class_extractor.py +0 -0
  29. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/class_analysis_structures.py +0 -0
  30. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/cli_specification.md +0 -0
  31. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/command_dependency_resolver.py +0 -0
  32. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/command_file_generator.py +0 -0
  33. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/command_file_template.py +0 -0
  34. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/command_import_utils.py +0 -0
  35. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/command_stub_generator.py +0 -0
  36. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/context_folder_generator.py +0 -0
  37. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/context_model_generator.py +0 -0
  38. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/dependency_manager.py +0 -0
  39. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/dir_scanner.py +0 -0
  40. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/documentation_generator.py +0 -0
  41. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/genai_postprocessor.py +0 -0
  42. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/inheritance_block_regenerator.py +0 -0
  43. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/libcst_transformers.py +0 -0
  44. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/navigator_stub_generator.py +0 -0
  45. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/pydantic_model_generator.py +0 -0
  46. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/build/utterance_generator.py +0 -0
  47. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/cache_matching.py +0 -0
  48. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/cli.py +0 -0
  49. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/command_context_model.py +0 -0
  50. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/command_directory.py +0 -0
  51. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/command_interfaces.py +0 -0
  52. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/command_metadata_api.py +0 -0
  53. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/command_routing.py +0 -0
  54. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/docs/context_modules_prd.txt +0 -0
  55. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/extended_workflow_example/README.md +0 -0
  56. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/extended_workflow_example/_commands/WorkItem/get_status.py +0 -0
  57. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/extended_workflow_example/_commands/generate_report.py +0 -0
  58. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/extended_workflow_example/_commands/startup.py +0 -0
  59. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/extended_workflow_example/simple_workflow_template.json +0 -0
  60. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/extended_workflow_example/workflow_inheritance_model.json +0 -0
  61. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/fastworkflow.env +0 -0
  62. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/fastworkflow.passwords.env +0 -0
  63. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/hello_world/_commands/README.md +0 -0
  64. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/hello_world/_commands/add_two_numbers.py +0 -0
  65. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/hello_world/_commands/context_inheritance_model.json +0 -0
  66. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/hello_world/application/add_two_numbers.py +0 -0
  67. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_1/_commands/context_inheritance_model.json +0 -0
  68. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_1/_commands/send_message.py +0 -0
  69. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_1/application/send_message.py +0 -0
  70. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_2/_commands/User/send_message.py +0 -0
  71. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_2/_commands/context_inheritance_model.json +0 -0
  72. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_2/_commands/startup.py +0 -0
  73. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_2/application/user.py +0 -0
  74. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_3/_commands/PremiumUser/send_priority_message.py +0 -0
  75. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_3/_commands/User/send_message.py +0 -0
  76. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_3/_commands/context_inheritance_model.json +0 -0
  77. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_3/_commands/initialize_user.py +0 -0
  78. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_3/application/user.py +0 -0
  79. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/ChatRoom/_ChatRoom.py +0 -0
  80. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/ChatRoom/add_user.py +0 -0
  81. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/ChatRoom/broadcast_message.py +0 -0
  82. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/ChatRoom/get_current_user.py +0 -0
  83. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/ChatRoom/list_users.py +0 -0
  84. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/ChatRoom/set_current_user.py +0 -0
  85. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/PremiumUser/_PremiumUser.py +0 -0
  86. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/PremiumUser/send_priority_message.py +0 -0
  87. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/User/_User.py +0 -0
  88. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/User/send_message.py +0 -0
  89. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/context_inheritance_model.json +0 -0
  90. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/_commands/set_root_context.py +0 -0
  91. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/application/chatroom.py +0 -0
  92. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/application/user.py +0 -0
  93. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/context_hierarchy_model.json +0 -0
  94. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/messaging_app_4/startup_action.json +0 -0
  95. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/calculate.py +0 -0
  96. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/cancel_pending_order.py +0 -0
  97. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/exchange_delivered_order_items.py +0 -0
  98. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/find_user_id_by_name_zip.py +0 -0
  99. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/get_order_details.py +0 -0
  100. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/get_product_details.py +0 -0
  101. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/get_user_details.py +0 -0
  102. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/list_all_product_types.py +0 -0
  103. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/modify_pending_order_address.py +0 -0
  104. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/modify_pending_order_items.py +0 -0
  105. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/modify_pending_order_payment.py +0 -0
  106. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/modify_user_address.py +0 -0
  107. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/return_delivered_order_items.py +0 -0
  108. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/_commands/transfer_to_human_agents.py +0 -0
  109. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/context_inheritance_model.json +0 -0
  110. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/retail_data/__init__.py +0 -0
  111. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/retail_data/orders.json +0 -0
  112. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/retail_data/products.json +0 -0
  113. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/retail_data/users.json +0 -0
  114. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/calculate.py +0 -0
  115. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/cancel_pending_order.py +0 -0
  116. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/exchange_delivered_order_items.py +0 -0
  117. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/find_user_id_by_email.py +0 -0
  118. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/find_user_id_by_name_zip.py +0 -0
  119. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/get_order_details.py +0 -0
  120. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/get_product_details.py +0 -0
  121. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/get_user_details.py +0 -0
  122. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/list_all_product_types.py +0 -0
  123. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/modify_pending_order_address.py +0 -0
  124. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/modify_pending_order_items.py +0 -0
  125. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/modify_pending_order_payment.py +0 -0
  126. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/modify_user_address.py +0 -0
  127. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/return_delivered_order_items.py +0 -0
  128. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/think.py +0 -0
  129. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/tool.py +0 -0
  130. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/tools/transfer_to_human_agents.py +0 -0
  131. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/retail_workflow/workflow_description.txt +0 -0
  132. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/__init__.py +0 -0
  133. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/_WorkItem.py +0 -0
  134. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/add_child_workitem.py +0 -0
  135. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/get_status.py +0 -0
  136. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/go_to_workitem.py +0 -0
  137. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/mark_as_complete.py +0 -0
  138. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/move_to_first_child_workitem.py +0 -0
  139. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/move_to_last_child_workitem.py +0 -0
  140. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/move_to_next_workitem.py +0 -0
  141. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/move_to_previous_workitem.py +0 -0
  142. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/remove_all_child_workitems.py +0 -0
  143. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/remove_child_workitem.py +0 -0
  144. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/WorkItem/show_schema.py +0 -0
  145. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/_commands/startup.py +0 -0
  146. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/application/__init__.py +0 -0
  147. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/application/workitem.py +0 -0
  148. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/simple_workflow_template.json +0 -0
  149. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/examples/simple_workflow_template/startup_action.json +0 -0
  150. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/mcp_server.py +0 -0
  151. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/model_pipeline_training.py +0 -0
  152. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/refine/__main__.py +0 -0
  153. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/run/__init__.py +0 -0
  154. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/run/__main__.py +0 -0
  155. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/run_agent/__init__.py +0 -0
  156. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/run_agent/__main__.py +0 -0
  157. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/run_agent/agent_module.py +0 -0
  158. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/train/__init__.py +0 -0
  159. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/train/__main__.py +0 -0
  160. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/train/generate_synthetic.py +0 -0
  161. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/user_message_queues.py +0 -0
  162. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/__init__.py +0 -0
  163. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/command_dependency_graph.py +0 -0
  164. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/context_utils.py +0 -0
  165. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/dspy_cache_utils.py +0 -0
  166. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/dspy_logger.py +0 -0
  167. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/dspy_utils.py +0 -0
  168. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/env.py +0 -0
  169. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/fuzzy_match.py +0 -0
  170. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/generate_param_examples.py +0 -0
  171. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/logging.py +0 -0
  172. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/parameterize_func_decorator.py +0 -0
  173. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/pydantic_model_2_dspy_signature_class.py +0 -0
  174. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/python_utils.py +0 -0
  175. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/react.py +0 -0
  176. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/utils/startup_progress.py +0 -0
  177. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/workflow_agent.py +0 -0
  178. {fastworkflow-2.15.9 → fastworkflow-2.15.11}/fastworkflow/workflow_inheritance_model.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastworkflow
3
- Version: 2.15.9
3
+ Version: 2.15.11
4
4
  Summary: A framework for rapidly building large-scale, deterministic, interactive workflows with a fault-tolerant, conversational UX
5
5
  License: Apache-2.0
6
6
  Keywords: fastworkflow,ai,workflow,llm,openai
@@ -130,6 +130,13 @@ class ResponseGenerator:
130
130
  workflow_context["NLU_Pipeline_Stage"] = NLUPipelineStage.PARAMETER_EXTRACTION
131
131
  workflow.context = workflow_context
132
132
 
133
+ if nlu_pipeline_stage == NLUPipelineStage.PARAMETER_EXTRACTION:
134
+ cnp_output.command_name = workflow.context["command_name"]
135
+ else:
136
+ workflow_context = workflow.context
137
+ workflow_context["command_name"] = cnp_output.command_name
138
+ workflow.context = workflow_context
139
+
133
140
  command_name = cnp_output.command_name
134
141
  extractor = ParameterExtraction(workflow, app_workflow, command_name, command)
135
142
  pe_output = extractor.extract()
@@ -96,8 +96,8 @@ class CommandNamePrediction:
96
96
  ].plain_utterances
97
97
  }
98
98
 
99
- # See if the command starts with a command name followed by a space
100
- tentative_command_name = command.split(" ", 1)[0]
99
+ # See if the command starts with a command name followed by a space or a '('
100
+ tentative_command_name = command.split(" ", 1)[0].split("(", 1)[0]
101
101
  normalized_command_name = tentative_command_name.lower()
102
102
  command_name = None
103
103
  if normalized_command_name in command_name_dict:
@@ -65,12 +65,24 @@ class ParameterExtraction:
65
65
  self.command_name,
66
66
  app_workflow_folderpath)
67
67
 
68
- self._store_parameters(self.cme_workflow, new_params)
69
-
70
- is_valid, error_msg, suggestions = input_for_param_extraction.validate_parameters(
68
+ is_valid, error_msg, suggestions, missing_invalid_fields = \
69
+ input_for_param_extraction.validate_parameters(
71
70
  self.app_workflow, self.command_name, new_params
72
71
  )
73
72
 
73
+ # Set all the missing and invalid fields to None before storing
74
+ current_values = {
75
+ field_name: getattr(new_params, field_name, None)
76
+ for field_name in list(type(new_params).model_fields.keys())
77
+ }
78
+ for field_name in missing_invalid_fields:
79
+ if field_name in current_values:
80
+ current_values[field_name] = NOT_FOUND
81
+ # Reconstruct the model instance without validation
82
+ new_params = new_params.__class__.model_construct(**current_values)
83
+
84
+ self._store_parameters(self.cme_workflow, new_params)
85
+
74
86
  if not is_valid:
75
87
  if params_str := self._format_parameters_for_display(new_params):
76
88
  error_msg = f"Extracted parameters so far:\n{params_str}\n\n{error_msg}"
@@ -345,9 +345,16 @@ class ChatSession:
345
345
  ) and self._status != SessionStatus.STOPPING:
346
346
  try:
347
347
  message = self.user_message_queue.get()
348
+
349
+ if ((
350
+ "NLU_Pipeline_Stage" not in self._cme_workflow.context or
351
+ self._cme_workflow.context["NLU_Pipeline_Stage"] == fastworkflow.NLUPipelineStage.INTENT_DETECTION) and
352
+ message.startswith('/')
353
+ ):
354
+ self._cme_workflow.context["is_assistant_mode_command"] = True
348
355
 
349
356
  # Route based on mode and message type
350
- if self._run_as_agent and not message.startswith('/'):
357
+ if self._run_as_agent and "is_assistant_mode_command" not in self._cme_workflow.context:
351
358
  # In agent mode, use workflow tool agent for processing
352
359
  last_output = self._process_agent_message(message)
353
360
  # elif self._is_mcp_tool_call(message):
@@ -45,7 +45,12 @@ class CommandExecutor(CommandExecutorInterface):
45
45
  command = command)
46
46
  )
47
47
 
48
- if command_output.command_handled or not command_output.success:
48
+ if command_output.command_handled:
49
+ # important to clear the current command mode from the workflow context
50
+ if "is_assistant_mode_command" in chat_session.cme_workflow._context:
51
+ del chat_session.cme_workflow._context["is_assistant_mode_command"]
52
+ return command_output
53
+ elif not command_output.success:
49
54
  return command_output
50
55
 
51
56
  command_name = command_output.command_responses[0].artifacts["command_name"]
@@ -54,7 +59,7 @@ class CommandExecutor(CommandExecutorInterface):
54
59
  workflow = ChatSession.get_active_workflow()
55
60
  workflow_name = workflow.folderpath.split('/')[-1]
56
61
  context = workflow.current_command_context_displayname
57
-
62
+
58
63
  command_routing_definition = fastworkflow.RoutingRegistry.get_definition(
59
64
  workflow.folderpath
60
65
  )
@@ -77,13 +82,17 @@ class CommandExecutor(CommandExecutorInterface):
77
82
  command_output = response_generation_object(workflow, command, input_obj)
78
83
  else:
79
84
  command_output = response_generation_object(workflow, command)
80
-
85
+
81
86
  # Set the additional attributes
82
87
  command_output.workflow_name = workflow_name
83
88
  command_output.context = context
84
89
  command_output.command_name = command_name
85
90
  command_output.command_parameters = input_obj or None
86
91
 
92
+ # important to clear the current command mode from the workflow context
93
+ if "is_assistant_mode_command" in chat_session.cme_workflow._context:
94
+ del chat_session.cme_workflow._context["is_assistant_mode_command"]
95
+
87
96
  return command_output
88
97
 
89
98
  @classmethod
@@ -134,7 +143,7 @@ class CommandExecutor(CommandExecutorInterface):
134
143
  input_obj = command_parameters_class(**action.parameters)
135
144
 
136
145
  input_for_param_extraction = InputForParamExtraction(command=action.command)
137
- is_valid, error_msg, _ = input_for_param_extraction.validate_parameters(
146
+ is_valid, error_msg, _, _ = input_for_param_extraction.validate_parameters(
138
147
  workflow, action.command_name, input_obj
139
148
  )
140
149
  if not is_valid:
@@ -11,16 +11,17 @@ from ..tools.find_user_id_by_email import FindUserIdByEmail
11
11
 
12
12
 
13
13
  class Signature:
14
- """Find user id by email"""
14
+ """
15
+ Find user id by email.
16
+ If email is not available, use `find_user_id_by_name_zip` instead.
17
+ As a last resort transfer to a human agent
18
+ """
15
19
  class Input(BaseModel):
16
20
  """Parameters taken from user utterance."""
17
21
 
18
22
  email: str = Field(
19
23
  default="NOT_FOUND",
20
- description=(
21
- "The email address to search for. If email is not available, "
22
- "use `find_user_id_by_name_zip` instead. As a last resort transfer to a human agent"
23
- ),
24
+ description="The email address to search for",
24
25
  pattern=r"^(NOT_FOUND|[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,})$",
25
26
  examples=["user@example.com"],
26
27
  )