Files
eaiadminandClaude Code e9c0c4007c fix(task): 删任务级联清掉 run 与产物,不再留孤儿逐字稿
DELETE /api/my/tasks/:id 原先只删 task_record。实测:删前 1/7/6,
删后 0/7/6 —— 运行记录与产物原样留着。任务列表里再也看不到,
也没有任何接口能按 task_id 找回,等于永久留在库里。而产物正文常常是
完整逐字稿(一次 26 分钟会议的录音内容),于是「删掉任务」并不等于
「删掉录音内容」;交付前按 DELIVERY.md 手工清单 C 项清测试数据时,
会留下一批谁也删不掉的逐字稿。

补上 TaskRunDAO.DeleteByTask + TaskArtifactDAO.DeleteByTask —— 两个 DAO
早就有了,weixin_public_account 的工作流重置一直在配对使用,缺的只是
这里没调。先子后父:中途失败任务还在,重试一次就干净;反过来先删父
再失败,子记录就再没人能找到了。task_id 外键只有这两张表,即完整级联。

验证(internal/api/my_task_delete_test.go,真实路由 + 真实鉴权中间件):
先 stash 掉 my_task.go 跑,孤儿断言如期红;改回全绿。另有越权用例钉住
「404 且一条都不许少」,以及旁观任务证明不误伤。条数用 3/2 而非 1,
计数走模型而非表名字符串(拼错表名 Count 为 0,而 0 正是期望值)。
详见 bugs_and_errors.md E15。

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-27 00:16:39 +08:00
..