修复: df-mcp evaluate_idea 写回失败感知 + list_trash DB 错误感知(CR-11 ⚪2)
CR-260619-11 审查 ⚪2 可选改进(MCP 对外场景,非阻塞):
- evaluate_idea: 写回 scores 失败返 err(原 let _ 丢弃)+ 响应用写回后 rec(原 idea 旧版本)
- list_trash: DB 错误返 err(原 unwrap_or_default 吞错误返空列表对外误导)
df-mcp 8 passed 无回归
This commit is contained in:
@@ -613,8 +613,10 @@ fn evaluate_idea(ctx: &Ctx, args: Value) -> BoxFuture<'static, CallToolResult> {
|
|||||||
let mut rec = idea.clone();
|
let mut rec = idea.clone();
|
||||||
rec.scores = Some(serde_json::to_string(&scores).unwrap_or_default());
|
rec.scores = Some(serde_json::to_string(&scores).unwrap_or_default());
|
||||||
rec.updated_at = now;
|
rec.updated_at = now;
|
||||||
let _ = repo.update_full(&rec).await;
|
if let Err(e) = repo.update_full(&rec).await {
|
||||||
json_ok(json!({ "id": id, "idea": idea, "scores": scores }))
|
return err_str(e);
|
||||||
|
}
|
||||||
|
json_ok(json!({ "id": id, "idea": rec, "scores": scores }))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -661,8 +663,14 @@ fn run_workflow(_ctx: &Ctx, _args: Value) -> BoxFuture<'static, CallToolResult>
|
|||||||
fn list_trash(ctx: &Ctx, _args: Value) -> BoxFuture<'static, CallToolResult> {
|
fn list_trash(ctx: &Ctx, _args: Value) -> BoxFuture<'static, CallToolResult> {
|
||||||
let db = ctx.db.clone();
|
let db = ctx.db.clone();
|
||||||
Box::pin(async move {
|
Box::pin(async move {
|
||||||
let projects = ProjectRepo::new(&db).list_deleted().await.unwrap_or_default();
|
let projects = match ProjectRepo::new(&db).list_deleted().await {
|
||||||
let tasks = TaskRepo::new(&db).list_deleted().await.unwrap_or_default();
|
Ok(v) => v,
|
||||||
|
Err(e) => return err_str(e),
|
||||||
|
};
|
||||||
|
let tasks = match TaskRepo::new(&db).list_deleted().await {
|
||||||
|
Ok(v) => v,
|
||||||
|
Err(e) => return err_str(e),
|
||||||
|
};
|
||||||
json_ok(json!({
|
json_ok(json!({
|
||||||
"projects": projects,
|
"projects": projects,
|
||||||
"tasks": tasks,
|
"tasks": tasks,
|
||||||
|
|||||||
Reference in New Issue
Block a user