Async Workflow #82
|
|
@ -1555,8 +1555,8 @@ async def execute_unified_prompt_stream(
|
||||||
with get_db() as conn:
|
with get_db() as conn:
|
||||||
cur = get_cursor(conn)
|
cur = get_cursor(conn)
|
||||||
cur.execute(
|
cur.execute(
|
||||||
"""INSERT INTO ai_insights (profile_id, scope, content, metadata, created_at)
|
"""INSERT INTO ai_insights (profile_id, scope, content, metadata, created)
|
||||||
VALUES (%s, %s, %s, %s, NOW())""",
|
VALUES (%s, %s, %s, %s, CURRENT_TIMESTAMP)""",
|
||||||
(profile_id, prompt_slug, content, json.dumps({"prompt_type": result['type']}))
|
(profile_id, prompt_slug, content, json.dumps({"prompt_type": result['type']}))
|
||||||
)
|
)
|
||||||
conn.commit()
|
conn.commit()
|
||||||
|
|
|
||||||
|
|
@ -171,10 +171,12 @@ async def execute_workflow(
|
||||||
|
|
||||||
# NEW: Progress-Callback aufrufen (für SSE Streaming)
|
# NEW: Progress-Callback aufrufen (für SSE Streaming)
|
||||||
if progress_callback:
|
if progress_callback:
|
||||||
|
# Create a meaningful label for the node
|
||||||
|
node_label = node.prompt_slug if hasattr(node, 'prompt_slug') and node.prompt_slug else f"{node.type.value}-{node_id[:8]}"
|
||||||
await progress_callback("node_complete", {
|
await progress_callback("node_complete", {
|
||||||
"node_id": node_id,
|
"node_id": node_id,
|
||||||
"node_type": node.type,
|
"node_type": node.type,
|
||||||
"node_label": node.label,
|
"node_label": node_label,
|
||||||
"status": node_state.status.value,
|
"status": node_state.status.value,
|
||||||
"total_nodes": len(graph.nodes),
|
"total_nodes": len(graph.nodes),
|
||||||
"completed_nodes": len([ns for ns in node_states if ns.status in [NodeStatus.COMPLETED, NodeStatus.SKIPPED]]),
|
"completed_nodes": len([ns for ns in node_states if ns.status in [NodeStatus.COMPLETED, NodeStatus.SKIPPED]]),
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user