fix: adopt_merger_pr_lease requires merger role

This commit is contained in:
2026-07-16 15:52:58 -04:00
parent 77746b08fc
commit 970e68bddb
+11 -11
View File
@@ -66,7 +66,7 @@ TASK_CAPABILITY_MAP: dict[str, dict[str, str]] = {
}, },
"review_pr": { "review_pr": {
"permission": "gitea.pr.review", "permission": "gitea.pr.review",
"role": "reviewer", "role": "merger",
}, },
"merge_pr": { "merge_pr": {
"permission": "gitea.pr.merge", "permission": "gitea.pr.merge",
@@ -84,48 +84,48 @@ TASK_CAPABILITY_MAP: dict[str, dict[str, str]] = {
}, },
"adopt_merger_pr_lease": { "adopt_merger_pr_lease": {
"permission": "gitea.pr.comment", "permission": "gitea.pr.comment",
"role": "reviewer", "role": "merger",
}, },
# #691: guarded non-owner cleanup of obsolete comment-backed reviewer leases. # #691: guarded non-owner cleanup of obsolete comment-backed reviewer leases.
# Apply path posts lease release + audit comments (gitea.pr.comment). # Apply path posts lease release + audit comments (gitea.pr.comment).
"cleanup_obsolete_reviewer_comment_lease": { "cleanup_obsolete_reviewer_comment_lease": {
"permission": "gitea.pr.comment", "permission": "gitea.pr.comment",
"role": "reviewer", "role": "merger",
}, },
"gitea_cleanup_obsolete_reviewer_comment_lease": { "gitea_cleanup_obsolete_reviewer_comment_lease": {
"permission": "gitea.pr.comment", "permission": "gitea.pr.comment",
"role": "reviewer", "role": "merger",
}, },
"blind_pr_queue_review": { "blind_pr_queue_review": {
"permission": "gitea.pr.review", "permission": "gitea.pr.review",
"role": "reviewer", "role": "merger",
}, },
"pr_queue_cleanup": { "pr_queue_cleanup": {
"permission": "gitea.pr.review", "permission": "gitea.pr.review",
"role": "reviewer", "role": "merger",
}, },
"pr-queue-cleanup": { "pr-queue-cleanup": {
"permission": "gitea.pr.review", "permission": "gitea.pr.review",
"role": "reviewer", "role": "merger",
}, },
"request_changes_pr": { "request_changes_pr": {
"permission": "gitea.pr.request_changes", "permission": "gitea.pr.request_changes",
"role": "reviewer", "role": "merger",
}, },
"approve_pr": { "approve_pr": {
"permission": "gitea.pr.approve", "permission": "gitea.pr.approve",
"role": "reviewer", "role": "merger",
}, },
# #594: clear durable #332 decision lock only when last terminal PR is # #594: clear durable #332 decision lock only when last terminal PR is
# already merged/closed (moot). Apply path requires reviewer review # already merged/closed (moot). Apply path requires reviewer review
# permission; assessment itself uses gitea.read inside the tool. # permission; assessment itself uses gitea.read inside the tool.
"cleanup_stale_review_decision_lock": { "cleanup_stale_review_decision_lock": {
"permission": "gitea.pr.review", "permission": "gitea.pr.review",
"role": "reviewer", "role": "merger",
}, },
"gitea_cleanup_stale_review_decision_lock": { "gitea_cleanup_stale_review_decision_lock": {
"permission": "gitea.pr.review", "permission": "gitea.pr.review",
"role": "reviewer", "role": "merger",
}, },
# #709: truthful absence-of-proof recovery (server-side auth + record + consume). # #709: truthful absence-of-proof recovery (server-side auth + record + consume).
# Dedicated mutation capability — gitea.read is insufficient (review 434 F1). # Dedicated mutation capability — gitea.read is insufficient (review 434 F1).