@mstar-harness/opencode 3.2.2 → 3.2.3
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
CHANGED
|
@@ -6,6 +6,16 @@ The monorepo root [CHANGELOG.md](../../CHANGELOG.md) summarizes cross-surface re
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [3.2.3] - 2026-08-24
|
|
10
|
+
|
|
11
|
+
### Bundled harness skills (`harness-skills/` at publish)
|
|
12
|
+
|
|
13
|
+
- **PR deep-review report template**: the GitHub Review body now follows a fixed three-section report — Verdict (verdict token + confidence score + four-class emoji findings table), Review (PR summary, ranked findings with merge class, linked-issue AC, verified checks, considered & rejected), and a collapsible **Plan to fix** section holding the fix plan in a fenced ```md block. Chat display contract unchanged.
|
|
14
|
+
|
|
15
|
+
- Version alignment with harness **3.2.3** (no OpenCode package API change).
|
|
16
|
+
|
|
17
|
+
See root [CHANGELOG.md](../../CHANGELOG.md) **3.2.3**.
|
|
18
|
+
|
|
9
19
|
## [3.2.2] - 2026-08-24
|
|
10
20
|
|
|
11
21
|
### Bundled harness skills (`harness-skills/` at publish)
|
|
@@ -217,7 +217,7 @@ Posting the GitHub Review is a **mandatory deliverable** of the `pr` variant —
|
|
|
217
217
|
2. Build one review payload:
|
|
218
218
|
- `event`: `COMMENT` — **never** `APPROVE`, **never** `REQUEST_CHANGES`, never a merge.
|
|
219
219
|
- `commit_id`: the PR head SHA.
|
|
220
|
-
- `body`:
|
|
220
|
+
- `body`: follow **§ Report template (below)** — three sections (Verdict → Review → Plan to fix). `event` stays `COMMENT` — **never** `APPROVE`, **never** `REQUEST_CHANGES`, never a merge.
|
|
221
221
|
- `comments[]`: one entry per finding whose `path` + `line` is in the three-dot diff, `side: RIGHT`. Finding body = title + evidence + impact + fix sketch — not the whole plan.
|
|
222
222
|
3. Post it:
|
|
223
223
|
```
|
|
@@ -228,15 +228,63 @@ Posting the GitHub Review is a **mandatory deliverable** of the `pr` variant —
|
|
|
228
228
|
5. Record `html_url` / review id for `comments:`. Only now clean up the worktree (or after the n/a-no-PR skip).
|
|
229
229
|
6. **Batch:** each reviewer posts on **their own PRs** only. No second PM summary comment unless the Assignment says so.
|
|
230
230
|
|
|
231
|
-
###
|
|
231
|
+
### Report template (GitHub Review `body`)
|
|
232
|
+
|
|
233
|
+
The posted review body is a three-section report. Section order fixed; omit a subsection only when its content is genuinely empty (write `none`, never delete the heading).
|
|
234
|
+
|
|
235
|
+
**Section emoji map** — verdict: `ship it` ✅ · `needs fixes` ⚠️ · `blocked` ⛔. Finding classes: 🔴 must-fix · 🟠 should-fix · 🔵 nit · ❓ unverified.
|
|
236
|
+
|
|
237
|
+
````markdown
|
|
238
|
+
## <verdict-emoji> Verdict: `<verdict>` · Confidence <score_pct>%
|
|
239
|
+
|
|
240
|
+
| Findings | Count |
|
|
241
|
+
| --- | --- |
|
|
242
|
+
| 🔴 must-fix | <n> |
|
|
243
|
+
| 🟠 should-fix | <n> |
|
|
244
|
+
| 🔵 nit | <n> |
|
|
245
|
+
| ❓ unverified | <n> |
|
|
246
|
+
|
|
247
|
+
## 📋 Review
|
|
248
|
+
|
|
249
|
+
**What this PR does**: <2–3 sentences summarizing the diff's intent and surface — from the PR description plus your own read of the changed files, not copied marketing text.>
|
|
250
|
+
|
|
251
|
+
### Findings
|
|
252
|
+
|
|
253
|
+
<Ranked findings (§ List cut). Each finding keeps its normal format — title, evidence (`file:line`), impact, **Merge class**, **Confidence**, fix sketch — with its class emoji prefixing the title.>
|
|
254
|
+
|
|
255
|
+
### Linked-issue AC
|
|
256
|
+
|
|
257
|
+
<When § Linked-issue hygiene applied: per-criterion met / unmet / cut with one-line reasoning. Otherwise `none`.>
|
|
258
|
+
|
|
259
|
+
### ✅ Verified
|
|
260
|
+
|
|
261
|
+
<Concise what-checks-proved summary — the smallest runtime checks actually run and what they showed. Residual unverified leads go here as `- ❓ <lead>` lines, not into the findings table.>
|
|
232
262
|
|
|
233
|
-
|
|
263
|
+
### 🗑️ Considered & rejected
|
|
234
264
|
|
|
265
|
+
<- <finding>: rejected because <one line>. Otherwise `none` — rejections come from the three-way attack / vet pass (§ Attack and vet), so the next reviewer does not re-chase them.>
|
|
266
|
+
|
|
267
|
+
## 🛠️ Plan to fix
|
|
268
|
+
|
|
269
|
+
<details><summary>展开修复计划 / Expand fix plan</summary>
|
|
270
|
+
<br>
|
|
271
|
+
|
|
272
|
+
```md
|
|
273
|
+
<Fix plan in markdown when the audit produced one: ordered steps per finding, files touched, verification gates. Omit the block entirely only when no fix is proposed.>
|
|
235
274
|
```
|
|
236
|
-
<details><summary>Follow-up plans</summary>
|
|
237
275
|
|
|
238
|
-
- <plan title> — P1 / S — <1–3 sentence sketch> (`{PLAN_DIR}/audit-<date>/NNN-<slug>.md`)
|
|
239
276
|
</details>
|
|
277
|
+
````
|
|
278
|
+
|
|
279
|
+
- The Verdict section replaces the old two-line tally header on GitHub: same facts (verdict token + `score_pct` as Confidence + four-class tally), structured. The chat display contract (§ Display contract) is unchanged.
|
|
280
|
+
- When the fix plan itself contains fenced code blocks, open the outer fence with four backticks so the inner fences survive.
|
|
281
|
+
|
|
282
|
+
### Folding plans into the summary
|
|
283
|
+
|
|
284
|
+
Fold follow-up plans into the review body **only if** this review wrote them. Put a short index — title, priority, effort, 1–3 sentence sketch, plan path — as the first content inside the § Report template **Plan to fix** `<details>` block, before the ```md fix-plan block:
|
|
285
|
+
|
|
286
|
+
```
|
|
287
|
+
- <plan title> — P1 / S — <1–3 sentence sketch> (`{PLAN_DIR}/audit-<date>/NNN-<slug>.md`)
|
|
240
288
|
```
|
|
241
289
|
|
|
242
290
|
Never dump full plan files.
|
|
@@ -261,16 +309,18 @@ Never dump full plan files.
|
|
|
261
309
|
- `inline: <N> posted / <M> attempted (<K> summary-only fallback)`
|
|
262
310
|
- `plans_folded: yes` | `no`
|
|
263
311
|
|
|
264
|
-
### Display contract (chat
|
|
312
|
+
### Display contract (chat output)
|
|
265
313
|
|
|
266
|
-
First two lines of the
|
|
314
|
+
First two lines of the **chat** display — verbatim:
|
|
267
315
|
|
|
268
316
|
```
|
|
269
317
|
{verdict} · {score_pct}%
|
|
270
318
|
must-fix=<n> should-fix=<n> nit=<n> unverified=<n>
|
|
271
319
|
```
|
|
272
320
|
|
|
273
|
-
Then
|
|
321
|
+
Then ranked findings / leftover AC summary. Do not put `score_pct%` on the `- verdict:` token line.
|
|
322
|
+
|
|
323
|
+
The GitHub Review `body` no longer uses the two-line header — it follows § Report template, whose Verdict section carries the same facts structured (verdict token + Confidence + four-class emoji tally table).
|
|
274
324
|
|
|
275
325
|
### List cut
|
|
276
326
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mstar-harness/opencode",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.3",
|
|
4
4
|
"description": "Morning Star harness OpenCode plugin — skills bootstrap + engine-backed runtime hooks (status lint, dispatch validation, Enforcement: hard gates).",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|