Skip to content

Commit 8495750

Browse files
committed
add additional logging to debug push user detection
1 parent df93c0e commit 8495750

File tree

1 file changed

+40
-4
lines changed

1 file changed

+40
-4
lines changed

src/classes/PullRequest.ts

+40-4
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,19 @@ export default class PullRequest {
132132
})
133133
).data.map(u => u.id);
134134

135+
console.log('\n**** reviews ****');
136+
console.log(reviews);
137+
138+
console.log('\n**** push users ****');
139+
console.log(pushUsers);
140+
135141
const latestReviewsObj: {
136-
[key: number]: { state: string; time: number };
142+
[key: number]: {
143+
state: string;
144+
time: number;
145+
username: string;
146+
userId: number;
147+
};
137148
} = {};
138149

139150
for (const r of reviews) {
@@ -142,10 +153,10 @@ export default class PullRequest {
142153
const user = r.user.id;
143154
const time = new Date(r.submitted_at).getTime();
144155

145-
if (!pushUsers.includes(user)) continue;
146-
147156
const review = {
148157
state: r.state,
158+
username: r.user.login,
159+
userId: user,
149160
time,
150161
};
151162

@@ -159,7 +170,32 @@ export default class PullRequest {
159170
}
160171
}
161172

162-
const latestReviews = Object.values(latestReviewsObj);
173+
const promises = [];
174+
for (const r of Object.values(latestReviewsObj)) {
175+
promises.push(
176+
this.octokit.repos.getCollaboratorPermissionLevel({
177+
owner: this.owner,
178+
repo: this.repo,
179+
username: r.username,
180+
}),
181+
);
182+
}
183+
184+
console.log('\n**** alternative approach ****');
185+
const newPushUsers = (await Promise.all(promises))
186+
.filter(
187+
({ data }) =>
188+
data.permission === 'write' || data.permission === 'admin',
189+
)
190+
.map(d => d.data?.user?.id);
191+
console.log(newPushUsers);
192+
193+
const latestReviews = Object.values(latestReviewsObj).filter(({ userId }) =>
194+
pushUsers.includes(userId),
195+
);
196+
197+
console.log('\n**** latestReviews ****');
198+
console.log(latestReviews);
163199

164200
if (!latestReviews.length) return 'readyForReview';
165201

0 commit comments

Comments
 (0)