@@ -52,27 +52,40 @@ jobs:
5252 }
5353
5454 const query = `
55- query($owner:String!, $name:String!, $number:Int!) {
55+ query($owner:String!, $name:String!, $number:Int!, $cursor:String ) {
5656 repository(owner:$owner, name:$name) {
5757 pullRequest(number:$number) {
58- reviewThreads(first:100) {
58+ reviewThreads(first:100, after:$cursor ) {
5959 nodes {
6060 isResolved
6161 isOutdated
6262 }
63+ pageInfo {
64+ hasNextPage
65+ endCursor
66+ }
6367 }
6468 }
6569 }
6670 }
6771 `;
6872
69- const result = await github.graphql(query, {
70- owner,
71- name: repo,
72- number: pr.number
73- });
74- const nodes = result.repository.pullRequest.reviewThreads.nodes || [];
75- const unresolvedCount = nodes.filter((node) => !node.isResolved && !node.isOutdated).length;
73+ let unresolvedCount = 0;
74+ let cursor = null;
75+ let hasNextPage = true;
76+ while (hasNextPage) {
77+ const result = await github.graphql(query, {
78+ owner,
79+ name: repo,
80+ number: pr.number,
81+ cursor
82+ });
83+ const reviewThreads = result?.repository?.pullRequest?.reviewThreads;
84+ const nodes = reviewThreads?.nodes || [];
85+ unresolvedCount += nodes.filter((node) => !node.isResolved && !node.isOutdated).length;
86+ hasNextPage = Boolean(reviewThreads?.pageInfo?.hasNextPage);
87+ cursor = reviewThreads?.pageInfo?.endCursor ?? null;
88+ }
7689
7790 if (unresolvedCount <= 0) {
7891 core.info('No unresolved review threads found, skip autofix trigger.');
0 commit comments