工单技术事后分析(单一字段 + 指针)
用户将所有内容放入一个字段,并将其他分析字段指向该字段,避免重复描述。模拟此工作流程。
配置
在执行任何操作之前,请先读取 ~/.config/skills/analyse-causes/config.md。该文件设置了工单管理系统及其工具、项目和工单键匹配模式、字段格式、撰写语言和章节标题、主撰写字段、被指向字段及其提示文本,以及 MR 链接字段。如果该文件缺失,请告知用户将 config.example.md(位于本文件旁边)复制到 ~/.config/skills/analyse-causes/config.md 并填写内容,然后停止执行。
目标:传递给脚本的工单参数,否则为当前会话中正在修复的内容(diff / branch / MR)。
产出内容
一份完整的撰写内容,使用配置中指定的语言,采用 Markdown 格式,并包含配置标题下的两个章节:
- 根本原因 - 技术上的为什么会发生。不要复述初始情况(症状 / 工单描述)。回溯到真正起源:设计选择、
常量/文件:行号、错误假设。绝不要提及可见症状。 - 修复方案 - 修改了什么以及为何它消除了根本原因。事实性描述:采用的机制、涉及的文件/常量、产生的行为。此处不包含 MR 链接:该链接应放到配置的 MR 链接字段中。
规则:简洁、短小精悍的要点、使用精确术语(常量、函数、文件:行号)、与实际代码核对。不要使用长破折号(U+2014)——使用连字符、逗号或重新组织句子。
执行步骤
- 识别工单:参数 = 与配置模式匹配的键;否则为正在修复的内容(当前会话的 diff / branch / MR)。
- 如有需要,通过配置的工具读取工单,但不要复制其描述。
- 在代码中追溯根本原因,并列出修复方案的变更(git diff / MR)。
- 撰写完整的分析内容。
- 展示该内容,然后按配置的格式填写字段:
- 主撰写字段 <- 完整的分析内容
- 每个被指向字段 <- 包含配置的提示文本的段落文档 如果没有定位到工单(会话中的修复没有关联工单键),则仅展示撰写内容并提供填写字段的选项。