| name | generating-execution-spec |
|---|---|
| description | Fill the Execution-Spec template for a engineering-log task: read TASK_DIR/03-solution-hld.md (must contain === RESULT FOR EXECUTION-SPEC ===) and TASK_DIR/04-execution-spec.md (template), ask only factual clarifying questions if needed, then overwrite 04-execution-spec.md with a complete unambiguous spec and (optionally) save chat transcript to TASK_DIR/chats/03-execution-spec-chat-1.md. |
TASK_DIRis the task base directory (a repo-relative path or an absolute path).- These files must exist:
TASK_DIR/03-solution-hld.md(must include=== RESULT FOR EXECUTION-SPEC ===).TASK_DIR/04-execution-spec.md(the template that must be fully filled and overwritten).
If TASK_DIR is not provided, ask for it.
If the required files are missing, stop and ask for the correct path.
If the template is missing, ask the user to run the task init step first.
- Overwritten
TASK_DIR/04-execution-spec.mdas a single complete document (English). - The same final text printed to chat (no additions).
- Optional: saved chat transcript to
TASK_DIR/chats/03-execution-spec-chat-1.md.
- Determine
TASK_DIRand validate the working files exist. - Read
TASK_DIR/03-solution-hld.mdand extract the=== RESULT FOR EXECUTION-SPEC ===block. - Read
TASK_DIR/04-execution-spec.md(template) and prepare to fill it completely. - If any section cannot be filled with facts from inputs:
- ask clarifying questions without proposing solutions;
- stop and end the message with:
=== WAITING FOR ANSWERS (EXECUTION-SPEC) ===
- After answers (or if inputs are sufficient), follow the prompt in
references/exec-spec-prompt.mdstrictly. - Hard requirement for the filled spec: in the template section
## 9. Testingthere must be either a list of acceptance test cases or a link to an artifact that contains them. - Hard requirement for the filled spec: explicitly state that the executor must work by TDD using those acceptance test cases.
- Hard requirement for the filled spec: include a test definition of done that states “all acceptance test cases are implemented and pass”.
- Conventions rule: do not duplicate test coding rules in the spec.
- Conventions rule: provide links to the relevant conventions instead.
- Default requirement: if the task impacts any public API (HTTP, RPC, events, DB contracts, or other externally consumed interfaces), explicitly require backward compatibility in
TASK_DIR/04-execution-spec.mdunless the inputs explicitly approve a breaking change. - Hard requirement for the filled spec: instruct the executor to stop and ask the user for clarification/approval if, during implementation, it turns out the spec cannot be followed literally.
- Hard requirement for the filled spec: instruct the executor to append to the implementation chat transcript as they go (after each completed step) and not fabricate it if saving is not possible.
- If a required link or acceptance cases cannot be provided factually from inputs, ask for it as a clarifying question and stop with
=== WAITING FOR ANSWERS (EXECUTION-SPEC) ===. - Write the final document to
TASK_DIR/04-execution-spec.mdin English and output the exact same text to chat. - Ask whether the current chat transcript may be saved.
- If yes, append to the transcript as you go, after each completed step, instead of saving only at the end.
- Save the transcript to
TASK_DIR/chats/03-execution-spec-chat-1.md. - If you cannot save the transcript automatically, do not fabricate it.
- Ask the user for help or use
$exporting-chat-artifacts.