Multi agent workflows v1#44
Conversation
| -- For now, parallel executes sequentially (DBMS_PARALLEL_EXECUTE requires more setup) | ||
| -- TODO: Implement true parallel execution | ||
| uc_ai_logger.log_warn('Parallel workflow executing sequentially (parallel not yet implemented)', l_scope); | ||
| return execute_sequential_workflow(p_agent, p_input_params, p_session_id, p_exec_id); |
Check warning
Code scanning / dbLinter
Always make the RETURN statement the last statement of your function. Warning
| ); | ||
|
|
||
| -- Check if agent wants to handoff | ||
| if l_result.has('handoff_decision') then |
Check warning
Code scanning / dbLinter
Always use EXIT WHEN instead of an IF statement to exit from a loop. Warning
| if l_result.has('handoff_decision') then | ||
| l_handoff_decision := l_result.get_object('handoff_decision'); | ||
|
|
||
| if not l_handoff_decision.get_boolean('should_handoff') then |
Check warning
Code scanning / dbLinter
Always use EXIT WHEN instead of an IF statement to exit from a loop. Warning
| l_handoff_decision := l_result.get_object('handoff_decision'); | ||
|
|
||
| if not l_handoff_decision.get_boolean('should_handoff') then | ||
| exit handoff_loop; |
Check warning
Code scanning / dbLinter
Never use unconditional CONTINUE or EXIT in a loop. Warning
|
|
||
| l_handoff_count := l_handoff_count + 1; | ||
| else | ||
| exit handoff_loop; |
Check warning
Code scanning / dbLinter
Never use unconditional CONTINUE or EXIT in a loop. Warning
| return l_result; | ||
|
|
||
| else | ||
| return p_history; |
Check warning
Code scanning / dbLinter
Always make the RETURN statement the last statement of your function. Warning
| ) return sys_refcursor | ||
| as | ||
| l_scope uc_ai_logger.scope := gc_scope_prefix || 'get_execution_history'; | ||
| l_exec_history_cur sys_refcursor; |
Check warning
Code scanning / dbLinter
Always follow naming conventions for cursor variables. Warning
| -- Types | ||
| -- ============================================================================ | ||
|
|
||
| type t_validation_result is record ( |
Check warning
Code scanning / dbLinter
Always follow naming conventions for record type definitions. Warning
| l_status varchar2(50 char); | ||
| l_exec_count number; | ||
| l_workflow_def clob; | ||
| l_agent_data json; |
Check warning
Code scanning / dbLinter
Avoid defining variables that are not used. Warning test
| <<step_loop>> | ||
| for i in 0 .. l_steps.get_size - 1 loop | ||
| declare | ||
| l_step json_object_t := treat(l_steps.get(i) as json_object_t); |
Check notice
Code scanning / dbLinter
Avoid initializing variables using functions in the declaration section.
No description provided.