diff --git a/.agents/README.md b/.agents/README.md index 657ab6eac3..371444a89d 100644 --- a/.agents/README.md +++ b/.agents/README.md @@ -410,6 +410,10 @@ append-only `Review Log` (UTC ISO 8601, one line per entry): A plan approved with no changes goes `draft` → `done` directly. +A plan is never staged or committed: the `done` status and its +`Review Log` are session bookkeeping, not part of the change. Their +absence from the commit is expected. + ## 7. Connecting `gh` CLI with a token The `create-issue` and `create-pr` flows need an authenticated `gh` diff --git a/.agents/skills/implement-plan/SKILL.md b/.agents/skills/implement-plan/SKILL.md index 9d99e48a6d..e3c4b3d6cd 100644 --- a/.agents/skills/implement-plan/SKILL.md +++ b/.agents/skills/implement-plan/SKILL.md @@ -107,12 +107,15 @@ When the implementation is complete, close the plan file first: flip its with the issue URL when one exists (standalone mode, e.g. `https://github.com/penpot/penpot/issues/NNNN`); in continue/direct mode with no issue, just `done` with no invented identifier. Never -record commit hashes. Then load the **`create-commit`** skill -and follow its workflow to commit the changes together with the -closed plan file, so plan and code land in the same commit. Provide a brief summary -of what was implemented and why, the issue reference (`issue-NNNN`) when -there is one, and the model name you are running as so the -`AI-assisted-by` trailer is set correctly. +record commit hashes. + +**The plan file is never staged or committed.** It is session +bookkeeping, not part of the change: the commit carries the code and +the tests. Then load the **`create-commit`** skill and follow its +workflow to commit them. Provide a brief summary of what was +implemented and why, the issue reference (`issue-NNNN`) when there is +one, and the model name you are running as so the `AI-assisted-by` +trailer is set correctly. ### Step-by-step mode (on request) @@ -124,8 +127,8 @@ per task" — loop one task at a time: one commit per task, never two tasks in one commit. Same inputs as always: what and why, the issue reference, your model name. - After the final task, close the plan file (`Status: done`, one - `Review Log` line with the issue URL when one exists) and include - it in that last commit. + `Review Log` line with the issue URL when one exists). It is never + staged: session bookkeeping does not go into the commit. - Show the user the result (what changed, files touched, how it was verified). - WAIT for the user's confirmation before starting the next task. diff --git a/.serena/memories/workflow/creating-commits.md b/.serena/memories/workflow/creating-commits.md index a60234819f..1fd50b88de 100644 --- a/.serena/memories/workflow/creating-commits.md +++ b/.serena/memories/workflow/creating-commits.md @@ -2,6 +2,12 @@ Commit only on explicit request. Before commit: `git status`; exclude unrelated user changes. +**Never stage a plan file.** A plan is session bookkeeping, not part of the +change: the commit carries the code and the tests. The `implement-plan` flow +still closes the plan (`Status: done` plus one `Review Log` line with the issue +URL); that is not a file to ship, and its absence from the commit is correct, +not a missing piece. + Do not guess or hallucinate git author information (Name or Email). Never include the `--author` flag in git commands unless specifically instructed by the user for a unique case; assume the local environment is already configured. Allow git commit to