backlog-status
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinesebacklog-status
backlog-status
Không có "Điều kiện tiên quyết" riêng — skill này chỉ đọc frontmatter đã có, không tạo/scaffold
file nào (kể cả — đọc nếu đã có trong dự án; nếu chưa có, đọc
trực tiếp bản đi kèm skill tại thay vì tự tạo file mới, đúng
tinh thần read-only của skill này). Quy tắc /// dùng ở
dưới được tóm tắt đầy đủ hơn ở đó.
docs/spec-kit-conventions.mdtemplates/spec-kit-conventions.mdstatusblockedparent_*depends_onSkill chỉ đọc (read-only) — không sửa file nào. Mục tiêu: tổng hợp nhanh trạng thái backlog +
quan hệ cha-con giữa các cấp, từ frontmatter, vì kit này không duy trì file
dashboard/index riêng (tránh trùng lặp nội dung đã có trong frontmatter, tránh dữ liệu cũ do
quên cập nhật). Mục "Phạm vi"/"User stories thuộc feature này" trong
từng file Epic/Feature là bản tóm tắt cho người đọc, có thể bị quên cập nhật khi tạo item
mới thủ công (không qua skill ) — skill này KHÔNG dựa vào các mục đó, chỉ dựa
vào field (, — quan hệ cha-con trong backlog) và
(liên kết tới BR/UR/FR), nguồn duy nhất, luôn đúng vì mỗi file backlog bắt
buộc có các field này.
plan-backlogparent_*parent_epicparent_featuredocs_requirementsEpic nằm phẳng trong ; Feature/User Story nằm trong subfolder
theo Epic sở hữu () — khi
quét các thư mục này, đọc đệ quy qua mọi subfolder (không chỉ cấp ngay bên dưới), vẫn loại trừ
mọi . Subfolder chỉ là tổ chức vật lý, không thay đổi cách xác định quan hệ
cha-con (vẫn dựa vào , không suy ra Epic sở hữu từ tên subfolder).
docs/backlog/epics/docs/backlog/{features,user-stories}/{EPIC-ID}_{slug}/...*-template.mdparent_*无特殊“前置条件”——此skill仅读取已有的frontmatter,不会创建/生成任何文件(包括——若项目中已存在则读取;若不存在,则直接读取skill附带的版本,而非自行创建新文件,符合此skill的只读特性)。下文使用的///规则在该文档中有更完整的概述。
docs/spec-kit-conventions.mdtemplates/spec-kit-conventions.mdstatusblockedparent_*depends_on此skill仅为只读(read-only)——不会修改任何文件。目标:快速汇总backlog状态 + 各层级间的父子关系,数据来源为frontmatter,因为此套件不维护单独的仪表盘/索引文件(避免与frontmatter中已有的内容重复,防止因忘记更新导致数据过时)。每个Epic/Feature文件中的“范围”/“属于此Feature的User Stories”部分是为读者准备的摘要,手动创建新条目时(未通过 skill)可能会忘记更新——此skill不依赖这些部分,仅依赖字段(、——backlog中的父子关系)和(关联到BR/UR/FR),这是唯一的、始终准确的来源,因为每个backlog文件都必须包含这些字段。
plan-backlogparent_*parent_epicparent_featuredocs_requirementsEpic直接存放在目录下;Feature/User Story存放在所属Epic对应的子目录中()——扫描这些目录时,会递归遍历所有子目录(不仅是直接下级),但会排除所有文件。子目录仅为物理组织方式,不会改变父子关系的判定逻辑(仍基于字段,不会从子目录名称推断所属Epic)。
docs/backlog/epics/docs/backlog/{features,user-stories}/{EPIC-ID}_{slug}/...*-template.mdparent_*Quy trình
流程
-
Backlog hiện có: đọc frontmatter mọi file trong(đệ quy qua subfolder theo Epic, trừ các
docs/backlog/{epics,features,user-stories}/). "Backlog" là mọi item*-template.mdvà khôngstatus: draft(chưablockednghĩa là chưa xong). Nhóm theo loại (Epic/Feature/US) rồi theoapproved:status- → liệt kê riêng, kèm
blockedđể user biết đang chờ OQ nào.blocked_by_open_questions - → liệt kê theo nhóm (đây là phần có thể bắt đầu thực hiện), sắp xếp theo field
drafttrên Feature/US (prioritytrước,P0sau cùng,P3xếp cuối) — đúng thứ tự xử lý backlog. Epic không cónull, giữ nguyên nhóm.priority - Với mỗi item còn ID trong mà ID đó chưa
depends_on→ đánh dấu riêng "chưa thể bắt đầu (chờ <ID> xong)" cạnh item đó, dùstatus: approvedhiện tại làstatus.draft - Không liệt kê item đã /
status: approved— không còn tính là backlog đang mở.deprecated - không cascade từ con lên cha (xem
blockedmục 2, nguyên tắc chung #4): 1 Feature/Epicdocs/spec-kit-conventions.mdcó toàn bộ US/Feature con đangdraftvẫn liệt kê ở nhómblockednhư bình thường (không tự chuyển nhómdraft) — nhưng ghi kèm 1 ghi chú riêng "toàn bộ con đang blocked, chưa có việc nào làm được ngay" để user không hiểu nhầm là còn việc thực hiện được.blocked
-
Cây phân cấp Epic → Feature → User Story: đọc frontmatter mọi file trong(đệ quy qua subfolder theo Epic, trừ
docs/backlog/{epics,features,user-stories}/), dựng cây từ*-template.md(Feature),parent_epic(User Story). Đọc thêm frontmatter (chỉ để lấyparent_feature) củaid,docs/business-requirement/,docs/user-requirement/(trừdocs/functional-requirement/) để verify các field*-template.mdtrỏ sang BR/UR/FR dưới đây có tồn tại thật:parent_*- Với 1 Epic cụ thể được hỏi tới, hoặc toàn bộ backlog nếu user không chỉ định: in cây thụt
lề theo cấp, mỗi node kèm ID + tên + (ví dụ
status→ thụt lềEPIC-001 (draft) — Quản lý Task cá nhân→ thụt lề tiếpFEAT-001 (draft) — CRUD Task).US-001 (approved) — ... - Phát hiện liên kết gãy: nếu 1 file có /
parent_*trỏ tới ID không tồn tại (đã bị xoá/đổi tên/gõ sai) — bao gồmdocs_requirements/parent_epic(trongparent_feature) lẫndocs/backlogtrên Epic/Feature/US (mảng, bắt buộc ≥1 ID — kiểm tra từng ID trong mảng theo đúng prefix:docs_requirementstra trongBR-*,docs/business-requirement/tra trongUR-*,docs/user-requirement/tra trongFR-*) — liệt kê riêng phần "Liên kết gãy" — không bỏ qua âm thầm.docs/functional-requirement/ - Phát hiện item mồ côi ở đúng cấp của nó: item không match được vào cây (parent không tồn tại, dù ở tầng backlog hay trỏ ngược lên BR/UR/FR) → liệt kê ở "Liên kết gãy" cùng mục trên, không tự đoán nên gắn vào đâu.
- Nếu node có khác rỗng, ghi kèm ngay sau status, ví dụ
depends_onkhi US-004 chưaUS-007 (draft, chờ US-004) — ....approved
- Với 1 Epic cụ thể được hỏi tới, hoặc toàn bộ backlog nếu user không chỉ định: in cây thụt
lề theo cấp, mỗi node kèm ID + tên +
-
Trình bày kết quả dạng bảng/cây/gạch đầu dòng ngắn gọn, không diễn giải dài dòng. Nếu user chỉ hỏi 1 trong 2 phần (backlog hoặc cây phân cấp), chỉ trả lời phần đó.
-
当前Backlog:读取目录下所有文件的frontmatter(按Epic递归遍历子目录,排除
docs/backlog/{epics,features,user-stories}/)。“Backlog”指所有*-template.md且未被status: draft的条目(未blocked表示尚未完成)。按类型(Epic/Feature/US)分组,再按approved分组:status- → 单独列出,并附带
blocked字段,让用户了解正在等待哪些未解决问题(OQ)。blocked_by_open_questions - → 分组列出(这是可开始执行的部分),按Feature/US的
draft字段排序(priority优先,P0最后,P3排在末尾)——符合backlog的处理顺序。Epic没有null字段,保持原分组。priority - 若条目中包含的ID对应的条目尚未
depends_on→ 即使当前条目status: approved为status,也需单独标记“无法开始(等待<ID>完成)”。draft - 不列出已/
status: approved的条目——不再属于待处理的backlog。deprecated - 状态不会从子条目向上级条目传递(参考
blocked第2节,通用规则#4):一个docs/spec-kit-conventions.md状态的Feature/Epic,即使其所有子US/Feature都处于draft状态,仍会正常列在blocked分组中(不会自动转为draft分组)——但需附加单独备注“所有子条目均已blocked,暂无可立即执行的工作”,避免用户误解为仍有可执行任务。blocked
-
Epic → Feature → User Story层级树:读取目录下所有文件的frontmatter(按Epic递归遍历子目录,排除
docs/backlog/{epics,features,user-stories}/),通过*-template.md(Feature)、parent_epic(User Story)构建层级树。额外读取parent_feature、docs/business-requirement/、docs/user-requirement/目录下文件的frontmatter(仅获取docs/functional-requirement/,排除id),以验证以下*-template.md字段指向的BR/UR/FR是否真实存在:parent_*- 若用户询问特定Epic,或未指定则查询整个backlog:按层级缩进输出树状结构,每个节点附带ID + 名称 + (例如
status→ 缩进EPIC-001 (draft) — 个人任务管理→ 继续缩进FEAT-001 (draft) — CRUD任务)。US-001 (approved) — ... - 检测断裂链接:若某个文件的/
parent_*指向不存在的ID(已删除/重命名/拼写错误)——包括docs_requirements中的docs/backlog/parent_epic,以及Epic/Feature/US上的parent_feature(数组,必须包含≥1个ID——按前缀逐一验证数组中的每个ID:docs_requirements在BR-*中查询,docs/business-requirement/在UR-*中查询,docs/user-requirement/在FR-*中查询)——单独列出“断裂链接”部分,不得忽略。docs/functional-requirement/ - 检测孤立条目:无法匹配到层级树中的条目(父级不存在,无论是backlog层级还是指向BR/UR/FR)——与上述“断裂链接”部分一同列出,不得自行推断归属位置。
- 若节点的不为空,需在status后附带标注,例如当US-004尚未
depends_on时,显示approved。US-007 (draft, 等待US-004) — ...
- 若用户询问特定Epic,或未指定则查询整个backlog:按层级缩进输出树状结构,每个节点附带ID + 名称 +
-
以简洁的表格/树状结构/项目符号列表展示结果,无需冗长解释。若用户仅询问其中一部分(backlog或层级树),仅回答对应部分。