Todo

检查项目中的 TODO。扫描代码里的 TODO/FIXME 标记,逐条查证前提是否还成立、阻塞是否已解除,分成已过时、可以处理、还不能处理、无法判定列给用户,再问用户要不要清理、要不要开始处理。用于「有哪些 TODO 能做了」「清理一下 TODO」等场景。

baijunjie Updated

File contents

检查 TODO

只检查、只汇报,不要动代码:不删标记、不实现、不改写。列完表停下等用户指示。

扫哪些

  • 源码里的 TODO / FIXME / HACK / XXX 标记
  • 项目文档里的同类标记

尚未勾选的计划条目不算 TODO——那是还没执行的排期,不在本次检查范围内。

怎么判定

逐条查证,不许只读标记文本就下结论。 每条都要看它所在的代码现在是什么样、它提到的对象 (接口、开关、版本、前置工作)现在还存不存在。

分类 判据
已过时 前提没了:提到的对象已删除或改名、要做的事别处已经做了、描述的问题已不复现
可以处理 前提成立且阻塞已解除:依赖已就位、外部条件已满足、前置工作已完成
还不能处理 阻塞仍在,且能指名卡在什么上
无法判定 查不出前提现状、标记没写清要做什么,或多条判据同时命中且分不出主次。不要硬塞进上面三类
  • 判成「可以处理」必须说得出解除的依据;说不出就是「无法判定」。
  • 标记点名了某项前置工作的:找不到对应的计划文档不等于前提消失——计划文档做完常被删掉。 必须回代码确认标记所指的临时实现是否仍在被使用,确认不了归「无法判定」,不许归「已过时」。 前置工作确实完成了才算「可以处理」,否则归「还不能处理」。

怎么列

一条一行,按 已过时 → 可以处理 → 还不能处理 → 无法判定 分组,每行给出位置 文件:行号、 标记原文摘要、判定依据——查到了什么才这么判,不许省成一个分类词。

表后直接问用户两件事,一件一问:是否清理掉已过时的标记?是否开始处理「可以处理」的条目? 有「可以处理」的多条时,让用户点名处理哪几条。不要替用户决定,也不要在没有答复前动手。

baijunjie/agent-skills/tree/main/plugins/dev/skills/todo commit 4a7e67c3ba

Frequently asked questions

npx skillmds@latest add baijunjie/todo