praisonaiagents 0.0.31__py3-none-any.whl → 0.0.32__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.
- praisonaiagents/process/process.py +26 -12
- {praisonaiagents-0.0.31.dist-info → praisonaiagents-0.0.32.dist-info}/METADATA +1 -1
- {praisonaiagents-0.0.31.dist-info → praisonaiagents-0.0.32.dist-info}/RECORD +5 -5
- {praisonaiagents-0.0.31.dist-info → praisonaiagents-0.0.32.dist-info}/WHEEL +0 -0
- {praisonaiagents-0.0.31.dist-info → praisonaiagents-0.0.32.dist-info}/top_level.txt +0 -0
@@ -130,22 +130,29 @@ Return a JSON object with an 'items' array containing the items to process.
|
|
130
130
|
|
131
131
|
# Determine next task based on result
|
132
132
|
next_task = None
|
133
|
-
if current_task.result:
|
133
|
+
if current_task and current_task.result:
|
134
134
|
if current_task.task_type in ["decision", "loop"]:
|
135
135
|
result = current_task.result.raw.lower()
|
136
136
|
# Check conditions
|
137
137
|
for condition, tasks in current_task.condition.items():
|
138
|
-
if condition.lower() in result
|
139
|
-
|
138
|
+
if condition.lower() in result:
|
139
|
+
# Handle both list and direct string values
|
140
|
+
task_value = tasks[0] if isinstance(tasks, list) else tasks
|
141
|
+
if not task_value or task_value == "exit": # If empty or explicit exit
|
142
|
+
logging.info("Workflow exit condition met, ending workflow")
|
143
|
+
current_task = None
|
144
|
+
break
|
145
|
+
next_task_name = task_value
|
140
146
|
next_task = next((t for t in self.tasks.values() if t.name == next_task_name), None)
|
141
147
|
# For loops, allow revisiting the same task
|
142
148
|
if next_task and next_task.id == current_task.id:
|
143
149
|
visited_tasks.discard(current_task.id)
|
144
150
|
break
|
145
151
|
|
146
|
-
|
147
|
-
|
148
|
-
|
152
|
+
if not next_task and current_task and current_task.next_tasks:
|
153
|
+
print(current_task.next_tasks)
|
154
|
+
next_task_name = current_task.next_tasks[0]
|
155
|
+
next_task = next((t for t in self.tasks.values() if t.name == next_task_name), None)
|
149
156
|
|
150
157
|
current_task = next_task
|
151
158
|
if not current_task:
|
@@ -391,22 +398,29 @@ Return a JSON object with an 'items' array containing the items to process.
|
|
391
398
|
|
392
399
|
# Determine next task based on result
|
393
400
|
next_task = None
|
394
|
-
if current_task.result:
|
401
|
+
if current_task and current_task.result:
|
395
402
|
if current_task.task_type in ["decision", "loop"]:
|
396
403
|
result = current_task.result.raw.lower()
|
397
404
|
# Check conditions
|
398
405
|
for condition, tasks in current_task.condition.items():
|
399
|
-
if condition.lower() in result
|
400
|
-
|
406
|
+
if condition.lower() in result:
|
407
|
+
# Handle both list and direct string values
|
408
|
+
task_value = tasks[0] if isinstance(tasks, list) else tasks
|
409
|
+
if not task_value or task_value == "exit": # If empty or explicit exit
|
410
|
+
logging.info("Workflow exit condition met, ending workflow")
|
411
|
+
current_task = None
|
412
|
+
break
|
413
|
+
next_task_name = task_value
|
401
414
|
next_task = next((t for t in self.tasks.values() if t.name == next_task_name), None)
|
402
415
|
# For loops, allow revisiting the same task
|
403
416
|
if next_task and next_task.id == current_task.id:
|
404
417
|
visited_tasks.discard(current_task.id)
|
405
418
|
break
|
406
419
|
|
407
|
-
|
408
|
-
|
409
|
-
|
420
|
+
if not next_task and current_task and current_task.next_tasks:
|
421
|
+
print(current_task.next_tasks)
|
422
|
+
next_task_name = current_task.next_tasks[0]
|
423
|
+
next_task = next((t for t in self.tasks.values() if t.name == next_task_name), None)
|
410
424
|
|
411
425
|
current_task = next_task
|
412
426
|
if not current_task:
|
@@ -7,7 +7,7 @@ praisonaiagents/agents/agents.py,sha256=N55Ae3JkjNgGQ6pXBaBpI73sA80Y-pPUZLOd1Ngt
|
|
7
7
|
praisonaiagents/agents/autoagents.py,sha256=bjC2O5oZmoJItJXIMPTWc2lsp_AJC9tMiTQOal2hwPA,13532
|
8
8
|
praisonaiagents/memory/memory.py,sha256=ZxqSpOUxk9jeTKGW0ZiTifC0uZtym-EZILP3kuOOKkU,35626
|
9
9
|
praisonaiagents/process/__init__.py,sha256=lkYbL7Hn5a0ldvJtkdH23vfIIZLIcanK-65C0MwaorY,52
|
10
|
-
praisonaiagents/process/process.py,sha256=
|
10
|
+
praisonaiagents/process/process.py,sha256=zMoGYJSrIE-v9lKUkPpPbUspF9cPHeh8l5HM8tyttjU,25303
|
11
11
|
praisonaiagents/task/__init__.py,sha256=VL5hXVmyGjINb34AalxpBMl-YW9m5EDcRkMTKkSSl7c,80
|
12
12
|
praisonaiagents/task/task.py,sha256=mwmk98nesfz102qTnHSE5VuuPIgHiPDxjeEX7b7g2BA,10023
|
13
13
|
praisonaiagents/tools/__init__.py,sha256=-0lV5n5cG54vYW6REjXIfuJnCLKnfQIDlXsySCaPB9s,7347
|
@@ -30,7 +30,7 @@ praisonaiagents/tools/wikipedia_tools.py,sha256=pGko-f33wqXgxJTv8db7TbizY5XnzBQR
|
|
30
30
|
praisonaiagents/tools/xml_tools.py,sha256=iYTMBEk5l3L3ryQ1fkUnNVYK-Nnua2Kx2S0dxNMMs1A,17122
|
31
31
|
praisonaiagents/tools/yaml_tools.py,sha256=uogAZrhXV9O7xvspAtcTfpKSQYL2nlOTvCQXN94-G9A,14215
|
32
32
|
praisonaiagents/tools/yfinance_tools.py,sha256=nmzjS7G_5GqMQD4r867mt17dHg5xvtsYDDfOPh68SgE,8105
|
33
|
-
praisonaiagents-0.0.
|
34
|
-
praisonaiagents-0.0.
|
35
|
-
praisonaiagents-0.0.
|
36
|
-
praisonaiagents-0.0.
|
33
|
+
praisonaiagents-0.0.32.dist-info/METADATA,sha256=4tDDA-cB-DcwEM-UfhyImUXHmMpXI5rmkq4HEppM4NU,306
|
34
|
+
praisonaiagents-0.0.32.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
35
|
+
praisonaiagents-0.0.32.dist-info/top_level.txt,sha256=_HsRddrJ23iDx5TTqVUVvXG2HeHBL5voshncAMDGjtA,16
|
36
|
+
praisonaiagents-0.0.32.dist-info/RECORD,,
|
File without changes
|
File without changes
|