gcb-host 0.0.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +43 -0
- package/lib/broker.d.ts +9 -2
- package/lib/broker.d.ts.map +1 -1
- package/lib/broker.js +63 -28
- package/lib/broker.js.map +1 -1
- package/lib/commands/compose.d.ts.map +1 -1
- package/lib/commands/compose.js +42 -15
- package/lib/commands/compose.js.map +1 -1
- package/lib/commands/config.d.ts +1 -1
- package/lib/commands/config.d.ts.map +1 -1
- package/lib/commands/config.js +27 -5
- package/lib/commands/config.js.map +1 -1
- package/lib/commands/host-opener.d.ts +11 -1
- package/lib/commands/host-opener.d.ts.map +1 -1
- package/lib/commands/host-opener.js +137 -38
- package/lib/commands/host-opener.js.map +1 -1
- package/lib/config.d.ts +5 -1
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +14 -8
- package/lib/config.js.map +1 -1
- package/lib/daemon.d.ts +0 -9
- package/lib/daemon.d.ts.map +1 -1
- package/lib/daemon.js +57 -7
- package/lib/daemon.js.map +1 -1
- package/lib/device-flow.d.ts +1 -0
- package/lib/device-flow.d.ts.map +1 -1
- package/lib/device-flow.js +1 -0
- package/lib/device-flow.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/policy.d.ts.map +1 -1
- package/lib/policy.js +5 -3
- package/lib/policy.js.map +1 -1
- package/lib/providers/github-app.d.ts.map +1 -1
- package/lib/providers/github-app.js +233 -165
- package/lib/providers/github-app.js.map +1 -1
- package/lib/reload.d.ts +45 -0
- package/lib/reload.d.ts.map +1 -0
- package/lib/reload.js +149 -0
- package/lib/reload.js.map +1 -0
- package/package.json +2 -2
|
@@ -390,6 +390,90 @@ export function createGithubAppProvider(options) {
|
|
|
390
390
|
// the exchange even when the commands selected different proxy routes, then let the waiter re-read
|
|
391
391
|
// the cache the winner wrote. Each exchange still uses its own command's fetch.
|
|
392
392
|
let renewingPersonToken;
|
|
393
|
+
/**
|
|
394
|
+
* The token of the person this deployment authorized, when there is one.
|
|
395
|
+
*
|
|
396
|
+
* Only person-relevant actions may use it; GitHub will not author a pull request as a person for
|
|
397
|
+
* an app, refuses to resolve a review thread for one, and a reply must be attributable to the
|
|
398
|
+
* person answering.
|
|
399
|
+
* The refresh token lives beside the private key, and GitHub rotates it on every use, so the new
|
|
400
|
+
* one is written back — keeping the old would work once and then stop.
|
|
401
|
+
*
|
|
402
|
+
* @returns the user token, or `undefined` when nobody has authorized one.
|
|
403
|
+
*/
|
|
404
|
+
async function personalToken() {
|
|
405
|
+
while (renewingPersonToken !== undefined) {
|
|
406
|
+
try {
|
|
407
|
+
await renewingPersonToken;
|
|
408
|
+
}
|
|
409
|
+
catch {
|
|
410
|
+
// The winner failed; this command retries after the lock is released.
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
const pending = renewPersonToken();
|
|
414
|
+
renewingPersonToken = pending;
|
|
415
|
+
try {
|
|
416
|
+
return await pending;
|
|
417
|
+
}
|
|
418
|
+
finally {
|
|
419
|
+
if (renewingPersonToken === pending)
|
|
420
|
+
renewingPersonToken = undefined;
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
/** The authorized person's token, falling back to the per-owner token for this owner. */
|
|
424
|
+
async function personTokenFor(owner) {
|
|
425
|
+
const personal = await personalToken();
|
|
426
|
+
if (personal !== undefined)
|
|
427
|
+
return personal;
|
|
428
|
+
const file = cfg.userTokens?.[owner];
|
|
429
|
+
if (file === undefined)
|
|
430
|
+
return undefined;
|
|
431
|
+
const token = readFileSync(file, 'utf8').trim();
|
|
432
|
+
return token === '' ? undefined : token;
|
|
433
|
+
}
|
|
434
|
+
async function renewPersonToken() {
|
|
435
|
+
if (cfg.clientId === undefined || cfg.privateKeyPath === undefined)
|
|
436
|
+
return undefined;
|
|
437
|
+
const path = userTokenPath(cfg.privateKeyPath);
|
|
438
|
+
if (!existsSync(path))
|
|
439
|
+
return undefined;
|
|
440
|
+
const now = Date.now();
|
|
441
|
+
// The file is the only thing that says who the broker may act as, so it is read before the cache is
|
|
442
|
+
// trusted: running `authorize` again — the documented way to change that person, and the only one —
|
|
443
|
+
// has to take effect now rather than when the cached token happens to expire.
|
|
444
|
+
const held = readFileSync(path, 'utf8').trim();
|
|
445
|
+
if (cachedPersonToken !== undefined &&
|
|
446
|
+
cachedPersonToken.until > now + 60_000 &&
|
|
447
|
+
cachedPersonToken.source === held) {
|
|
448
|
+
return cachedPersonToken.token;
|
|
449
|
+
}
|
|
450
|
+
let next;
|
|
451
|
+
try {
|
|
452
|
+
next = await refreshUserToken(cfg.clientId, held, (url, init) => fetchImpl(url, init));
|
|
453
|
+
}
|
|
454
|
+
catch (error) {
|
|
455
|
+
// This is the one place a renewal failure is explained: the caller is an action that failed,
|
|
456
|
+
// and "fetch failed" on its own names neither the host nor the reason.
|
|
457
|
+
throw new Error(`could not renew the authorized token from ${path}: ${error.message}${describeCause(error)}`);
|
|
458
|
+
}
|
|
459
|
+
if (next.refreshToken !== undefined) {
|
|
460
|
+
try {
|
|
461
|
+
writeFileSync(path, `${next.refreshToken}\n`, { mode: 0o600 });
|
|
462
|
+
}
|
|
463
|
+
catch (error) {
|
|
464
|
+
// GitHub invalidated the token on disk the moment it answered, so this is not transient and not
|
|
465
|
+
// recoverable: the next renewal reads a dead token. Nothing else in the log would say so.
|
|
466
|
+
throw new Error(`could not store the new refresh token in ${path}: ${error.message}; the previous ` +
|
|
467
|
+
'one is no longer valid, so run authorize again');
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
cachedPersonToken = {
|
|
471
|
+
token: next.token,
|
|
472
|
+
until: now + (next.expiresInSeconds ?? 28_800) * 1_000,
|
|
473
|
+
source: next.refreshToken ?? held,
|
|
474
|
+
};
|
|
475
|
+
return cachedPersonToken.token;
|
|
476
|
+
}
|
|
393
477
|
/**
|
|
394
478
|
* One more sentence about a failure, when there is one worth having.
|
|
395
479
|
*
|
|
@@ -426,16 +510,30 @@ export function createGithubAppProvider(options) {
|
|
|
426
510
|
name: 'github-app',
|
|
427
511
|
async runAction(request) {
|
|
428
512
|
const spec = getGhAction(request.action);
|
|
429
|
-
const
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
513
|
+
const identity = request.identity ?? 'app';
|
|
514
|
+
let token;
|
|
515
|
+
let minted = false;
|
|
516
|
+
if (identity === 'user') {
|
|
517
|
+
const person = await personTokenFor(request.owner);
|
|
518
|
+
if (person === undefined) {
|
|
519
|
+
throw new ProviderConfigError('no authorized user token for this action; run gcb authorize or configure userTokens');
|
|
520
|
+
}
|
|
521
|
+
token = person;
|
|
522
|
+
}
|
|
523
|
+
else {
|
|
524
|
+
const wanted = { ...spec.permissions };
|
|
525
|
+
await ensurePermissions(request.owner, wanted);
|
|
526
|
+
const installationId = await resolveInstallationId(request.owner);
|
|
527
|
+
const { json } = await call('POST', `${api}/app/installations/${installationId}/access_tokens`, {
|
|
528
|
+
repositories: [request.repo],
|
|
529
|
+
permissions: wanted,
|
|
530
|
+
});
|
|
531
|
+
const mintedToken = json?.token;
|
|
532
|
+
if (typeof mintedToken !== 'string' || !mintedToken) {
|
|
533
|
+
throw new ProviderConfigError('GitHub returned no installation token for the action');
|
|
534
|
+
}
|
|
535
|
+
token = mintedToken;
|
|
536
|
+
minted = true;
|
|
439
537
|
}
|
|
440
538
|
let result;
|
|
441
539
|
let warning;
|
|
@@ -455,32 +553,34 @@ export function createGithubAppProvider(options) {
|
|
|
455
553
|
result = { ...NO_RUN, error: error instanceof Error ? error.message : String(error) };
|
|
456
554
|
}
|
|
457
555
|
finally {
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
556
|
+
if (minted) {
|
|
557
|
+
try {
|
|
558
|
+
const response = await fetchImpl(`${api}/installation/token`, {
|
|
559
|
+
method: 'DELETE',
|
|
560
|
+
headers: {
|
|
561
|
+
accept: 'application/vnd.github+json',
|
|
562
|
+
authorization: `Bearer ${token}`,
|
|
563
|
+
'x-github-api-version': apiVersion,
|
|
564
|
+
'user-agent': 'gcb',
|
|
565
|
+
},
|
|
566
|
+
});
|
|
567
|
+
if (!response.ok) {
|
|
568
|
+
let detail = '';
|
|
569
|
+
try {
|
|
570
|
+
detail = (await response.text()).replace(/\s+/g, ' ').trim().slice(0, 200);
|
|
571
|
+
}
|
|
572
|
+
catch {
|
|
573
|
+
// The status is enough; a body that cannot be read is still not a successful revoke.
|
|
574
|
+
}
|
|
575
|
+
log(`could not revoke the action token: GitHub answered ${response.status}${detail ? ` ${detail}` : ''}`);
|
|
576
|
+
warning = REVOKE_WARNING;
|
|
475
577
|
}
|
|
476
|
-
|
|
578
|
+
}
|
|
579
|
+
catch (error) {
|
|
580
|
+
log(`could not revoke the action token: ${String(error.message ?? error)}`);
|
|
477
581
|
warning = REVOKE_WARNING;
|
|
478
582
|
}
|
|
479
583
|
}
|
|
480
|
-
catch (error) {
|
|
481
|
-
log(`could not revoke the action token: ${String(error.message ?? error)}`);
|
|
482
|
-
warning = REVOKE_WARNING;
|
|
483
|
-
}
|
|
484
584
|
}
|
|
485
585
|
return { ...result, tokenFingerprint: tokenFingerprint(token), ...(warning === undefined ? {} : { warning }) };
|
|
486
586
|
},
|
|
@@ -558,25 +658,45 @@ export function createGithubAppProvider(options) {
|
|
|
558
658
|
* @returns the number and the URL GitHub answered with.
|
|
559
659
|
*/
|
|
560
660
|
async pullRequest(request) {
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
661
|
+
if (request.action === 'fork') {
|
|
662
|
+
const token = await personTokenFor(request.owner);
|
|
663
|
+
if (token === undefined) {
|
|
664
|
+
throw new ProviderConfigError('no user token for fork; run gcb authorize or configure userTokens');
|
|
665
|
+
}
|
|
666
|
+
const { text } = await callWithToken('POST', `${api}/repos/${request.owner}/${request.repo}/forks`, token);
|
|
667
|
+
let payload = null;
|
|
668
|
+
try {
|
|
669
|
+
payload = JSON.parse(text);
|
|
670
|
+
}
|
|
671
|
+
catch {
|
|
672
|
+
payload = null;
|
|
673
|
+
}
|
|
674
|
+
const forked = (payload ?? {});
|
|
675
|
+
if (typeof forked.full_name !== 'string' || typeof forked.html_url !== 'string') {
|
|
676
|
+
throw new ProviderConfigError('GitHub did not answer with a fork');
|
|
677
|
+
}
|
|
678
|
+
return { number: 0, url: forked.html_url };
|
|
679
|
+
}
|
|
680
|
+
// The person is selected explicitly, and by default for the two operations an installation token
|
|
681
|
+
// cannot perform (open/resolve): requiring an installation as well would refuse a repository the
|
|
682
|
+
// app was never installed on — the fork-to-upstream case the allowlist exists to permit. Reply,
|
|
683
|
+
// edit and comment stay on the app unless identity is explicitly 'user'.
|
|
684
|
+
const wantsApp = request.identity === 'app';
|
|
685
|
+
const personalForThis = request.identity === 'user' ||
|
|
686
|
+
(!wantsApp && (request.action === 'open' || request.action === 'resolve'));
|
|
687
|
+
const actingToken = personalForThis ? await personTokenFor(request.owner) : undefined;
|
|
688
|
+
// Resolving has no app route: the thread mutation is refused for an installation token, so a
|
|
689
|
+
// missing person token is a configuration error, not a reason to mint the wrong credential.
|
|
690
|
+
const personRequired = request.identity === 'user' || request.action === 'resolve';
|
|
691
|
+
if (personRequired && actingToken === undefined) {
|
|
692
|
+
throw new ProviderConfigError(`no authorized user token for ${request.action === 'resolve' ? 'resolving this thread' : 'this request'}; run gcb authorize or configure userTokens`);
|
|
693
|
+
}
|
|
567
694
|
// `--status` also reads /actions/runs, which is checked against actions: read. Pre-flighting
|
|
568
695
|
// pull_requests alone passed a grant that could not make that call, which is the opposite of what a
|
|
569
696
|
// pre-flight is for.
|
|
570
697
|
const wanted = request.action === 'status' ? { ...PULL_REQUEST_PERMISSIONS, actions: 'read' } : PULL_REQUEST_PERMISSIONS;
|
|
571
698
|
// One variable, so every branch below holds a token without having to ask which kind it is.
|
|
572
699
|
let token;
|
|
573
|
-
// A token per owner is the other way a person acts. It counts exactly as the authorized token does:
|
|
574
|
-
// whoever is acting, requiring an installation as well would refuse a repository the app was never
|
|
575
|
-
// installed on — the fork-to-upstream case the allowlist exists to permit.
|
|
576
|
-
const fileToken = request.action === 'open' || request.action === 'resolve'
|
|
577
|
-
? cfg.userTokens?.[request.owner]
|
|
578
|
-
: undefined;
|
|
579
|
-
const actingToken = personToken ?? (fileToken === undefined ? undefined : readFileSync(fileToken, 'utf8').trim());
|
|
580
700
|
if (actingToken === undefined) {
|
|
581
701
|
await ensurePermissions(request.owner, wanted);
|
|
582
702
|
const installationId = await resolveInstallationId(request.owner);
|
|
@@ -594,84 +714,12 @@ export function createGithubAppProvider(options) {
|
|
|
594
714
|
token = actingToken;
|
|
595
715
|
}
|
|
596
716
|
const collection = `${api}/repos/${request.owner}/${request.repo}/pulls`;
|
|
597
|
-
/**
|
|
598
|
-
* The token of the person this deployment authorized, when there is one.
|
|
599
|
-
|
|
600
|
-
* Only two actions may use it, and both because an installation token cannot: GitHub will not
|
|
601
|
-
* author a pull request as a person for an app, and refuses to resolve a review thread for one.
|
|
602
|
-
* The refresh token lives beside the private key, and GitHub rotates it on every use, so the new
|
|
603
|
-
* one is written back — keeping the old would work once and then stop.
|
|
604
|
-
*
|
|
605
|
-
* @returns the user token, or `undefined` when nobody has authorized one.
|
|
606
|
-
*/
|
|
607
|
-
async function personalToken() {
|
|
608
|
-
while (renewingPersonToken !== undefined) {
|
|
609
|
-
try {
|
|
610
|
-
await renewingPersonToken;
|
|
611
|
-
}
|
|
612
|
-
catch {
|
|
613
|
-
// The winner failed; this command retries after the lock is released.
|
|
614
|
-
}
|
|
615
|
-
}
|
|
616
|
-
const pending = renewPersonToken();
|
|
617
|
-
renewingPersonToken = pending;
|
|
618
|
-
try {
|
|
619
|
-
return await pending;
|
|
620
|
-
}
|
|
621
|
-
finally {
|
|
622
|
-
if (renewingPersonToken === pending)
|
|
623
|
-
renewingPersonToken = undefined;
|
|
624
|
-
}
|
|
625
|
-
}
|
|
626
|
-
async function renewPersonToken() {
|
|
627
|
-
if (cfg.clientId === undefined || cfg.privateKeyPath === undefined)
|
|
628
|
-
return undefined;
|
|
629
|
-
const path = userTokenPath(cfg.privateKeyPath);
|
|
630
|
-
if (!existsSync(path))
|
|
631
|
-
return undefined;
|
|
632
|
-
const now = Date.now();
|
|
633
|
-
// The file is the only thing that says who the broker may act as, so it is read before the cache is
|
|
634
|
-
// trusted: running `authorize` again — the documented way to change that person, and the only one —
|
|
635
|
-
// has to take effect now rather than when the cached token happens to expire.
|
|
636
|
-
const held = readFileSync(path, 'utf8').trim();
|
|
637
|
-
if (cachedPersonToken !== undefined &&
|
|
638
|
-
cachedPersonToken.until > now + 60_000 &&
|
|
639
|
-
cachedPersonToken.source === held) {
|
|
640
|
-
return cachedPersonToken.token;
|
|
641
|
-
}
|
|
642
|
-
let next;
|
|
643
|
-
try {
|
|
644
|
-
next = await refreshUserToken(cfg.clientId, held, (url, init) => fetchImpl(url, init));
|
|
645
|
-
}
|
|
646
|
-
catch (error) {
|
|
647
|
-
// This is the one place a renewal failure is explained: the caller is an action that failed,
|
|
648
|
-
// and "fetch failed" on its own names neither the host nor the reason.
|
|
649
|
-
throw new Error(`could not renew the authorized token from ${path}: ${error.message}${describeCause(error)}`);
|
|
650
|
-
}
|
|
651
|
-
if (next.refreshToken !== undefined) {
|
|
652
|
-
try {
|
|
653
|
-
writeFileSync(path, `${next.refreshToken}\n`, { mode: 0o600 });
|
|
654
|
-
}
|
|
655
|
-
catch (error) {
|
|
656
|
-
// GitHub invalidated the token on disk the moment it answered, so this is not transient and not
|
|
657
|
-
// recoverable: the next renewal reads a dead token. Nothing else in the log would say so.
|
|
658
|
-
throw new Error(`could not store the new refresh token in ${path}: ${error.message}; the previous ` +
|
|
659
|
-
'one is no longer valid, so run authorize again');
|
|
660
|
-
}
|
|
661
|
-
}
|
|
662
|
-
cachedPersonToken = {
|
|
663
|
-
token: next.token,
|
|
664
|
-
until: now + (next.expiresInSeconds ?? 28_800) * 1_000,
|
|
665
|
-
source: next.refreshToken ?? held,
|
|
666
|
-
};
|
|
667
|
-
return cachedPersonToken.token;
|
|
668
|
-
}
|
|
669
717
|
if (request.action === 'resolve') {
|
|
670
718
|
// Resolving has no REST endpoint either. The thread id is the one `--threads` prints.
|
|
671
719
|
// The thread id is a global node id, and the person token is not narrowed to a repository the way
|
|
672
720
|
// an installation token is. Ask whose thread it is before changing it: the allowlist decided which
|
|
673
721
|
// repositories this broker may touch, and a mutation is the wrong place to discover it did not.
|
|
674
|
-
const { text: scoped } = await callWithToken('POST', `${api}/graphql`,
|
|
722
|
+
const { text: scoped } = await callWithToken('POST', `${api}/graphql`, token, {
|
|
675
723
|
query: 'query($threadId:ID!){node(id:$threadId){... on PullRequestReviewThread{pullRequest{repository{nameWithOwner}}}}}',
|
|
676
724
|
variables: { threadId: request.threadId },
|
|
677
725
|
});
|
|
@@ -689,7 +737,7 @@ export function createGithubAppProvider(options) {
|
|
|
689
737
|
throw new Error(`refusing to resolve ${request.threadId}: it is not a review thread of ${request.owner}/${request.repo}` +
|
|
690
738
|
(typeof belongsTo === 'string' ? ` (it belongs to ${belongsTo})` : ' (or it could not be read)'));
|
|
691
739
|
}
|
|
692
|
-
const { text: raw } = await callWithToken('POST', `${api}/graphql`,
|
|
740
|
+
const { text: raw } = await callWithToken('POST', `${api}/graphql`, token, {
|
|
693
741
|
query: 'mutation($threadId:ID!){resolveReviewThread(input:{threadId:$threadId}){thread{isResolved}}}',
|
|
694
742
|
variables: { threadId: request.threadId ?? '' },
|
|
695
743
|
});
|
|
@@ -747,66 +795,86 @@ export function createGithubAppProvider(options) {
|
|
|
747
795
|
query: 'query($owner:String!,$name:String!,$number:Int!){repository(owner:$owner,name:$name){pullRequest(number:$number){reviewThreads(first:50){totalCount nodes{id isResolved path line comments(first:10){nodes{databaseId author{login} body}}}}}}}',
|
|
748
796
|
variables: { owner: request.owner, name: request.repo, number: request.number },
|
|
749
797
|
});
|
|
750
|
-
let listed
|
|
798
|
+
let listed;
|
|
751
799
|
try {
|
|
752
800
|
listed = JSON.parse(raw);
|
|
753
801
|
}
|
|
754
802
|
catch {
|
|
755
|
-
|
|
803
|
+
throw new Error('GitHub did not answer with review-thread JSON');
|
|
756
804
|
}
|
|
757
|
-
//
|
|
758
|
-
//
|
|
759
|
-
|
|
760
|
-
|
|
805
|
+
// A refusal that reads as "no threads" is worse than one that reads as a refusal: malformed
|
|
806
|
+
// JSON, a GraphQL error, and a missing reviewThreads shape are all failures, not an empty list.
|
|
807
|
+
if (listed === null || typeof listed !== 'object') {
|
|
808
|
+
throw new Error('GitHub did not answer with review-thread JSON');
|
|
809
|
+
}
|
|
810
|
+
const refused = listed;
|
|
761
811
|
if (Array.isArray(refused.errors) && refused.errors.length > 0) {
|
|
762
812
|
throw new Error(`GitHub refused to list the review threads: ${JSON.stringify(refused.errors).slice(0, 300)}`);
|
|
763
813
|
}
|
|
764
|
-
const data =
|
|
765
|
-
const
|
|
814
|
+
const data = listed;
|
|
815
|
+
const threads = data.data?.repository?.pullRequest?.reviewThreads;
|
|
816
|
+
if (threads === undefined || threads === null) {
|
|
817
|
+
throw new Error('GitHub did not answer with reviewThreads');
|
|
818
|
+
}
|
|
819
|
+
if (!Array.isArray(threads.nodes)) {
|
|
820
|
+
throw new Error('GitHub did not answer with reviewThreads.nodes');
|
|
821
|
+
}
|
|
822
|
+
if (typeof threads.totalCount !== 'number' || !Number.isInteger(threads.totalCount) || threads.totalCount < 0) {
|
|
823
|
+
throw new Error('GitHub did not answer with reviewThreads.totalCount');
|
|
824
|
+
}
|
|
825
|
+
if (threads.totalCount > 0 && threads.nodes.length === 0) {
|
|
826
|
+
throw new Error('GitHub answered with a thread count but no threads');
|
|
827
|
+
}
|
|
828
|
+
const nodes = threads.nodes;
|
|
766
829
|
const report = [];
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
830
|
+
for (const node of nodes) {
|
|
831
|
+
if (typeof node.id !== 'string' || node.id === '') {
|
|
832
|
+
throw new Error('GitHub did not answer with a review-thread id');
|
|
833
|
+
}
|
|
834
|
+
// The id is the handle `--resolve` needs; the body is the finding. Both are required.
|
|
835
|
+
report.push(`${node.isResolved === true ? 'resolved' : 'open '} ${node.id} ${String(node.path ?? '')}:${String(node.line ?? '')}`);
|
|
836
|
+
const comments = node.comments?.nodes;
|
|
837
|
+
if (!Array.isArray(comments)) {
|
|
838
|
+
throw new Error('GitHub did not answer with review-thread comments');
|
|
839
|
+
}
|
|
840
|
+
for (const comment of comments) {
|
|
841
|
+
// The whole comment, not its first line and not 120 characters of it: a review bot puts the finding
|
|
842
|
+
// in the lines below the header, and a report that drops them sends the reader to the web UI for the
|
|
843
|
+
// one thing this command exists to show.
|
|
844
|
+
if (typeof comment.body !== 'string') {
|
|
845
|
+
throw new Error('GitHub did not answer with a review-comment body');
|
|
846
|
+
}
|
|
847
|
+
const body = comment.body;
|
|
848
|
+
// The prose, not the first twelve lines of the comment: a review bot prefixes its finding with the
|
|
849
|
+
// commands it ran and a fence of their output, so counting raw lines reads the preamble and never
|
|
850
|
+
// reaches the claim. Fences and the bot's own metadata lines are dropped, and the cap then applies to
|
|
851
|
+
// what is left, which is what the reader wants and what the writer meant.
|
|
852
|
+
const bodyLines = body.split('\n');
|
|
853
|
+
const kept = [];
|
|
854
|
+
let inFence = false;
|
|
855
|
+
for (const raw of bodyLines) {
|
|
856
|
+
const line = raw.trim();
|
|
857
|
+
if (line.startsWith('```')) {
|
|
858
|
+
inFence = !inFence;
|
|
859
|
+
continue;
|
|
796
860
|
}
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
861
|
+
if (inFence)
|
|
862
|
+
continue;
|
|
863
|
+
if (/^(🏁|🔎|⚙️|🌐|💡|💬|🔗|Repository:|Length of output:|Proposed fix$|---$|_?\s*[🔒📐🎯🩺🟡🟠])/u.test(line))
|
|
864
|
+
continue;
|
|
865
|
+
kept.push(line.replace(/<\/?[a-z][^>]*>/gi, '').trim());
|
|
802
866
|
}
|
|
867
|
+
const visible = kept.filter((line) => line !== '');
|
|
868
|
+
const shown = visible.slice(0, 14);
|
|
869
|
+
const more = visible.length > shown.length ? ` (+${visible.length - shown.length} more lines)` : '';
|
|
870
|
+
report.push(` ${String(comment.databaseId ?? '')} @${String(comment.author?.login ?? '?')}:${more}`);
|
|
871
|
+
for (const line of shown)
|
|
872
|
+
report.push(` ${line.slice(0, 300)}`);
|
|
803
873
|
}
|
|
804
874
|
}
|
|
805
875
|
// A page is not the whole list. Saying which it is is the difference between a report and a guess.
|
|
806
|
-
const shown =
|
|
807
|
-
const
|
|
808
|
-
?.totalCount;
|
|
809
|
-
const total = typeof counted === 'number' ? counted : shown;
|
|
876
|
+
const shown = nodes.length;
|
|
877
|
+
const total = threads.totalCount;
|
|
810
878
|
if (total > shown) {
|
|
811
879
|
report.push(`... and ${total - shown} more: this asks for the first 50 threads, and the first 10 comments of each`);
|
|
812
880
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-app.js","sourceRoot":"","sources":["../../src/providers/github-app.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"github-app.js","sourceRoot":"","sources":["../../src/providers/github-app.ts"],"names":[],"mappings":"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"}
|