diff --git a/actions/setup/js/create_pr_review_comment.cjs b/actions/setup/js/create_pr_review_comment.cjs index 3f98016d19e..902286028f5 100644 --- a/actions/setup/js/create_pr_review_comment.cjs +++ b/actions/setup/js/create_pr_review_comment.cjs @@ -107,6 +107,7 @@ async function main(config = {}) { // Check if we're in a pull request context, or an issue comment context on a PR const isPRContext = context.eventName === "pull_request" || + context.eventName === "pull_request_target" || context.eventName === "pull_request_review" || context.eventName === "pull_request_review_comment" || (context.eventName === "issue_comment" && context.payload.issue && context.payload.issue.pull_request); diff --git a/actions/setup/js/create_pr_review_comment.test.cjs b/actions/setup/js/create_pr_review_comment.test.cjs index 0e35baffe9c..02ea89436ec 100644 --- a/actions/setup/js/create_pr_review_comment.test.cjs +++ b/actions/setup/js/create_pr_review_comment.test.cjs @@ -412,6 +412,33 @@ describe("create_pr_review_comment.cjs", () => { expect(buffer.getBufferedCount()).toBe(0); }); + it("should succeed when target is triggering and event is pull_request_target", async () => { + global.context = { + eventName: "pull_request_target", + runId: 12345, + repo: { owner: "testowner", repo: "testrepo" }, + payload: { + pull_request: { number: 99, head: { sha: "prt123abc456" } }, + repository: { + html_url: "https://github.com/testowner/testrepo", + }, + }, + }; + const handler = await createHandler({ target: "triggering" }); + const message = { + type: "create_pull_request_review_comment", + path: "src/main.js", + line: 5, + body: "Review comment from pull_request_target trigger", + }; + const result = await handler(message, {}); + + expect(result.success).toBe(true); + expect(result.buffered).toBe(true); + expect(result.pull_request_number).toBe(99); + expect(buffer.getBufferedCount()).toBe(1); + }); + it("should reject comments targeting a different PR than the first comment", async () => { // First comment sets context to PR #123 const handler = await createHandler();