diff --git a/src/github/context.ts b/src/github/context.ts index 4ea84f9..714a73c 100644 --- a/src/github/context.ts +++ b/src/github/context.ts @@ -236,11 +236,21 @@ export function parseGitHubContext(): GitHubContext { } case "pull_request_review_comment": { const payload = context.payload as PullRequestReviewCommentEvent; + // Forgejo's pull_request_comment event uses issue_comment-like payload + // with issue.number instead of pull_request.number + const anyPayload = context.payload as Record; + const issue = anyPayload.issue as { number?: number } | undefined; + const entityNumber = payload.pull_request?.number ?? issue?.number; + if (!entityNumber) { + throw new Error( + "Could not determine entity number from pull_request_review_comment event payload", + ); + } return { ...commonFields, eventName: "pull_request_review_comment", payload, - entityNumber: payload.pull_request.number, + entityNumber, isPR: true, }; }