尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

skills 的 /to-tickets 在 GitHub 上没把工单创建成 spec issue 的子 issue 怎么排查?

skills 的 /to-tickets 在 GitHub 上没把工单创建成 spec issue 的子 issue 怎么排查? skills 的 /to-tickets 在 GitHub 上没把工单创建成 spec issue 的子 issue 怎么排查【免费下载链接】skillsSkills for Real Engineers. Straight from my .agents directory.项目地址: https://gitcode.com/GitHub_Trending/skills13/skills在 skills 仓库里/to-spec把已讨论完的方案作为一条 GitHub spec issue 发布/to-tickets再把 spec 拆成一组 tracer-bullet 工单、逐条发布成 issue。如果你跑完/to-tickets后发现工单都在、却没有一条被挂成 spec issue 的子 issueto-tickets 文档对这一现象的结论是known and unfixed。它在十次以上运行、多个模型上被报告过上游 issue #554 记录得最完整且在 Codex 上比在 Claude 上更常见。所以排查目标不是找出某处配置错误而是两件事先确认 tracker 配置无误再按文档给出的 reliable move——在ghv2.94 起原生支持子 issue 的前提下跑完后手动把父子关系补挂上。先确认 tracker 配置确实指向 GitHub/to-tickets发布到哪个 tracker由/setup-matt-pocock-skills的产物决定该 setup skill 会把 issue tracker 的选择写入docs/agents/issue-tracker.md选项包括 GitHub默认、GitLab、本地 markdown.scratch/等。先确认这个文件存在且指向 GitHub如果仓库没跑过 setupskill 会直接提示你运行/setup-matt-pocock-skills。由此分两种情况配置的是本地 markdown本来就没有GitHub 子 issue这回事。工单是.scratch/feature-slug/issues/NN-slug.md下的文件每 ticket 一个文件按依赖顺序编号blockers 在前阻塞关系只是文件内的文字从上到下手工推进。这种情况属于预期行为无需排查。配置的是 GitHub文档说工单应Use the platforms native blocking / sub-issue relationship where it has one缺的正是这条原生关系继续下面的核对。核对现象工单已发布但 Parent 只是正文文字/to-tickets的发布步骤是按依赖顺序blockers 先发这样每条工单的 Blocked by 可以引用真实编号每 ticket 发布一条 issue并打上ready-for-agenttriage 标签。用 GitHub tracker 模板约定的读 issue 命令确认工单本身存在、内容完整gh issue view issue 编号 --comments再核对工单正文里的## Parent一节。to-tickets SKILL的 issue 模板规定这一节是A reference to the parent issue on the tracker (if the source was an existing issue, otherwise omit this section)——它只是正文里的文字引用不是 GitHub 的原生子 issue 关系。正文写着 Parent 不代表链接挂上了你遇到的正是文字引用在、原生关系缺的状态。核对完现象结论可以直接落在文档的判定上On GitHub the tickets werent created as sub-issues of the spec issue是已知且未修复的问题。不要继续在 setup 配置上找原因文档给出的做法是Until the tracker template prefers those, wiring the parent links yourself after a run is the reliable move。手动补挂父子关系gh ≥ v2.94gh从 v2.94 起原生支持子 issue。前置条件在仓库 clone 内执行模板说明gh会从git remote -v自动推断仓库账号有该仓库的 issue 权限。工单尚未发布例如重跑/to-tickets或自己代发时创建命令直接带父 issuen替换为 spec issue 编号gh issue create --parent n标题与正文按模板约定填写gh issue create --title ... --body ...多行正文用 heredoc。工单已经发出常见情况时事后给每条工单补挂。parent替换为 spec issue 编号n替换为工单 issue 编号gh issue edit parent --add-sub-issue n对每条工单各执行一次。补完后的成功状态就是文档所说的 reliable move每条工单都以原生关系挂在 spec issue 下而不是只靠正文里的 Parent 文字。注意 skill 发布时不会自己做这一步已知未修复这是你的一次性手工善后不需要也不应该改 skill 文件。相邻问题Blocked by 也只写在正文里排查时顺便检查工单之间的 Blocked by 是否同样只是一行正文文字而非原生阻塞链接。文档记录了这一同族问题上游 issue #513 里甚至出现过 agent 声称 GitHub 根本没有原生阻塞关系的案例。GitHub 有原生支持gh issue create --blocked-by 12,15文档解释了为什么这样可行blockers 总是先发布所以创建被阻塞工单时blocker 的编号一定已经存在。正文里的 Blocked by 文字是给没有原生边关系的 tracker 准备的 fallback不是默认写法。子 issue 能力未启用时的替代写法如果仓库所在的 GitHub 环境没有启用 sub-issuesGitHub tracker 模板的 wayfinding 操作给了一个 fallback把子项加进父 issue 正文的 task list并在子 issue 正文顶部写Part of #mapmap替换为父 issue 编号。这是文档在 wayfinder 场景使用的写法/to-tickets的场景可以按同样思路处理。与另一类症状区分如果现象不是工单存在但没挂父子而是 agent 读 spec 时不断截断、反复重新取回片段、读不到结尾那是另一条已记录的故障spec 过大超出单条 issue 能干净返回的范围。文档的解法是/to-spec和/to-tickets在同一个 context window 里运行中间不要 clear 或 compact——这样 spec 根本不需要重新取回。它与子 issue 问题互不相干排查时不要混在一起。【免费下载链接】skillsSkills for Real Engineers. Straight from my .agents directory.项目地址: https://gitcode.com/GitHub_Trending/skills13/skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表