@gitkraken/core-gitlens 0.5.102 → 0.5.104

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.
Files changed (103) hide show
  1. package/CHANGELOG.md +26 -1
  2. package/dist/git/models/issue.d.ts +78 -0
  3. package/dist/git/models/issue.d.ts.map +1 -1
  4. package/dist/git/models/issue.js.map +1 -1
  5. package/dist/plus/git-github/api/config.d.ts +12 -0
  6. package/dist/plus/git-github/api/config.d.ts.map +1 -1
  7. package/dist/plus/git-github/api/config.js +12 -1
  8. package/dist/plus/git-github/api/config.js.map +1 -1
  9. package/dist/plus/git-github/api/github.d.ts +77 -7
  10. package/dist/plus/git-github/api/github.d.ts.map +1 -1
  11. package/dist/plus/git-github/api/github.js +241 -120
  12. package/dist/plus/git-github/api/github.js.map +1 -1
  13. package/dist/plus/git-github/api/issueSearchQuery.d.ts +70 -0
  14. package/dist/plus/git-github/api/issueSearchQuery.d.ts.map +1 -0
  15. package/dist/plus/git-github/api/issueSearchQuery.js +143 -0
  16. package/dist/plus/git-github/api/issueSearchQuery.js.map +1 -0
  17. package/dist/plus/integrations/collectionMetadata.d.ts +15 -1
  18. package/dist/plus/integrations/collectionMetadata.d.ts.map +1 -1
  19. package/dist/plus/integrations/collectionMetadata.js +21 -2
  20. package/dist/plus/integrations/collectionMetadata.js.map +1 -1
  21. package/dist/plus/integrations/index.d.ts +2 -0
  22. package/dist/plus/integrations/index.d.ts.map +1 -1
  23. package/dist/plus/integrations/integrationService.d.ts +39 -2
  24. package/dist/plus/integrations/integrationService.d.ts.map +1 -1
  25. package/dist/plus/integrations/integrationService.js +17 -0
  26. package/dist/plus/integrations/integrationService.js.map +1 -1
  27. package/dist/plus/integrations/manager.d.ts +88 -2
  28. package/dist/plus/integrations/manager.d.ts.map +1 -1
  29. package/dist/plus/integrations/models/gitHostIntegration.d.ts +61 -3
  30. package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -1
  31. package/dist/plus/integrations/models/gitHostIntegration.js +51 -0
  32. package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -1
  33. package/dist/plus/integrations/models/integration.d.ts +3 -46
  34. package/dist/plus/integrations/models/integration.d.ts.map +1 -1
  35. package/dist/plus/integrations/models/integration.js.map +1 -1
  36. package/dist/plus/integrations/models/issueReads.d.ts +70 -0
  37. package/dist/plus/integrations/models/issueReads.d.ts.map +1 -0
  38. package/dist/plus/integrations/models/issueReads.js +2 -0
  39. package/dist/plus/integrations/models/issueReads.js.map +1 -0
  40. package/dist/plus/integrations/providerFilters.d.ts +10 -0
  41. package/dist/plus/integrations/providerFilters.d.ts.map +1 -1
  42. package/dist/plus/integrations/providers/github.d.ts +26 -3
  43. package/dist/plus/integrations/providers/github.d.ts.map +1 -1
  44. package/dist/plus/integrations/providers/github.js +34 -0
  45. package/dist/plus/integrations/providers/github.js.map +1 -1
  46. package/dist/plus/integrations/providers/models.d.ts +22 -0
  47. package/dist/plus/integrations/providers/models.d.ts.map +1 -1
  48. package/dist/plus/integrations/providers/models.js +26 -0
  49. package/dist/plus/integrations/providers/models.js.map +1 -1
  50. package/dist/plus/integrations/reads/broaden.d.ts +10 -0
  51. package/dist/plus/integrations/reads/broaden.d.ts.map +1 -1
  52. package/dist/plus/integrations/reads/broaden.js.map +1 -1
  53. package/dist/plus/integrations/reads/counts.d.ts +64 -0
  54. package/dist/plus/integrations/reads/counts.d.ts.map +1 -0
  55. package/dist/plus/integrations/reads/counts.js +164 -0
  56. package/dist/plus/integrations/reads/counts.js.map +1 -0
  57. package/dist/plus/integrations/reads/filters.d.ts +63 -1
  58. package/dist/plus/integrations/reads/filters.d.ts.map +1 -1
  59. package/dist/plus/integrations/reads/filters.js +125 -0
  60. package/dist/plus/integrations/reads/filters.js.map +1 -1
  61. package/dist/plus/integrations/reads/hierarchy.d.ts.map +1 -1
  62. package/dist/plus/integrations/reads/hierarchy.js +34 -17
  63. package/dist/plus/integrations/reads/hierarchy.js.map +1 -1
  64. package/dist/plus/integrations/reads/issues.d.ts.map +1 -1
  65. package/dist/plus/integrations/reads/issues.js +22 -41
  66. package/dist/plus/integrations/reads/issues.js.map +1 -1
  67. package/dist/plus/integrations/reads/paging.d.ts +59 -0
  68. package/dist/plus/integrations/reads/paging.d.ts.map +1 -1
  69. package/dist/plus/integrations/reads/paging.js +60 -0
  70. package/dist/plus/integrations/reads/paging.js.map +1 -1
  71. package/dist/plus/integrations/reads/searchIssues.d.ts +55 -0
  72. package/dist/plus/integrations/reads/searchIssues.d.ts.map +1 -0
  73. package/dist/plus/integrations/reads/searchIssues.js +144 -0
  74. package/dist/plus/integrations/reads/searchIssues.js.map +1 -0
  75. package/dist/plus/integrations/reads/warnings.d.ts +33 -3
  76. package/dist/plus/integrations/reads/warnings.d.ts.map +1 -1
  77. package/dist/plus/integrations/reads/warnings.js +87 -6
  78. package/dist/plus/integrations/reads/warnings.js.map +1 -1
  79. package/docs/integrations.md +110 -2
  80. package/docs/kepler-read-api-parity.md +57 -0
  81. package/package.json +1 -1
  82. package/src/git/models/issue.ts +81 -0
  83. package/src/plus/git-github/api/config.ts +13 -0
  84. package/src/plus/git-github/api/github.ts +332 -148
  85. package/src/plus/git-github/api/issueSearchQuery.ts +165 -0
  86. package/src/plus/integrations/collectionMetadata.ts +22 -3
  87. package/src/plus/integrations/index.ts +5 -0
  88. package/src/plus/integrations/integrationService.ts +47 -1
  89. package/src/plus/integrations/manager.ts +88 -2
  90. package/src/plus/integrations/models/gitHostIntegration.ts +102 -2
  91. package/src/plus/integrations/models/integration.ts +7 -46
  92. package/src/plus/integrations/models/issueReads.ts +73 -0
  93. package/src/plus/integrations/providerFilters.ts +15 -0
  94. package/src/plus/integrations/providers/github.ts +64 -2
  95. package/src/plus/integrations/providers/models.ts +49 -0
  96. package/src/plus/integrations/reads/broaden.ts +10 -0
  97. package/src/plus/integrations/reads/counts.ts +285 -0
  98. package/src/plus/integrations/reads/filters.ts +162 -1
  99. package/src/plus/integrations/reads/hierarchy.ts +43 -32
  100. package/src/plus/integrations/reads/issues.ts +22 -45
  101. package/src/plus/integrations/reads/paging.ts +102 -0
  102. package/src/plus/integrations/reads/searchIssues.ts +252 -0
  103. package/src/plus/integrations/reads/warnings.ts +129 -11
