@forge-glance/sdk 0.2.1 → 0.2.2

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.
@@ -507,7 +507,7 @@ class GitHubProvider {
507
507
  changesRequested++;
508
508
  }
509
509
  }
510
- const approvalsLeft = changesRequested;
510
+ const approvalsLeft = changesRequested > 0 ? 1 : 0;
511
511
  const diffStats = pr.additions !== undefined ? {
512
512
  additions: pr.additions,
513
513
  deletions: pr.deletions ?? 0,
@@ -540,7 +540,7 @@ class GitHubProvider {
540
540
  approved: approvedBy.length > 0 && changesRequested === 0,
541
541
  approvedBy,
542
542
  diffStats,
543
- detailedMergeStatus: null,
543
+ detailedMergeStatus: pr.mergeable_state ?? null,
544
544
  autoMergeEnabled: pr.auto_merge != null,
545
545
  autoMergeStrategy: pr.auto_merge?.merge_method ?? null,
546
546
  mergeUser: pr.auto_merge ? toUserRef(pr.auto_merge.enabled_by) : null,
package/dist/index.js CHANGED
@@ -1155,7 +1155,7 @@ class GitHubProvider {
1155
1155
  changesRequested++;
1156
1156
  }
1157
1157
  }
1158
- const approvalsLeft = changesRequested;
1158
+ const approvalsLeft = changesRequested > 0 ? 1 : 0;
1159
1159
  const diffStats = pr.additions !== undefined ? {
1160
1160
  additions: pr.additions,
1161
1161
  deletions: pr.deletions ?? 0,
@@ -1188,7 +1188,7 @@ class GitHubProvider {
1188
1188
  approved: approvedBy.length > 0 && changesRequested === 0,
1189
1189
  approvedBy,
1190
1190
  diffStats,
1191
- detailedMergeStatus: null,
1191
+ detailedMergeStatus: pr.mergeable_state ?? null,
1192
1192
  autoMergeEnabled: pr.auto_merge != null,
1193
1193
  autoMergeStrategy: pr.auto_merge?.merge_method ?? null,
1194
1194
  mergeUser: pr.auto_merge ? toUserRef2(pr.auto_merge.enabled_by) : null,
package/dist/providers.js CHANGED
@@ -1146,7 +1146,7 @@ class GitHubProvider {
1146
1146
  changesRequested++;
1147
1147
  }
1148
1148
  }
1149
- const approvalsLeft = changesRequested;
1149
+ const approvalsLeft = changesRequested > 0 ? 1 : 0;
1150
1150
  const diffStats = pr.additions !== undefined ? {
1151
1151
  additions: pr.additions,
1152
1152
  deletions: pr.deletions ?? 0,
@@ -1179,7 +1179,7 @@ class GitHubProvider {
1179
1179
  approved: approvedBy.length > 0 && changesRequested === 0,
1180
1180
  approvedBy,
1181
1181
  diffStats,
1182
- detailedMergeStatus: null,
1182
+ detailedMergeStatus: pr.mergeable_state ?? null,
1183
1183
  autoMergeEnabled: pr.auto_merge != null,
1184
1184
  autoMergeStrategy: pr.auto_merge?.merge_method ?? null,
1185
1185
  mergeUser: pr.auto_merge ? toUserRef2(pr.auto_merge.enabled_by) : null,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge-glance/sdk",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "GitHub & GitLab API client — REST, GraphQL, and real-time ActionCable subscriptions",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -976,9 +976,10 @@ export class GitHubProvider implements GitProvider {
976
976
  }
977
977
  }
978
978
 
979
- // GitHub doesn't have an "approvals left" concept natively;
980
- // we use changesRequested as a proxy (0 if no changes requested)
981
- const approvalsLeft = changesRequested;
979
+ // GitHub doesn't expose required approval count via REST without the
980
+ // branch protection API. We use changesRequested as a blocking signal:
981
+ // 0 = not blocked by reviews, 1 = at least one CHANGES_REQUESTED review.
982
+ const approvalsLeft = changesRequested > 0 ? 1 : 0;
982
983
 
983
984
  const diffStats: DiffStats | null =
984
985
  pr.additions !== undefined
@@ -1019,7 +1020,7 @@ export class GitHubProvider implements GitProvider {
1019
1020
  approved: approvedBy.length > 0 && changesRequested === 0,
1020
1021
  approvedBy,
1021
1022
  diffStats,
1022
- detailedMergeStatus: null, // GitHub-specific status not applicable
1023
+ detailedMergeStatus: pr.mergeable_state ?? null, // "clean"|"dirty"|"blocked"|"unstable"|"behind"|"draft"
1023
1024
  autoMergeEnabled: pr.auto_merge != null,
1024
1025
  autoMergeStrategy: pr.auto_merge?.merge_method ?? null,
1025
1026
  mergeUser: pr.auto_merge ? toUserRef(pr.auto_merge.enabled_by) : null,