grill

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

grill — sharpen idea before spec

grill — 在撰写规格前打磨想法

One question at a time. Every answer lands in a § or gets parked
?
. Never guess a constraint into existence.
Plan-then-execute guesses the fuzzy parts & builds the wrong thing. Grill drags the fuzz into §G/§C before a single §T row exists. A bad assumption caught here costs one question. Caught in §B it costs a bug.
每次只提一个问题。每个答案要么归入某个§,要么标记为
?
暂存。绝不凭空猜测约束条件。
先计划再执行的方式会模糊不确定的部分,进而构建出错误的产物。 Grill会在任何§T条目出现之前,将模糊点梳理进§G/§C。 在这里发现一个错误假设只需要一个问题的成本,而在§B阶段发现则会导致bug的产生。

WHEN TO GRILL

何时使用Grill

  • Idea is one sentence & you can feel the holes.
  • Multiple readings of the goal exist & you are about to pick one silently.
  • Before
    /spec new
    on anything non-trivial.
  • User asks to be challenged / stress-tested.
Skip for a typo or a one-line fix. Grill scales to uncertainty, ⊥ to ego.
  • 想法只有一句话,且你能察觉到其中的漏洞。
  • 目标存在多种解读,而你正打算默默选择其中一种。
  • 在对任何非琐碎事项执行
    /spec new
    之前。
  • 用户要求挑战自己的想法或进行压力测试。
对于拼写错误或单行代码修复可跳过使用。Grill适用于处理不确定性,与个人 ego 无关。

CALIBRATE FIRST

先校准

One opening read, not a quiz:
  1. How well does user know this domain? (sets question depth)
  2. How locked is the idea? (exploring vs committed)
  3. Pressure wanted: light / normal / brutal.
Match it. Brutal grilling on a half-formed idea just demoralizes. Light grilling on a committed plan misses the load-bearing flaw.
先进行一次开场解读,而非直接提问:
  1. 用户对该领域的了解程度如何?(决定问题的深度)
  2. 这个想法的确定程度如何?(处于探索阶段还是已确定)
  3. 需要的施压程度:轻度/常规/严苛。
匹配对应的施压程度。对尚未成型的想法进行严苛拷问只会打击积极性。对已确定的计划进行轻度拷问则会忽略关键缺陷。

QUESTION LADDER

问题阶梯

Climb in order. Each rung, ask one question, recommend an answer, wait.
  1. Goal — what must the code do, in one line? (→ §G)
  2. Done — how do we know it works? name the observable. (→ §C / future §V)
  3. Boundary — what is explicitly out of scope? (→ §C)
  4. Lock — what tech/lib/pattern is non-negotiable? what is forbidden? (→ §C)
  5. Surface — what does the outside world touch — cmd, api, file, env? (→ §I)
  6. Edge — the one input that breaks the happy path? (→ future §V)
  7. Unknown — what do we not know yet? (→ park as
    ?
    §C bullet)
Stop climbing the moment the spec would be unambiguous. Do not ask all seven by reflex.
按顺序逐步提问。每一步,只提一个问题,给出一个推荐答案,等待回复。
  1. 目标 — 代码必须实现什么功能?用一句话描述。(→ §G)
  2. 验收标准 — 我们如何判断它有效?明确可观测的指标。(→ §C / 未来的§V)
  3. 边界 — 哪些内容明确不在范围内?(→ §C)
  4. 锁定项 — 哪些技术/库/模式是不可协商的?哪些是被禁止的?(→ §C)
  5. 交互面 — 外部会通过什么方式与之交互?命令行、API、文件、环境变量?(→ §I)
  6. 边界情况 — 哪种输入会打破常规流程?(→ 未来的§V)
  7. 未知项 — 我们目前还不知道什么?(→ 标记为
    ?
    归入§C的项目符号中)
一旦规格变得清晰明确,就停止提问。不要机械地问完所有七个问题。

ANSWER FORMAT

答案格式

Each question carries a recommended answer so the user can grunt "yes" & move:
Q: auth — session cookie or JWT? rec: JWT — stateless, you named horizontal scaling as a §C. (a) JWT (b) cookie (c) something else?
每个问题都附带推荐答案,方便用户只需回复“是”即可继续:
Q: 认证方式 — Session Cookie 还是 JWT? 推荐:JWT — 无状态,你已将水平扩展列为§C项。 (a) JWT (b) Cookie (c) 其他方式?

HANDOFF

交接

When done, emit a compact block — goal line, constraint bullets, surfaced unknowns as
?
— and hand to the spec skill to write §G/§C. Grill proposes; spec is the sole mutator. Never write SPEC.md directly.
完成后,输出一个简洁的模块——目标语句、约束项目符号、标记为
?
的已梳理未知项——然后交由spec技能撰写§G/§C。Grill负责提出方案;spec是唯一的文档修改者。切勿直接编写SPEC.md。

WHEN TO STOP

何时停止

Done when ALL hold:
  • §G is one line, one reading, zero "or maybe".
  • §C covers every non-negotiable the user stated or implied.
  • Every blocking unknown is either answered or parked as an explicit
    ?
    .
Unresolved blocking unknown that needs the outside world → recommend
/research
, not a guess.
当满足以下所有条件时停止:
  • §G为一句话,只有一种解读,没有“或者可能”的表述。
  • §C涵盖了用户明确说明或隐含的所有不可协商项。
  • 所有阻碍性未知项要么已得到解答,要么被明确标记为
    ?
    暂存。
若存在需要外部信息才能解决的阻碍性未知项→推荐使用
/research
,而非猜测。

BOUNDARIES

边界限制

  • ⊥ make product decisions for the user. Recommend, never decide.
  • ⊥ write SPEC.md. Hand structured answers to spec.
  • ⊥ ask in bulk. One question, one recommendation, wait.
  • ⊥ grill a trivial change. Right-size or skip.
  • ⊥ 为用户做产品决策。只推荐,不决定。
  • ⊥ 编写SPEC.md。将结构化答案交由spec处理。
  • ⊥ 批量提问。一次只提一个问题,给出一个推荐答案,等待回复。
  • ⊥ 拷问琐碎的变更。选择合适的方式或直接跳过。