npm-cli-gh-issue-preparator 1.31.0 → 1.31.1

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 CHANGED
@@ -1,3 +1,12 @@
1
+ ## [1.31.1](https://github.com/HiromiShikata/npm-cli-gh-issue-preparator/compare/v1.31.0...v1.31.1) (2026-05-05)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **core:** add retry with backoff to GraphqlIssueRepository, TowerDefenceIssueRepository, TowerDefenceProjectRepository ([87d4f0c](https://github.com/HiromiShikata/npm-cli-gh-issue-preparator/commit/87d4f0c5013c0f5ac50f1ca7ef00c0d28d341f19))
7
+ * **core:** address review comments - throw on non-OK HTTP, always retry on rate-limit, narrow TypeError ([d114049](https://github.com/HiromiShikata/npm-cli-gh-issue-preparator/commit/d1140492252647f416a9e816b761ab6b00f87196))
8
+ * **core:** address review comments on PR [#295](https://github.com/HiromiShikata/npm-cli-gh-issue-preparator/issues/295) ([ee3fb9f](https://github.com/HiromiShikata/npm-cli-gh-issue-preparator/commit/ee3fb9f78619d00b4331cef119a54b594a509c8b)), closes [#294](https://github.com/HiromiShikata/npm-cli-gh-issue-preparator/issues/294)
9
+
1
10
  # [1.31.0](https://github.com/HiromiShikata/npm-cli-gh-issue-preparator/compare/v1.30.0...v1.31.0) (2026-05-05)
2
11
 
3
12
 
@@ -290,30 +290,67 @@ class GraphqlIssueRepository {
290
290
  let after = null;
291
291
  let hasNextPage = true;
292
292
  while (hasNextPage) {
293
- const response = await fetch('https://api.github.com/graphql', {
294
- method: 'POST',
295
- headers: {
296
- Authorization: `Bearer ${this.token}`,
297
- 'Content-Type': 'application/json',
298
- },
299
- body: JSON.stringify({
300
- query,
301
- variables: {
302
- owner,
303
- number: projectNumber,
304
- after,
305
- },
306
- }),
307
- });
308
- if (!response.ok) {
309
- return null;
293
+ let pageResult = null;
294
+ for (let attempt = 0; attempt <= this.retryDelaysMs.length; attempt++) {
295
+ if (attempt > 0) {
296
+ const delay = this.retryDelaysMs[attempt - 1];
297
+ console.log(`GitHub API rate limited fetching status options for project ${projectUrl}, retrying in ${delay / 1000}s... (attempt ${attempt}/${this.retryDelaysMs.length})`);
298
+ await this.sleep(delay);
299
+ }
300
+ let response;
301
+ try {
302
+ response = await fetch('https://api.github.com/graphql', {
303
+ method: 'POST',
304
+ headers: {
305
+ Authorization: `Bearer ${this.token}`,
306
+ 'Content-Type': 'application/json',
307
+ },
308
+ body: JSON.stringify({
309
+ query,
310
+ variables: {
311
+ owner,
312
+ number: projectNumber,
313
+ after,
314
+ },
315
+ }),
316
+ });
317
+ }
318
+ catch (fetchError) {
319
+ if (attempt < this.retryDelaysMs.length)
320
+ continue;
321
+ throw fetchError;
322
+ }
323
+ if (response.status === 429) {
324
+ if (attempt < this.retryDelaysMs.length)
325
+ continue;
326
+ break;
327
+ }
328
+ if (!response.ok) {
329
+ throw new Error(`GitHub API error fetching status options for project ${projectUrl}: HTTP ${response.status}`);
330
+ }
331
+ const responseData = await response.json();
332
+ if (!isStatusFieldsResponse(responseData)) {
333
+ return null;
334
+ }
335
+ if (responseData.errors &&
336
+ responseData.errors.length > 0 &&
337
+ (0, GraphqlRateLimitHelper_1.isRateLimitError)(responseData.errors)) {
338
+ const hasData = !!(responseData.data?.organization?.projectV2 ||
339
+ responseData.data?.user?.projectV2);
340
+ if (!hasData) {
341
+ if (attempt < this.retryDelaysMs.length)
342
+ continue;
343
+ break;
344
+ }
345
+ }
346
+ pageResult = responseData;
347
+ break;
310
348
  }
311
- const responseData = await response.json();
312
- if (!isStatusFieldsResponse(responseData)) {
313
- return null;
349
+ if (!pageResult) {
350
+ throw new Error(`GitHub API rate limit exceeded fetching status options for project ${projectUrl}, all retries exhausted`);
314
351
  }
315
- const result = responseData;
316
- const projectData = result.data?.organization?.projectV2 || result.data?.user?.projectV2;
352
+ const projectData = pageResult.data?.organization?.projectV2 ||
353
+ pageResult.data?.user?.projectV2;
317
354
  if (!projectData) {
318
355
  return null;
319
356
  }
@@ -355,32 +392,59 @@ class GraphqlIssueRepository {
355
392
  }
356
393
  }
357
394
  `;
358
- const response = await fetch('https://api.github.com/graphql', {
359
- method: 'POST',
360
- headers: {
361
- Authorization: `Bearer ${this.token}`,
362
- 'Content-Type': 'application/json',
363
- },
364
- body: JSON.stringify({
365
- query: mutation,
366
- variables: {
367
- projectId: statusInfo.projectId,
368
- itemId: issue.itemId,
369
- fieldId: statusInfo.fieldId,
370
- value: { singleSelectOptionId: statusInfo.optionId },
371
- },
372
- }),
373
- });
374
- if (!response.ok) {
375
- throw new Error(`GitHub API error`);
376
- }
377
- const responseData = await response.json();
378
- if (!isUpdateItemResponse(responseData)) {
379
- throw new Error('Invalid API response format');
380
- }
381
- if (responseData.errors) {
382
- throw new Error(`GraphQL errors: ${JSON.stringify(responseData.errors)}`);
395
+ for (let attempt = 0; attempt <= this.retryDelaysMs.length; attempt++) {
396
+ if (attempt > 0) {
397
+ const delay = this.retryDelaysMs[attempt - 1];
398
+ console.log(`GitHub API rate limited updating project item, retrying in ${delay / 1000}s... (attempt ${attempt}/${this.retryDelaysMs.length})`);
399
+ await this.sleep(delay);
400
+ }
401
+ let response;
402
+ try {
403
+ response = await fetch('https://api.github.com/graphql', {
404
+ method: 'POST',
405
+ headers: {
406
+ Authorization: `Bearer ${this.token}`,
407
+ 'Content-Type': 'application/json',
408
+ },
409
+ body: JSON.stringify({
410
+ query: mutation,
411
+ variables: {
412
+ projectId: statusInfo.projectId,
413
+ itemId: issue.itemId,
414
+ fieldId: statusInfo.fieldId,
415
+ value: { singleSelectOptionId: statusInfo.optionId },
416
+ },
417
+ }),
418
+ });
419
+ }
420
+ catch (fetchError) {
421
+ if (attempt < this.retryDelaysMs.length)
422
+ continue;
423
+ throw fetchError;
424
+ }
425
+ if (response.status === 429) {
426
+ if (attempt < this.retryDelaysMs.length)
427
+ continue;
428
+ break;
429
+ }
430
+ if (!response.ok) {
431
+ throw new Error(`GitHub API error: HTTP ${response.status}`);
432
+ }
433
+ const responseData = await response.json();
434
+ if (!isUpdateItemResponse(responseData)) {
435
+ throw new Error('Invalid API response format');
436
+ }
437
+ if (responseData.errors && responseData.errors.length > 0) {
438
+ if ((0, GraphqlRateLimitHelper_1.isRateLimitError)(responseData.errors)) {
439
+ if (attempt < this.retryDelaysMs.length)
440
+ continue;
441
+ break;
442
+ }
443
+ throw new Error(`GraphQL errors: ${JSON.stringify(responseData.errors)}`);
444
+ }
445
+ return;
383
446
  }
447
+ throw new Error('GitHub API rate limit exceeded updating project item, all retries exhausted');
384
448
  }
385
449
  async updateNextActionDate(issueUrl, project, date) {
386
450
  if (!project.nextActionDate) {
@@ -634,30 +698,63 @@ class GraphqlIssueRepository {
634
698
  let after = null;
635
699
  let hasNextPage = true;
636
700
  while (hasNextPage) {
637
- const response = await fetch('https://api.github.com/graphql', {
638
- method: 'POST',
639
- headers: {
640
- Authorization: `Bearer ${this.token}`,
641
- 'Content-Type': 'application/json',
642
- },
643
- body: JSON.stringify({
644
- query,
645
- variables: {
646
- owner,
647
- repo,
648
- issueNumber,
649
- after,
650
- },
651
- }),
652
- });
653
- if (!response.ok) {
654
- throw new Error(`Failed to fetch issue timeline from GitHub GraphQL API`);
701
+ let pageResult = null;
702
+ for (let attempt = 0; attempt <= this.retryDelaysMs.length; attempt++) {
703
+ if (attempt > 0) {
704
+ const delay = this.retryDelaysMs[attempt - 1];
705
+ console.log(`GitHub API rate limited fetching issue timeline for ${issueUrl}, retrying in ${delay / 1000}s... (attempt ${attempt}/${this.retryDelaysMs.length})`);
706
+ await this.sleep(delay);
707
+ }
708
+ let response;
709
+ try {
710
+ response = await fetch('https://api.github.com/graphql', {
711
+ method: 'POST',
712
+ headers: {
713
+ Authorization: `Bearer ${this.token}`,
714
+ 'Content-Type': 'application/json',
715
+ },
716
+ body: JSON.stringify({
717
+ query,
718
+ variables: {
719
+ owner,
720
+ repo,
721
+ issueNumber,
722
+ after,
723
+ },
724
+ }),
725
+ });
726
+ }
727
+ catch (fetchError) {
728
+ if (attempt < this.retryDelaysMs.length)
729
+ continue;
730
+ throw fetchError;
731
+ }
732
+ if (response.status === 429) {
733
+ if (attempt < this.retryDelaysMs.length)
734
+ continue;
735
+ break;
736
+ }
737
+ if (!response.ok) {
738
+ throw new Error(`Failed to fetch issue timeline from GitHub GraphQL API: HTTP ${response.status}`);
739
+ }
740
+ const responseData = await response.json();
741
+ if (!isIssueTimelineResponse(responseData)) {
742
+ throw new Error('Unexpected response shape when fetching issue timeline from GitHub GraphQL API');
743
+ }
744
+ if (responseData.errors &&
745
+ responseData.errors.length > 0 &&
746
+ (0, GraphqlRateLimitHelper_1.isRateLimitError)(responseData.errors)) {
747
+ if (attempt < this.retryDelaysMs.length)
748
+ continue;
749
+ break;
750
+ }
751
+ pageResult = responseData;
752
+ break;
655
753
  }
656
- const responseData = await response.json();
657
- if (!isIssueTimelineResponse(responseData)) {
658
- throw new Error('Unexpected response shape when fetching issue timeline from GitHub GraphQL API');
754
+ if (!pageResult) {
755
+ throw new Error(`GitHub API rate limit exceeded fetching issue timeline for ${issueUrl}, all retries exhausted`);
659
756
  }
660
- const result = responseData;
757
+ const result = pageResult;
661
758
  const issueData = result.data?.repository?.issue;
662
759
  if (!issueData) {
663
760
  throw new Error('Issue not found when fetching timeline from GitHub GraphQL API');
@@ -763,32 +860,58 @@ class GraphqlIssueRepository {
763
860
  }
764
861
  }
765
862
  `;
766
- const response = await fetch('https://api.github.com/graphql', {
767
- method: 'POST',
768
- headers: {
769
- Authorization: `Bearer ${this.token}`,
770
- 'Content-Type': 'application/json',
771
- },
772
- body: JSON.stringify({
773
- query,
774
- variables: { owner, repo, prNumber },
775
- }),
776
- });
777
- if (!response.ok) {
778
- throw new Error('Failed to fetch pull request from GitHub GraphQL API');
779
- }
780
- const responseData = await response.json();
781
- if (!isDirectPullRequestResponse(responseData)) {
782
- throw new Error('Unexpected response shape when fetching pull request from GitHub GraphQL API');
783
- }
784
- if (responseData.errors) {
785
- throw new Error(`GraphQL errors: ${JSON.stringify(responseData.errors)}`);
786
- }
787
- const pr = responseData.data?.repository?.pullRequest;
788
- if (!pr || pr.state !== 'OPEN') {
789
- return null;
863
+ for (let attempt = 0; attempt <= this.retryDelaysMs.length; attempt++) {
864
+ if (attempt > 0) {
865
+ const delay = this.retryDelaysMs[attempt - 1];
866
+ console.log(`GitHub API rate limited fetching pull request ${prUrl}, retrying in ${delay / 1000}s... (attempt ${attempt}/${this.retryDelaysMs.length})`);
867
+ await this.sleep(delay);
868
+ }
869
+ let response;
870
+ try {
871
+ response = await fetch('https://api.github.com/graphql', {
872
+ method: 'POST',
873
+ headers: {
874
+ Authorization: `Bearer ${this.token}`,
875
+ 'Content-Type': 'application/json',
876
+ },
877
+ body: JSON.stringify({
878
+ query,
879
+ variables: { owner, repo, prNumber },
880
+ }),
881
+ });
882
+ }
883
+ catch (fetchError) {
884
+ if (attempt < this.retryDelaysMs.length)
885
+ continue;
886
+ throw fetchError;
887
+ }
888
+ if (response.status === 429) {
889
+ if (attempt < this.retryDelaysMs.length)
890
+ continue;
891
+ break;
892
+ }
893
+ if (!response.ok) {
894
+ throw new Error(`Failed to fetch pull request from GitHub GraphQL API: HTTP ${response.status}`);
895
+ }
896
+ const responseData = await response.json();
897
+ if (!isDirectPullRequestResponse(responseData)) {
898
+ throw new Error('Unexpected response shape when fetching pull request from GitHub GraphQL API');
899
+ }
900
+ if (responseData.errors && responseData.errors.length > 0) {
901
+ if ((0, GraphqlRateLimitHelper_1.isRateLimitError)(responseData.errors)) {
902
+ if (attempt < this.retryDelaysMs.length)
903
+ continue;
904
+ break;
905
+ }
906
+ throw new Error(`GraphQL errors: ${JSON.stringify(responseData.errors)}`);
907
+ }
908
+ const pr = responseData.data?.repository?.pullRequest;
909
+ if (!pr || pr.state !== 'OPEN') {
910
+ return null;
911
+ }
912
+ return this.computePrStatus(pr.url, pr.headRefName, pr.baseRefName, pr);
790
913
  }
791
- return this.computePrStatus(pr.url, pr.headRefName, pr.baseRefName, pr);
914
+ throw new Error(`GitHub API rate limit exceeded fetching pull request ${prUrl}, all retries exhausted`);
792
915
  }
793
916
  }
794
917
  exports.GraphqlIssueRepository = GraphqlIssueRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"GraphqlIssueRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/GraphqlIssueRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphqlIssueRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/GraphqlIssueRepository.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TowerDefenceIssueRepository = void 0;
4
4
  const github_issue_tower_defence_management_1 = require("github-issue-tower-defence-management");
5
+ const GraphqlRateLimitHelper_1 = require("./GraphqlRateLimitHelper");
5
6
  class TowerDefenceIssueRepository {
6
- constructor(configFilePath, _token) {
7
+ constructor(configFilePath, _token, retryDelaysMs = [5000, 15000, 45000], sleep = GraphqlRateLimitHelper_1.defaultSleep) {
7
8
  this.configFilePath = configFilePath;
8
9
  this.cachedProject = null;
9
10
  this.cachedIssues = null;
@@ -12,6 +13,8 @@ class TowerDefenceIssueRepository {
12
13
  const { storyObjectMap } = await this.loadData(project);
13
14
  return storyObjectMap;
14
15
  };
16
+ this.retryDelaysMs = retryDelaysMs;
17
+ this.sleep = sleep;
15
18
  }
16
19
  async loadData(_project) {
17
20
  if (this.cachedProject && this.cachedIssues && this.storyObjectMap) {
@@ -21,15 +24,50 @@ class TowerDefenceIssueRepository {
21
24
  storyObjectMap: this.storyObjectMap,
22
25
  };
23
26
  }
24
- const result = await (0, github_issue_tower_defence_management_1.getStoryObjectMap)(this.configFilePath, true);
25
- this.cachedProject = result.project;
26
- this.cachedIssues = result.issues;
27
- this.storyObjectMap = result.storyObjectMap;
28
- return {
29
- project: result.project,
30
- issues: result.issues,
31
- storyObjectMap: result.storyObjectMap,
32
- };
27
+ let lastError;
28
+ for (let attempt = 0; attempt <= this.retryDelaysMs.length; attempt++) {
29
+ if (attempt > 0) {
30
+ const delay = this.retryDelaysMs[attempt - 1];
31
+ console.log(`GitHub API error loading project data from ${this.configFilePath}, retrying in ${delay / 1000}s... (attempt ${attempt}/${this.retryDelaysMs.length})`);
32
+ await this.sleep(delay);
33
+ this.cachedProject = null;
34
+ this.cachedIssues = null;
35
+ this.storyObjectMap = null;
36
+ }
37
+ try {
38
+ const result = await (0, github_issue_tower_defence_management_1.getStoryObjectMap)(this.configFilePath, true);
39
+ this.cachedProject = result.project;
40
+ this.cachedIssues = result.issues;
41
+ this.storyObjectMap = result.storyObjectMap;
42
+ return {
43
+ project: result.project,
44
+ issues: result.issues,
45
+ storyObjectMap: result.storyObjectMap,
46
+ };
47
+ }
48
+ catch (error) {
49
+ if (error instanceof Error && !this.isTransientGitHubApiError(error)) {
50
+ throw error;
51
+ }
52
+ lastError = error;
53
+ console.warn(`Failed to load project data from ${this.configFilePath} (attempt ${attempt + 1}/${this.retryDelaysMs.length + 1}): ${error instanceof Error ? error.message : String(error)}`);
54
+ if (attempt < this.retryDelaysMs.length)
55
+ continue;
56
+ }
57
+ }
58
+ const errorMessage = lastError instanceof Error ? lastError.message : String(lastError);
59
+ throw new Error(`GitHub API error loading project data from ${this.configFilePath}, all retries exhausted: ${errorMessage}`);
60
+ }
61
+ isTransientGitHubApiError(error) {
62
+ if (error instanceof TypeError) {
63
+ return /^Cannot read propert(?:y|ies) of (?:undefined|null)/.test(error.message);
64
+ }
65
+ const message = error.message;
66
+ return (message.includes('ECONNRESET') ||
67
+ message.includes('ETIMEDOUT') ||
68
+ message.includes('ENOTFOUND') ||
69
+ message.includes('fetch failed') ||
70
+ message.includes('rate limit'));
33
71
  }
34
72
  async getAllOpened(project) {
35
73
  const { issues } = await this.loadData(project);
@@ -1 +1 @@
1
- {"version":3,"file":"TowerDefenceIssueRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/TowerDefenceIssueRepository.ts"],"names":[],"mappings":";;;AAAA,iGAK+C;AAM/C,MAAa,2BAA2B;IAQtC,YACmB,cAAsB,EACvC,MAAc;QADG,mBAAc,GAAd,cAAc,CAAQ;QALjC,kBAAa,GAA+B,IAAI,CAAC;QACjD,iBAAY,GAA+B,IAAI,CAAC;QAChD,mBAAc,GAAsC,IAAI,CAAC;QAqCjE,sBAAiB,GAAG,KAAK,EAAE,OAAgB,EAA2B,EAAE;YACtE,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAExD,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC;IApCC,CAAC;IAEI,KAAK,CAAC,QAAQ,CAAC,QAAiB;QAKtC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACnE,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,aAAa;gBAC3B,MAAM,EAAE,IAAI,CAAC,YAAY;gBACzB,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,yDAAiB,EAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC5C,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,cAAc,EAAE,MAAM,CAAC,cAAc;SACtC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAgB;QACjC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAChD,OAAO,MAAM;aACV,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM,CAAC;aACzC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,CAAC;IAOO,UAAU,CAAC,iBAAoC;QACrD,MAAM,MAAM,GACV,QAAQ,IAAI,iBAAiB;YAC7B,OAAO,iBAAiB,CAAC,MAAM,KAAK,QAAQ;YAC1C,CAAC,CAAC,iBAAiB,CAAC,MAAM;YAC1B,CAAC,CAAC,EAAE,CAAC;QAET,OAAO;YACL,GAAG,iBAAiB;YACpB,MAAM;SACP,CAAC;IACJ,CAAC;CACF;AA7DD,kEA6DC"}
1
+ {"version":3,"file":"TowerDefenceIssueRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/TowerDefenceIssueRepository.ts"],"names":[],"mappings":"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"}
@@ -2,20 +2,56 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TowerDefenceProjectRepository = void 0;
4
4
  const github_issue_tower_defence_management_1 = require("github-issue-tower-defence-management");
5
+ const GraphqlRateLimitHelper_1 = require("./GraphqlRateLimitHelper");
5
6
  class TowerDefenceProjectRepository {
6
- constructor(configFilePath, _token) {
7
+ constructor(configFilePath, _token, retryDelaysMs = [5000, 15000, 45000], sleep = GraphqlRateLimitHelper_1.defaultSleep) {
7
8
  this.configFilePath = configFilePath;
8
9
  this._token = _token;
9
10
  this.cachedProject = null;
10
11
  this.projectUrl = null;
12
+ this.retryDelaysMs = retryDelaysMs;
13
+ this.sleep = sleep;
11
14
  }
12
15
  async loadProject() {
13
16
  if (this.cachedProject) {
14
17
  return this.cachedProject;
15
18
  }
16
- const result = await (0, github_issue_tower_defence_management_1.getStoryObjectMap)(this.configFilePath, false);
17
- this.cachedProject = result.project;
18
- return result.project;
19
+ let lastError;
20
+ for (let attempt = 0; attempt <= this.retryDelaysMs.length; attempt++) {
21
+ if (attempt > 0) {
22
+ const delay = this.retryDelaysMs[attempt - 1];
23
+ console.log(`GitHub API error loading project from ${this.configFilePath}, retrying in ${delay / 1000}s... (attempt ${attempt}/${this.retryDelaysMs.length})`);
24
+ await this.sleep(delay);
25
+ this.cachedProject = null;
26
+ }
27
+ try {
28
+ const result = await (0, github_issue_tower_defence_management_1.getStoryObjectMap)(this.configFilePath, false);
29
+ this.cachedProject = result.project;
30
+ return result.project;
31
+ }
32
+ catch (error) {
33
+ if (error instanceof Error && !this.isTransientGitHubApiError(error)) {
34
+ throw error;
35
+ }
36
+ lastError = error;
37
+ console.warn(`Failed to load project from ${this.configFilePath} (attempt ${attempt + 1}/${this.retryDelaysMs.length + 1}): ${error instanceof Error ? error.message : String(error)}`);
38
+ if (attempt < this.retryDelaysMs.length)
39
+ continue;
40
+ }
41
+ }
42
+ const errorMessage = lastError instanceof Error ? lastError.message : String(lastError);
43
+ throw new Error(`GitHub API error loading project from ${this.configFilePath}, all retries exhausted: ${errorMessage}`);
44
+ }
45
+ isTransientGitHubApiError(error) {
46
+ if (error instanceof TypeError) {
47
+ return /^Cannot read propert(?:y|ies) of (?:undefined|null)/.test(error.message);
48
+ }
49
+ const message = error.message;
50
+ return (message.includes('ECONNRESET') ||
51
+ message.includes('ETIMEDOUT') ||
52
+ message.includes('ENOTFOUND') ||
53
+ message.includes('fetch failed') ||
54
+ message.includes('rate limit'));
19
55
  }
20
56
  async getByUrl(url) {
21
57
  const towerDefenceProject = await this.loadProject();
@@ -1 +1 @@
1
- {"version":3,"file":"TowerDefenceProjectRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/TowerDefenceProjectRepository.ts"],"names":[],"mappings":";;;AAAA,iGAG+C;AAI/C,MAAa,6BAA6B;IAIxC,YACmB,cAAsB,EACtB,MAAc;QADd,mBAAc,GAAd,cAAc,CAAQ;QACtB,WAAM,GAAN,MAAM,CAAQ;QALzB,kBAAa,GAA+B,IAAI,CAAC;QACjD,eAAU,GAAkB,IAAI,CAAC;IAKtC,CAAC;IAEI,KAAK,CAAC,WAAW;QACvB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,yDAAiB,EAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;QACpC,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,GAAW;QACxB,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,OAAgB;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,YAAY,CAClB,mBAAwC,EACxC,GAAW;QAEX,OAAO;YACL,EAAE,EAAE,mBAAmB,CAAC,EAAE;YAC1B,GAAG,EAAE,GAAG;YACR,UAAU,EAAE,mBAAmB,CAAC,UAAU;YAC1C,IAAI,EAAE,mBAAmB,CAAC,IAAI;YAC9B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,mBAAmB,CAAC,MAAM;YAClC,cAAc,EAAE,mBAAmB,CAAC,cAAc;YAClD,cAAc,EAAE,mBAAmB,CAAC,cAAc;YAClD,KAAK,EAAE,mBAAmB,CAAC,KAAK;YAChC,0BAA0B,EACxB,mBAAmB,CAAC,0BAA0B;YAChD,gCAAgC,EAC9B,mBAAmB,CAAC,gCAAgC;YACtD,iCAAiC,EAC/B,mBAAmB,CAAC,iCAAiC;SACxD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,UAAkB,EAClB,OAAgB;QAEhB,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AA1DD,sEA0DC"}
1
+ {"version":3,"file":"TowerDefenceProjectRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/TowerDefenceProjectRepository.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npm-cli-gh-issue-preparator",
3
- "version": "1.31.0",
3
+ "version": "1.31.1",
4
4
  "description": "",
5
5
  "main": "bin/index.js",
6
6
  "scripts": {