@@ -373,17 +373,17 @@ export class PullRequestLinter {
373
373
private async assessNeedsReview (
374
374
pr : Pick < GitHubPr , 'mergeable_state' | 'draft' | 'labels' | 'number' > ,
375
375
) : Promise < void > {
376
- const reviews = await this . client . pulls . listReviews ( this . prParams ) ;
377
- console . log ( JSON . stringify ( reviews . data ) ) ;
376
+ const reviewsData = await this . client . paginate ( this . client . pulls . listReviews , this . prParams ) ;
377
+ console . log ( JSON . stringify ( reviewsData ) ) ;
378
378
379
379
// NOTE: MEMBER = a member of the organization that owns the repository
380
380
// COLLABORATOR = has been invited to collaborate on the repository
381
- const maintainerRequestedChanges = reviews . data . some (
381
+ const maintainerRequestedChanges = reviewsData . some (
382
382
review => review . author_association === 'MEMBER'
383
383
&& review . user ?. login !== 'aws-cdk-automation'
384
384
&& review . state === 'CHANGES_REQUESTED' ,
385
385
) ;
386
- const maintainerApproved = reviews . data . some (
386
+ const maintainerApproved = reviewsData . some (
387
387
review => review . author_association === 'MEMBER'
388
388
&& review . state === 'APPROVED' ,
389
389
) ;
@@ -403,7 +403,7 @@ export class PullRequestLinter {
403
403
// be dismissed by a maintainer to respect another reviewer's requested changes.
404
404
// 5. Checking if any reviewers' most recent review requested changes
405
405
// -> If so, the PR is considered to still need changes to meet community review.
406
- const reviewsByTrustedCommunityMembers = reviews . data
406
+ const reviewsByTrustedCommunityMembers = reviewsData
407
407
. filter ( review => this . getTrustedCommunityMembers ( ) . includes ( review . user ?. login ?? '' ) )
408
408
. filter ( review => review . state !== 'PENDING' && review . state !== 'COMMENTED' )
409
409
. reduce ( ( grouping , review ) => {
@@ -420,12 +420,12 @@ export class PullRequestLinter {
420
420
...grouping ,
421
421
[ review . user ! . login ] : newest ,
422
422
} ;
423
- } , { } as Record < string , typeof reviews . data [ 0 ] > ) ;
423
+ } , { } as Record < string , typeof reviewsData [ 0 ] > ) ;
424
424
console . log ( 'raw data: ' , JSON . stringify ( reviewsByTrustedCommunityMembers ) ) ;
425
425
const communityApproved = Object . values ( reviewsByTrustedCommunityMembers ) . some ( ( { state} ) => state === 'APPROVED' ) ;
426
426
const communityRequestedChanges = ! communityApproved && Object . values ( reviewsByTrustedCommunityMembers ) . some ( ( { state} ) => state === 'CHANGES_REQUESTED' )
427
427
428
- const prLinterFailed = reviews . data . find ( ( review ) => review . user ?. login === 'aws-cdk-automation' && review . state !== 'DISMISSED' ) as Review ;
428
+ const prLinterFailed = reviewsData . find ( ( review ) => review . user ?. login === 'aws-cdk-automation' && review . state !== 'DISMISSED' ) as Review ;
429
429
const userRequestsExemption = pr . labels . some ( label => ( label . name === Exemption . REQUEST_EXEMPTION || label . name === Exemption . REQUEST_CLARIFICATION ) ) ;
430
430
console . log ( 'evaluation: ' , JSON . stringify ( {
431
431
draft : pr . draft ,
0 commit comments