User-Impersonierung bei Agent-User-Mapping #58
Labels
No labels
agent:done
agent:ready
agent:working
enhancement
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
frank/forgecli#58
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ziel
Wenn Jobs über das Agent-User-Mapping (siehe #56) an einen Forgejo-Login gehen (z. B.
@cursor/ Assigneecursor), sollen die Agent-Aktionen als dieser User erscheinen — Kommentare, Reactions, Labels, PRs.Zusätzlich sollen existierende gemappte Agent-User automatisch Schreibzugriff (
write) auf alle watched Repositories bekommen.Motivation
Heute authentifiziert sich
forge agent watchals ein Admin-/Owner-Account. Mentions und Assignees können zwar auf Alias-User zeigen, aber Claim/Comments/PRs laufen weiter unter dem Admin-Login. Damit ist unklar, welcher Coding-Agent „gearbeitet“ hat.Machbarkeit
Sudo: <username>bzw.?sudo=PUT /repos/{owner}/{repo}/collaborators/{username}mitpermission: writeVoraussetzung: authentifizierter Token ist Site-Admin (bzw. darf Collaborators verwalten); Ziel-User muss existieren. Accounts werden nicht automatisch angelegt.
Vorschlag
Verhalten:
impersonate: true: Admin-Check, Ziel-User per Sudo validierenSudo: <ziel-login>writeauf watched Repos sicherstellen (fehlende User überspringen)Akzeptanzkriterien
--impersonate+ Fail-fast bei fehlendem Admin/UserSudowriteauf watched ReposOut of scope
Related: #56
Implementiert:
api.ClientSudo-Header +WithSudoimpersonate/--impersonate+ Startup-Validierung (Admin + Ziel-User)agent_user; Mentions sudo’en als Mapping-Loginwritefür existierende gemappte LoginsSiehe auch #56.