优化: 清理无意义注释(走查编号前缀/过时历史标注/死代码注释)
This commit is contained in:
@@ -6,7 +6,7 @@ use tauri::State;
|
||||
use df_types::types::{new_id, TaskStatus};
|
||||
use df_storage::crud::TaskQuery;
|
||||
use df_storage::models::{ProjectEventRecord, TaskLinkRecord, TaskRecord};
|
||||
// LW-9(BE-CMD-8):父任务聚合重算(df-nodes 共享层,与 advance_task 同源,消除双轨)。
|
||||
// LW-9父任务聚合重算(df-nodes 共享层,与 advance_task 同源,消除双轨)。
|
||||
use df_nodes::task_advance_node::recompute_parent_status;
|
||||
|
||||
use crate::state::AppState;
|
||||
@@ -247,7 +247,7 @@ pub async fn create_task(
|
||||
state: State<'_, AppState>,
|
||||
input: CreateTaskInput,
|
||||
) -> Result<TaskRecord, String> {
|
||||
// ── BE-CMD-1:空 title trim 拒空 + priority 值域校验(对齐前端 PRIORITY_LABELS 与
|
||||
// ── 空 title trim 拒空 + priority 值域校验(对齐前端 PRIORITY_LABELS 与
|
||||
// update_task 校验,拦截空白标题 / 99 等脏数据静默落库)。 ──
|
||||
let title = input.title.trim().to_string();
|
||||
if title.is_empty() {
|
||||
@@ -321,7 +321,7 @@ pub async fn create_task(
|
||||
base_branch: None,
|
||||
review_rounds: 0,
|
||||
output_json: None,
|
||||
// F-260619-01:空字符串视为不关联(与 AI 工具层一致)
|
||||
// 空字符串视为不关联(与 AI 工具层一致)
|
||||
idea_id: input.idea_id.filter(|s| !s.is_empty()),
|
||||
// 多工程:可选关联到具体工程(module)
|
||||
module_id: input.module_id.filter(|s| !s.is_empty()),
|
||||
@@ -348,7 +348,7 @@ pub async fn create_task(
|
||||
Some(record.status.as_str()),
|
||||
)
|
||||
.await;
|
||||
// LW-9(BE-CMD-8):建子任务后触发父聚合重算(容器模型,父 status 由子任务聚合)。
|
||||
// LW-9建子任务后触发父聚合重算(容器模型,父 status 由子任务聚合)。
|
||||
// 聚合失败仅 warn 不阻断(对齐 advance_task 宽容语义)。
|
||||
if let Some(pid) = &record.parent_id {
|
||||
if let Err(e) = recompute_parent_status(&state.tasks, pid).await {
|
||||
@@ -365,7 +365,7 @@ pub async fn create_task(
|
||||
|
||||
/// 更新任务单个字段(字段名走 df-storage 白名单校验;status 值走枚举校验)。
|
||||
///
|
||||
/// B-260801-01(P0-1):0 行(id 不存在 / 已软删)→ 返 Err 而非 false,杜绝「假成功」
|
||||
/// B-260801-010 行(id 不存在 / 已软删)→ 返 Err 而非 false,杜绝「假成功」
|
||||
/// (前端 updateTask 仅 await 不读 bool,但 store.runWithCatch 把 Err 转 toast,用户能感知;
|
||||
/// 若返 false 则 store 静默忽略,本地状态前端手动改但库无变更,造成 UI 与 DB 不一致)。
|
||||
///
|
||||
@@ -439,7 +439,7 @@ pub async fn update_task(
|
||||
}
|
||||
// 空字符串 = None(解除父),合法放行
|
||||
}
|
||||
// LW-4(BE-CMD-1):queue 字段校验(白名单 + queue/status 一致性,读当前 status)。
|
||||
// queue 字段校验(白名单 + queue/status 一致性,读当前 status)。
|
||||
// update_task 只改单字段不改 status,故用严格一致性校验(与 move_task_queue 自动联动不同):
|
||||
// 设置不兼容的 queue 直接拒绝,调用方需走 move_task_queue 自动联动调整 status。
|
||||
if field == "queue" {
|
||||
@@ -453,13 +453,13 @@ pub async fn update_task(
|
||||
.ok_or_else(|| format!("任务 ID {id} 不存在或已删除"))?;
|
||||
assert_queue_status_consistent(q, current.status.as_str())?;
|
||||
}
|
||||
// B-260801-01(P0-1):update_field 返 affected>0;false = id 不存在或已软删(0 行)。
|
||||
// update_field 返 affected>0;false = id 不存在或已软删(0 行)。
|
||||
// 不可静默返 false——前端 store.runWithCatch 把 Err 转 toast,而 false 会被忽略致假成功。
|
||||
//
|
||||
// 任务字段更新是高频「项目活跃」信号(改 title/priority/assignee 等),埋点 task_updated
|
||||
// 推动项目最近活跃排序反映真实业务(问题3)。best-effort 不阻断。
|
||||
// 读当前 project_id(一次轻量读):update_field 返 bool 不带 project_id,无法直接埋点。
|
||||
// LW-6(BE-CMD-5):update_field_active 过滤软删(deleted_at IS NULL),回收站任务不可改字段。
|
||||
// update_field_active 过滤软删(deleted_at IS NULL),回收站任务不可改字段。
|
||||
let current = state
|
||||
.tasks
|
||||
.get_by_id(&id)
|
||||
@@ -473,7 +473,7 @@ pub async fn update_task(
|
||||
if !updated {
|
||||
return Err(format!("任务 ID {id} 不存在或已删除"));
|
||||
}
|
||||
// LW-9(BE-CMD-8):改 parent_id 后重算父聚合——旧父(任务已离开,计数减少)与新父(任务挂上)。
|
||||
// LW-9改 parent_id 后重算父聚合——旧父(任务已离开,计数减少)与新父(任务挂上)。
|
||||
// 从 current 读旧 parent_id(pre-update),value 是新父值。聚合失败仅 warn 不阻断。
|
||||
if field == "parent_id" {
|
||||
if let Some(old_pid) = current.as_ref().and_then(|c| c.parent_id.clone()) {
|
||||
@@ -590,7 +590,7 @@ pub async fn restore_task(state: State<'_, AppState>, id: String) -> Result<bool
|
||||
|
||||
/// 推进任务状态(任务推进链 F-260616-02,推进链唯一 status 写入路径)。
|
||||
///
|
||||
/// thin 入口(D-260616-03):业务逻辑(状态机校验 + 原子 CAS + review_rounds 累加 + 父聚合)
|
||||
/// thin 入口业务逻辑(状态机校验 + 原子 CAS + review_rounds 累加 + 父聚合)
|
||||
/// 落 df-nodes::task_advance_node,本命令只做参数转发与结果包装。
|
||||
///
|
||||
/// 返回: `Result<TaskRecord, String>` — 成功返更新后的任务;失败 Err(状态机拒绝/CAS 冲突/
|
||||
@@ -794,7 +794,7 @@ pub async fn move_task_queue(
|
||||
.await;
|
||||
}
|
||||
|
||||
// LW-9(BE-CMD-8):跨池移动后子任务 status 可能联动变化(一致性联动)→ 触发其父聚合重算。
|
||||
// LW-9跨池移动后子任务 status 可能联动变化(一致性联动)→ 触发其父聚合重算。
|
||||
// 仅当被移动任务是子任务;父任务自身 move 不重算自身聚合(容器 status 由子任务推进时重算)。
|
||||
// 聚合失败仅 warn 不阻断。
|
||||
if let Some(pid) = &updated.parent_id {
|
||||
|
||||
Reference in New Issue
Block a user