/** * sf_task cancel handler。 * * cancel:取消当前任务(破坏性,需 confirm=true)。清 task 各域 EvidenceView + 审查 + 豁免, * 再 taskContext.cancel。defense in depth:middleware checkAuth 已要求 confirm,handler 兜底。 * * 职责边界: * - 负责:confirm 前置校验、关闭态校验、清 task 各域 EvidenceView/审查/豁免、调 taskContext.cancel 收尾 * - 不负责:清理范围计算(用 cleanup_helpers 共享常量)、middleware 层 confirm 拦截 * * 被谁调用:server/tools/sf_task.ts(dispatch action==="cancel",经 index.ts 公共导出) * 调用谁:task_context(TaskContextManager)、adversarial_review_store、waiver_store、cleanup_helpers(CLOSED_STATUSES) * * 数据流:args(confirm) + 当前 task → 校验 → 遍历各域删 gate records + 删审查 + 删豁免 → taskContext.cancel → 清理计数 result * 持久化:删 EvidenceView/审查/豁免记录 + 写 task 终态 cancelled(stores 写 .soloforge/ 任务状态文件) */ import type { TaskContextManager } from "../task_context.js"; /** cancel:取消当前任务 */ export declare function handleCancel(taskContext: TaskContextManager, args: Record, projectRoot: string): Promise<{ result: { success: boolean; cancelled_task_id: string; cleared_evidence: number; cleared_review_records: number; cleared_waivers: number; error?: undefined; next_step?: undefined; }; } | { result: { success: boolean; error: string; next_step: string; }; }>;