Files
werkregie/doc/prs/2026-10-20-PR#95-own-pr-comments.md
claude-code dcd13869b4
werkator build succeeded after 00:59
werkator/deploy build succeeded after 00:23
Antworten for the user's own pull request that another human commented (#95)
Co-authored-by: claude-code <claude-code@javagil.de>
2026-10-20 12:02:13 +02:00

101 lines
4.5 KiB
Markdown

# PR#95: Antworten for the User's Own Pull Request That Another Human Commented
Version: minor
> **WARNING:** This document describes only the change applied in this PR.
> It may already be outdated once the next PR is merged.
> Historic PR documentation is not maintained along with new PRs; treat it as a snapshot.
## Related Links
- [hs.hsadmin.ng PR#335](https://dev.hostsharing.net/hostsharing/hs.hsadmin.ng/pulls/335), the case:
a colleague commented twice after the last commit, and werkregie showed only Wartet auf Review.
- [werkregie PR#94](https://git.javagil.de/mi/werkregie/pulls/94), Mergen for the user's own pull request.
## Problem
werkregie reads no comments of a pull request.
When another human comments on the user's own pull request, the user is to answer or to push a fix;
but "Du bist dran" does not show it.
## Non-Goals
- No comments on the pull requests of others; an agent watches its own.
- No judgement of the comment, e.g. whether it asks for a change; any comment counts.
- No dismissal of the row; it goes with the user's answer or push.
## Specification
### Feature: the user's own pull request in which another human has the last word
#### Scenario#95.01: a comment after the last commit
&hellip; so that the user answers the colleague or fixes what the colleague found.
- **Given** the user's own pull request, whose head commit is older than the comment of `hsh-stefanbegerad`
- **When** werkregie reads the pull request
- **Then** "Du bist dran" shows it under Antworten with "Kommentar von hsh-stefanbegerad"
##### Verified by
- [GiteaSourceTest "a comment of another human after the last commit is the user's to answer"](../../dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/sources/GiteaSourceTest.kt)
- [GiteaSourceFetchTest "the open pull requests of the user, each with its statuses, reviews and flags"](../../dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/sources/GiteaSourceFetchTest.kt)
#### Scenario#95.02: a review with comments or requested changes
&hellip; so that a line comment counts like a comment.
- **Given** the user's own pull request, and `anna` submitted a review with line comments or with requested changes after its head commit
- **When** werkregie reads the pull request
- **Then** "Du bist dran" shows it under Antworten with "Kommentar von anna"
##### Verified by
- [GiteaSourceTest "a review with comments or requested changes counts as a comment, an approval does not"](../../dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/sources/GiteaSourceTest.kt)
#### Scenario#95.03: the user answered or pushed
&hellip; so that the row goes once the user acted.
- **Given** the pull request of Scenario#95.01
- **When** the user comments after it, or pushes a commit after it
- **Then** it shows no Antworten
##### Verified by
- [GiteaSourceTest "an answer or a commit of the user after the comment ends it"](../../dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/sources/GiteaSourceTest.kt)
#### Scenario#95.04: a review bot comments
&hellip; so that werkrevisor's result comment on each pull request asks nothing of the user.
- **Given** the user's own pull request, and only `ai-reviewer`, one of `reviewBots`, commented after its head commit
- **When** werkregie reads the pull request
- **Then** it shows no Antworten
##### Verified by
- [GiteaSourceTest "a comment of a review bot asks nothing"](../../dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/sources/GiteaSourceTest.kt)
## Solution
`GiteaSource` gives the user's own pull request the new flag `answer`; the page shows it under Antworten.
For this flag, werkregie reads the comments of each ready pull request of the user's own: one request more per pull request.
Gitea's pull request does not tell the time of its head commit.
werkregie reads that time only when another human has the last word: then one request more.
## Release Notes
"Du bist dran" shows your own pull request under Antworten when another human commented after your last commit and answer.
## Open Questions
None.
## Additional Changes
- The user's own pull request on a branch without protection shows no Mergen while Gitea's automerge is scheduled,
as the README says; a finding of werkrevisor in werkregie PR#94,
verified by [GiteaSourceTest "without a branch protection the approval of another human is to merge"](../../dashboard/src/test/kotlin/de/hoennig/werkregie/dashboard/sources/GiteaSourceTest.kt).
- The English page translates the reasons of werkregie PR#94, "kein Approval nötig" and "hinter main: rebasen, dann mergen".