docs(grill): clarify frontier updates
This commit is contained in:
@@ -7,32 +7,21 @@ Interview the user relentlessly until you reach a shared understanding. Map this
|
||||
|
||||
Maintain the design tree in a new Markdown file. Use the file as the source of truth.
|
||||
|
||||
The **frontier** is the complete set of unresolved decisions whose prerequisites are settled.
|
||||
At the start of the grill, inventory every known decision.
|
||||
After each answer, recompute and display the complete frontier.
|
||||
Do not hide ready decisions because another question is selected.
|
||||
Build the **frontier** before asking a question.
|
||||
The frontier contains every unresolved decision whose prerequisites are settled.
|
||||
|
||||
Ask one selected frontier question per turn.
|
||||
Mark it as selected in the displayed frontier.
|
||||
A clarification does not settle, remove, or replace a question.
|
||||
After answering a clarification, show the unchanged selected question again.
|
||||
After each answer, update the design tree.
|
||||
Display every frontier decision.
|
||||
Mark the decision selected for this turn.
|
||||
|
||||
Finish only when the frontier is empty.
|
||||
Ask one selected decision per turn.
|
||||
A clarification keeps the selected decision open.
|
||||
Answer the clarification, then ask the selected decision again.
|
||||
|
||||
Format a question like so:
|
||||
|
||||
```
|
||||
❓ **Q1** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
||||
|
||||
**Options**
|
||||
|
||||
1. <option>
|
||||
...
|
||||
<n>. **<recommended option>** — recommended
|
||||
|
||||
---
|
||||
|
||||
❓ **Q2** - **<question title>**: <question body, might be multiple paragraphs, including multiple choices>
|
||||
❓ **Q1** - **<question title>**: <question body>
|
||||
|
||||
**Options**
|
||||
|
||||
@@ -41,11 +30,17 @@ Format a question like so:
|
||||
<n>. **<recommended option>** — recommended
|
||||
```
|
||||
|
||||
List every viable answer in an ordered list and mark your recommended answer.
|
||||
Word each question so "yes" accepts your recommended answer.
|
||||
List every viable answer in an ordered list.
|
||||
Mark the recommended answer.
|
||||
Write each question so that "yes" selects the recommended option.
|
||||
|
||||
Each user answer reshapes the tree: settled decisions push the frontier outward and unblock questions that depended on them. Recompute the frontier in the file and ask the next question. A question whose answer depends on another open question belongs later, not next.
|
||||
After each answer, settle the answered decision.
|
||||
Add decisions that the answer reveals.
|
||||
Move every newly ready decision into the frontier.
|
||||
Keep decisions with unresolved prerequisites outside the frontier.
|
||||
|
||||
Finding _facts_ is your job, never the user's. When a frontier question needs a fact from the environment (filesystem, tools, etc.), find it with available tools; don't ask the user for anything you could look up yourself. The _decisions_ are the user's: put each to them and wait.
|
||||
|
||||
The session is done when the frontier is empty: every branch of the design tree visited, nothing left silently assumed. Present every settled decision from the design tree. Do not act on it until the user confirms you have reached a shared understanding.
|
||||
Finish when the frontier is empty.
|
||||
Present every settled decision from the design tree.
|
||||
Wait for user confirmation before acting on the decisions.
|
||||
|
||||
Reference in New Issue
Block a user