docs(epics): document linking a task to its pull request

Accept only merges if the task carries a prNumber, and nothing said how a
human sets one. It goes through the generic patch command; without this the
merge gate reads as unreachable from the CLI.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4wNHWf7xSwnZCWpJcyv9p
This commit is contained in:
Michal
2026-08-16 00:16:07 +01:00
parent 6d38953a96
commit 553834dbb1

View File

@@ -124,6 +124,25 @@ mcpctl tasks verdict cart-cookie-ttl \
Reaching `done` without the required passing verdicts is refused, and the error Reaching `done` without the required passing verdicts is refused, and the error
names which stage is missing. names which stage is missing.
### Linking the pull request
Accept only merges something if the task knows what its pull request is. An
agent writes these when it pushes; from the CLI they go through `patch`:
```sh
mcpctl patch task cart-cookie-ttl \
branch=feat/cart-cookie-ttl \
headCommit=4f2a91c \
prNumber=214 \
prUrl=https://mysources.co.uk/michal/mcpctl/pulls/214
```
`headCommit` is what the review is pinned to. Accept refuses if the PR's head
has moved past it — see below.
A task with no `prNumber` can still be accepted; it records the approval and
merges nothing, and says so rather than implying code landed.
### The human gate ### The human gate
`done` means it left the developer's loop, not that it shipped. `awaiting_review` `done` means it left the developer's loop, not that it shipped. `awaiting_review`