@@ -46,6 +46,111 @@ export function resolveAccountWideIssueFilters(id, filters) {
46
46
  return { unsupported: true };
47
47
  return { filters: filters, unsupported: false };
48
48
  }
49
+ /**
50
+ * Validates a filtered issue search's criteria against {@link ProviderMetadata.supportedIssueSearch}.
51
+ *
52
+ * All-or-nothing like its three siblings above, and for the same reason: a criterion dropped because the
53
+ * provider can't express it would serve a WIDER result than was asked for, and narrowing the returned page
54
+ * afterward would leave `items` describing a different result set than the `hasMore`/`cursor` the provider
55
+ * produced with it. So an inexpressible set is refused whole and the caller surfaces a warning.
56
+ *
57
+ * Unlike the sibling validators this also rejects a set that is internally contradictory, because this criteria
58
+ * model is the only one with two members that partition the scope between them (`any-assignee` ∪ `unassigned` =
59
+ * everything, ∩ = nothing). Silently keeping one would answer a question the caller didn't ask.
60
+ *
61
+ * `undefined` (or an empty relationship list plus no other criterion) is a valid UNNARROWED search of the given
62
+ * scope, not an error — the caller's `repos`/`org` is what bounds it.
63
+ */
64
+ export function resolveIssueSearchCriteria(id, criteria) {
65
+ const supported = providersMetadata[id]?.supportedIssueSearch;
66
+ if (supported == null)
67
+ return { rejection: { reason: 'unsupported-search' } };
68
+ if (criteria == null)
69
+ return {};
70
+ const relationships = criteria.relationships;
71
+ if (relationships?.includes('any-assignee') && relationships.includes('unassigned')) {
72
+ return { rejection: { reason: 'contradictory-relationships' } };
73
+ }
74
+ const unsupported = [];
75
+ for (const relationship of relationships ?? []) {
76
+ if (!supported.relationships.includes(relationship)) {
77
+ unsupported.push(`relationships:${relationship}`);
78
+ }
79
+ }
80
+ // Only a criterion the caller actually SET can be unsupported. `false`/empty means "don't narrow on this",
81
+ // which every provider can honor by doing nothing, so it must not be validated as a request.
82
+ if (criteria.text != null && criteria.text.trim().length > 0 && !supported.text) {
83
+ unsupported.push('text');
84
+ }
85
+ if (criteria.labels?.length && !supported.labels) {
86
+ unsupported.push('labels');
87
+ }
88
+ if (criteria.milestone != null && !supported.milestone) {
89
+ unsupported.push('milestone');
90
+ }
91
+ if (criteria.updatedAfter != null && !supported.updatedAfter) {
92
+ unsupported.push('updatedAfter');
93
+ }
94
+ if (criteria.createdAfter != null && !supported.createdAfter) {
95
+ unsupported.push('createdAfter');
96
+ }
97
+ if (criteria.withoutLinkedPullRequest === true && !supported.withoutLinkedPullRequest) {
98
+ unsupported.push('withoutLinkedPullRequest');
99
+ }
100
+ // `'open'` is every provider's own default, so asking for it needs no state capability.
101
+ if (criteria.state != null && criteria.state !== 'open' && !supported.states) {
102
+ unsupported.push('state');
103
+ }
104
+ if (unsupported.length > 0)
105
+ return { rejection: { reason: 'unsupported-criteria', criteria: unsupported } };
106
+ return {};
107
+ }
108
+ /**
109
+ * The relationships that bound a filtered issue search to the CURRENT USER, and so can stand in for a
110
+ * repository/org scope.
111
+ *
112
+ * Derived from the union rather than spelled out per call site, because the distinction it encodes is the whole
113
+ * reason the scope rule exists: `any-assignee` and `unassigned` are deliberately absent — they describe the
114
+ * ISSUE, not the caller, so neither reduces the search to anyone's own world (measured: unscoped `no:assignee`
115
+ * matches ~45 million issues on GitHub).
116
+ */
117
+ const userScopingIssueSearchRelationships = ['authored', 'assigned', 'mentioned'];
118
+ /** What a provider with NO filtered issue search reports: nothing expressible, spelled out rather than absent. */
119
+ const unsupportedIssueSearchCapabilities = {
120
+ relationships: [],
121
+ text: false,
122
+ labels: false,
123
+ milestone: false,
124
+ updatedAfter: false,
125
+ createdAfter: false,
126
+ withoutLinkedPullRequest: false,
127
+ states: false,
128
+ };
129
+ /**
130
+ * Validates that a filtered issue search is scoped at all, and narrows `repos` to the descriptor form the
131
+ * provider query needs.
132
+ *
133
+ * Shared by `searchIssuesPage` and `countIssues` because a count computed under different constraints than the
134
+ * read it previews is a WRONG number rather than a missing one. The rejection is returned as a reason code, not a
135
+ * warning: the two callers word it differently (whole-read vs naming the offending scope's key), and wording is
136
+ * the warning layer's business.
137
+ *
138
+ * The two rejections are mutually exclusive — `repo-ids` requires repositories and `unscoped` requires none — so
139
+ * the order they're checked in cannot change the outcome.
140
+ */
141
+ export function resolveIssueSearchScope(repos, org, criteria) {
142
+ if (repos?.length) {
143
+ // `ProviderReposInput` is a union of descriptor and id arrays; only the descriptor form is usable here.
144
+ if (repos.some(r => typeof r === 'string' || typeof r === 'number'))
145
+ return { rejection: 'repo-ids' };
146
+ return { repos: repos };
147
+ }
148
+ if (org != null && org.length > 0)
149
+ return {};
150
+ if (criteria?.relationships?.some(r => userScopingIssueSearchRelationships.includes(r)) === true)
151
+ return {};
152
+ return { rejection: 'unscoped' };
153
+ }
49
154
  /**
50
155
  * The filters `listPullRequestsPage`/`listIssuesPage` (and the sweeps) accept for a provider, so a caller can
51
156
  * narrow to what the provider can express BEFORE issuing the read.
@@ -70,6 +175,11 @@ export function resolveAccountWideIssueFilters(id, filters) {
70
175
  * {@link IntegrationService.listIssueTrackerIssuesPage} validates against, and leaves `issuesAccountWide`
71
176
  * empty. Reading a tracker's capability off `issuesAccountWide` therefore under-reports it.
72
177
  *
178
+ * `issueSearch` is a third, wider surface: the FILTERED issue search (`searchIssuesPage`, and the `countIssues`
179
+ * probe over the same criteria), which is not bound to the user at all. It is a record of per-criterion flags
180
+ * rather than a list, because its criteria aren't a single kind. An empty `relationships` means the provider has
181
+ * no filtered issue search — hide the surface, not just its chips.
182
+ *
73
183
  * Note this is a CAPABILITY table — "what the provider can express" — not a recommendation. A consumer
74
184
  * matching another tool's behavior may deliberately pass fewer filters than are listed here (or none, where an
75
185
  * already-scoped read would only be narrowed by them). Intersecting against this table is what keeps a
@@ -77,11 +187,26 @@ export function resolveAccountWideIssueFilters(id, filters) {
77
187
  */
