From 88b3ce5c4f43356c99fccb3ed26599cee8594075 Mon Sep 17 00:00:00 2001 From: John Collier Date: Fri, 21 Aug 2026 15:21:01 -0400 Subject: [PATCH] fix(grillme): require a recommended answer on inline questions The original grilling skill always paired each question with a recommended answer. The inline-thread rewrite dropped that, so turn-1 comments on #7 were probes with no stance. Restore **Recommended:** on new inline comments and on follow-up replies that still ask a decision question. Omit it only when the agent truly has no technical default. Co-authored-by: Cursor --- .fullsend/custom/agents/grillme.md | 16 +++++++++++++--- .fullsend/custom/skills/grilling/SKILL.md | 8 ++++++-- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/.fullsend/custom/agents/grillme.md b/.fullsend/custom/agents/grillme.md index 84086fc..56fb910 100644 --- a/.fullsend/custom/agents/grillme.md +++ b/.fullsend/custom/agents/grillme.md @@ -177,14 +177,14 @@ strips it from the review body and executes each action. "thread_replies": [ { "comment_id": 12345678, - "body": "You said the session store is cache-only, but the fallback on cache miss isn't defined. What happens on a cold start? " + "body": "You said the session store is cache-only, but the fallback on cache miss isn't defined. What happens on a cold start?\n\n**Recommended:** Fail closed and require a warm path, or document that cold start is undefined. Leaving it implicit will surprise operators. " } ], "new_comments": [ { "path": "src/auth/middleware.ts", "line": 28, - "body": "This middleware intercepts all routes. Is that intentional, or should it scope to `/api/*` only? " + "body": "This middleware intercepts all routes. Is that intentional, or should it scope to `/api/*` only?\n\n**Recommended:** Scope to `/api/*`. Applying auth to static/health routes is usually accidental and harder to unwind later. " } ] } @@ -208,7 +208,15 @@ All three fields are optional. Omit any that have no entries. - `path` must be a file in the PR diff. - `line` must be a line number in the **new version** of the file (the `+` side of the diff). Use diff hunk headers to find the correct number. -- Keep each body to 1-3 sentences. Probe a decision, not a style nit. +- Structure each body as: the question (1–2 sentences), then a + `**Recommended:**` line with your preferred answer and a brief why. + The recommendation is the agent's stance, not a mandate — the engineer + still decides. +- Omit `**Recommended:**` only when you truly have no stance (rare: a + values/priority call with no technical default). Do not omit it just + because the spec is ambiguous — that is when a recommendation is most + useful. +- Probe a decision, not a style nit. - Aim for 2-5 new comments per turn. Each should probe a different decision point. @@ -217,6 +225,8 @@ All three fields are optional. Omit any that have no entries. - Include ` ` at the end of the reply body. - A follow-up reply should reference the engineer's answer and ask a deeper question, not simply acknowledge. +- When the follow-up is itself a decision question, include + `**Recommended:**` the same way as new comments. ### General rules diff --git a/.fullsend/custom/skills/grilling/SKILL.md b/.fullsend/custom/skills/grilling/SKILL.md index 40318c6..c4b445a 100644 --- a/.fullsend/custom/skills/grilling/SKILL.md +++ b/.fullsend/custom/skills/grilling/SKILL.md @@ -10,7 +10,9 @@ description: > Interview the engineer about every material *decision* behind this change until you reach a shared understanding. Walk down each branch of the decision -tree. For each question, pin it to the relevant diff line when one exists. +tree. For each question, pin it to the relevant diff line when one exists, +and include your **recommended answer** (with a brief why) on that same +comment unless you genuinely have no stance. ## Scope: decisions, not correctness @@ -29,7 +31,9 @@ Each agent run is **one turn** that may ask **several questions in parallel**: 2. Resolve threads whose answers are satisfactory. Reply in-thread when an answer needs a follow-up. Leave unanswered threads alone. 3. Pin **2–5 new questions** as inline comments on distinct decision points - in the diff. If a question has no diff anchor, put it in the review body. + in the diff. Each comment is a question plus `**Recommended:** `. If a question has no diff anchor, put it in the review body + with the same recommended-answer line. 4. Stop. Do not continue until the next `/fs-grillme` turn. A session is complete when every grillme thread is resolved and no new