@mstar-harness/opencode 0.7.9 → 1.0.1
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/harness-commands/iteration-drive.md +17 -7
- package/harness-commands/iteration-start.md +5 -6
- package/harness-commands/mstar-bootstrap.md +4 -5
- package/harness-skills/mstar-coding-behavior/SKILL.md +1 -0
- package/harness-skills/mstar-dispatch-gates/SKILL.md +20 -8
- package/harness-skills/mstar-harness-core/SKILL.md +7 -5
- package/harness-skills/mstar-host/SKILL.md +1 -1
- package/harness-skills/mstar-host/references/codex.md +2 -2
- package/harness-skills/mstar-host/references/cursor.md +35 -9
- package/harness-skills/mstar-host/references/opencode.md +3 -0
- package/harness-skills/mstar-host/references/parallel-dispatch.md +24 -6
- package/harness-skills/mstar-iteration/SKILL.md +40 -34
- package/harness-skills/mstar-phase-gates/SKILL.md +11 -46
- package/harness-skills/mstar-plan-artifacts/SKILL.md +1 -0
- package/harness-skills/mstar-plan-artifacts/references/plan-files-and-reports.md +16 -4
- package/harness-skills/mstar-plan-artifacts/references/status-and-residuals.md +3 -0
- package/harness-skills/mstar-plan-artifacts/templates/plan.main.md +54 -0
- package/harness-skills/mstar-plan-conventions/SKILL.md +6 -3
- package/harness-skills/mstar-plan-conventions/references/artifact-storage-paths.md +2 -1
- package/harness-skills/mstar-plan-conventions/references/harness-bootstrap-and-agents-layering.md +1 -1
- package/harness-skills/mstar-review-qc/SKILL.md +5 -5
- package/harness-skills/mstar-review-qc/references/review-responsibility-boundaries.md +41 -0
- package/harness-skills/mstar-roles/SKILL.md +5 -1
- package/harness-skills/mstar-roles/references/project-manager/dispatch-and-assignment.md +20 -0
- package/harness-skills/mstar-roles/references/project-manager/qc-and-residuals.md +33 -24
- package/harness-skills/mstar-roles/references/project-manager/routing-and-dev-allocation.md +2 -1
- package/harness-skills/mstar-roles/references/project-manager.md +20 -11
- package/harness-skills/mstar-roles/references/qc-specialist-shared.md +5 -3
- package/harness-skills/mstar-sdd/SKILL.md +126 -0
- package/harness-skills/mstar-sdd/references/file-handoffs.md +76 -0
- package/harness-skills/mstar-sdd/references/implementer-continuation-prompt.md +44 -0
- package/harness-skills/mstar-sdd/references/implementer-prompt.md +55 -0
- package/harness-skills/mstar-sdd/references/sticky-implementer-session.md +103 -0
- package/harness-skills/mstar-sdd/references/task-reviewer-prompt.md +51 -0
- package/harness-skills/mstar-sdd/scripts/review-package +43 -0
- package/harness-skills/mstar-sdd/scripts/sdd-workspace +26 -0
- package/harness-skills/mstar-sdd/scripts/task-brief +40 -0
- package/harness-skills/pm/SKILL.md +20 -44
- package/package.json +1 -1
|
@@ -15,10 +15,21 @@
|
|
|
15
15
|
| 类型 | 文件名(相对 `reports/<plan-id>/`) |
|
|
16
16
|
|------|--------|
|
|
17
17
|
| 架构/设计评审 | `<plan-id>-review.md`(或团队约定的 `review.md`) |
|
|
18
|
-
| QC
|
|
19
|
-
| QC
|
|
18
|
+
| QC 三审报告(**SDD 默认** `Execution mode: sdd`) | `qc1.md`、`qc2.md`、`qc3.md` |
|
|
19
|
+
| QC 单席报告(**`inline` / hotfix 例外**) | `qc.md` |
|
|
20
|
+
| QC 汇总结论(tri 模式) | `qc-consolidated.md` |
|
|
20
21
|
|
|
21
|
-
##
|
|
22
|
+
## SDD 运行时(不入 reports)
|
|
23
|
+
|
|
24
|
+
Per-task briefs, implementer reports, and review diffs live under **`{SDD_DIR}`** (`mstar-plan-conventions`). Gitignored. Main plan may index `{SDD_DIR}` path only — do not paste SDD bodies into plan markdown.
|
|
25
|
+
|
|
26
|
+
Plan template with Global Constraints / Interfaces → **`templates/plan.main.md`**.
|
|
27
|
+
|
|
28
|
+
## QC 模式(L3 plan 级)
|
|
29
|
+
|
|
30
|
+
职责分层 L1–L4 → **`mstar-review-qc/references/review-responsibility-boundaries.md`**。报告 basename 见上表;触发时机与 re-review 波次见下节 **§ QC 三审触发时机**。
|
|
31
|
+
|
|
32
|
+
## QC 分报告与 consolidated(tri 模式)
|
|
22
33
|
|
|
23
34
|
- **不要删除** `qc1.md`、`qc2.md`、`qc3.md` **只因为**已写入 `qc-consolidated.md`。`reports/<plan-id>/` 是**审计链**:分 reviewer 原文保留**证据出处、分歧与独立视角**;**consolidated** 是 PM 的**门控摘要**,二者**叠加**,**不互为替代**。
|
|
24
35
|
- **极窄例外**(须团队显式采纳并承担审计缺口):例如仓库体积极敏感时,仅保留 consolidated + 指向外部归档的链接——**不在**本默认 harness 中推荐;默认仍保留三份 `qc*.md`。
|
|
@@ -34,7 +45,8 @@
|
|
|
34
45
|
|
|
35
46
|
## QC 三审触发时机(单 plan · 多 batch)
|
|
36
47
|
|
|
37
|
-
-
|
|
48
|
+
- **默认(SDD)**:同一 **`plan_id`** 下,**plan QC tri-review**(`qc-specialist` ×3 → `qc1`…`qc3` + consolidated)**仅在** dev team 按该 plan 约定范围全部交付、且 **L2 task reviewers** 均已通过后执行 **一次**。**不要**在每个中间 batch 跑完整三审。
|
|
49
|
+
- **单席例外**:`Execution mode: inline` / hotfix → 交付完成后 **一次** `qc.md`(`QC mode: single`)。
|
|
38
50
|
- **batch 之间**:依赖实现方按 **`mstar-coding-behavior`** 提供完成证据、主 plan 任务勾选与 PM 协调;需要书面中间意见时,用对话、主 plan 批注或**非三审**的定向检查(如单审、架构 review),**不**默认等同「又一轮完整三审」。
|
|
39
51
|
- **After `Request Changes` (default — targeted re-review)**:PM maps each **blocking** finding to the QC seat that raised it (`source` on R#, consolidated table, or the originating `qcN.md` / `F-###`). Dispatch **only** those reviewers (`QC re-review: targeted — reviewers: qc-specialist, qc-specialist-2, …`). Each re-reviewing QC **updates the same** `qc1.md` / `qc2.md` / `qc3.md` in place (add `## Revalidation`, refresh verdict / `generated_at`); **do not** add `qc1-rev2.md` siblings on this path. PM **updates the same** `qc-consolidated.md` in place. Git history is the audit trail.
|
|
40
52
|
- **Full tri re-review (exception)**:Only when Assignment states **`QC re-review: full tri-review`**. Run **three** parallel reviews again; use **new basenames** (`qc1-rev2.md` … `qc3-rev2.md`, `qc-consolidated-rev2.md`) so wave-1 files stay immutable; PM states **active wave** in consolidated decision. See `mstar-review-qc` · `mstar-dispatch-gates`.
|
|
@@ -125,6 +125,9 @@ In old JSON, **`"severity": "warning"`** is read and rolled up as **`low`**. **F
|
|
|
125
125
|
| `iteration_compass` | string | Optional `{ITERATION_DIR}/…` |
|
|
126
126
|
| `iteration_refs` | string[] | Optional multiple compass paths |
|
|
127
127
|
| `qc_status` / `tests` / `commits` | string | InReview/Done snapshots; not a substitute for `{PLAN_DIR}/reports/` |
|
|
128
|
+
| `sdd_dir` | string | SDD scratch path, e.g. `{HARNESS_DIR}/sdd/<plan-id>/` (gitignored; `mstar-sdd`) |
|
|
129
|
+
| `sdd_progress` | string | Optional pointer to `{SDD_DIR}/progress.md` ledger |
|
|
130
|
+
| `task_commits` | array\<object\> | SDD recovery: `{ "task_id": "T1", "base": "<sha>", "head": "<sha>" }` per completed task |
|
|
128
131
|
|
|
129
132
|
### Optional delivery ledger (`phase` + `batches` + `verification`)
|
|
130
133
|
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# [Feature Name] Implementation Plan
|
|
2
|
+
|
|
3
|
+
> **For agentic workers:** REQUIRED SUB-SKILL: Use `mstar-sdd` (recommended) or inline execution. Steps use checkbox (`- [ ]`) syntax.
|
|
4
|
+
|
|
5
|
+
**Goal:** [One sentence]
|
|
6
|
+
|
|
7
|
+
**Architecture:** [2–3 sentences]
|
|
8
|
+
|
|
9
|
+
**Tech Stack:** [Key technologies]
|
|
10
|
+
|
|
11
|
+
**Execution:** mstar-sdd | inline
|
|
12
|
+
|
|
13
|
+
## Global Constraints
|
|
14
|
+
|
|
15
|
+
[Project-wide requirements — version floors, naming, exact values — copied verbatim from spec. Every task implicitly includes this section.]
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
### Task 1: [Component Name]
|
|
20
|
+
|
|
21
|
+
**Files:**
|
|
22
|
+
- Create: `exact/path/to/file`
|
|
23
|
+
- Modify: `exact/path/existing.py`
|
|
24
|
+
- Test: `tests/path/test.py`
|
|
25
|
+
|
|
26
|
+
**Interfaces:**
|
|
27
|
+
- Consumes: [signatures from earlier tasks]
|
|
28
|
+
- Produces: [what later tasks rely on]
|
|
29
|
+
|
|
30
|
+
- [ ] **Step 1: Write the failing test**
|
|
31
|
+
|
|
32
|
+
```python
|
|
33
|
+
# complete test code
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
- [ ] **Step 2: Run test — expect FAIL**
|
|
37
|
+
|
|
38
|
+
Run: `pytest tests/path/test.py -v`
|
|
39
|
+
|
|
40
|
+
- [ ] **Step 3: Minimal implementation**
|
|
41
|
+
|
|
42
|
+
- [ ] **Step 4: Run test — expect PASS**
|
|
43
|
+
|
|
44
|
+
- [ ] **Step 5: Commit**
|
|
45
|
+
|
|
46
|
+
## Plan self-review (PM before locked)
|
|
47
|
+
|
|
48
|
+
1. **Spec coverage:** every spec requirement maps to a task
|
|
49
|
+
2. **Placeholder scan:** no TBD, no "add tests" without code
|
|
50
|
+
3. **Type consistency:** names match across tasks
|
|
51
|
+
|
|
52
|
+
## SDD runtime (ephemeral)
|
|
53
|
+
|
|
54
|
+
When using `mstar-sdd`, artifacts live under `{SDD_DIR}` (see `mstar-plan-conventions`). Do not duplicate briefs/reports in this file.
|
|
@@ -11,7 +11,8 @@ description: Morning Star (启明星) harness 计划目录约定 —— `{HARNES
|
|
|
11
11
|
|-----------------|------|
|
|
12
12
|
| `mstar-plan-artifacts` | 主 plan、reports、`status.json`、residual、InReview/QC 波次、knowledge |
|
|
13
13
|
| `mstar-branch-worktree` | Assignment 写分支 / worktree / QC 检出 |
|
|
14
|
-
| `mstar-review-qc` | 派 QC
|
|
14
|
+
| `mstar-review-qc` | 派 QC(PM 同轮必读;SDD 强制 tri) |
|
|
15
|
+
| `mstar-sdd` | PM 执行 `Execution mode: sdd` 的 implement 波次 |
|
|
15
16
|
|
|
16
17
|
## 路径符号(SSOT)
|
|
17
18
|
|
|
@@ -19,6 +20,7 @@ description: Morning Star (启明星) harness 计划目录约定 —— `{HARNES
|
|
|
19
20
|
|------|------|
|
|
20
21
|
| `{HARNESS_DIR}` | `.mstar/` |
|
|
21
22
|
| `{PLAN_DIR}` | `{HARNESS_DIR}/plans/` |
|
|
23
|
+
| `{SDD_DIR}` | `{HARNESS_DIR}/sdd/<plan-id>/`(SDD 运行时 scratch;gitignore) |
|
|
22
24
|
| `{ITERATION_DIR}` | `{HARNESS_DIR}/iterations/` |
|
|
23
25
|
| `{KNOWLEDGE_DIR}` | `{HARNESS_DIR}/knowledge/` |
|
|
24
26
|
| `{SPECS_DIR}` | `specs/` 优先,否则 `designs/` |
|
|
@@ -51,8 +53,9 @@ description: Morning Star (启明星) harness 计划目录约定 —— `{HARNES
|
|
|
51
53
|
PM 在需要持久化追踪时:
|
|
52
54
|
|
|
53
55
|
1. 建 `.mstar/`、`plans/`、`status.json`(空模板见 **`mstar-plan-artifacts/templates/status.empty.json`**)
|
|
54
|
-
2. 可选 `notes.json`(模板 **`mstar-plan-artifacts/templates/notes.empty.json`**)、`reports/README.md`、`knowledge/`、`iterations/`、`specs
|
|
55
|
-
3.
|
|
56
|
+
2. 可选 `notes.json`(模板 **`mstar-plan-artifacts/templates/notes.empty.json`**)、`reports/README.md`、`knowledge/`、`iterations/`、`specs/`、`sdd/`(空目录占位;运行时 per-plan 子目录由 `mstar-sdd/scripts/sdd-workspace` 创建)
|
|
57
|
+
3. 项目根 `.gitignore` 追加 `.mstar/sdd/`(或 `.agents/sdd/` legacy)— CLI `init` 可自动添加
|
|
58
|
+
4. Git:团队交付 **勿** ignore 整个 `{HARNESS_DIR}`(handoff 需 clone 可达)
|
|
56
59
|
|
|
57
60
|
步骤与 `{HARNESS_DIR}/AGENTS.md` 分层 → **`references/harness-bootstrap-and-agents-layering.md`**。
|
|
58
61
|
|
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
| **知识文档** | `.mstar/knowledge/<category>/<slug>.md` | `mstar-compound`(写)、`mstar-compound-refresh`(读写) |
|
|
14
14
|
| **知识索引** | `.mstar/knowledge/README.md` | `mstar-compound`(写)、`mstar-compound-refresh`(读写) |
|
|
15
15
|
| **主 plan** | `.mstar/plans/<plan-id>-<name>.md` | PM / `mstar-plan-artifacts` |
|
|
16
|
-
| **QC 报告** | `.mstar/plans/reports/<plan-id>/
|
|
16
|
+
| **QC 报告** | `.mstar/plans/reports/<plan-id>/qc1.md`…`qc3.md` + consolidated(**SDD 默认**);`qc.md`(inline 例外) | `mstar-review-qc` |
|
|
17
|
+
| **SDD scratch** | `{HARNESS_DIR}/sdd/<plan-id>/`(gitignored) | `mstar-sdd` |
|
|
17
18
|
| **status.json** | `.mstar/status.json` | `mstar-plan-artifacts` |
|
|
18
19
|
| **迭代 compass** | `.mstar/iterations/<iteration-id>-delivery-compass.md` | `mstar-iteration`(读写) |
|
|
19
20
|
| **迭代索引** | `.mstar/iterations/README.md` | `mstar-iteration`(读写) |
|
package/harness-skills/mstar-plan-conventions/references/harness-bootstrap-and-agents-layering.md
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
|
|
15
15
|
1. 创建 `{HARNESS_DIR}`(推荐 `.mstar/`)与 `{PLAN_DIR}`(推荐 `.mstar/plans/`)。
|
|
16
16
|
2. 初始化 `status.json`:从 **`mstar-plan-artifacts/templates/status.empty.json`** 复制;residual canonical 见 **`mstar-plan-artifacts` SKILL.md**;字段与生命周期见 **`mstar-plan-artifacts/references/status-and-residuals.md`**。
|
|
17
|
-
3. 初始化可选 `notes.json`(**`mstar-plan-artifacts/templates/notes.empty.json`**)与 `plans/reports/README.md
|
|
17
|
+
3. 初始化可选 `notes.json`(**`mstar-plan-artifacts/templates/notes.empty.json`**)与 `plans/reports/README.md`;`sdd/` 空目录占位(per-plan 子目录由 `mstar-sdd/scripts/sdd-workspace` 创建;项目根 `.gitignore` 须含 `.mstar/sdd/`)。
|
|
18
18
|
4. **Profile B**(统一 Done 压缩)时另建 `{HARNESS_DIR}/archived/plans/` 与 `archived/plans-done.json`(自 **`mstar-plan-artifacts/templates/plans-done.empty.json`** 复制;schema 仅 `{ "plans": [] }`,见 **`mstar-plan-artifacts/references/done-compaction.md`**)。
|
|
19
19
|
5. 可选:创建 `{ITERATION_DIR}`(`iterations/` + `README.md`)与 `{KNOWLEDGE_DIR}`(`knowledge/` + `README.md`);内容边界见 `mstar-plan-conventions` SKILL.md 与 `references/knowledge-and-designs.md`。
|
|
20
20
|
6. 创建 `{HARNESS_DIR}/AGENTS.md`(harness 子树规则):符号表可复述 `{HARNESS_DIR}`、`{PLAN_DIR}`、`{ITERATION_DIR}`、`{KNOWLEDGE_DIR}`、`{SPECS_DIR}` 与 `docs/` 分工;新项目推荐 `.mstar/AGENTS.md`,已有项目可继续使用 `.agents/AGENTS.md`。
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: mstar-review-qc
|
|
3
|
-
description: Morning Star QC/QA review baseline —
|
|
3
|
+
description: Morning Star QC/QA review baseline — **SDD plans: mandatory plan QC tri-review** (`qc1`…`qc3` + consolidated); inline/hotfix single-seat (`qc.md`); checklists, report template, targeted re-review, residual gate. Per-task review is **`mstar-sdd`** task reviewers (L2). Use when `qc-specialist*` review, `qa-engineer` verifies, or `project-manager` dispatches/consolidates QC.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
## Load order(必读顺序)
|
|
7
7
|
|
|
8
8
|
**在同一会话或任务中首次 Read 本 skill 时:必须先 Read `mstar-harness-core` skill(SKILL.md),并按需 Read **`mstar-branch-worktree`**(`Review cwd` / `Working branch` / `Review range`)。** 本 skill 只定义 QC/QA **工作流与报告形态**;派发与三审同消息规则见 **`mstar-dispatch-gates`**;**同仓 worktree 与单一待审 `HEAD`** 以 **`mstar-branch-worktree`** 为准。冲突时 **以 `mstar-harness-core` 为准**。
|
|
9
9
|
|
|
10
|
-
**摘要**:`mstar-harness-core` — QC-QA
|
|
10
|
+
**摘要**:`mstar-harness-core` — QC-QA 检出与派发门禁;本 skill — 审查清单、报告模板、verdict 与 residual 留档契约。职责分层 → **`references/review-responsibility-boundaries.md`**。
|
|
11
11
|
|
|
12
12
|
# Morning Star QC Review Baseline(QC 审查基线)
|
|
13
13
|
|
|
14
|
-
本 skill 定义所有 QC
|
|
14
|
+
本 skill 定义所有 QC 审查员的共享基线。**`Execution mode: sdd` 时:plan 级强制 tri-review**(QC#1/#2/#3 交叉审整分支 → `qc1`…`qc3` + `qc-consolidated.md`)。**`inline` / hotfix** 可用单席 `qc.md`。三审共用正文以 **`mstar-roles`** `qc-specialist-shared` 为准。
|
|
15
15
|
|
|
16
16
|
## 分派时机(与 plan / batch 对齐)
|
|
17
17
|
|
|
18
|
-
-
|
|
19
|
-
-
|
|
18
|
+
- **`Execution mode: sdd`**(单 plan 与 iteration 均适用):全部 task + L2 task reviewers 完成后 → **强制 tri-review**(`QC mode: full tri-review`,**N=3**)。Assignment 须含 **branch review-package** 路径。PM 汇总 `qc-consolidated.md`。
|
|
19
|
+
- **`Execution mode: inline`**:单席 `qc-specialist` → `qc.md`(**N=1**),或按 hotfix 路由跳过。
|
|
20
20
|
- **After `Request Changes` (default)**:**Targeted re-review** — PM dispatches only QC seats that **raised** blocking findings for this fix round; each updates **the same** `{PLAN_DIR}/reports/<plan-id>/qcN.md` (e.g. `qc1.md` — no `<plan-id>` prefix in basename) (add `## Revalidation`, update verdict). **Do not** spawn `qcN-rev2.md` files on this path. Artifact naming and PM consolidated updates → **`mstar-plan-artifacts/references/plan-files-and-reports.md`** § QC 三审触发时机.
|
|
21
21
|
- **Full tri re-review (exception)**:Assignment must say **`QC re-review: full tri-review`**; then new basenames (`qc1-rev2.md` … `qc-consolidated-rev2.md`); PM marks **active wave** in consolidated decision.
|
|
22
22
|
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Review responsibility boundaries (1.0.0+)
|
|
2
|
+
|
|
3
|
+
## Four layers (orthogonal — do not collapse)
|
|
4
|
+
|
|
5
|
+
| Layer | Who | When | Scope | Input |
|
|
6
|
+
|-------|-----|------|-------|--------|
|
|
7
|
+
| **L1** Implementer | dev subagent | Per task | Write code + TDD evidence | `task-N-brief.md` |
|
|
8
|
+
| **L2** Task reviewer | PM-dispatched subagent (SDD) | Per task, after implementer | Spec + quality for **one task** | brief, report, **task-level** diff |
|
|
9
|
+
| **L3** Plan QC tri (cross-review) | `qc-specialist` + `qc-specialist-2` + `qc-specialist-3` | After **all** tasks on branch | Integration, regression, contract drift — **independent lenses, same branch diff** | Branch `review-package` MERGE_BASE..HEAD |
|
|
10
|
+
| **L4** QA | `qa-engineer` | After QC gate | Acceptance, residual, Done | QC reports + plan + `status.json` |
|
|
11
|
+
|
|
12
|
+
**SDD rule:** Layers L1–L2 run **per task** (serial). Layer L3 is **mandatory full tri-review** (`N=3`) whenever **`Execution mode: sdd`** — single-plan **and** iteration **and** multi-plan iteration. Layer L3 is **not** optional “final single review”.
|
|
13
|
+
|
|
14
|
+
**Non-SDD (`Execution mode: inline`):** hotfix / single-stream — plan QC may be **single-seat** (`qc.md`) or skipped per PM routing.
|
|
15
|
+
|
|
16
|
+
Per-task spec/quality is **done** in L2 before L3. QC seats do not re-derive each task from scratch; they cross-review the **whole branch** for gaps L2 could not see.
|
|
17
|
+
|
|
18
|
+
## Plan QC tri (SDD mandatory)
|
|
19
|
+
|
|
20
|
+
- Assignment: **`QC mode: full tri-review`** (implicit when `Execution mode: sdd`; PM may state explicitly).
|
|
21
|
+
- **N=3** same dispatch message: QC#1 architecture/maintainability → `qc1.md`; QC#2 security/correctness → `qc2.md`; QC#3 performance/reliability → `qc3.md`.
|
|
22
|
+
- PM **`qc-consolidated.md`** — cross-review synthesis; PM gate input.
|
|
23
|
+
- Dispatch must include **Review package path** (branch diff file).
|
|
24
|
+
- **NEVER** substitute a single `qc-specialist` for L3 when SDD was used, unless user override: `QC mode: single — override: <reason>`.
|
|
25
|
+
|
|
26
|
+
## Plan QC single-seat (inline / exception only)
|
|
27
|
+
|
|
28
|
+
- Report: `{PLAN_DIR}/reports/<plan-id>/qc.md`
|
|
29
|
+
- `Execution mode: inline` hotfix paths; or explicit override on SDD plan.
|
|
30
|
+
- `N=1`; no `qc-consolidated.md` required.
|
|
31
|
+
|
|
32
|
+
## Fix waves
|
|
33
|
+
|
|
34
|
+
| After | Fix dispatch |
|
|
35
|
+
|-------|----------------|
|
|
36
|
+
| Task review Critical/Important | Task fix subagent → task re-review (L2) |
|
|
37
|
+
| Plan QC Critical/Important | **One** fix subagent with **complete** finding list → **targeted** QC re-review (listed seats) |
|
|
38
|
+
|
|
39
|
+
## Minor findings
|
|
40
|
+
|
|
41
|
+
Task reviewer Minor → `{SDD_DIR}/progress.md` § Minor. Plan QC Minor → `qcN.md` + optional residual via PM.
|
|
@@ -60,13 +60,17 @@ Role `references/*.md` files include explicit **`NEVER`** sections (anti-recursi
|
|
|
60
60
|
|
|
61
61
|
### QC reviewer (`qc-specialist*` family)
|
|
62
62
|
|
|
63
|
+
**Default (SDD):** plan QC tri-review — `qc-specialist` / `qc-specialist-2` / `qc-specialist-3` → `qc1`…`qc3` + `qc-consolidated.md` when **`Execution mode: sdd`**.
|
|
64
|
+
|
|
65
|
+
**Exception (`inline` / hotfix):** single-seat → `qc.md` (`QC mode: single`).
|
|
66
|
+
|
|
63
67
|
| role_id | reviewer_index | focus | report_suffix |
|
|
64
68
|
| --- | --- | --- | --- |
|
|
65
69
|
| `qc-specialist` | `1` | Architecture coherence and maintainability risk | `qc1` → `{PLAN_DIR}/reports/<plan-id>/qc1.md` |
|
|
66
70
|
| `qc-specialist-2` | `2` | Security and correctness risk | `qc2` → `…/qc2.md` |
|
|
67
71
|
| `qc-specialist-3` | `3` | Performance and reliability risk | `qc3` → `…/qc3.md` |
|
|
68
72
|
|
|
69
|
-
PM consolidated: `…/qc-consolidated.md` (same folder; no `<plan-id>` basename prefix). Naming SSOT: `mstar-plan-artifacts/references/plan-files-and-reports.md`.
|
|
73
|
+
PM consolidated (tri mode): `…/qc-consolidated.md` (same folder; no `<plan-id>` basename prefix). Naming SSOT: `mstar-plan-artifacts/references/plan-files-and-reports.md`.
|
|
70
74
|
|
|
71
75
|
## Maintenance Rules
|
|
72
76
|
|
|
@@ -72,6 +72,12 @@ The **`**You are a leaf executor. You MUST NOT:**`** section (previously just pr
|
|
|
72
72
|
|
|
73
73
|
**Execute as**: <role-id>
|
|
74
74
|
**Delegation**: forbidden | allowed (...)
|
|
75
|
+
**Execution mode**: sdd | inline | N/A
|
|
76
|
+
**SDD implementer session**: fresh | sticky | N/A — **default `fresh`**; `sticky` reuses same implementer subagent across tasks (reviewers stay fresh). See `mstar-sdd/references/sticky-implementer-session.md`
|
|
77
|
+
**SDD dir**: `{HARNESS_DIR}/sdd/<plan-id>/` | N/A
|
|
78
|
+
**Model tier**: fast | standard | capable | N/A
|
|
79
|
+
**QC mode**: full tri-review | single | N/A — **default `full tri-review` when `Execution mode: sdd`**; `single` only for `inline` / override
|
|
80
|
+
**Review package path**: <branch-review diff file> | N/A
|
|
75
81
|
**Who runs this turn (executor lock)**: only `Execute as` role for this message
|
|
76
82
|
**Primary**: <route type>
|
|
77
83
|
**Task category**: `visual` | `deep` | `quick` | `logic` | `ops` | `docs`
|
|
@@ -158,3 +164,17 @@ The **`**You are a leaf executor. You MUST NOT:**`** section (previously just pr
|
|
|
158
164
|
|
|
159
165
|
For host behavior details (dispatch turn shape, paste-only failure mode, invoke-count discipline),
|
|
160
166
|
read `mstar-host` → the active host reference and `references/parallel-dispatch.md` as host SSOT for dispatch.
|
|
167
|
+
|
|
168
|
+
## SDD vs inline implement Assignment(PM)
|
|
169
|
+
|
|
170
|
+
| Mode | Who loads `mstar-sdd` | Assignment shape |
|
|
171
|
+
|------|----------------------|------------------|
|
|
172
|
+
| **`Execution mode: sdd`**(多 task 默认;iteration Phase 2 默认) | **PM** before first implement dispatch | **Per task**:one implementer dispatch + one **fresh** task reviewer;prompt 只含 `{SDD_DIR}/task-N-brief.md` + report 路径 |
|
|
173
|
+
| **`SDD implementer session: sticky`** | PM | Task 1: `fresh` or start sticky + `implementer-session.json`; Task 2+: host **resume** + continuation prompt — **still** per-task review |
|
|
174
|
+
| **`Execution mode: inline`**(hotfix / 单 task) | PM optional | One leaf Assignment;可含完整 scope,但仍须 canonical 字段 |
|
|
175
|
+
|
|
176
|
+
**NEVER(SDD)**:
|
|
177
|
+
|
|
178
|
+
- 把整份 plan 或 T1–Tn 全文贴进 **一个** `fullstack-dev` leaf Assignment。
|
|
179
|
+
- 省略 `Execution mode` / `SDD dir` / `Model tier` 却期望 SDD 产物(`progress.md`、per-task review)。
|
|
180
|
+
- 期望 leaf `fullstack-dev` 载入 `mstar-sdd` 并自编排 per-task 循环 — **编排仅 PM**(`iteration-drive` / `mstar-iteration` §2.4–2.5)。
|
|
@@ -2,33 +2,42 @@
|
|
|
2
2
|
|
|
3
3
|
Use this reference when PM is dispatching QC, consolidating review verdicts, or managing residual findings lifecycle.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
5
|
+
**Layer SSOT (L1–L4):** `mstar-review-qc/references/review-responsibility-boundaries.md`. Dispatch mechanics → **`mstar-dispatch-gates`**; QC checklists / verdict → **`mstar-review-qc`**.
|
|
6
|
+
|
|
7
|
+
## SDD path: mandatory plan QC tri-review (L3)
|
|
8
|
+
|
|
9
|
+
**When:** `Execution mode: sdd` — **all** multi-task implement flows (single plan **or** `mstar-iteration` Phase 2).
|
|
10
|
+
|
|
11
|
+
**Per-task (L2):** task reviewer only — **not** `qc-specialist`. One reviewer subagent per task (spec + quality on task diff).
|
|
12
|
+
|
|
13
|
+
**After all tasks (L3):** see **`mstar-review-qc/references/review-responsibility-boundaries.md`** · **`mstar-dispatch-gates`** (N=3 same message, branch review-package, `qc1`…`qc3` + consolidated). PM checklist:
|
|
14
|
+
|
|
15
|
+
0. Pre-dispatch: read `mstar-review-qc`.
|
|
16
|
+
1. `review-package MERGE_BASE HEAD` → branch diff under `{SDD_DIR}` or PM path.
|
|
17
|
+
2. Dispatch **three** QC seats in **one** message (**N=3**); alignment fields text-identical across reports and Assignment.
|
|
18
|
+
3. PM writes `qc-consolidated.md`; after fixes → targeted re-review (default) or `QC re-review: full tri-review` for new wave files.
|
|
19
|
+
|
|
20
|
+
**NEVER** end an SDD plan with only a single final `qc-specialist` unless user override: `QC mode: single — override: <reason>`.
|
|
21
|
+
|
|
22
|
+
## Inline / hotfix: single-seat QC (exception)
|
|
23
|
+
|
|
24
|
+
**When:** `Execution mode: inline` or explicit hotfix routing.
|
|
25
|
+
|
|
26
|
+
1. Branch review-package path on dispatch.
|
|
27
|
+
2. **One** `qc-specialist` → `qc.md` (**N=1**).
|
|
28
|
+
3. Targeted re-review updates same `qc.md`.
|
|
22
29
|
|
|
23
30
|
## QC / Residual NEVER (PM)
|
|
24
31
|
|
|
25
|
-
- **NEVER**
|
|
26
|
-
- **NEVER**
|
|
27
|
-
- **NEVER**
|
|
28
|
-
- **NEVER**
|
|
29
|
-
- **NEVER**
|
|
30
|
-
- **NEVER**
|
|
31
|
-
- **NEVER**
|
|
32
|
+
- **NEVER** dispatch plan QC without a **branch** review-package file path (MERGE_BASE..HEAD).
|
|
33
|
+
- **NEVER** use single-seat `qc.md` after **`Execution mode: sdd`** without documented user override.
|
|
34
|
+
- **NEVER** dispatch only QC#2 and QC#3 while skipping QC#1 on initial SDD tri wave — full **N=3** cross-review required (all three seats).
|
|
35
|
+
- **NEVER** consolidate tri-review into `Approve` when any QC report's alignment fields differ from Assignment (character-level).
|
|
36
|
+
- **NEVER** register or rewrite residual `severity` outside `mstar-plan-artifacts` machine enum.
|
|
37
|
+
- **NEVER** drop residual tracking to chat-only when `Approve with residuals` applies.
|
|
38
|
+
- **NEVER** treat "two of three QC reports arrived" as sufficient — missing seat → `Blocked`.
|
|
39
|
+
- **NEVER** re-dispatch all three after routine fix when only one or two had blockers — **targeted re-review** unless `QC re-review: full tri-review`.
|
|
40
|
+
- **NEVER** create `qc1-rev2.md` for **targeted** re-review; update original `qcN.md` in place.
|
|
32
41
|
|
|
33
42
|
## Consolidated Decision Template
|
|
34
43
|
|
|
@@ -80,7 +80,8 @@ Document override as `Dev owner tie-break: single id — <reason>`.
|
|
|
80
80
|
- `frontend-dev` + `fullstack-dev` can run in parallel once interface contract is clear.
|
|
81
81
|
- `fullstack-dev` + `fullstack-dev-2` can run in parallel when module boundaries are explicit.
|
|
82
82
|
- Same-repo multi-writer concurrency requires branch + worktree isolation.
|
|
83
|
-
-
|
|
83
|
+
- **SDD implement** (`Execution mode: sdd`, default multi-task): per-task **task reviewer** (L2) + plan **QC tri-review** (L3, N=3).
|
|
84
|
+
- **Inline / hotfix**: single-seat QC or skip per routing table.
|
|
84
85
|
|
|
85
86
|
## Routing / allocation NEVER (PM)
|
|
86
87
|
|
|
@@ -7,7 +7,8 @@ Before any non-trivial PM action, read in order:
|
|
|
7
7
|
3. Host adapter: `mstar-host` (detect host; Read `references/opencode.md`, `cursor.md`, or `codex.md`)
|
|
8
8
|
4. `mstar-plan-conventions` (path discovery, init, Spec branch summary)
|
|
9
9
|
5. `mstar-review-qc` (same coordination round, **before** any QC dispatch)
|
|
10
|
-
6.
|
|
10
|
+
6. **`mstar-sdd`** when implement uses **`Execution mode: sdd`**
|
|
11
|
+
7. **On demand:** `mstar-branch-worktree` (parallel implement, QC/QA checkout); `mstar-plan-artifacts` (`status.json`, R#); `mstar-plan-artifacts` (InReview waves, reports naming)
|
|
11
12
|
|
|
12
13
|
**Not required:** `mstar-coding-behavior` (orchestration-only PM work).
|
|
13
14
|
|
|
@@ -56,11 +57,11 @@ Pick one `Primary` route per Assignment; attach additional gates as needed.
|
|
|
56
57
|
|
|
57
58
|
| Task type | Default route |
|
|
58
59
|
| --- | --- |
|
|
59
|
-
| Large feature | `explore -> product-manager -> architect -> dev -> QC tri-review -> qa-engineer -> ops-engineer` |
|
|
60
|
-
| Medium feature | `explore -> (architect optional) -> dev -> QC tri-review -> qa-engineer` |
|
|
61
|
-
| Small feature | `dev -> QC tri-review -> qa-engineer` |
|
|
62
|
-
| Bug fix | `explore -> RCA brief -> dev -> QC tri-review -> qa-engineer` |
|
|
63
|
-
| High-ambiguity bug | `explore -> RCA -> (architect optional) -> dev -> QC tri-review -> qa-engineer` |
|
|
60
|
+
| Large feature | `explore -> product-manager -> architect -> dev (SDD) -> QC tri-review -> qa-engineer -> ops-engineer` |
|
|
61
|
+
| Medium feature | `explore -> (architect optional) -> dev (SDD) -> QC tri-review -> qa-engineer` |
|
|
62
|
+
| Small feature | `dev (SDD) -> QC tri-review -> qa-engineer` |
|
|
63
|
+
| Bug fix | `explore -> RCA brief -> dev (SDD) -> QC tri-review -> qa-engineer` |
|
|
64
|
+
| High-ambiguity bug | `explore -> RCA -> (architect optional) -> dev (SDD) -> QC tri-review -> qa-engineer` |
|
|
64
65
|
| Hotfix | `single dev -> QC single-review -> qa-engineer fast verify` |
|
|
65
66
|
| Product docs only | `product-manager` (QC may be skipped with explicit reason) |
|
|
66
67
|
| Tech spec only | `architect` (QC may be skipped with explicit reason) |
|
|
@@ -78,7 +79,9 @@ Detailed conflict priority and dev allocation:
|
|
|
78
79
|
|
|
79
80
|
## Non-Bypass Constraints
|
|
80
81
|
|
|
81
|
-
- Code-development plans
|
|
82
|
+
- Code-development plans with **`Execution mode: sdd`** (default for multi-task): **mandatory plan QC tri-review** (`qc1`…`qc3` + consolidated) after all task reviewers complete.
|
|
83
|
+
- **`Execution mode: inline`**: hotfix single-seat QC (`qc.md`) or explicit skip rules unchanged.
|
|
84
|
+
- Multi-task implement defaults to **`Execution mode: sdd`** + `mstar-sdd`; hotfix may use `inline`.
|
|
82
85
|
- Runtime/behavior change requires QA by default.
|
|
83
86
|
- Report-only QA may skip QC tri-review only when no implementation/test/config artifact is committed.
|
|
84
87
|
- Product-docs-only and tech-spec-only can skip QC tri-review only with explicit `QC: skipped — <reason>`.
|
|
@@ -135,9 +138,15 @@ Before first implement dispatch (non-hotfix):
|
|
|
135
138
|
|
|
136
139
|
If any fail -> do not dispatch implement.
|
|
137
140
|
|
|
138
|
-
### PM entry sessions
|
|
141
|
+
### PM entry sessions
|
|
139
142
|
|
|
140
|
-
|
|
143
|
+
| Entry | Next reads |
|
|
144
|
+
|-------|------------|
|
|
145
|
+
| **`/pm`** or **`pm` skill** (Codex, Cursor; OpenCode when no command) | This shim → **`project-manager.md`** § Required Reading + topic skills on demand |
|
|
146
|
+
| **Cursor / OpenCode** **`commands/`** (`iteration-start`, `iteration-drive`, `mstar-bootstrap`) | Command **Boot** + **`project-manager.md`** — iteration lifecycle only; **not** required for ordinary per-plan PM |
|
|
147
|
+
| **OpenCode** (no command, not `/pm`) | `project-manager` + `mstar-host` → `opencode.md` |
|
|
148
|
+
|
|
149
|
+
**Dispatch-first**, iteration branch policy(`iteration_base_branch` / `spec_integration_branch` / `target_branch`), Autonomous Execute → **`mstar-iteration`** §2. Routing, gates, Task Board, QC, templates → this file + topic `mstar-*` skills.
|
|
141
150
|
|
|
142
151
|
---
|
|
143
152
|
|
|
@@ -176,7 +185,7 @@ Anti-patterns:
|
|
|
176
185
|
- Q6: Is `Task category` aligned with route?
|
|
177
186
|
- Q7: Is `quick` being misused to bypass prepare?
|
|
178
187
|
- Q8: Is intention gate explicit before implement?
|
|
179
|
-
- Q9:
|
|
188
|
+
- Q9: For QC (single or tri), are alignment fields text-identical across reviewers and Assignment? SDD / tri: `Execution mode: sdd` or explicit `QC mode: full tri-review`; inline: `QC mode: single` or skip reason.
|
|
180
189
|
- Q10: Is `Delegation` consistent with dispatch and worktree usage?
|
|
181
190
|
- Q11: For non-trivial plan, is PM Task Board published with coverage?
|
|
182
191
|
- Q12: In invoke-based hosts, were matching invokes actually issued?
|
|
@@ -285,7 +294,7 @@ Minimum invariants:
|
|
|
285
294
|
- `references/project-manager/routing-and-dev-allocation.md`
|
|
286
295
|
- Dispatch mechanics + anti-recursion + templates:
|
|
287
296
|
- `references/project-manager/dispatch-and-assignment.md`
|
|
288
|
-
- QC tri
|
|
297
|
+
- QC (SDD → mandatory tri; inline → single) + residual lifecycle:
|
|
289
298
|
- `references/project-manager/qc-and-residuals.md`
|
|
290
299
|
- Plan/status initialization + lifecycle:
|
|
291
300
|
- `references/project-manager/plan-management.md`
|
|
@@ -24,9 +24,11 @@ Behavior is shared; reviewer identity is parameterized.
|
|
|
24
24
|
|
|
25
25
|
## Role Mission
|
|
26
26
|
|
|
27
|
-
You are QC reviewer #{reviewer_index}, dispatched by `project-manager`.
|
|
27
|
+
You are QC reviewer #{reviewer_index} (or the sole reviewer when `QC mode: single`), dispatched by `project-manager`.
|
|
28
28
|
Your output is a structured QC report plus completion report.
|
|
29
29
|
|
|
30
|
+
**Default (SDD):** plan QC tri on whole-branch review-package (`QC mode: full tri-review`). **Exception:** `Execution mode: inline` → single-seat `qc.md`.
|
|
31
|
+
|
|
30
32
|
## Non-Recursive Dispatch Rule (Hard)
|
|
31
33
|
|
|
32
34
|
**You ARE `{role_id}`, a QC reviewer — not a PM, not a dispatcher.**
|
|
@@ -42,7 +44,7 @@ Your Assignment's IDENTITY block at the top already established this. Reinforcin
|
|
|
42
44
|
|
|
43
45
|
If any item below matches, **stop** and return `Blocked` to `project-manager` instead of improvising:
|
|
44
46
|
|
|
45
|
-
- **NEVER** invoke another QC seat
|
|
47
|
+
- **NEVER** invoke another QC seat or `{role_id}` again, nor `qa-engineer` / dev / `architect` / `project-manager`, to split **this** review unless `Delegation: allowed (...)` lists them. PM launches initial tri (**N=3**) when **`Execution mode: sdd`** or Assignment says **`QC mode: full tri-review`**. Single-seat only for `inline` / explicit override. **Targeted re-review** lists only seats PM assigned.
|
|
46
48
|
- **NEVER** ask the user for permission to submit a report, present “notify PM?” choosers, or stall after a completed review—when requirements are met, emit **Completion Report v2** in the **same** assistant turn (with a real **Git** line when commits are required).
|
|
47
49
|
- **NEVER** modify business implementation/tests, `{HARNESS_DIR}/status.json` residual lifecycle fields, `{HARNESS_DIR}/archived/`, or any path outside the host write whitelist for QC (typically `{PLAN_DIR}/reports/**/*.md` only).
|
|
48
50
|
- **NEVER** `git add .` or stage unrelated paths when committing QC reports—stage **only** the report files you changed.
|
|
@@ -89,7 +91,7 @@ Use severity and formatting standards from `mstar-review-qc`; machine `severity`
|
|
|
89
91
|
|
|
90
92
|
## Report path (required)
|
|
91
93
|
|
|
92
|
-
Write under **`{PLAN_DIR}/reports/<plan-id>/`** using basename **`{report_suffix}.md`** (
|
|
94
|
+
Write under **`{PLAN_DIR}/reports/<plan-id>/`** using basename **`{report_suffix}.md`** (**SDD default / tri**: `qc1.md`, `qc2.md`, `qc3.md`; **inline exception**: `qc.md`). **Do not** prefix the filename with `<plan-id>` — the folder already scopes the plan. PM consolidated report (`qc-consolidated.md`) applies to **tri mode**; single-seat may use `qc.md` alone as gate input.
|
|
93
95
|
|
|
94
96
|
## Targeted re-review (same report file)
|
|
95
97
|
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mstar-sdd
|
|
3
|
+
description: Morning Star subagent-driven development (SDD) — file handoff, per-task implementer + task reviewer (L2), progress ledger, branch review-package for plan QC tri (L3). **Implementer session** `fresh` (default) or **`sticky`** (same dev subagent across tasks — `references/sticky-implementer-session.md`). **Must** Read when project-manager runs `Execution mode: sdd` (multi-task plan, single-plan, or iteration Phase 2), dispatches SDD implementer/reviewer subagents, or prepares review-package paths. Leaf implementer/reviewer subagents skip PM sections via SUBAGENT-STOP in dispatch prompts.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Load order
|
|
7
|
+
|
|
8
|
+
**Before first Read:** `mstar-harness-core` → `mstar-dispatch-gates`. Path symbols → **`mstar-plan-conventions`** (`{SDD_DIR}`). Plan QC after SDD → **`mstar-review-qc`**. On conflict, **`mstar-harness-core` wins**.
|
|
9
|
+
|
|
10
|
+
<SUBAGENT-STOP>
|
|
11
|
+
If you were dispatched as an SDD implementer or task reviewer, skip PM orchestration sections. Follow your dispatch prompt only.
|
|
12
|
+
</SUBAGENT-STOP>
|
|
13
|
+
|
|
14
|
+
## When to use
|
|
15
|
+
|
|
16
|
+
- Plan locked; tasks mostly independent; PM orchestrates in-session
|
|
17
|
+
- Assignment has **`Execution mode: sdd`**
|
|
18
|
+
- **Not** for hotfix inline work (`Execution mode: inline`) or leaf self-dispatch
|
|
19
|
+
|
|
20
|
+
## Core principle
|
|
21
|
+
|
|
22
|
+
**Default:** fresh implementer subagent per task + task review (spec + quality) + plan-level QC on whole branch = quality with isolated context.
|
|
23
|
+
|
|
24
|
+
**Optional:** **`SDD implementer session: sticky`** — same implementer subagent across sequential tasks on one plan/branch; **task reviewers stay fresh per task**. SSOT → **`references/sticky-implementer-session.md`**.
|
|
25
|
+
|
|
26
|
+
**Narration:** at most one short line between tool calls — ledger and file paths carry the record.
|
|
27
|
+
|
|
28
|
+
**Continuous execution:** do not check in with the human between tasks. Stop only for BLOCKED, genuine ambiguity, or all tasks complete.
|
|
29
|
+
|
|
30
|
+
## Pre-flight plan scan
|
|
31
|
+
|
|
32
|
+
Before Task 1, scan plan once for:
|
|
33
|
+
|
|
34
|
+
- tasks contradicting Global Constraints
|
|
35
|
+
- plan-mandated items that review rubric would flag as defects
|
|
36
|
+
|
|
37
|
+
Batch all findings for the human in one message. If clean, proceed silently.
|
|
38
|
+
|
|
39
|
+
## Per-task loop (PM only)
|
|
40
|
+
|
|
41
|
+
1. Record `BASE_SHA` (never use `HEAD~1` later)
|
|
42
|
+
2. `sdd-workspace <plan-id>` → `SDD_DIR`
|
|
43
|
+
3. `task-brief <plan> N` → brief file
|
|
44
|
+
4. Dispatch implementer:
|
|
45
|
+
- **`SDD implementer session: fresh`** (default) — new subagent; templates: `references/implementer-prompt.md`
|
|
46
|
+
- **`SDD implementer session: sticky`** — first task: same as fresh + write `{SDD_DIR}/implementer-session.json` with `host_agent_id`; later tasks: host **resume** + `references/implementer-continuation-prompt.md` (see **`references/sticky-implementer-session.md`**)
|
|
47
|
+
5. On `DONE`: `review-package BASE HEAD` → diff file
|
|
48
|
+
6. Dispatch **fresh** task reviewer (brief, report, diff, Global Constraints) — `references/task-reviewer-prompt.md` — **never** sticky resume for reviewers
|
|
49
|
+
7. Fix loop for Critical/Important; re-review until approved
|
|
50
|
+
8. Append `progress.md`; update `status.json` `task_commits[]` and `implementer-session.json` `last_task` if sticky
|
|
51
|
+
9. Next task
|
|
52
|
+
|
|
53
|
+
**Never** dispatch multiple implementers in parallel (write conflicts).
|
|
54
|
+
|
|
55
|
+
Detail: **`references/file-handoffs.md`**.
|
|
56
|
+
|
|
57
|
+
## Implementer statuses
|
|
58
|
+
|
|
59
|
+
| Status | PM action |
|
|
60
|
+
|--------|-----------|
|
|
61
|
+
| DONE | review-package → task reviewer |
|
|
62
|
+
| DONE_WITH_CONCERNS | read concerns; fix scope issues before review |
|
|
63
|
+
| NEEDS_CONTEXT | provide context; re-dispatch |
|
|
64
|
+
| BLOCKED | more context, higher tier, split task, or escalate human — **never** same-model blind retry |
|
|
65
|
+
|
|
66
|
+
## Reviewer ⚠️ items
|
|
67
|
+
|
|
68
|
+
`⚠️ Cannot verify from diff` does not block other findings. PM must resolve each before task complete.
|
|
69
|
+
|
|
70
|
+
## Model tier
|
|
71
|
+
|
|
72
|
+
| Tier | Use |
|
|
73
|
+
|------|-----|
|
|
74
|
+
| fast | Transcription (complete code in plan); 1–2 file mechanical |
|
|
75
|
+
| standard | Prose implementer; task reviewer (floor) |
|
|
76
|
+
| capable | Integration judgment; plan QC on large branch diff |
|
|
77
|
+
|
|
78
|
+
**Turn count beats token price:** use `standard` floor for reviewers and prose implementers. **Always name model on dispatch** — omitted model inherits session default (often most expensive).
|
|
79
|
+
|
|
80
|
+
Host mapping → **`mstar-host`** references (`model` / Task field).
|
|
81
|
+
|
|
82
|
+
## After all tasks
|
|
83
|
+
|
|
84
|
+
1. `review-package MERGE_BASE HEAD` → branch diff in `{SDD_DIR}`
|
|
85
|
+
2. PM dispatches **plan QC tri-review (L3)** — **`QC mode: full tri-review`**, **N=3** — with branch review-package path → **`mstar-review-qc`** · **`mstar-dispatch-gates`**. Layer SSOT → **`mstar-review-qc/references/review-responsibility-boundaries.md`**. PM writes `qc-consolidated.md`. **Mandatory whenever `Execution mode: sdd`** (single-plan or iteration).
|
|
86
|
+
3. Critical/Important QC findings → **one** fix dispatch (full list), then targeted re-review
|
|
87
|
+
4. QA gate → **`mstar-review-qc`** / `mstar-harness-core` Done rules
|
|
88
|
+
|
|
89
|
+
## Progress ledger
|
|
90
|
+
|
|
91
|
+
At start: `cat {SDD_DIR}/progress.md`. Tasks marked complete are DONE — do not re-dispatch after compaction.
|
|
92
|
+
|
|
93
|
+
Append on clean review: `Task N: complete (<base>..<head>, review clean)`.
|
|
94
|
+
|
|
95
|
+
Minor findings → `## Minor (for plan QC)` section in same file.
|
|
96
|
+
|
|
97
|
+
## Red flags (NEVER)
|
|
98
|
+
|
|
99
|
+
- Parallel implementer dispatches
|
|
100
|
+
- Paste plan, diffs, or task history into dispatch prompts
|
|
101
|
+
- Dispatch reviewer without diff file
|
|
102
|
+
- `HEAD~1` as review BASE
|
|
103
|
+
- Pre-judge reviewer ("do not flag", "at most Minor")
|
|
104
|
+
- Skip task review or accept missing verdict
|
|
105
|
+
- Re-dispatch tasks listed complete in ledger
|
|
106
|
+
- PM thread implements instead of subagent dispatch
|
|
107
|
+
- Sticky **resume** for task reviewers
|
|
108
|
+
- Resume implementer without `host_agent_id` in `implementer-session.json`
|
|
109
|
+
|
|
110
|
+
## Scripts
|
|
111
|
+
|
|
112
|
+
From repo: `skills/mstar-sdd/scripts/` (bundled in OpenCode as `harness-skills/mstar-sdd/scripts/`).
|
|
113
|
+
|
|
114
|
+
| Script | Usage |
|
|
115
|
+
|--------|--------|
|
|
116
|
+
| `sdd-workspace` | `PLAN_ID` → creates `{SDD_DIR}`, prints path |
|
|
117
|
+
| `task-brief` | `PLAN_FILE TASK_N [OUTFILE]` |
|
|
118
|
+
| `review-package` | `BASE HEAD [OUTFILE]` |
|
|
119
|
+
|
|
120
|
+
## References
|
|
121
|
+
|
|
122
|
+
- `references/file-handoffs.md` — paths and fix-loop evidence
|
|
123
|
+
- `references/sticky-implementer-session.md` — `fresh` vs `sticky`, ledger, host resume, micro-batch fallback
|
|
124
|
+
- `references/implementer-prompt.md`
|
|
125
|
+
- `references/implementer-continuation-prompt.md`
|
|
126
|
+
- `references/task-reviewer-prompt.md`
|