78
188
  export function getSupportedFilters(providerId) {
79
189
  const metadata = providersMetadata[providerId];
190
+ const issueSearch = metadata?.supportedIssueSearch;
80
191
  return {
81
192
  pullRequests: [...(metadata?.supportedPullRequestFilters ?? [])],
82
193
  pullRequestsAccountWide: [...(metadata?.supportedAccountWidePullRequestFilters ?? [])],
83
194
  issues: [...(metadata?.supportedIssueFilters ?? [])],
84
195
  issuesAccountWide: [...(metadata?.supportedAccountWideIssueFilters ?? [])],
196
+ // Always an object, never `undefined`: a provider WITHOUT a filtered issue search reports one whose
197
+ // `relationships` is empty and whose flags are all false, so a consumer reads capabilities the same way
198
+ // for every provider (and an empty `relationships` is the signal to hide the surface itself).
199
+ //
200
+ // Spread over the all-false baseline rather than defaulting each flag: a criterion added to
201
+ // `IssueSearchCapabilities` then can't be forgotten here and silently reported as `undefined` (which a
202
+ // consumer's `if (caps.x)` would read as unsupported — right answer, wrong reason, and untyped).
203
+ // `supportedIssueSearch` is typed as the complete shape, so no member can arrive as an explicit undefined.
204
+ issueSearch: {
205
+ ...unsupportedIssueSearchCapabilities,
206
+ ...issueSearch,
207
+ // Copied, so mutating the result can't corrupt the metadata table.
208
+ relationships: [...(issueSearch?.relationships ?? [])],
209
+ },
85
210
  };
86
211
  }
