to-tickets
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinese<!-- markdownlint-disable MD013 MD033 -->
<!-- markdownlint-disable MD013 MD033 -->
To Tickets
生成工单
Break a plan, spec, or the current conversation into a set of tickets —
tracer-bullet vertical slices, each declaring the tickets that block it —
and publish them to the tracker.
The tracker and label vocabulary come from ; run
if missing. Titles and bodies use the glossary in
.
docs/agents/issue-tracker.mdbootstrapdocs/agents/domain.md将计划、规格说明或当前对话拆分为一组工单——追踪式垂直切片,每个工单明确指出其阻塞的前置工单——并发布至任务追踪器。
任务追踪器和标签词汇来自;若缺失请运行初始化。工单标题和内容使用中的术语表。
docs/agents/issue-tracker.mdbootstrapdocs/agents/domain.mdProcess
流程
1. Gather context
1. 收集上下文
Work from the conversation. If the user passes a reference (spec path, issue
number/URL), fetch its full body and comments. If a meta issue already
exists for this work (the strategic spec/PRD), fetch it — the tactical tickets
you create will set their parent to it.
从对话内容入手。如果用户提供了参考(规格说明路径、议题编号/URL),获取其完整内容和评论。如果已存在针对此项工作的meta issue(战略规格说明/PRD),获取该议题——你创建的战术工单会将其设为父议题。
2. Explore the codebase (optional)
2. 探索代码库(可选)
If not already done, explore to understand current state. Look for
prefactoring opportunities: "make the change easy, then make the easy
change."
如果尚未完成,探索代码库以了解当前状态。寻找预重构机会:"先让变更变得容易,再完成这个容易的变更。"
3. Draft vertical slices
3. 草拟垂直切片
<vertical-slice-rules>
- Each slice cuts a narrow but COMPLETE path through every layer (schema, API, UI, tests) — vertical, NOT a horizontal slice of one layer.
- A completed slice is demoable or verifiable on its own.
- Each slice fits in a single fresh context window.
- Each slice stays on the minimalism ladder (): no speculative abstractions, no scaffolding "for later", the minimum seam that proves the path.
docs/agents/workflow.md
Give each ticket its blocking edges — the tickets that must complete before
it can start. A ticket with no blockers can start immediately.
Wide refactors are the exception. A mechanical change whose blast radius
fans across the whole codebase can't be a single tracer bullet. Sequence it
expand–contract: first expand (add the new form beside the old so nothing
breaks), then migrate call sites in batches sized by blast radius (per package /
directory), each batch a ticket blocked by the expand, keeping CI green; a final
contract ticket removes the old form once all batches land.
<vertical-slice-rules>
- 每个切片都要贯穿所有层级(schema、API、UI、测试),切出一条狭窄但完整的路径——是垂直切片,而非单一层级的水平切片。
- 完成后的切片可独立演示或验证。
- 每个切片的内容适配单一全新上下文窗口。
- 每个切片遵循极简主义阶梯():不做推测性抽象,不搭建"为未来准备"的脚手架,只保留能验证路径的最小必要衔接。
docs/agents/workflow.md
为每个工单明确其阻塞依赖——即必须先完成才能启动当前工单的其他工单。无阻塞依赖的工单可立即启动。
大范围重构是例外情况。影响范围覆盖整个代码库的机械变更无法作为单一追踪式切片处理。需按扩展-收缩模式排序:首先扩展(在旧代码旁添加新实现,确保原有功能不受影响),然后按影响范围分批迁移调用站点(按包/目录划分),每批作为一个工单,依赖于扩展步骤的完成,确保CI始终保持绿色;最后一个收缩工单在所有批次完成后移除旧实现。
4. Publish
4. 发布
Create one issue per ticket via the GitHub MCP (,
) or . Set the full field set at creation:
milestone (the release the meta issue carries), assignee (),
project, labels, and parent to the meta issue
() so the tactical tickets roll up under
the strategic epic. Model blocking edges as native sub-issues, or a
line in the body. Apply the label to tickets
with no unresolved blockers. Hand back the ticket URLs and the blocking graph.
GitHub_issue_writeGitHub_sub_issue_writegh@megh issue create ... --parent <meta>Blocked by: #Nready-for-agent通过GitHub MCP(、)或工具为每个工单创建一个议题。创建时设置完整字段:milestone(meta issue关联的版本)、assignee()、project、标签,以及parent(关联至meta issue,使用),使战术工单归属于战略史诗议题。将阻塞依赖建模为原生子议题,或在工单正文中添加行。为无未解决阻塞依赖的工单添加标签。返回工单URL和阻塞关系图。
GitHub_issue_writeGitHub_sub_issue_writegh@megh issue create ... --parent <meta>Blocked by: #Nready-for-agent5. Hand off to delivery
5. 交付移交
Each ticket becomes one branch and one PR; the blocking graph is the stack order
(a PR's base is the branch of the ticket that blocks it). Note the issue number
and branch name per ticket so opens an atomic PR that links it.
implement每个工单对应一个分支和一个PR;阻塞关系图即为堆叠顺序(PR的基准分支是其依赖工单的分支)。记录每个工单的议题编号和分支名称,以便工具创建关联该工单的原子PR。
implementBoundaries
边界
Produces tickets and their edges. Does not implement them (that's ).
implement仅生成工单及其依赖关系。不负责工单的实现(实现由工具完成)。
implement