新增: AiNode自审ai侧(AiNode持db写产出+ai_self_review节点+DAG透传)

This commit is contained in:
2026-06-16 22:40:55 +08:00
parent 25409e5329
commit c10adaf0b0
3 changed files with 439 additions and 8 deletions

View File

@@ -254,8 +254,20 @@ fn build_registry(db: Arc<Database>) -> NodeRegistry {
registry.register("human", |_config| {
Box::new(df_nodes::human_node::HumanNode)
});
registry.register("ai", |_config| {
Box::new(df_nodes::ai_node::AiNode)
// AiNode(df_nodes::ai_node, impl Node trait):
// 决策 a(AiNode 自审闭环)步骤②:AiNode 持 Arc<Database>,execute 完成后若有 task_id
// 则把产出落 task.output_json。工厂闭包 move 捕获 db 句柄(Arc clone 廉价)。
let ai_db = db.clone();
registry.register("ai", move |_config| {
Box::new(df_nodes::ai_node::AiNode::new(ai_db.clone()))
});
// AiSelfReviewNode(df_nodes::ai_node, impl Node trait):
// 决策 a 步骤③:四维度自审(prompt 固定+JSON 解析兜底),写回 output_json 加 review 子字段,
// review 摘要塞 NodeOutput.data 供下游 human_review 经 DAG inputs 透传。
// testing 模板 ai_self_review 节点类型对齐此注册 key。
let review_db = db.clone();
registry.register("ai_self_review", move |_config| {
Box::new(df_nodes::ai_node::AiSelfReviewNode::new(review_db.clone()))
});
// TaskAdvanceNode(df_nodes::task_advance_node, impl Node trait):
// 推进链阶段 2 工作流联动入口 — DAG 内触发 advance_task。