87
212
  //# sourceMappingURL=filters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/filters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAoB3D;;;;;;;;;GASG;AACH,MAAM,UAAU,yBAAyB,CACxC,EAAkB,EAClB,OAAwC;IAExC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAE3E,MAAM,SAAS,GAAG,iBAAiB,CAAC,EAAE,CAAC,EAAE,2BAA2B,CAAC;IACrE,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAEjG,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AACjD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oCAAoC,CACnD,EAAkB,EAClB,OAAwC;IAExC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAE3E,MAAM,SAAS,GAAG,iBAAiB,CAAC,EAAE,CAAC,EAAE,sCAAsC,CAAC;IAChF,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAEjG,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AAC/D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,8BAA8B,CAC7C,EAAkB,EAClB,OAAkC;IAElC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAE3E,MAAM,SAAS,GAAG,iBAAiB,CAAC,EAAE,CAAC,EAAE,gCAAgC,CAAC;IAC1E,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAEjG,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAA0B;IAM7D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC/C,OAAO;QACN,YAAY,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,2BAA2B,IAAI,EAAE,CAAC,CAAC;QAChE,uBAAuB,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,sCAAsC,IAAI,EAAE,CAAC,CAAC;QACtF,MAAM,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC;QACpD,iBAAiB,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,gCAAgC,IAAI,EAAE,CAAC,CAAC;KAC1E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/filters.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hierarchy.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/hierarchy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAQtD,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAG1E,OAAO,KAAK,EACX,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EAEd,MAAM,eAAe,CAAC;AAOvB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAaxD,wBAAsB,QAAQ,CAC7B,GAAG,EAAE,mBAAmB,EACxB,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,CA8F/C;AAED,wBAAsB,YAAY,CACjC,GAAG,EAAE,mBAAmB,EACxB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,CA8H/C;AAED,wBAAsB,SAAS,CAC9B,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE;IACR,UAAU,EAAE,cAAc,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,GACC,OAAO,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,CAAC,CA+LvD"}
