Add Task Completion Protocol to CLAUDE.md
Some checks failed
Build / Calculate version information (push) Successful in 17s
Build / build_and_upload (push) Failing after 0s
Build / build_images (push) Failing after 0s
Close stale issues / stale (push) Successful in 13s

Replace informal implementer workflow with structured 7-step protocol
including mandatory root cause analysis for bug fixes. References /done
skill for automated enforcement.

Part of adversarial-reviewer #260.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-21 22:29:45 +01:00
parent f1e97b94a7
commit aa6d8eae4c

View File

@@ -59,14 +59,17 @@ docker build -f docker/Dockerfile -t ersatztv:dev .
- Test with xUnit (existing test projects)
- Backlog tracked via [Gitea Issues](http://192.168.1.95:3000/timothy/ersatztv/issues)
## Implementer Workflow
## Task Completion Protocol
When working on tasks reviewed by the adversarial reviewer (`~/adversarial-reviewer`):
Every task that closes a Gitea issue MUST complete ALL of these before it is considered done. Use `/done <issue>` to run through this automatically.
1. **Comment on issues** as you work — what you found, what approach you're taking, any deviations from the suggested fix
2. **Close issues** when fixed; leave open with a comment if partially addressed or deferred
3. **Push changes** before replying to the reviewer
4. **Reply to the reviewer** with a summary of what was done, what was deferred, and any open questions — this is the trigger for the next review cycle
1. **Root cause** (bug fixes / incidents only): Document WHY the problem existed, not just what was changed. If root cause is unknown, say so explicitly and open a follow-up investigation issue. Fixing symptoms without understanding causes creates recurring problems.
2. **Comment on issues** as you work — what you found, what approach you're taking, any deviations from the suggested fix.
3. **Push changes**: `git push` all commits before closing. Use `fixes #N` in commit messages to auto-close where appropriate.
4. **Close comment**: Add a structured closing comment on the issue covering: what was done, root cause (if applicable), files changed, anything deferred, follow-up issues created, and which docs were updated.
5. **Close the issue** via API or `fixes #N` commit. Leave open with a comment only if partially addressed.
6. **Update docs**: If the change affects operational behavior, update the relevant Obsidian docs (`~/homelab-docs/`), MEMORY.md, or CLAUDE.md inline — not as a follow-up.
7. **Reply to reviewer** (if from adversarial review): Summary of done/deferred/questions. This triggers the next review cycle.
## Project Boundaries
@@ -84,4 +87,5 @@ When working on tasks reviewed by the adversarial reviewer (`~/adversarial-revie
**For plan/audit reviews**: open `~/adversarial-reviewer` before significant architecture changes.
**Full cross-project rules**: `docs/Operations/Project Boundaries.md` in the server-management Obsidian vault (https://docs.tblindustries.be).
**Full cross-project rules**: `~/homelab-docs/Operations/Project Boundaries.md` (https://docs.tblindustries.be).
**ErsatzTV docs**: `~/homelab-docs/Docker/ErsatzTV.md` + project-local `docs/` (fork strategy, channels, M3U/XMLTV).