@mstar-harness/opencode 1.0.5 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/harness-agents/qc-specialist-2.md +9 -16
- package/harness-agents/qc-specialist-3.md +9 -16
- package/harness-agents/qc-specialist.md +9 -16
- package/harness-skills/mstar-branch-worktree/SKILL.md +2 -2
- package/harness-skills/mstar-dispatch-gates/SKILL.md +3 -3
- package/harness-skills/mstar-harness-core/SKILL.md +2 -2
- package/harness-skills/mstar-host/references/cursor-plan-mode-bridge.md +4 -4
- package/harness-skills/mstar-host/references/cursor.md +1 -1
- package/harness-skills/mstar-host/references/parallel-dispatch.md +3 -3
- package/harness-skills/mstar-iteration/SKILL.md +6 -5
- package/harness-skills/mstar-iteration/references/iteration-compass-template.md +14 -0
- package/harness-skills/mstar-iteration/references/iteration-corpus-hygiene.md +1 -1
- package/harness-skills/mstar-phase-gates/SKILL.md +2 -2
- package/harness-skills/mstar-plan-artifacts/SKILL.md +2 -2
- package/harness-skills/mstar-plan-artifacts/references/done-compaction.md +2 -2
- package/harness-skills/mstar-plan-artifacts/references/knowledge-and-designs.md +9 -8
- package/harness-skills/mstar-plan-artifacts/references/plan-files-and-reports.md +39 -21
- package/harness-skills/mstar-plan-artifacts/references/status-and-residuals.md +7 -6
- package/harness-skills/mstar-plan-conventions/SKILL.md +7 -7
- package/harness-skills/mstar-plan-conventions/references/artifact-storage-paths.md +4 -4
- package/harness-skills/mstar-plan-conventions/references/harness-bootstrap-and-agents-layering.md +2 -2
- package/harness-skills/mstar-review-qc/SKILL.md +5 -5
- package/harness-skills/mstar-review-qc/references/review-responsibility-boundaries.md +5 -5
- package/harness-skills/mstar-roles/SKILL.md +7 -7
- package/harness-skills/mstar-roles/references/project-manager/plan-management.md +2 -2
- package/harness-skills/mstar-roles/references/project-manager/qa-trigger-matrix.md +2 -2
- package/harness-skills/mstar-roles/references/project-manager/qc-and-residuals.md +6 -6
- package/harness-skills/mstar-roles/references/project-manager.md +4 -4
- package/harness-skills/mstar-roles/references/qa-engineer/acceptance-gate.md +2 -2
- package/harness-skills/mstar-roles/references/qa-engineer.md +4 -2
- package/harness-skills/mstar-roles/references/qc-specialist/report-template.md +1 -1
- package/harness-skills/mstar-roles/references/qc-specialist/reviewer-workflow.md +1 -1
- package/harness-skills/mstar-roles/references/qc-specialist-shared.md +7 -7
- package/harness-skills/mstar-sdd/SKILL.md +3 -3
- package/harness-skills/mstar-sdd/references/file-handoffs.md +3 -2
- package/harness-skills/mstar-sdd/references/task-reviewer-prompt.md +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,19 @@ All notable changes to the `@mstar-harness/opencode` package are documented in t
|
|
|
4
4
|
|
|
5
5
|
The monorepo root [CHANGELOG.md](../../CHANGELOG.md) summarizes cross-surface releases.
|
|
6
6
|
|
|
7
|
+
## 1.1.0
|
|
8
|
+
|
|
9
|
+
- Bundled skills: raw QC/QA process reports default to gitignored `{SDD_DIR}/review/`; durable gate summaries and `status.json` residual findings are the tracked handoff surface. `{PLAN_DIR}/reports/` is legacy / explicit audit mode only.
|
|
10
|
+
- Bundled skills: iteration compass template adds `Quality Gate Summary` for iteration-level QC/QA and residual rollups.
|
|
11
|
+
|
|
12
|
+
See root [CHANGELOG.md](../../CHANGELOG.md) **1.1.0**.
|
|
13
|
+
|
|
14
|
+
## 1.0.6
|
|
15
|
+
|
|
16
|
+
- Bundled skills: `mstar-sdd` pins L2 per-task reviewer to `generalPurpose`; forbids `qc-specialist*` at task scope.
|
|
17
|
+
|
|
18
|
+
See root [CHANGELOG.md](../../CHANGELOG.md) **1.0.6**.
|
|
19
|
+
|
|
7
20
|
## 1.0.5
|
|
8
21
|
|
|
9
22
|
- Bundled skills: tiered QA gate (`qa-trigger-matrix.md`, `acceptance-gate.md`); QC/QA leaf refs under `mstar-roles/references/`; `mstar-review-qc` PM orchestration only; positive-only load lists; routing-eval v17.
|
|
@@ -9,21 +9,17 @@ tools:
|
|
|
9
9
|
edit: true
|
|
10
10
|
bash: true
|
|
11
11
|
permission:
|
|
12
|
-
# `edit` covers write/patch/multiedit. Only `.md` under resolved `{
|
|
12
|
+
# `edit` covers write/patch/multiedit. Only `.md` under resolved `{SDD_DIR}/review/` bundle roots.
|
|
13
13
|
edit:
|
|
14
14
|
"*": deny
|
|
15
|
-
".mstar/
|
|
16
|
-
".mstar/
|
|
17
|
-
".agents/
|
|
18
|
-
".agents/
|
|
19
|
-
".
|
|
20
|
-
".
|
|
21
|
-
".worktrees/**/.
|
|
22
|
-
".worktrees/**/.
|
|
23
|
-
".worktrees/**/.agents/plans/reports/*.md": allow
|
|
24
|
-
".worktrees/**/.agents/plans/reports/**/*.md": allow
|
|
25
|
-
".worktrees/**/.plans/reports/*.md": allow
|
|
26
|
-
".worktrees/**/.plans/reports/**/*.md": allow
|
|
15
|
+
".mstar/sdd/*.md": allow
|
|
16
|
+
".mstar/sdd/**/*.md": allow
|
|
17
|
+
".agents/sdd/*.md": allow
|
|
18
|
+
".agents/sdd/**/*.md": allow
|
|
19
|
+
".worktrees/**/.mstar/sdd/*.md": allow
|
|
20
|
+
".worktrees/**/.mstar/sdd/**/*.md": allow
|
|
21
|
+
".worktrees/**/.agents/sdd/*.md": allow
|
|
22
|
+
".worktrees/**/.agents/sdd/**/*.md": allow
|
|
27
23
|
bash:
|
|
28
24
|
"*": deny
|
|
29
25
|
# Git inspection (read-only)
|
|
@@ -35,9 +31,6 @@ permission:
|
|
|
35
31
|
"git stash list*": allow
|
|
36
32
|
"git branch*": allow
|
|
37
33
|
"git status*": allow
|
|
38
|
-
# Versioning QC reports only (paths you edited must stay under allowed reports/ trees)
|
|
39
|
-
"git add*": allow
|
|
40
|
-
"git commit*": allow
|
|
41
34
|
# JavaScript / TypeScript
|
|
42
35
|
"eslint*": allow
|
|
43
36
|
"npx eslint*": allow
|
|
@@ -9,21 +9,17 @@ tools:
|
|
|
9
9
|
edit: true
|
|
10
10
|
bash: true
|
|
11
11
|
permission:
|
|
12
|
-
# `edit` covers write/patch/multiedit. Only `.md` under resolved `{
|
|
12
|
+
# `edit` covers write/patch/multiedit. Only `.md` under resolved `{SDD_DIR}/review/` bundle roots.
|
|
13
13
|
edit:
|
|
14
14
|
"*": deny
|
|
15
|
-
".mstar/
|
|
16
|
-
".mstar/
|
|
17
|
-
".agents/
|
|
18
|
-
".agents/
|
|
19
|
-
".
|
|
20
|
-
".
|
|
21
|
-
".worktrees/**/.
|
|
22
|
-
".worktrees/**/.
|
|
23
|
-
".worktrees/**/.agents/plans/reports/*.md": allow
|
|
24
|
-
".worktrees/**/.agents/plans/reports/**/*.md": allow
|
|
25
|
-
".worktrees/**/.plans/reports/*.md": allow
|
|
26
|
-
".worktrees/**/.plans/reports/**/*.md": allow
|
|
15
|
+
".mstar/sdd/*.md": allow
|
|
16
|
+
".mstar/sdd/**/*.md": allow
|
|
17
|
+
".agents/sdd/*.md": allow
|
|
18
|
+
".agents/sdd/**/*.md": allow
|
|
19
|
+
".worktrees/**/.mstar/sdd/*.md": allow
|
|
20
|
+
".worktrees/**/.mstar/sdd/**/*.md": allow
|
|
21
|
+
".worktrees/**/.agents/sdd/*.md": allow
|
|
22
|
+
".worktrees/**/.agents/sdd/**/*.md": allow
|
|
27
23
|
bash:
|
|
28
24
|
"*": deny
|
|
29
25
|
# Git inspection (read-only)
|
|
@@ -35,9 +31,6 @@ permission:
|
|
|
35
31
|
"git stash list*": allow
|
|
36
32
|
"git branch*": allow
|
|
37
33
|
"git status*": allow
|
|
38
|
-
# Versioning QC reports only (paths you edited must stay under allowed reports/ trees)
|
|
39
|
-
"git add*": allow
|
|
40
|
-
"git commit*": allow
|
|
41
34
|
# JavaScript / TypeScript
|
|
42
35
|
"eslint*": allow
|
|
43
36
|
"npx eslint*": allow
|
|
@@ -9,21 +9,17 @@ tools:
|
|
|
9
9
|
edit: true
|
|
10
10
|
bash: true
|
|
11
11
|
permission:
|
|
12
|
-
# `edit` covers write/patch/multiedit. Only `.md` under resolved `{
|
|
12
|
+
# `edit` covers write/patch/multiedit. Only `.md` under resolved `{SDD_DIR}/review/` bundle roots.
|
|
13
13
|
edit:
|
|
14
14
|
"*": deny
|
|
15
|
-
".mstar/
|
|
16
|
-
".mstar/
|
|
17
|
-
".agents/
|
|
18
|
-
".agents/
|
|
19
|
-
".
|
|
20
|
-
".
|
|
21
|
-
".worktrees/**/.
|
|
22
|
-
".worktrees/**/.
|
|
23
|
-
".worktrees/**/.agents/plans/reports/*.md": allow
|
|
24
|
-
".worktrees/**/.agents/plans/reports/**/*.md": allow
|
|
25
|
-
".worktrees/**/.plans/reports/*.md": allow
|
|
26
|
-
".worktrees/**/.plans/reports/**/*.md": allow
|
|
15
|
+
".mstar/sdd/*.md": allow
|
|
16
|
+
".mstar/sdd/**/*.md": allow
|
|
17
|
+
".agents/sdd/*.md": allow
|
|
18
|
+
".agents/sdd/**/*.md": allow
|
|
19
|
+
".worktrees/**/.mstar/sdd/*.md": allow
|
|
20
|
+
".worktrees/**/.mstar/sdd/**/*.md": allow
|
|
21
|
+
".worktrees/**/.agents/sdd/*.md": allow
|
|
22
|
+
".worktrees/**/.agents/sdd/**/*.md": allow
|
|
27
23
|
bash:
|
|
28
24
|
"*": deny
|
|
29
25
|
# Git inspection (read-only)
|
|
@@ -35,9 +31,6 @@ permission:
|
|
|
35
31
|
"git stash list*": allow
|
|
36
32
|
"git branch*": allow
|
|
37
33
|
"git status*": allow
|
|
38
|
-
# Versioning QC reports only (paths you edited must stay under allowed reports/ trees)
|
|
39
|
-
"git add*": allow
|
|
40
|
-
"git commit*": allow
|
|
41
34
|
# JavaScript / TypeScript
|
|
42
35
|
"eslint*": allow
|
|
43
36
|
"npx eslint*": allow
|
|
@@ -139,10 +139,10 @@ description: Morning Star business-repo Git feature branches, same-repo concurre
|
|
|
139
139
|
|
|
140
140
|
- **`project-manager`** 分派 **QC** 时须在 Assignment 写明与待审实现一致的 **`Working branch`**,并写明 **`Review cwd` / `Worktree path`**:**优先**沿用开发 **Completion Report** 中回报的业务仓 **实现检出路径**(即「该 feature 的 worktree」)**当且仅当**该路径上的检出分支 **`HEAD` 已包含本轮待审的全部提交**(含曾发生在其他并行 worktree、现已归并到该分支的变更)。否则 **必须**改用 **集成完成后的** `Working branch` 与对应检出路径(或在该分支上 **另开** 审查专用 worktree)。若开发未用 worktree,则写明单一明确的业务仓根路径。若审查需与开发目录 **物理分离** 但仍审 **同一分支**,可指示在 **`Working branch`** 上 **另加** 一个 worktree 专供审查(只读使用业务仓)。**多流并行开发**时的前置归并、**推荐默认编排(plan 集成分支先行)** 与误派禁令见上一小节。
|
|
141
141
|
- **三票审同一功能(强制对齐)**:分派 **QC 三审**时,除上述字段外,**必须**在 **三份 Assignment 中逐字写入相同**的 **`plan_id`** 与 **`Review range` / `Diff basis`**:
|
|
142
|
-
- **`plan_id`**:与 `{
|
|
142
|
+
- **`plan_id`**:与 `{SDD_DIR}` 的 `<plan-id>` 段、主 **Plan Path**、`status.json.plans[].id` 一致;无 `{PLAN_DIR}` 流程时写 **`plan_id: N/A`**,并另给一行 **`Feature / scope label`**(不可歧义,足以与并行其它 feature 区分)。
|
|
143
143
|
- **`Review range` / `Diff basis`**:明确本次审查所针对的 **diff/提交范围**(例如 `merge-base: <target_branch-or-base-ref>` + `tip: HEAD`;或 `rev-range: <full-40>..<full-40>`;或一句 `equivalent to: git diff <merge-base>...HEAD`,以团队可复现为准)。**三名 reviewer 的 Assignment 间该字段必须完全一致**;**`qa-engineer`** 验证同一 feature 时 **复用同一 `plan_id` 与同一 `Review range` / `Diff basis`**。**热修 / QC 单审**路径也须含 **同一组字段**,仅承接方份数为 1。
|
|
144
144
|
- **三审并行**时,三名 reviewer **共用同一组 `Review cwd` / `Worktree path` + `Working branch` + `plan_id` + `Review range` / `Diff basis`**(对业务仓只读分析);**一般不必**为每位 reviewer 各开一个 worktree,除非宿主或执行环境要求进程级隔离。
|
|
145
|
-
- QC 的
|
|
145
|
+
- QC 的 **报告落盘**默认仅限 Assignment 指定的 `{SDD_DIR}/review/`;上述约定保证 `git diff`、`git log`、lint 与所读文件与 **待合并 feature** 一致。PM 另行提交主 plan gate summary / `status.json` residual changes as durable artifacts.
|
|
146
146
|
- **`project-manager`** 分派 **`qa-engineer`** 时(仅 **`QA gate: mandatory`**),Assignment 须与 QC **逐字相同**的 **`Review cwd` / `Worktree path`**、**`Working branch`**、**`plan_id`**、**`Review range` / `Diff basis`**(QC 已写清则 QA 照抄)。**`qa-engineer`** 执行业务仓命令前须核对检出与分支;Report-only 且无路径依赖时,回报须说明验证环境,否则 `Blocked`。
|
|
147
147
|
- 若 **QA 与同仓其他可写角色并发**提交测试代码,仍须遵守上文「同仓并发写入」的 **worktree** 规则(可为 QA 单开一条写入 worktree,**同一 `Working branch`**,由 PM 在 Assignment 写明)。
|
|
148
148
|
|
|
@@ -54,8 +54,8 @@ description: Morning Star 派发与委派门禁 —— 仅 PM 可增派 subagent
|
|
|
54
54
|
当 PM 声明「并发分派」时,须同时满足**文案并发**与**工具并发**:
|
|
55
55
|
|
|
56
56
|
- **工具并发**:同一调度轮次内,多个 subagent 调用须在**同一条 assistant 消息**里一次性发出(宿主允许时)。
|
|
57
|
-
- **QC tri-review(SDD 强制)**:`Execution mode: sdd` 且全部 task 完成后 → `qc-specialist` / `qc-specialist-2` / `qc-specialist-3` 同条消息 **N=3
|
|
58
|
-
- **QC 单席(例外)**:`Execution mode: inline`(hotfix 等),或 Assignment 显式 `QC mode: single` / `QC mode: single — override: <reason>` → `qc-specialist` ×1,`N=1
|
|
57
|
+
- **QC tri-review(SDD 强制)**:`Execution mode: sdd` 且全部 task 完成后 → `qc-specialist` / `qc-specialist-2` / `qc-specialist-3` 同条消息 **N=3**(写 `{SDD_DIR}/review/qc1.md`…`qc3.md`;PM 汇总 `qc-consolidated.md` + durable plan summary)。Assignment 须含 branch **review-package** 路径与 report paths。适用于**单 plan 与 iteration**。
|
|
58
|
+
- **QC 单席(例外)**:`Execution mode: inline`(hotfix 等),或 Assignment 显式 `QC mode: single` / `QC mode: single — override: <reason>` → `qc-specialist` ×1,`N=1`,写 `{SDD_DIR}/review/qc.md`。
|
|
59
59
|
- **QC targeted re-review**:Assignment 含 **`QC re-review: targeted — reviewers: …`** 时,**N** = 所列席位数(1–3),同条消息发满 **N**。
|
|
60
60
|
- **先自检再发送**:发送前核对「Assignment 条数 = 本条消息中的实际 **派发** 调用条数」。
|
|
61
61
|
- **前置步骤与派发回合分离(防串行 rollout)**:为派发准备的 **`bash` / `read` / `glob` / `grep`**(如 `merge-base`、`Review range`、`git rev-parse`)**不计入** `N` 次派发;可在上一条仅含准备的消息完成。准备完成后,**下一条派发消息**须**一次性**含 **`N` 次** Task / subagent invoke。**禁止**先发 `1` 次、等返回再补发其余 `N-1` 次。
|
|
@@ -73,7 +73,7 @@ When **`Execution mode: sdd`** (`mstar-sdd`):
|
|
|
73
73
|
- **`SDD implementer session: sticky`**:same implementer subagent may **resume** across tasks when host supports it; **reviewers never resume** — see **`mstar-sdd/references/sticky-implementer-session.md`**.
|
|
74
74
|
- File handoffs only — no pasted plan/diff/history in dispatch prompts.
|
|
75
75
|
- Record per-task BASE SHA; use `review-package` for diffs — **never `HEAD~1`**.
|
|
76
|
-
- After all tasks: branch `review-package` → **mandatory tri-review N=3** when `Execution mode: sdd`; **N=1** only for `inline` / explicit single override.
|
|
76
|
+
- After all tasks: branch `review-package` in `{SDD_DIR}/review/` → **mandatory tri-review N=3** when `Execution mode: sdd`; **N=1** only for `inline` / explicit single override.
|
|
77
77
|
|
|
78
78
|
## 并行规则(摘要)
|
|
79
79
|
|
|
@@ -39,7 +39,7 @@ description: Morning Star (启明星) harness **强制全局入口** —— 信
|
|
|
39
39
|
| 角色 | 始终 | 按任务追加(典型) |
|
|
40
40
|
|------|------|-------------------|
|
|
41
41
|
| **全部** | 本 skill | — |
|
|
42
|
-
| **`@project-manager`** | 本 skill | `mstar-dispatch-gates`、`mstar-phase-gates`、`mstar-plan-conventions`、`mstar-roles`;implement 波次 `mstar-sdd`;派 QC 前 `mstar-review-qc`;并行/审查 `mstar-branch-worktree`;plan/status/
|
|
42
|
+
| **`@project-manager`** | 本 skill | `mstar-dispatch-gates`、`mstar-phase-gates`、`mstar-plan-conventions`、`mstar-roles`;implement 波次 `mstar-sdd`;派 QC 前 `mstar-review-qc`;并行/审查 `mstar-branch-worktree`;plan/status/review bundle `mstar-plan-artifacts`;UI 类 plan Prepare 阶段 `mstar-design-md`(DESIGN.md 门禁);新建/大改 skill 时 `mstar-skill-authoring`;迭代管理 `mstar-iteration`(Phase 1–5);战略性工作 `mstar-strategy`。**不**读 `mstar-coding-behavior` |
|
|
43
43
|
| **实现/审查/运维** | 本 skill + `mstar-coding-behavior` + 角色 ref | 有 git 写:`mstar-branch-worktree`;有 plan 路径:`mstar-plan-conventions`;**PM** 派 QC 前:`mstar-review-qc`;**`qc-specialist*`**:`mstar-roles` → `references/qc-specialist/`;`qa-engineer`:`references/qa-engineer/`;改 status/residual:`mstar-plan-artifacts`;UI:`mstar-design-md`;知识库:`mstar-compound`(PM) |
|
|
44
44
|
| **leaf 承接方** | 上栏 + **`mstar-dispatch-gates`**(反递归节) | — |
|
|
45
45
|
|
|
@@ -92,7 +92,7 @@ PM 在 Assignment 写 **`Task category`**(主类 + 可选 `secondary`):
|
|
|
92
92
|
| `mstar-sdd` | Subagent-driven development:file handoff、per-task review、ledger |
|
|
93
93
|
| `mstar-branch-worktree` | 功能分支、worktree、QC/QA 检出对齐 |
|
|
94
94
|
| `mstar-plan-conventions` | `{HARNESS_DIR}` 发现、初始化、Spec 分支模型摘要、产物路径 SSOT |
|
|
95
|
-
| `mstar-plan-artifacts` | 主 plan、
|
|
95
|
+
| `mstar-plan-artifacts` | 主 plan、review bundle / durable summaries、`status.json`、residual、knowledge、Done 归档 |
|
|
96
96
|
| `mstar-design-md` | DESIGN.md 设计系统规范 —— 创建/审计/维护 design tokens,三级检查清单,light/dark 双主题 |
|
|
97
97
|
| `mstar-review-qc` | PM:QC tri 编排、residual 留档、四层边界;leaf 执行 → `mstar-roles/references/qc-specialist/` |
|
|
98
98
|
| `mstar-coding-behavior` | Think / Simplicity / Surgical / Debugging / Review Feedback / Goal-Driven / Communication |
|
|
@@ -31,7 +31,7 @@ Cursor **Plan mode** uses **CreatePlan** and built-in plan todos for session UX.
|
|
|
31
31
|
When plan management is required and directories are missing:
|
|
32
32
|
|
|
33
33
|
1. Create `{HARNESS_DIR}` and `{PLAN_DIR}`.
|
|
34
|
-
2.
|
|
34
|
+
2. Ensure `{HARNESS_DIR}/sdd/` is gitignored; per-plan review bundles are created under `{SDD_DIR}/review/` when needed.
|
|
35
35
|
3. Create `{HARNESS_DIR}/archived/residuals/`.
|
|
36
36
|
4. Initialize `{HARNESS_DIR}/status.json` from `mstar-plan-artifacts/templates/status.empty.json` if missing.
|
|
37
37
|
5. Optional: `{HARNESS_DIR}/notes.json` from `templates/notes.empty.json`, `{HARNESS_DIR}/knowledge/README.md`.
|
|
@@ -46,7 +46,7 @@ Full PM checklist: `mstar-roles/references/project-manager/plan-management.md`.
|
|
|
46
46
|
|
|
47
47
|
| Todo ID (use in title) | Goal | On-disk outcome |
|
|
48
48
|
|------------------------|------|-----------------|
|
|
49
|
-
| **`harness-init`** | Bootstrap harness tree | `{HARNESS_DIR}/`, `{PLAN_DIR}/`, `
|
|
49
|
+
| **`harness-init`** | Bootstrap harness tree | `{HARNESS_DIR}/`, `{PLAN_DIR}/`, `sdd/` gitignore, `archived/residuals/`, `status.json` initialized |
|
|
50
50
|
| **`spec-register`** | Register plan in SSOT | New `plans[]` row in `status.json` (`id`, `status`, `file`, `metadata`); spec stub in `{SPECS_DIR}` or plan frontmatter |
|
|
51
51
|
| **`mirror-plan`** | SSOT main plan file | `{PLAN_DIR}/<plan-id>-<name>.md` with task checkboxes aligned to CreatePlan body |
|
|
52
52
|
|
|
@@ -107,7 +107,7 @@ Use this structure in CreatePlan `plan` markdown; mirror the same sections into
|
|
|
107
107
|
|
|
108
108
|
### Bootstrap (fixed prefix — complete before implement)
|
|
109
109
|
|
|
110
|
-
1. harness-init — init .mstar/, status.json,
|
|
110
|
+
1. harness-init — init .mstar/, status.json, sdd/ gitignore, archived/residuals/
|
|
111
111
|
2. spec-register — register plan_id in status.json; spec stub if applicable
|
|
112
112
|
3. mirror-plan — write .mstar/plans/<plan-id>-<short-name>.md
|
|
113
113
|
|
|
@@ -198,6 +198,6 @@ When `/pm` runs under Plan mode:
|
|
|
198
198
|
## Related skills
|
|
199
199
|
|
|
200
200
|
- `mstar-plan-conventions` — discovery, init, plan-writing path gate
|
|
201
|
-
- `mstar-plan-artifacts` — `status.json`,
|
|
201
|
+
- `mstar-plan-artifacts` — `status.json`, review bundle summaries, checkboxes, residual
|
|
202
202
|
- `mstar-phase-gates` — Prepare / Execute order
|
|
203
203
|
- `mstar-roles/references/project-manager/dispatch-and-assignment.md` — Checkpoint: commit → Completion Report → Status Update
|
|
@@ -19,7 +19,7 @@ Before first **CreatePlan**: Read `mstar-plan-conventions`, `mstar-plan-artifact
|
|
|
19
19
|
|
|
20
20
|
| Todo ID | Purpose |
|
|
21
21
|
|---------|---------|
|
|
22
|
-
| `harness-init` | Init `{HARNESS_DIR}`, `{PLAN_DIR}`, `
|
|
22
|
+
| `harness-init` | Init `{HARNESS_DIR}`, `{PLAN_DIR}`, `sdd/` gitignore, `archived/residuals/`, `status.json` |
|
|
23
23
|
| `spec-register` | Register `plan_id` in `status.json.plans[]` + spec stub if applicable |
|
|
24
24
|
| `mirror-plan` | Write SSOT main plan under `{PLAN_DIR}/` |
|
|
25
25
|
|
|
@@ -29,8 +29,8 @@ Printing `## Assignment` in the main thread **without** matching host invocation
|
|
|
29
29
|
|
|
30
30
|
## QC default (initial wave)
|
|
31
31
|
|
|
32
|
-
- **`Execution mode: sdd`**: **N=3** tri-review + branch review-package path → `qc1`…`qc3` + consolidated.
|
|
33
|
-
- **`inline` / override**: **N=1** → `qc.md`.
|
|
32
|
+
- **`Execution mode: sdd`**: **N=3** tri-review + branch review-package path → `{SDD_DIR}/review/qc1.md`…`qc3.md` + consolidated.
|
|
33
|
+
- **`inline` / override**: **N=1** → `{SDD_DIR}/review/qc.md`.
|
|
34
34
|
|
|
35
35
|
## QC iteration / SDD (same rule)
|
|
36
36
|
|
|
@@ -55,7 +55,7 @@ Formal iteration Phase 2 uses the same SDD + tri rule — not a separate carve-o
|
|
|
55
55
|
|
|
56
56
|
- Assignment: **`QC re-review: targeted — reviewers: <role-ids>`** → **N** = listed seats only (1–3), **one** dispatch turn with **N** invocations.
|
|
57
57
|
- Do **not** default to three invocations after a routine fix round.
|
|
58
|
-
- Post-dispatch: verify only **dispatched** seats returned; PM updates same `qc-consolidated.md` (see `mstar-plan-artifacts/references/plan-files-and-reports.md`).
|
|
58
|
+
- Post-dispatch: verify only **dispatched** seats returned; PM updates same bundle `qc-consolidated.md` and durable plan summary (see `mstar-plan-artifacts/references/plan-files-and-reports.md`).
|
|
59
59
|
|
|
60
60
|
## Self-check before send
|
|
61
61
|
|
|
@@ -177,7 +177,7 @@ Phase 1 与 §1.6 须遵守 **`references/iteration-artifact-boundaries.md`**(
|
|
|
177
177
|
|
|
178
178
|
**顺序理由**:产品范围与优先级 → 架构与长期契约(specs)→ 行文、规格库卫生与错放纠正(须在 PM/architect 定稿后扫全库 specs)。并行会导致后手重复劳动或覆盖前手未定稿内容。OpenCode:plain role id — **`mstar-host/references/opencode.md`** § Role-mention hygiene。
|
|
179
179
|
|
|
180
|
-
**完成证据** = 磁盘上的 compass / plans / specs / iteration 文档修订 + specs(与既有 knowledge)卫生/归档(如有)+ 索引与 metadata 更新 + compass `status: locked
|
|
180
|
+
**完成证据** = 磁盘上的 compass / plans / specs / iteration 文档修订 + specs(与既有 knowledge)卫生/归档(如有)+ 索引与 metadata 更新 + compass `status: locked`。**不**要求单独的迭代审查报告——迭代审查的 SSOT 是被编辑的文档本身,无 per-plan QC 式审计链。
|
|
181
181
|
|
|
182
182
|
**反模式**:PM 线程代替三角色完成全部编辑而不 invoke;或将本链三角色并行派发 —— 见 **`mstar-harness-core`** 反模式索引。
|
|
183
183
|
|
|
@@ -251,7 +251,7 @@ SSOT = `{HARNESS_DIR}/status.json` + `{PLAN_DIR}/`。todos 只追踪本轮下一
|
|
|
251
251
|
6. Fix loop 直至 review clean;append `{SDD_DIR}/progress.md`;更新 `status.json` / plan checkbox
|
|
252
252
|
7. Next task
|
|
253
253
|
- 每次 Completion Report v2 后更新 `status.json` + 主 plan
|
|
254
|
-
3. **QC → QA gate → Done**:per-plan 审查链 → **`mstar-sdd`**(L1–L2)+ **`mstar-review-qc/references/review-responsibility-boundaries.md`**(L3 tri / inline
|
|
254
|
+
3. **QC → QA gate → Done**:per-plan 审查链 → **`mstar-sdd`**(L1–L2)+ **`mstar-review-qc/references/review-responsibility-boundaries.md`**(L3 tri / inline 单席;raw reports in `{SDD_DIR}/review/`,durable summary in main plan/status)+ **`QA gate`**(`mandatory` → `qa-engineer`;`pm-acceptance` → PM checklist)。
|
|
255
255
|
4. **Plan complete — merge back**:合并 plan feature branch → `spec_integration_branch`;在下一 plan 或 QC 前解决冲突
|
|
256
256
|
5. **Cross-plan 进度同步**:更新 `{ITERATION_DIR}/<iteration-id>-delivery-compass.md` 的 `## Plans` 表状态列
|
|
257
257
|
6. **Next plan** 从步骤 1 继续
|
|
@@ -275,7 +275,7 @@ SSOT = `{HARNESS_DIR}/status.json` + `{PLAN_DIR}/`。todos 只追踪本轮下一
|
|
|
275
275
|
| 文件交接 | brief / report / diff / `progress.md` 在 `{SDD_DIR}`;dispatch prompt **只给路径**,不贴 plan 全文或 task 历史 |
|
|
276
276
|
| Assignment 字段 | 每个 implement dispatch 须含 `Execution mode: sdd`、`SDD dir`、`Model tier`;**禁止**省略 `Model tier` |
|
|
277
277
|
| 大包 inline | **禁止**把 T1–Tn 或整份 plan 写进 **一个** `fullstack-dev` leaf Assignment 冒充 SDD |
|
|
278
|
-
| 分支 diff | 全部 task 完成后 `review-package MERGE_BASE HEAD` → branch diff → plan QC tri(N=3) |
|
|
278
|
+
| 分支 diff | 全部 task 完成后 `review-package MERGE_BASE HEAD` → `{SDD_DIR}/review/` branch diff → plan QC tri(N=3) |
|
|
279
279
|
|
|
280
280
|
Iteration Phase 2 附加:
|
|
281
281
|
|
|
@@ -315,6 +315,7 @@ PM 在迭代内全部 plan Done 后执行。**本 Phase 在 integration 分支
|
|
|
315
315
|
|------|----------|
|
|
316
316
|
| YAML frontmatter:`iteration_id`, `start_date`, `status` | 从文件名 / 正文提取;收口前 `status` 保持 `active` 或 `locked` |
|
|
317
317
|
| `## Roadmap Position` | 从 general context / roadmap prose 迁移为本节 |
|
|
318
|
+
| `## Quality Gate Summary` | 按模板补占位,§3.4 填写 |
|
|
318
319
|
| `## Compound Round Summary` | 按模板补占位,§3.4 填写 |
|
|
319
320
|
| `## Iteration Retrospective (minimal)` | 按模板补占位,§3.4 填写 |
|
|
320
321
|
|
|
@@ -359,7 +360,7 @@ PM 批量触发后须:
|
|
|
359
360
|
|
|
360
361
|
1. compass **YAML frontmatter**:`status: completed`,`end_date: YYYY-MM-DD`(必须;见 §3.0.5)
|
|
361
362
|
2. 更新 `{ITERATION_DIR}/README.md` 索引中该迭代行 Status 为 `completed`
|
|
362
|
-
3. 填充 compass `## Compound Round Summary` 与 `## Iteration Retrospective (minimal)`(见模板)
|
|
363
|
+
3. 填充 compass `## Quality Gate Summary`、`## Compound Round Summary` 与 `## Iteration Retrospective (minimal)`(见模板)
|
|
363
364
|
|
|
364
365
|
### 3.5 Close exit checklist + commit
|
|
365
366
|
|
|
@@ -370,7 +371,7 @@ PM 打印 **iteration-close exit checklist**;全部为 `[x]` 后方可 `git co
|
|
|
370
371
|
- [ ] §3.1 前置 gate 已打印并满足
|
|
371
372
|
- [ ] §3.2 compound 完成;**`<iteration-id>/` workspace 已盘点**(提升 / 保留 / 跳过已记入 Compound Summary);新增 knowledge doc 均已登记 `{KNOWLEDGE_DIR}/README.md`(或已记录无可结晶原因)
|
|
372
373
|
- [ ] §3.3 `## Roadmap Position` current iteration 已标 `delivered`;tracker / STRATEGY 已按需更新
|
|
373
|
-
- [ ] §3.4 frontmatter `status: completed` + `end_date`;Compound Summary + Retrospective 已填
|
|
374
|
+
- [ ] §3.4 frontmatter `status: completed` + `end_date`;Quality Gate Summary + Compound Summary + Retrospective 已填
|
|
374
375
|
- [ ] 当前分支是 `spec_integration_branch`
|
|
375
376
|
- [ ] PR base = `metadata.target_branch`(与 compass frontmatter 一致);**不是**未记录的 `main`
|
|
376
377
|
|
|
@@ -85,6 +85,19 @@ Link from compass when used:
|
|
|
85
85
|
|
|
86
86
|
- Workspace: `<iteration-id>/` | <one-line purpose>
|
|
87
87
|
|
|
88
|
+
## Quality Gate Summary
|
|
89
|
+
|
|
90
|
+
> Filled at iteration-close. Human summary only; per-plan gate details stay in each main plan, and open residual SSOT stays in `{HARNESS_DIR}/status.json`.
|
|
91
|
+
|
|
92
|
+
| plan_id | QC decision | QA gate | Residuals | Durable summary |
|
|
93
|
+
|---------|-------------|---------|-----------|-----------------|
|
|
94
|
+
| <plan-id-1> | Approve / Approve with residuals / Request Changes / N/A | mandatory / pm-acceptance / report-only / N/A | none / R1,R2 / accepted | `{PLAN_DIR}/<plan>.md#review-gate-summary` |
|
|
95
|
+
|
|
96
|
+
Notes:
|
|
97
|
+
|
|
98
|
+
- Raw review bundle: `{SDD_DIR}/review/` (ephemeral; do not rely on it after Done).
|
|
99
|
+
- Open residual SSOT: `{HARNESS_DIR}/status.json` root `residual_findings[<plan-id>]`.
|
|
100
|
+
|
|
88
101
|
## Compound Round Summary
|
|
89
102
|
|
|
90
103
|
> Filled at iteration-close.
|
|
@@ -120,6 +133,7 @@ Link from compass when used:
|
|
|
120
133
|
| `## Roadmap Position` | **Yes** | Phase 1(必填节,非散落于 general context prose);Phase 3 §3.3(current iteration → `delivered`) |
|
|
121
134
|
| `## Risk Register` | Optional | Phase 1, Phase 2 (update) |
|
|
122
135
|
| Iteration workspace (`<iteration-id>/`) | Optional | Phase 1 §1.5.5 — `guides/` + `specs/`; index in `{ITERATION_DIR}/README.md` |
|
|
136
|
+
| `## Quality Gate Summary` | Yes | Phase 3 §3.4 |
|
|
123
137
|
| `## Compound Round Summary` | Yes | Phase 3 §3.4 |
|
|
124
138
|
| `## Iteration Retrospective` | Recommended | Phase 3 §3.4 |
|
|
125
139
|
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
| **Secondary** | `{KNOWLEDGE_DIR}/**` (existing) | Archive / relocate only — **no** new docs |
|
|
13
13
|
| **Included** | `{PLAN_DIR}/` plans touched this iteration | Spec refs, terminology |
|
|
14
14
|
|
|
15
|
-
**Out of scope**: compound promotion (iteration-close); `{
|
|
15
|
+
**Out of scope**: compound promotion (iteration-close); per-plan review bundles (`{SDD_DIR}/review/`); code.
|
|
16
16
|
|
|
17
17
|
## Misplaced content (relocate)
|
|
18
18
|
|
|
@@ -74,9 +74,9 @@ per-plan 门禁通过后,PM 在**迭代层面**管理以下活动(不计入
|
|
|
74
74
|
|
|
75
75
|
per-plan Done 是 per-plan 的闭环终点;compound 是迭代级收口活动,不影响 per-plan 状态判定。
|
|
76
76
|
|
|
77
|
-
## Plan
|
|
77
|
+
## Plan 目录与审查证据(启用 `{PLAN_DIR}` 时)
|
|
78
78
|
|
|
79
|
-
- 进入 `InReview` 后,QC
|
|
79
|
+
- 进入 `InReview` 后,QC/QA 原始过程报告默认落入 `{SDD_DIR}/review/`(**SDD 默认 tri** `qc1`…`qc-consolidated`;**inline** 单席 `qc.md`)。**fix 后默认 targeted re-review**。SDD per-task review 在 implement 波次内完成(`mstar-sdd` task reviewer)。PM 将 durable gate summary 回写主 plan / `status.json`,而不是把 raw reports 作为默认 git 产物。
|
|
80
80
|
- 非阻断项与后续技术债:PM 汇总后写入 `{HARNESS_DIR}/status.json` 根级 `residual_findings[<plan-id>]`(**open**,与 `plans` 平级;canonical 见 **`mstar-plan-artifacts` SKILL.md**);关闭后迁入 `{HARNESS_DIR}/archived/residuals/<plan-id>.json`,与 `mstar-review-qc` 一致。每条 **`severity`** 遵守 **`mstar-plan-artifacts/references/status-and-residuals.md`**「Residual findings:severity(SSOT,机器字段)」。
|
|
81
81
|
|
|
82
82
|
## 快速判定(PM)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: mstar-plan-artifacts
|
|
3
|
-
description: Morning Star plan harness artifacts — `{PLAN_DIR}` main plans and `
|
|
3
|
+
description: Morning Star plan harness artifacts — `{PLAN_DIR}` main plans and durable review summaries, `{SDD_DIR}/review/` ephemeral QC/QA bundles, `{KNOWLEDGE_DIR}` / `{ITERATION_DIR}` indexes, Done compaction, plus `{HARNESS_DIR}/status.json` and root `residual_findings` (severity SSOT, open/archived lifecycle, `notes.json`). Read when writing plans or QC/QA review bundles, maintaining knowledge/iteration indexes, reading or writing `status.json` / R#, Done compaction, or mapping QC severity to JSON. Required for `@project-manager` on status, residuals, and InReview/QC waves; `@qc-specialist*` before writing review bundle reports; `@qa-engineer` before closing R# when `QA gate: mandatory`. Verdict rules: leaf → `mstar-roles/references/qc-specialist/report-template.md`; PM → `mstar-review-qc`. Paths in `mstar-plan-conventions`.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
## Load order
|
|
@@ -11,7 +11,7 @@ description: Morning Star plan harness artifacts — `{PLAN_DIR}` main plans and
|
|
|
11
11
|
|
|
12
12
|
| Topic | See |
|
|
13
13
|
|-------|-----|
|
|
14
|
-
| Main plan,
|
|
14
|
+
| Main plan, review bundle naming, durable summaries, QC waves, residual and plan index order | `references/plan-files-and-reports.md` |
|
|
15
15
|
| Plan template (Global Constraints, Interfaces) | `templates/plan.main.md` |
|
|
16
16
|
| knowledge / iterations / specs boundaries and indexes | `references/knowledge-and-designs.md` |
|
|
17
17
|
| Done row compaction Profile A/B | `references/done-compaction.md` |
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
- **最小集**(机器导航够用):**`id`**、**`status`**(`Done`)、**`file`**(主 plan 路径)、**`metadata`** 仅含:
|
|
20
20
|
- **`archived_record`**:相对 **`{HARNESS_DIR}`** 的路径,例如 `archived/plans/<plan-id>.json`(冷快照内为**完整**当时 `plans[]` 元素,含臃肿字段)
|
|
21
21
|
- 若该 `plan-id` 在 **open 列表**(根级 **`residual_findings`**;若仅存 legacy 侧则同口径)中仍有 **open** 行,在 **`metadata`** 内保留 **`residual_summary`**(语义见 `status-and-residuals.md` **`residual_summary`(可选)** 小节)
|
|
22
|
-
- **可选**(人类扫表友好,非必须):**`title`** 一行、**`done_at`**;勿把长叙述塞回热行——放进 **`{HARNESS_DIR}/notes.json
|
|
22
|
+
- **可选**(人类扫表友好,非必须):**`title`** 一行、**`done_at`**;勿把长叙述塞回热行——放进 **`{HARNESS_DIR}/notes.json`**、主 plan gate summary、archived residuals,或依赖冷快照。
|
|
23
23
|
- 一旦快照已写入,热行**不得**再承载完整 `gates`、`qc_status`、`tests`、`commits`、长 `description`/`scope` 等;**以 `archived_record` 指向文件为准**。
|
|
24
|
-
- 单条 **`plans[].notes`**
|
|
24
|
+
- 单条 **`plans[].notes`** 字符串若仍在用,保持**极短**(如指向主 plan gate summary 或 R#);**不要**重复 QC/QA 原始报告大段原文。
|
|
25
25
|
- **可选索引**:`{HARNESS_DIR}/archived/plans/_index.json` — `plan-id` → 相对路径,便于不依赖 glob 的工具。
|
|
26
26
|
- **可选滚动保留**:进一步缩小 `plans[]` 时,可只在热文件中保留**最近窗口**的瘦 `Done` 行,更旧 id 仅出现在 `_index.json` 与快照文件中;若采用,须在项目 `AGENTS.md` 中写明,并检查依赖「热文件中必有全部历史 id」的脚本。
|
|
27
27
|
|
|
@@ -15,16 +15,16 @@
|
|
|
15
15
|
| **`{SPECS_DIR}`**(可选) | 冻结 v1-spec、ADR、program roadmap — **跨迭代长期权威** | 产品/API 规范性最高权威;**iteration-start** 由 product/architect 主写 |
|
|
16
16
|
| **`{ITERATION_DIR}`**(可选) | delivery compass + **`<iteration-id>/` workspace**(`guides/`、`specs/`) | Agent handoff;迭代级草稿;close 时 compound **提升** → knowledge |
|
|
17
17
|
| **`{KNOWLEDGE_DIR}`**(可选) | 实现细节 SSOT、架构细则、契约说明、跨版本 tracker — **经 `mstar-compound` 结晶** | Agent handoff;**不**在 iteration-start 由 product/architect 新增 |
|
|
18
|
-
| **`{PLAN_DIR}/`** | 单 plan
|
|
18
|
+
| **`{PLAN_DIR}/`** | 单 plan 主文件、durable gate summary、可选 `residuals/` | 计划执行与长期决策留档 |
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
**不应**放入 `docs/` 的内容:迭代 compass 正文、作为**特定 plan 输入/输出**的评审结论、实施笔记、未稳定规格草案、QC
|
|
21
|
+
**不应**放入 `docs/` 的内容:迭代 compass 正文、作为**特定 plan 输入/输出**的评审结论、实施笔记、未稳定规格草案、QC/QA 原始过程报告 —— 分别落 `{ITERATION_DIR}`、`{KNOWLEDGE_DIR}`、`{SPECS_DIR}` 或 `{SDD_DIR}/review/`;长期 gate 摘要回写主 plan。
|
|
22
22
|
|
|
23
23
|
## `{ITERATION_DIR}`(可选·迭代/版本级 compass)
|
|
24
24
|
|
|
25
25
|
- **物理路径**:`**{ITERATION_DIR}/**`(推荐布局下常为 `**.mstar/iterations/**`,与 `{KNOWLEDGE_DIR}`、`{PLAN_DIR}` 并列;legacy 项目可继续为 `.agents/iterations/`)。
|
|
26
26
|
- **放什么**:delivery compass(根目录 `*-delivery-compass*.md`);**`<iteration-id>/` 工作区** — `guides/`(探索、过程)、`specs/`(迭代级规格草案);遗留规划快照。
|
|
27
|
-
- **不放什么**:已锁定的仓库级规范(→ **`{SPECS_DIR}/`**);已提升的跨迭代实施 SSOT(→ **`{KNOWLEDGE_DIR}/`**,经 compound);单 plan QC
|
|
27
|
+
- **不放什么**:已锁定的仓库级规范(→ **`{SPECS_DIR}/`**);已提升的跨迭代实施 SSOT(→ **`{KNOWLEDGE_DIR}/`**,经 compound);单 plan QC/QA 原始报告(→ `{SDD_DIR}/review/`)。
|
|
28
28
|
- **索引**:`**{ITERATION_DIR}/README.md**` 登记 compass + workspace 目录;`<iteration-id>/README.md` 登记工作区内文档。
|
|
29
29
|
- **维护**:`@product-manager` / `@architect` 起草 workspace;`**@project-manager**` 维护索引与 metadata;**iteration-close** 时 **`mstar-compound`** 盘点 workspace 并**提升**至 `{KNOWLEDGE_DIR}/`。
|
|
30
30
|
|
|
@@ -66,13 +66,14 @@
|
|
|
66
66
|
- **其它时机**:当文档内容已完全反映到已合并代码中、且非 iteration-start 扫库时:可将索引 **Status** 标为 `Superseded by implementation (...)` 或 `Archived`;可保留原位或迁入 `archived/knowledge/`。**不要**把知识库产物搬进 `{HARNESS_DIR}/archived/plans/`(该处用于**计划行**冷快照)。
|
|
67
67
|
5. **结晶(Compound)**:PM 在 **iteration-close** 触发 **`mstar-compound`**:plan 素材 + **`{ITERATION_DIR}/<iteration-id>/` workspace 提升** → `{KNOWLEDGE_DIR}/`。不在 per-plan Done 后单独执行。维护 → **`mstar-compound-refresh`**。
|
|
68
68
|
|
|
69
|
-
## 与
|
|
69
|
+
## 与 review bundle、`{PLAN_DIR}/residuals/` 的区分
|
|
70
70
|
|
|
71
|
-
- `**
|
|
71
|
+
- `**{SDD_DIR}/review/`**:偏 **审查流程临时证据**(review package、QC1/2/3、consolidated、QA),gitignored,可在 Done 后丢失。
|
|
72
|
+
- `**主 plan gate summary**`:偏 **长期门禁决策摘要**(verdict、review range、R#、QA gate),随主 plan 追踪。
|
|
72
73
|
- `**{PLAN_DIR}/residuals/<plan-id>/`**:偏 **仍 open 的 R# 长文补充**(与根级 `**residual_findings**` 配套,canonical 见 `mstar-plan-conventions` **SKILL.md** 开篇);见下文「open residual 散文详情」。
|
|
73
74
|
- `**{KNOWLEDGE_DIR}/**`:偏 **可复用的实现向设计上下文**(架构细则、决策、分析),可被后续 plan 或多会话反复引用。
|
|
74
75
|
- `**{ITERATION_DIR}/**`:偏 **某一迭代/版本** 的 compass 与规划快照,通常按版本索引而非按单 plan 长期复用。
|
|
75
|
-
-
|
|
76
|
+
- review bundle、gate summary、residuals、knowledge、iterations 可互链,但职责不混写。
|
|
76
77
|
|
|
77
78
|
---
|
|
78
79
|
|
|
@@ -83,7 +84,7 @@
|
|
|
83
84
|
|
|
84
85
|
| 与相邻目录的分工 | 典型内容 |
|
|
85
86
|
| ----------------------------------------- | --------------------------------------------------------------------- |
|
|
86
|
-
| `**{
|
|
87
|
+
| `**{SDD_DIR}/review/**` | QC / QA **流程临时证据**(`qc1.md` … `qc-consolidated.md`、`qa.md` 等),gitignored |
|
|
87
88
|
| **本目录 `{PLAN_DIR}/residuals/<plan-id>/`** | 针对**仍 open** 的某一 R#:defer 背景、遗留原因、代码锚点、后续接手提示等**长文** |
|
|
88
89
|
| `**{KNOWLEDGE_DIR}/**` | 可跨 plan 复用的**实现向**设计上下文、规格修订、gap 分析(若文中顺带提到 residual,仍以 JSON + residuals 为跟踪权威) |
|
|
89
90
|
| `**{ITERATION_DIR}/**` | 迭代/版本级 compass;**不**替代 `{KNOWLEDGE_DIR}` 中的跨版本 SSOT |
|
|
@@ -93,6 +94,6 @@
|
|
|
93
94
|
|
|
94
95
|
**登记**:在对应 open 条目中填写可选 `**detail_doc`**(仓库内相对路径,常形如 `**{PLAN_DIR}/residuals/<plan-id>/R1-….md**`)。**禁止**只写散文、不在 SSOT 中登记 open 行。
|
|
95
96
|
|
|
96
|
-
**维护**:`**@project-manager`**(或与 Assignment 一致的可写角色);`**@qc-specialist***` 宿主白名单通常**不含**本目录——审查结论仍以 `**
|
|
97
|
+
**维护**:`**@project-manager`**(或与 Assignment 一致的可写角色);`**@qc-specialist***` 宿主白名单通常**不含**本目录——审查结论仍以 Assignment 指定的 `**{SDD_DIR}/review/`** 为准,散文由 PM/实现方据结论整理。
|
|
97
98
|
|
|
98
99
|
**关闭与归档**:当该条从 **open 列表**(根级 **`residual_findings[<plan-id>]`**;若仅存 legacy 侧则从该处)移除并**追加**至 `**{HARNESS_DIR}/archived/residuals/<plan-id>.json`** 时,应将对应 `**.md**` 一并收口:可迁入 `**{HARNESS_DIR}/archived/knowledge/**`(若视为历史考据)、或团队约定的 `**{HARNESS_DIR}/archived/residuals/**` 子路径(与 `**.json**` 同批变更可追溯);并在归档条目的 `**closure_evidence` / `closure_note**`(或团队约定字段)中**写明散文最终路径**。勿长期保留「JSON 已关闭而散文仍留在 `residuals/` 且声称仍 open」的状态。
|