用途
jira-defect-analysis 是一个用于软件缺陷分析的工作流 Skill,主要面向需要按批次处理并归档缺陷的团队场景。它把「Jira 工单」与「源代码」两类信息交叉比对,对缺陷根因进行分类,并把结论回填到 Google Sheet 缺陷管理表中,形成可追溯的分析记录。
主要能力
- 触发识别:当用户提到 T-xxxx、缺陷分析、不具合、コード検証、bug triage,或「处理下一条」「继续分析」「回填 Sheet」等关键词时启用。
- 配置初始化:首次使用时可交互采集 Jira、Google Sheet、代码仓库、回填规则、通知对象五类配置,并写入 /tmp/defect-config.json 供后续复用。
- 待处理列表获取:从 Google Sheet 读取管理编号列建立编号与行号的映射,再用 Jira 新搜索 API(POST /rest/api/3/search/jql)获取当前用户名下 Issue,交叉比对区分「正常件」「快速件」「已完成」三类。
- 逐条分析:读取 Jira 完整信息、下载并查看全部附件、用 Grep/Read 检索与阅读代码,验证问题是否真实存在、修复是否已实装、是否存在可能导致数据回退的批处理。
- 分类与回填:按配置的候选值给出分类结论,等待用户确认后回填 Google Sheet(分类列、分析结论列、背景色)并向 Jira 提交 ADF 格式评论并 @mention 相关人员,最后用 readSpreadsheet 验证回填值。
- 快速通道:对重复单、ON HOLD、已确认非 BUG 的工单进行简化处理。
- 进度持久化与报告:处理进度保存至 /tmp/defect-progress.json,全部完成后生成 markdown 报告,含构成比统计、全件一览、特筆発見与改善提案。
使用方式
核心原则为四条:每一条都必须读 Jira 详情加查代码验证、绝不猜测;附件全看(图片用 Read,Excel 用 openpyxl);必须等用户确认后才能回填;回填后必须验证。操作上依赖若干外部工具与接口:
- Jira:使用 REST API v3,搜索需用新接口 POST /rest/api/3/search/jql(旧的 /search 已废弃);读取 issue 用 GET /rest/api/3/issue/{KEY};获取用户 accountId 用 GET /rest/api/3/user/search?query=姓名。
- 凭证:支持 KeyFlow 项目名、环境变量或直接提供;若为 KeyFlow,用 keyflow_get_env_snippet(project="xxx", mask_values=false) 获取。
- curl 注意事项:因 rtk 会过滤输出,必须用 -o 存文件后再用 python 解析;下载附件必须加 -L 以跟随重定向,下载后检查文件大小(小于 1KB 视为失败)。
- Google Sheet:通过 searchDriveFiles 搜索、batchWrite 写分类列、writeSpreadsheet 与 formatCells 写结论列和背景色。
- 代码仓库:通过 Grep 按关键词检索、用 Read 阅读核心逻辑,文件扩展名由配置中的技术栈决定。
配置文件 /tmp/defect-config.json 包含 jira、sheet、repo、backfill、mentions 等字段;配置存在后后续 session 直接加载,用户也可随时说「更新配置」重新采集。回填规则建议让用户提供一行已填好的示例行,自动推断列映射与格式。
适用场景
- 需要批量处理 Jira 缺陷并按统一格式归档到管理表的团队。
- 缺陷根因需要结合源码验证、而非仅凭描述判断的排查任务。
- 需要将分析结论同步回 Jira 评论并通知相关人员的协作流程。
- 涉及重复单、挂起单等特殊状态需要分流处理的缺陷整理。
限制
- 每条分析必须等用户确认后才能回填,无法完全无人值守。
- 依赖 Jira 凭证、Google Sheet 访问权限与本地代码仓库路径,缺失任一环节无法执行。
- 缺少配置时需先完成交互式初始化采集。
- 具体价格、收费方式、平台可用性等资料暂未提供。