From 266e1f2773621af462d09b19489a0a25160a75ac Mon Sep 17 00:00:00 2001 From: Madhura68 Date: Wed, 6 May 2026 00:39:24 +0200 Subject: [PATCH] docs(claude): worker pusht en maakt PR niet meer zelf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reflecteer de werkelijkheid: de scrum4me-mcp tool update_job_status ('done') roept pushBranchForJob + maybeCreateAutoPr aan. Auto-merge (squash) wordt door dezelfde tool aangezet (scrum4me-mcp PR #23). CLAUDE.md zei eerder expliciet "geen push-rechten" en "Niet pushen" — dat klopt niet meer als auto_pr=true op het product staat. Worker moet juist NIET handmatig pushen of PR's maken; dat verstoort de pushed_at-tracking en kan branch-conflicts geven. Verwijst naar Scrum4Me docs/runbooks/auto-pr-flow.md voor de volledige keten. Co-Authored-By: Claude Opus 4.7 (1M context) --- CLAUDE.md | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 9cbfacc..cadeabc 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -9,12 +9,18 @@ je rol; het wordt automatisch geladen door `claude -p` vanuit - Je bent ingelogd via een **dedicated agent-user** in Scrum4Me, niet als de eindgebruiker. Commits, story-logs en `claude_jobs.claimed_by_token_id` zullen jouw token tonen. -- Je hebt **geen push-rechten**. Geen SSH-keys op deze container, geen - `~/.gitconfig` met push-credentials. Lokale commits zijn welkom; pushen - is iets wat de eindgebruiker zelf doet na review. +- Je hebt **geen handmatige push- of PR-acties nodig.** De + `scrum4me-mcp`-server (zelfde container) doet de push automatisch + zodra jij `update_job_status('done')` aanroept, en maakt — als het + product `auto_pr=true` heeft — direct een PR aan met auto-merge + (squash) actief. Roep dus geen `git push` of `gh pr create` zelf aan; + laat de MCP-laag dat doen. - Je opereert binnen `/tmp/job-` per job. Buiten die directory en buiten `/var/log/agent` heb je niets te zoeken. +Volledige documentatie van de auto-PR-keten: `docs/runbooks/auto-pr-flow.md` +in de Scrum4Me-repo. + ## Operationele loop (verplicht) Wanneer je geseed wordt met *"Pak de volgende job uit de Scrum4Me-queue"* @@ -33,11 +39,16 @@ of equivalent: ST-code in de titel). 5. Voer de project-verificaties uit die de project-CLAUDE.md voorschrijft (typisch `npm run lint && npm test && npm run build`). - 6. **Niet pushen.** Lokaal committen op een feature-branch is goed. + 6. **Niet zelf pushen of PR's maken.** Lokaal committen op een + feature-branch is goed. De MCP-tool `update_job_status('done')` + verzorgt push + auto-PR + auto-merge zelf (mits `Product.auto_pr=true`). 7. Roep `mcp__scrum4me__update_job_status` aan met: - `status: "done"` als verificaties slaagden, plus `branch` en `summary`. - `status: "failed"` met `error` als iets onomkeerbaar misging. + - Bij `done`: de tool pusht je commits automatisch en maakt + zo nodig een PR aan met auto-merge actief. Verwacht dus dat + de respons `pushed_at` en `pr_url` kan bevatten. 8. Roep `mcp__scrum4me__check_queue_empty` aan (geen args). Dit is een synchrone non-blocking poll die in één keer teruggeeft of er nog werk in de queue staat: @@ -78,8 +89,14 @@ Niet gokken. Niet aannemen. ## Wat je NIET doet -- Geen `git push`, ook niet naar `origin/` van een feature-branch. -- Geen `npm publish`, `vercel deploy`, of welke release-actie dan ook. +- Geen handmatige `git push`. De MCP-tool `update_job_status('done')` + pusht zelf via `pushBranchForJob`. Een eigen push verstoort de + pushed_at-tracking en kan branch-conflicts veroorzaken met + sibling-jobs in dezelfde story. +- Geen `gh pr create` of `gh pr merge`. De MCP-tool `maybeCreateAutoPr` + doet dit afhankelijk van `Product.auto_pr`. +- Geen `npm publish`, `vercel deploy`, of welke release-actie dan ook + buiten de PR-flow om. - Geen edits buiten `/tmp/job-*` (geen `~/.bashrc`, geen `/etc/...`, geen andere shares). - Geen credentials uitprinten of in commit-messages stoppen — `.env`