1
+ {"version":3,"file":"hierarchy.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/hierarchy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAQtD,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAI1E,OAAO,KAAK,EACX,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EAEd,MAAM,eAAe,CAAC;AAOvB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAoDxD,wBAAsB,QAAQ,CAC7B,GAAG,EAAE,mBAAmB,EACxB,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,CAgF/C;AAED,wBAAsB,YAAY,CACjC,GAAG,EAAE,mBAAmB,EACxB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,CA+G/C;AAED,wBAAsB,SAAS,CAC9B,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE;IACR,UAAU,EAAE,cAAc,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,GACC,OAAO,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,CAAC,CA+LvD"}
@@ -8,7 +8,38 @@ import { isGitHostIntegration, isIssuesHostIntegrationId, warnOnMissingSessionFo
8
8
  import { runCaptured } from './drains.js';
9
9
  import { assertHierarchyReadTarget, mergeHierarchyResults, orgForProject, resourceMatchesOrg, resourceToOrg, withProviderContext, } from './hierarchy.utils.js';
10
10
  import { pageToCursor, refusedPage, resolveContinuation, resolveCurrentPage, toProviderPageInfo } from './paging.js';
11
- import { gitHostOnlySurfaceWarning, otherWarning } from './warnings.js';
11
+ import { gitHostOnlySurfaceWarning, otherWarning, truncationWarning } from './warnings.js';
12
+ /**
13
+ * Folds a flat hierarchy result's incompleteness into `warnings`, returning whether it leaves the read
14
+ * non-authoritative. The single funnel for both hierarchy reads, so neither can drift from the other on any of
15
+ * the four decisions it makes:
16
+ *
17
+ * - The metadata is assessed FIRST, so the truncation warning can tell whether it already explained this gap.
18
+ * Ordered deliberately: emitting first meant an expired credential produced BOTH a typed `auth` warning and
19
+ * an unclassifiable one for the same cause, and a consumer routing on classification showed the second as
20
+ * "this provider failed to load", with a remedy that doesn't exist, next to the reconnect prompt that was the
21
+ * actual fix.
22
+ * - The read states the truncation itself only when the metadata reported nothing — the rule
23
+ * `assessCollectionMetadata` applies to its own generic fallback. Whatever the metadata reported already names
24
+ * this provider and says something stronger, so restating it costs a false verdict and adds no information.
25
+ * - `'exhausted'`, never `'page-budget'`: `truncated` is one boolean here, so a drain that stopped at its page
26
+ * budget is indistinguishable from one whose cursor stalled, and `IncompleteReadCause` makes `'exhausted'`
27
+ * the default whenever a raisable budget is not demonstrably the cause.
28
+ * - A truncation counts as non-authoritative even though the omission above asserts the read succeeded. Unlike
29
+ * paged repository reads, a flattened hierarchy result has no page object on which to carry incompleteness,
30
+ * so `fetchFailed` is the only signal a consumer has that the list is short.
31
+ */
32
+ function mergeHierarchyIncompleteness(warnings, id, domain, connectionId, result, readKind) {
33
+ const assessment = mergeAssessmentInto(warnings, id, domain, connectionId, result.metadata);
34
+ if (!result.truncated)
35
+ return assessment.fetchFailed || assessment.truncated;
36
+ if (!assessment.reported) {
37
+ // Deduped like every other `truncationWarning` emission (see `drains.ts`), not plain-pushed: no caller can
38
+ // collide with it today, but nothing about this funnel guarantees a third read won't.
39
+ appendDedupedWarning(warnings, truncationWarning(id, domain, connectionId, readKind, 'exhausted'));
40
+ }
41
+ return true;
42
+ }
12
43
  export async function listOrgs(ctx, options) {
13
44
  assertHierarchyReadTarget('listOrgs', options);
14
45
  const ids = options?.providerId != null ? [options.providerId] : supportedOrderedCloudIntegrationIds;
@@ -58,14 +89,7 @@ export async function listOrgs(ctx, options) {
58
89
  const { value, warning } = await runCaptured(id, domain, connectionId, () => integration.getOrganizationsForUserResult(connectionId), { warnOnMissingSession: warnOnMissingSession });
59
90
  if (value != null) {
60
91
  items.push(...value.values.map(org => withProviderContext(id, org)));
61
- if (value.truncated) {
62
- warnings.push(otherWarning(id, domain, connectionId, 'Organization listing was truncated before the upstream results were exhausted.'));
63
- // `ProviderResult` has no page object on which to carry truncation. Mark the flat
64
- // hierarchy result incomplete so consumers don't treat omitted orgs as authoritative.
65
- fetchFailed = true;
66
- }
67
- const assessment = mergeAssessmentInto(warnings, id, domain, connectionId, value.metadata);
68
- if (assessment.fetchFailed || assessment.truncated) {
92
+ if (mergeHierarchyIncompleteness(warnings, id, domain, connectionId, value, 'Organization')) {
69
93
  fetchFailed = true;
70
94
  }
71
95
  }
@@ -129,14 +153,7 @@ export async function listProjects(ctx, options) {
129
153
  }
130
154
  if (projects != null) {
131
155
  items.push(...projects.values.map(project => withProviderContext(id, project)));
132
- if (projects.truncated) {
133
- warnings.push(otherWarning(id, domain, connectionId, 'Project listing was truncated before the upstream results were exhausted.'));
134
- // Unlike paged repository reads, this flattened hierarchy result has no continuation
135
- // or page metadata. `fetchFailed` is its structural non-authoritative signal.
136
- fetchFailed = true;
137
- }
138
- const assessment = mergeAssessmentInto(warnings, id, domain, connectionId, projects.metadata);
139
- if (assessment.fetchFailed || assessment.truncated) {
156
+ if (mergeHierarchyIncompleteness(warnings, id, domain, connectionId, projects, 'Project')) {
140
157
  fetchFailed = true;
141
158
  }
142
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hierarchy.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/hierarchy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hierarchy.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/hierarchy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/issues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG9E,OAAO,KAAK,EAAE,mBAAmB,EAAmB,MAAM,eAAe,CAAC;AAO1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAqBxD,wBAAsB,cAAc,CACnC,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE;IACR,UAAU,EAAE,cAAc,CAAC;IAC3B,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,sGAAsG;IACtG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kGAAkG;IAClG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,2FAA2F;IAC3F,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,GACC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAwW1C"}
1
+ {"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/issues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG9E,OAAO,KAAK,EAAE,mBAAmB,EAAmB,MAAM,eAAe,CAAC;AAO1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAsBxD,wBAAsB,cAAc,CACnC,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE;IACR,UAAU,EAAE,cAAc,CAAC;IAC3B,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,sGAAsG;IACtG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kGAAkG;IAClG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,2FAA2F;IAC3F,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,GACC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAgV1C"}
@@ -2,11 +2,11 @@ import { mergeAssessmentInto } from '../collectionMetadata.js';
2
2
  import { GitCloudHostIntegrationId, GitSelfManagedHostIntegrationId } from '../constants.js';
3
3
  import { PagingMode, providersMetadata } from '../providers/models.js';
4
4
  import { mergeCollectionMetadata } from '../providers/utils/providerPaging.js';
5
- import { appendDedupedWarning, reconcileOmissionsWithFailure } from '../results.js';
5
+ import { reconcileOmissionsWithFailure } from '../results.js';
6
6
  import { isGitHostIntegration, isIssuesHostIntegrationId, warnOnMissingSessionForDomain, } from '../utils/integration.utils.js';
7
7
  import { runCaptured } from './drains.js';
8
8
  import { resolveAccountWideIssueFilters } from './filters.js';
9
- import { drainToRequestedPage, isPageNumberAdvanceable, pageToCursor, refusedPage, resolveContinuation, resolveCurrentPage, toProviderPageInfo, usableCursor, } from './paging.js';
9
+ import { drainFlatPagesToRequestedPage, drainToRequestedPage, isPageNumberAdvanceable, pageToCursor, refusedPage, resolveContinuation, resolveCurrentPage, toProviderPageInfo, usableCursor, } from './paging.js';
10
10
  import { gitHostOnlySurfaceWarning, issuesUnsupportedWarning, otherWarning, truncationWarning, unsupportedAccountWideIssueFiltersWarning, } from './warnings.js';
11
11
  export async function listIssuesPage(ctx, options) {
12
12
  const page = Math.max(1, options.page ?? 1);
@@ -43,6 +43,11 @@ export async function listIssuesPage(ctx, options) {
43
43
  if (options.filters?.length && options.includeAllAssignees === true) {
44
44
  return refused(otherWarning(options.providerId, domain, options.connectionId, '`filters` and `includeAllAssignees` are contradictory for an account-wide issue read; pass only one.'));
45
45
  }
46
+ // GitHub expresses "any assignee" as `assignee:*`, which is meaningless without a scope: unscoped it
47
+ // matches millions of issues across all of GitHub instead of the user's own world. ANY scope makes it
48
+ // meaningful (one repository, several, or an org) — it is specifically THIS branch, the account-wide read,
49
+ // that has none to offer. Scope the read to repositories (or use `searchIssuesPage`, whose criteria model
50
+ // takes `any-assignee` alongside a `repos`/`org` scope) rather than reading unscoped.
46
51
  if (options.includeAllAssignees === true &&
47
52
  (options.providerId === GitCloudHostIntegrationId.GitHub ||
48
53
  options.providerId === GitSelfManagedHostIntegrationId.CloudGitHubEnterprise)) {
@@ -73,46 +78,22 @@ export async function listIssuesPage(ctx, options) {
73
78
  project: options.project,
74
79
  }), { warnOnMissingSession: warnOnMissingSession });
75
80
  const first = await readAccountWidePage(options.cursor);
76
- let value = first.value;
77
81
  const warnings = first.warning != null ? [first.warning] : [];
78
- let allMetadata = value?.metadata;
79
- let pageFetchFailed = first.warning != null && value == null;
80
- let currentPage = value?.page ?? 1;
81
- let currentTruncated = value?.truncated ?? false;
82
- let requestedPageMissing = false;
83
- if (options.cursor == null && page > 1 && value != null) {
84
- // Guard against the empty-cursor sentinel: a provider that claims another page without handing
85
- // back a usable cursor would otherwise be re-read with `'{}'` and answer with page 1 again.
86
- for (let nextCursor = usableCursor(value.cursor); currentPage < page && value.hasMore && nextCursor != null; nextCursor = usableCursor(value.cursor)) {
87
- const next = await readAccountWidePage(nextCursor);
88
- if (next.warning != null) {
89
- appendDedupedWarning(warnings, next.warning);
90
- }
91
- if (next.value == null) {
92
- pageFetchFailed = pageFetchFailed || next.warning != null;
93
- value = undefined;
94
- requestedPageMissing = true;
95
- break;
96
- }
97
- value = next.value;
98
- allMetadata = mergeCollectionMetadata(allMetadata, value.metadata);
99
- currentTruncated = currentTruncated || value.truncated;
100
- currentPage = value.page ?? currentPage + 1;
101
- // A provider that hands back the same cursor isn't advancing; stop rather than loop forever.
102
- if (usableCursor(value.cursor) === nextCursor) {
103
- currentTruncated = true;
104
- break;
105
- }
106
- }
107
- // A numbered page beyond the provider's terminal cursor is genuinely empty. Never return or
108
- // relabel the last available page as the requested one.
109
- if (currentPage < page) {
110
- requestedPageMissing = true;
111
- }
112
- }
113
- else if (options.cursor == null && page > 1) {
114
- requestedPageMissing = true;
115
- }
82
+ // Merged across the walked pages, so a per-scope failure reported on an earlier page isn't lost by
83
+ // paging past it the one thing this read accumulates that the filtered search doesn't.
84
+ let allMetadata = first.value?.metadata;
85
+ const drained = await drainFlatPagesToRequestedPage(first, {
86
+ requestedPage: page,
87
+ suppliedCursor: options.cursor,
88
+ warnings: warnings,
89
+ readPage: readAccountWidePage,
90
+ fold: p => {
91
+ allMetadata = mergeCollectionMetadata(allMetadata, p.metadata);
92
+ },
93
+ });
94
+ const { value, currentPage, requestedPageMissing } = drained;
95
+ const currentTruncated = drained.truncated;
96
+ const pageFetchFailed = drained.fetchFailed;
116
97
  // GitHub, GitLab, and Azure implement an account-wide issue search; a provider that doesn't (Bitbucket
117
98
  // exposes no issues at all, and `supportsIssues` already short-circuits it above) returns `undefined`
118
99
  // with no error. Surface that as an explicit unsupported warning + fetchFailed rather than a silent
@@ -1 +1 @@
1
- {"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/issues.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/issues.ts"],"names":[],"mappings":"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"}
@@ -103,6 +103,65 @@ export declare function resolveCurrentPage(options: {
103
103
  suppliedCursor: string | undefined;
104
104
  pageAdvanceable: boolean;
105
105
  }): number;
106
+ /**
107
+ * One page of a FLAT cursor-paged provider read — the shape both issue reads' providers return directly.
108
+ *
109
+ * `hasMore` is optional because one of the two providers leaves it off on a terminal page; absent reads as "no
110
+ * more", which is what a provider that reported no continuation means.
111
+ */
112
+ export interface FlatPage {
113
+ cursor?: string;
114
+ hasMore?: boolean;
115
+ page?: number;
116
+ truncated: boolean;
117
+ }
118
+ /** What {@link drainFlatPagesToRequestedPage} established by walking. */
119
+ export interface FlatDrainResult<T extends FlatPage> {
120
+ /** The requested page, or `undefined` when a page failed mid-walk (which also sets `fetchFailed`). */
121
+ value: T | undefined;
122
+ /** The position actually reached — 1 when nothing advanced. */
123
+ currentPage: number;
124
+ truncated: boolean;
125
+ /** True when the requested page is past the provider's last one, so it is genuinely EMPTY. */
126
+ requestedPageMissing: boolean;
127
+ fetchFailed: boolean;
128
+ }
129
+ /**
130
+ * Walks a FLAT cursor-paged read forward to a requested page number, for a provider whose pages are
131
+ * `{cursor, hasMore, page, truncated}` rather than the SDK's `PagedResult` wrapper.
132
+ *
133
+ * The sibling of {@link drainToRequestedPage}, not a replacement for it: that one normalizes SDK `paging` through
134
+ * {@link toProviderPageInfo}, which retains only cursors whose JSON declares `type`/`cursors` — and the composite
135
+ * cursor of a GitHub aliased search declares neither, so it would be dropped and the walk would never advance.
136
+ * Two shapes genuinely need two entry points; what they must NOT have is two copies of the rules below, which is
137
+ * what this exists to prevent (see this module's own note on drift).
138
+ *
139
+ * The rules, all of them subtle enough to be worth stating once:
140
+ * - The empty-cursor sentinel is filtered, so a provider claiming another page without handing back a usable
141
+ * continuation is not re-read with `'{}'` (which it would answer with page 1 again).
142
+ * - A provider that returns the SAME cursor isn't advancing: stop, and report the read as truncated rather than
143
+ * looping forever or publishing a short page as complete.
144
+ * - A page requested past the provider's terminal cursor is that EMPTY page N — never the last available page
145
+ * relabeled, per {@link ProviderPageInfo.currentPage}.
146
+ * - A page that fails mid-walk latches `fetchFailed` and leaves no value, so the caller can tell "the read broke"
147
+ * from "the page was genuinely empty".
148
+ *
149
+ * `fold` is the one thing the callers differ on — one merges SDK collection metadata across the walked pages, the
150
+ * other keeps the largest reported match count — so it is a callback rather than a branch.
151
+ */
152
+ export declare function drainFlatPagesToRequestedPage<T extends FlatPage>(first: {
153
+ value?: T;
154
+ warning?: ProviderWarning;
155
+ }, options: {
156
+ requestedPage: number;
157
+ suppliedCursor: string | undefined;
158
+ warnings: ProviderWarning[];
159
+ readPage: (cursor: string) => Promise<{
160
+ value?: T;
161
+ warning?: ProviderWarning;
162
+ }>;
163
+ fold?: (page: T) => void;
164
+ }): Promise<FlatDrainResult<T>>;
106
165
  /** The mutable state {@link drainToRequestedPage} carries across the pages it walks. */
107
166
  export interface DrainState<T> {
108
167
  items: T[];
@@ -1 +1 @@
1
- {"version":3,"file":"paging.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/paging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paging.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/paging.ts"],"names":[],"mappings":"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"}
@@ -148,6 +148,66 @@ export function resolveCurrentPage(options) {
148
148
  return parsePageCursor(options.suppliedCursor) ?? options.requestedPage;
149
149
  return options.pageAdvanceable ? options.requestedPage : 1;
150
150
  }
151
+ /**
152
+ * Walks a FLAT cursor-paged read forward to a requested page number, for a provider whose pages are
153
+ * `{cursor, hasMore, page, truncated}` rather than the SDK's `PagedResult` wrapper.
154
+ *
155
+ * The sibling of {@link drainToRequestedPage}, not a replacement for it: that one normalizes SDK `paging` through
156
+ * {@link toProviderPageInfo}, which retains only cursors whose JSON declares `type`/`cursors` — and the composite
157
+ * cursor of a GitHub aliased search declares neither, so it would be dropped and the walk would never advance.
158
+ * Two shapes genuinely need two entry points; what they must NOT have is two copies of the rules below, which is
159
+ * what this exists to prevent (see this module's own note on drift).
160
+ *
161
+ * The rules, all of them subtle enough to be worth stating once:
162
+ * - The empty-cursor sentinel is filtered, so a provider claiming another page without handing back a usable
163
+ * continuation is not re-read with `'{}'` (which it would answer with page 1 again).
164
+ * - A provider that returns the SAME cursor isn't advancing: stop, and report the read as truncated rather than
165
+ * looping forever or publishing a short page as complete.
166
+ * - A page requested past the provider's terminal cursor is that EMPTY page N — never the last available page
167
+ * relabeled, per {@link ProviderPageInfo.currentPage}.
168
+ * - A page that fails mid-walk latches `fetchFailed` and leaves no value, so the caller can tell "the read broke"
169
+ * from "the page was genuinely empty".
170
+ *
171
+ * `fold` is the one thing the callers differ on — one merges SDK collection metadata across the walked pages, the
172
+ * other keeps the largest reported match count — so it is a callback rather than a branch.
173
+ */
174
+ export async function drainFlatPagesToRequestedPage(first, options) {
175
+ let value = first.value;
176
+ let fetchFailed = first.warning != null && value == null;
177
+ let currentPage = value?.page ?? 1;
178
+ let truncated = value?.truncated ?? false;
179
+ const walkable = options.suppliedCursor == null && options.requestedPage > 1;
180
+ if (walkable && value != null) {
181
+ for (let nextCursor = usableCursor(value.cursor); currentPage < options.requestedPage && value.hasMore === true && nextCursor != null; nextCursor = usableCursor(value.cursor)) {
182
+ const next = await options.readPage(nextCursor);
183
+ if (next.warning != null) {
184
+ appendDedupedWarning(options.warnings, next.warning);
185
+ }
186
+ if (next.value == null) {
187
+ fetchFailed = next.warning != null;
188
+ value = undefined;
189
+ break;
190
+ }
191
+ value = next.value;
192
+ truncated = truncated || value.truncated;
193
+ options.fold?.(value);
194
+ currentPage = value.page ?? currentPage + 1;
195
+ if (usableCursor(value.cursor) === nextCursor) {
196
+ truncated = true;
197
+ break;
198
+ }
199
+ }
200
+ }
201
+ return {
202
+ value: value,
203
+ currentPage: currentPage,
204
+ truncated: truncated,
205
+ // Every case reduces to "a page was asked for by number and the walk fell short", including the one where
206
+ // no walk ran at all because the first page was already terminal.
207
+ requestedPageMissing: walkable && currentPage < options.requestedPage,
208
+ fetchFailed: fetchFailed,
209
+ };
210
+ }
151
211
  /**
152
212
  * Advances a cursor-only read to the requested page when the caller supplied only `page`.
153
213
  *