You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The pr-management-code-review skill appends an AI-attribution footer to every review it posts, asserting the submission was "confirmed by a Magpie maintainer" and that "a Magpie maintainer — a real person — will take the next look at the PR." The skill never verifies that the person running it actually holds a maintainer role, so this claim is emitted verbatim even when the runner is an ordinary contributor with no write/maintainer role on the target repo. The result is a public review body that makes an inaccurate factual claim about who vouched for it.
Which layer
skills/pr-management-code-review/posting.md → § AI-attribution footer (all three variants — APPROVE / REQUEST_CHANGES / COMMENT — hard-code the "maintainer" wording).
skills/pr-management-code-review/SKILL.md → Golden rule 5, which mandates the footer verbatim ("do not paraphrase, do not omit") and describes it as reassuring the contributor that "an maintainer — a real person — has confirmed the submission."
Related gate: skills/pr-management-code-review/prerequisites.md → § 1 (the collaborator/permission pre-flight).
How to reproduce
As a GitHub user who is not a maintainer/committer on the target repo (a contributor only — no admin/maintain/write), run /magpie-pr-management-code-review pr:<N> against a public PR.
Accept a disposition and confirm posting. A COMMENT review succeeds from any account — GitHub lets any user submit a PR review on a public repo regardless of write access.
The posted review body ends with:
This review was drafted by an AI-assisted tool and confirmed by a Magpie maintainer. … a Magpie maintainer — a real person — will take the next look at the PR.
Observed live on apache/magpie#902 (public), posted from a non-committer contributor account. The PR's reviewDecision stayed REVIEW_REQUIRED afterward — confirming the account is not a maintainer whose review satisfies the branch-protection gate, even though the footer told the contributor a "maintainer" had confirmed.
Expected vs actual
Expected — the attribution is accurate about who confirmed the review. Either:
(a) the skill verifies the runner holds a maintainer/write role before it emits "maintainer" wording, or
(b) the footer wording is role-neutral — e.g. "confirmed by the reviewer running Magpie" / "confirmed by a project maintainer or contributor" — so it never asserts a role the runner may not hold.
Actual — the footer asserts "maintainer" unconditionally. SKILL.md Golden rule 5 forbids paraphrasing or omitting it. And prerequisites.md § 1's permission probe (admin/maintain/write) both (1) conflates "write collaborator" with project "maintainer", and (2) per its own text only "warns and offers dry-run" rather than blocking — so a non-maintainer can post a review that publicly, and inaccurately, claims maintainer confirmation.
Surface area (optional)
All three disposition templates inherit the same footer, so every posted review is affected.
Adopters who install the pr-management-* family inherit this footer wording in their own repos, so the inaccuracy propagates to adopter projects.
Likely fix touchpoints: derive the footer text from a verified role check in prerequisites.md, and relax Golden rule 5's verbatim constraint enough to allow the role-accurate variant while keeping the "AI-drafted, human-confirmed, may contain mistakes" substance intact.
Environment (optional)
Harness: Claude Code (Opus 4.8), skill pr-management-code-review.
What's broken
The
pr-management-code-reviewskill appends an AI-attribution footer to every review it posts, asserting the submission was "confirmed by a Magpie maintainer" and that "a Magpie maintainer — a real person — will take the next look at the PR." The skill never verifies that the person running it actually holds a maintainer role, so this claim is emitted verbatim even when the runner is an ordinary contributor with no write/maintainer role on the target repo. The result is a public review body that makes an inaccurate factual claim about who vouched for it.Which layer
skills/pr-management-code-review/posting.md→ § AI-attribution footer (all three variants —APPROVE/REQUEST_CHANGES/COMMENT— hard-code the "maintainer" wording).skills/pr-management-code-review/SKILL.md→ Golden rule 5, which mandates the footer verbatim ("do not paraphrase, do not omit") and describes it as reassuring the contributor that "an maintainer — a real person — has confirmed the submission."skills/pr-management-code-review/prerequisites.md→ § 1 (the collaborator/permission pre-flight).How to reproduce
admin/maintain/write), run/magpie-pr-management-code-review pr:<N>against a public PR.COMMENTreview succeeds from any account — GitHub lets any user submit a PR review on a public repo regardless of write access.Observed live on
apache/magpie#902(public), posted from a non-committer contributor account. The PR'sreviewDecisionstayedREVIEW_REQUIREDafterward — confirming the account is not a maintainer whose review satisfies the branch-protection gate, even though the footer told the contributor a "maintainer" had confirmed.Expected vs actual
Expected — the attribution is accurate about who confirmed the review. Either:
Actual — the footer asserts "maintainer" unconditionally. SKILL.md Golden rule 5 forbids paraphrasing or omitting it. And
prerequisites.md§ 1's permission probe (admin/maintain/write) both (1) conflates "write collaborator" with project "maintainer", and (2) per its own text only "warns and offers dry-run" rather than blocking — so a non-maintainer can post a review that publicly, and inaccurately, claims maintainer confirmation.Surface area (optional)
pr-management-*family inherit this footer wording in their own repos, so the inaccuracy propagates to adopter projects.prerequisites.md, and relax Golden rule 5's verbatim constraint enough to allow the role-accurate variant while keeping the "AI-drafted, human-confirmed, may contain mistakes" substance intact.Environment (optional)
pr-management-code-review..apache-magpie.lock→method: local,source: skills/); no snapshot drift.apache/magpie(public), PR feat(codex): first-class Codex CLI skill runtime #902.