Auto-Merge per Pipeline scheitert: ephemeraler Token hat keinen auflösbaren Doer (uid -2) #66

Closed
opened 2026-09-28 13:38:47 +00:00 by hobbypunk · 0 comments
Owner

Fehler beim Merge-Zeitpunkt (Checks grün):

automerge.go:208:handlePullRequestAutoMerge() [E] Unable to get scheduled User[-2]: user does not exist [uid: -2, name: ]

Ursache: Die pr-auto-merge-Action scheduled per secrets.GITHUB_TOKEN. Der ephemeral Token gehört dem Actions-Pseudo-User (uid -2), der nicht als echter User in der DB existiert. handlePullRequestAutoMerge lädt beim Merge den gespeicherten Doer (GetUserByID(scheduledPRM.DoerID)) → User existiert nicht → der geplante Merge wird still verworfen.

Fix: Auto-Merge per Authorized Integration (JWT) schedulen – das JWT authentifiziert als echter User (Owner der Integration), damit ist DoerID auflösbar. Gleiches Muster wie bei der Branch-Protection (#12). Die Triage re-scheduled ohnehin bei jedem Lauf (Label-basiert), kaputte Alt-Schedules heilen sich also selbst.

**Fehler beim Merge-Zeitpunkt (Checks grün):** ``` automerge.go:208:handlePullRequestAutoMerge() [E] Unable to get scheduled User[-2]: user does not exist [uid: -2, name: ] ``` **Ursache:** Die `pr-auto-merge`-Action scheduled per `secrets.GITHUB_TOKEN`. Der ephemeral Token gehört dem Actions-Pseudo-User (uid -2), der nicht als echter User in der DB existiert. `handlePullRequestAutoMerge` lädt beim Merge den gespeicherten Doer (`GetUserByID(scheduledPRM.DoerID)`) → User existiert nicht → der geplante Merge wird still verworfen. **Fix:** Auto-Merge per Authorized Integration (JWT) schedulen – das JWT authentifiziert als echter User (Owner der Integration), damit ist `DoerID` auflösbar. Gleiches Muster wie bei der Branch-Protection (#12). Die Triage re-scheduled ohnehin bei jedem Lauf (Label-basiert), kaputte Alt-Schedules heilen sich also selbst.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
hobbypunk/rails-base_app#66
No description provided.