用途:扫描代码库中的种子数据(seeder)模式,填充或同步 docs/project-reference/seed-test-data-reference.md 文档,使文档内容基于真实代码证据而非泛化描述。
主要能力与流程:
- 检测模式:读取目标文档与 docs/project-config.json,判断是初始化模式(占位/稀疏内容,需填写全部章节)还是同步模式(已有内容,仅更新陈旧或错误章节)。
- 收集证据:优先做证据扫描,例如 rg -n "DataSeeder|SeedData|CanSeedTestingData|SeedingMinimumDummyItemsCount|ExecuteInjectScopedAsync|ExecuteUowTask" src;rg -n "IPlatformApplicationDataSeeder|AddTransient<IPlatformApplicationDataSeeder" src;rg -n "WaitUntilAsync|SeedAdminUserData|CountAsync\(" src。需捕获的最小证据包括:seeder 基类/接口、环境门控方法或键、幂等判定与计数循环模式、DI 作用域模式(ExecuteInjectScopedAsync 与反模式)、DI 中的 seeder 注册模式、跨服务等待模式(如使用)。当存在 .code-graph/graph.db 时,运行 python .claude/scripts/code_graph trace <seeder-file> --direction both --json。
- 更新文档:目标文件为 docs/project-reference/seed-test-data-reference.md,尽量保留原有章节结构,用真实项目证据替换泛化表述,每条规则/示例需带 file:line 佐证,仅在源码中已验证时加入反模式警示,优先使用带清晰来源路径说明的短代码片段。
- 验证与报告:检查每个示例路径存在、关键方法/类名可被 grep 验证、指引与当前 docs/project-config.json 的 seeder 规则一致、无对已删除符号/文件的陈旧引用;报告写入 plans/reports/scan-seed-test-data-{YYMMDD}-{HHMM}-report.md,含模式、证据摘要(file:line)、更新的章节、未决问题。
使用方式:该技能为仓库技能,在 Codex 中用 $scan-seed-test-data 调用;调用前需建立任务跟踪,按步骤逐步执行并报告每步证据;不得跳过、重排或合并步骤,除非用户事先明确批准。
限制:需在提供项目配置与 docs/project-reference 目录的环境中运行;若某必需步骤或工具无法在当前环境执行,应先停止并询问用户;具体平台/技术栈适配、收费及可用性等资料暂未提供。