mirror of
https://github.com/bmad-code-org/BMAD-METHOD.git
synced 2026-08-30 17:14:59 +08:00
fix(review): drop static prompt-text test; address PR bot notes
Remove the assertion that scanned rendered markdown for a fixed prompt phrase. Keep structural checks that file-backed review prompts ship and that adversarial.md is not published. Document markdown-list-only output in the adversarial-review explanation. Drop the leftover "concrete in the content" line from the review lens.
This commit is contained in:
@@ -11,7 +11,7 @@ Force deeper analysis by requiring a real list of issues — not a cynical perso
|
||||
|
||||
A review technique where the reviewer must produce findings. "Looks good" with an empty list is not allowed.
|
||||
|
||||
The mechanism is a **finding floor** (at least ten issues to fix or improve) plus an explicit push to look for **what is missing**, not only what is wrong. If the content is empty, stop. If the list is empty, re-check — do not finish with nothing.
|
||||
The mechanism is a **finding floor** (at least ten issues to fix or improve) plus an explicit push to look for **what is missing**, not only what is wrong. Output is a Markdown list of descriptions only — no severity, priority, or ranking. If the content is empty, stop. If the list is empty, re-check — do not finish with nothing.
|
||||
|
||||
It is not about sounding hostile. Older prompts used a jaded persona; that does not change what modern models find. What still matters is the obligation to keep searching and to prefer omissions over a cursory pass.
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ sidebar:
|
||||
|
||||
一种评审手法:评审者**必须**产出发现。空列表式的“看起来不错”不允许。
|
||||
|
||||
机制是**发现数量下限**(至少十条可修/可改的问题),并明确要求看**缺了什么**,而不只是错了什么。内容为空则停止;若一条都没有,要再查,不能空着结束。
|
||||
机制是**发现数量下限**(至少十条可修/可改的问题),并明确要求看**缺了什么**,而不只是错了什么。输出仅为 Markdown 列表描述——无严重度、优先级或排序。内容为空则停止;若一条都没有,要再查,不能空着结束。
|
||||
|
||||
这与“装成刻薄审稿人”无关。旧提示里的人设对现在的模型几乎不改变发现内容;真正起作用的是继续搜寻的义务,以及对遗漏的偏好。
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@ Conduct a review of the provided content.
|
||||
Look for what's missing, not only what's wrong.
|
||||
Find at least ten issues to fix or improve.
|
||||
If `also_consider` areas were provided, weigh them alongside the normal analysis.
|
||||
Every finding must point at something concrete in the content.
|
||||
If the content is empty, stop and say so.
|
||||
If you have zero findings, re-check and keep thinking; do not stop with an empty list.
|
||||
|
||||
|
||||
@@ -185,13 +185,13 @@ async function main() {
|
||||
assert(!markdown.includes('{skill-root}'), 'mutable skill-root reference survived');
|
||||
assert(markdown.includes('{spec_file}'), 'runtime placeholder was removed');
|
||||
assert(markdown.includes('tailored to `expert`'), 'user_skill_level behavior missing');
|
||||
// Blind hunter is inlined in customize.toml; only file-backed reviewers ship under review-prompts/.
|
||||
// File-backed review layers are snapshotted; blind hunter is inlined (no adversarial.md).
|
||||
for (const prompt of ['edge-case-hunter.md', 'verification-gap.md']) {
|
||||
const promptPath = path.join(dir, 'review-prompts', prompt);
|
||||
assert(markdown.includes(promptPath), `snapshot reviewer path missing: ${prompt}`);
|
||||
assert(fs.existsSync(promptPath), `snapshot reviewer missing: ${prompt}`);
|
||||
}
|
||||
assert(markdown.includes('Conduct a review of CONTENT.'), 'inlined blind-hunter prompt missing from rendered layers');
|
||||
assert(!fs.existsSync(path.join(dir, 'review-prompts', 'adversarial.md')), 'deleted adversarial.md was published into the snapshot');
|
||||
for (const match of markdown.matchAll(/`(\/[^`]+\/step-[^`]+\.md)`/g)) {
|
||||
assert(path.dirname(match[1]) === dir, `cross-generation reference: ${match[1]}`);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user