@kud/gh 0.15.0 → 0.17.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/dist/inbox.d.ts +13 -10
- package/dist/inbox.d.ts.map +1 -1
- package/dist/inbox.js +119 -19
- package/dist/inbox.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/repo.d.ts +16 -0
- package/dist/repo.d.ts.map +1 -0
- package/dist/repo.js +54 -0
- package/dist/repo.js.map +1 -0
- package/package.json +1 -1
package/dist/inbox.d.ts
CHANGED
|
@@ -6,19 +6,22 @@
|
|
|
6
6
|
* title, url, draft, timestamp, repo.
|
|
7
7
|
*
|
|
8
8
|
* This is a cost axis, not a taste one. Measured against GitHub's own
|
|
9
|
-
* `rateLimit { cost }
|
|
10
|
-
* budget, at a nodeCount of
|
|
11
|
-
* appears in five PR fragments
|
|
12
|
-
* beneath each one. A caller that renders a
|
|
13
|
-
* every check run on every open PR.
|
|
9
|
+
* `rateLimit { cost }` while the review-thread window was still `first: 50`:
|
|
10
|
+
* the full query cost **73 points** of a 5000/hour budget, at a nodeCount of
|
|
11
|
+
* ~16,870 — because `statusCheckRollup.contexts` appears in five PR fragments
|
|
12
|
+
* and `reviewThreads` multiplies beneath each one. A caller that renders a
|
|
13
|
+
* title and a link was paying for every check run on every open PR. That
|
|
14
|
+
* window is `last: 20` now and the same document measures 54 points, but the
|
|
15
|
+
* axis is unchanged: the multiplication is what `minimal` exists to drop.
|
|
14
16
|
*/
|
|
15
17
|
/**
|
|
16
18
|
* How many of your own open PRs to ask for.
|
|
17
19
|
*
|
|
18
20
|
* This is the single biggest lever on the query's cost, because connections
|
|
19
|
-
* MULTIPLY: the health and conversation fragments hang ~
|
|
20
|
-
* (`reviewThreads(
|
|
21
|
-
* `labels(first: 10)`), so the outer
|
|
21
|
+
* MULTIPLY: the health and conversation fragments hang ~60 nodes off each PR
|
|
22
|
+
* (`reviewThreads(last: 20)` at two nodes a thread,
|
|
23
|
+
* `statusCheckRollup.contexts(first: 20)`, `labels(first: 10)`), so the outer
|
|
24
|
+
* number is a multiplier on all of them.
|
|
22
25
|
* GitHub scores a call by the nodes it could return, not by how many calls you
|
|
23
26
|
* make — which is why splitting the query across requests costs the same, and
|
|
24
27
|
* this saves a lot.
|
|
@@ -52,8 +55,8 @@ export declare const MY_PRS_LIMIT = 30;
|
|
|
52
55
|
* THE NUMBERS ARE NOT ONE NUMBER, because a row is not one weight. 30 was set
|
|
53
56
|
* for PULL REQUESTS and the issue sources inherited it, which is how a cap sized
|
|
54
57
|
* against `reviewThreads(first: 50)` came to govern a row carrying
|
|
55
|
-
* `comments(last: 1)` and ten labels. A PR drags roughly
|
|
56
|
-
* issue drags about 12.
|
|
58
|
+
* `comments(last: 1)` and ten labels. A PR drags roughly 60 nested nodes — it
|
|
59
|
+
* was 80 while the thread window was `first: 50`; an issue drags about 12.
|
|
57
60
|
*
|
|
58
61
|
* Measured 2026-09-07, same account, same selections that actually ship:
|
|
59
62
|
*
|
package/dist/inbox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbox.d.ts","sourceRoot":"","sources":["../src/inbox.ts"],"names":[],"mappings":"AAQA
|
|
1
|
+
{"version":3,"file":"inbox.d.ts","sourceRoot":"","sources":["../src/inbox.ts"],"names":[],"mappings":"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"}
|
package/dist/inbox.js
CHANGED
|
@@ -13,19 +13,22 @@
|
|
|
13
13
|
* title, url, draft, timestamp, repo.
|
|
14
14
|
*
|
|
15
15
|
* This is a cost axis, not a taste one. Measured against GitHub's own
|
|
16
|
-
* `rateLimit { cost }
|
|
17
|
-
* budget, at a nodeCount of
|
|
18
|
-
* appears in five PR fragments
|
|
19
|
-
* beneath each one. A caller that renders a
|
|
20
|
-
* every check run on every open PR.
|
|
16
|
+
* `rateLimit { cost }` while the review-thread window was still `first: 50`:
|
|
17
|
+
* the full query cost **73 points** of a 5000/hour budget, at a nodeCount of
|
|
18
|
+
* ~16,870 — because `statusCheckRollup.contexts` appears in five PR fragments
|
|
19
|
+
* and `reviewThreads` multiplies beneath each one. A caller that renders a
|
|
20
|
+
* title and a link was paying for every check run on every open PR. That
|
|
21
|
+
* window is `last: 20` now and the same document measures 54 points, but the
|
|
22
|
+
* axis is unchanged: the multiplication is what `minimal` exists to drop.
|
|
21
23
|
*/
|
|
22
24
|
/**
|
|
23
25
|
* How many of your own open PRs to ask for.
|
|
24
26
|
*
|
|
25
27
|
* This is the single biggest lever on the query's cost, because connections
|
|
26
|
-
* MULTIPLY: the health and conversation fragments hang ~
|
|
27
|
-
* (`reviewThreads(
|
|
28
|
-
* `labels(first: 10)`), so the outer
|
|
28
|
+
* MULTIPLY: the health and conversation fragments hang ~60 nodes off each PR
|
|
29
|
+
* (`reviewThreads(last: 20)` at two nodes a thread,
|
|
30
|
+
* `statusCheckRollup.contexts(first: 20)`, `labels(first: 10)`), so the outer
|
|
31
|
+
* number is a multiplier on all of them.
|
|
29
32
|
* GitHub scores a call by the nodes it could return, not by how many calls you
|
|
30
33
|
* make — which is why splitting the query across requests costs the same, and
|
|
31
34
|
* this saves a lot.
|
|
@@ -59,8 +62,8 @@ export const MY_PRS_LIMIT = 30;
|
|
|
59
62
|
* THE NUMBERS ARE NOT ONE NUMBER, because a row is not one weight. 30 was set
|
|
60
63
|
* for PULL REQUESTS and the issue sources inherited it, which is how a cap sized
|
|
61
64
|
* against `reviewThreads(first: 50)` came to govern a row carrying
|
|
62
|
-
* `comments(last: 1)` and ten labels. A PR drags roughly
|
|
63
|
-
* issue drags about 12.
|
|
65
|
+
* `comments(last: 1)` and ten labels. A PR drags roughly 60 nested nodes — it
|
|
66
|
+
* was 80 while the thread window was `first: 50`; an issue drags about 12.
|
|
64
67
|
*
|
|
65
68
|
* Measured 2026-09-07, same account, same selections that actually ship:
|
|
66
69
|
*
|
|
@@ -149,6 +152,27 @@ const PR_HEALTH = `
|
|
|
149
152
|
... on CheckRun { name conclusion status }
|
|
150
153
|
... on StatusContext { context state }
|
|
151
154
|
} } }`;
|
|
155
|
+
// How big the diff is, on every OPEN PR row, so a list can say `+18 -4`
|
|
156
|
+
// beside a title and the reader can decide whether to open it at all.
|
|
157
|
+
//
|
|
158
|
+
// In the base identity list and NOT in PR_HEALTH, for the same reason
|
|
159
|
+
// `isDraft` is not: the health set is all-or-nothing, and `lacksHealth` /
|
|
160
|
+
// `carriesHealth` reason about it as one unit. Three scalars that have nothing
|
|
161
|
+
// to do with a verdict do not belong inside the guard that stops a confident
|
|
162
|
+
// wrong one. It also means the two-tier fetch delivers size on the `minimal`
|
|
163
|
+
// overflow rows — the review queue past the first page, where "is this 900
|
|
164
|
+
// lines" matters most — without waiting for tier three to enrich them.
|
|
165
|
+
//
|
|
166
|
+
// Unconditional, whatever the `shape`, because it costs nothing to carry.
|
|
167
|
+
// Measured 2026-09-11 on `reviewRequests` at `first: 20` with the full health
|
|
168
|
+
// and conversation fragments: cost 11, nodeCount 2440, with and without these
|
|
169
|
+
// three fields. Scalars on a node already fetched are not nodes — the same
|
|
170
|
+
// arithmetic the `issueCount` note above rests on.
|
|
171
|
+
//
|
|
172
|
+
// Absent from `recentlyDone` on purpose: a merged row never asks "should I
|
|
173
|
+
// open this".
|
|
174
|
+
const PR_SIZE = `
|
|
175
|
+
additions deletions changedFiles`;
|
|
152
176
|
// Whose turn it is cannot be read off a count, so every comment-bearing edge
|
|
153
177
|
// carries its latest author and timestamp: the conversation, the review bodies,
|
|
154
178
|
// and each thread's last reply. The last commit rides along so a consumer can
|
|
@@ -173,13 +197,82 @@ const PR_HEALTH = `
|
|
|
173
197
|
// differently and have to be. On the last comment it can only speak for that
|
|
174
198
|
// comment, so a newer one undoes it; on the PR it speaks for the PR, where no
|
|
175
199
|
// later comment should quietly erase it. Thread comments get neither:
|
|
176
|
-
// `reviewThreads` is
|
|
177
|
-
// is exactly the multiplication the budget note above exists to
|
|
200
|
+
// `reviewThreads` is a window on every PR source at once, and eight more fields
|
|
201
|
+
// ten times over is exactly the multiplication the budget note above exists to
|
|
202
|
+
// prevent.
|
|
203
|
+
//
|
|
204
|
+
// THE WINDOW IS THE DOMINANT COST ON EVERY PR-BEARING SOURCE, because it
|
|
205
|
+
// multiplies beneath five searches at once. It was `first: 50` because fifty is
|
|
206
|
+
// a round number, and nothing measured what a PR actually carries. Measured
|
|
207
|
+
// 2026-09-09 on a live account, the whole inbox query, same selections that
|
|
208
|
+
// ship:
|
|
209
|
+
//
|
|
210
|
+
// reviewThreads(first: 50) cost 114 27,230 nodes
|
|
211
|
+
// reviewThreads(first: 20) cost 54 15,230 nodes
|
|
212
|
+
// reviewThreads(first: 10) cost 34 11,230 nodes
|
|
213
|
+
//
|
|
214
|
+
// Against 5,000 points an hour that is 44 loads versus 147. And the data never
|
|
215
|
+
// justified fifty: across 13 PR rows on that account the deepest carried TWO
|
|
216
|
+
// threads and the median carried none — nothing above ten, on either PR source.
|
|
217
|
+
//
|
|
218
|
+
// The anchor is free. Measured 2026-09-15 on `myPRs` with the shipping
|
|
219
|
+
// selection, `first: 20` and `last: 20` both cost 8 points at 1,950 nodes — the
|
|
220
|
+
// window is the same size whichever end it is taken from, so nothing about the
|
|
221
|
+
// fix below needs the narrowing to pay for it.
|
|
222
|
+
//
|
|
223
|
+
// `totalCount` is what makes narrowing safe rather than merely cheap. A window
|
|
224
|
+
// smaller than the world is the same trap `sourceCoverage` exists for one level
|
|
225
|
+
// up, and the scalar costs nothing: a consumer comparing it against
|
|
226
|
+
// `nodes.length` knows whether it is holding the threads or a sample of them,
|
|
227
|
+
// instead of counting what came back and calling that the total. Note the
|
|
228
|
+
// coverage it buys is on the COUNT — `isResolved` beyond the window is still
|
|
229
|
+
// unseen, so a PR carrying twenty-one threads can still under-report unresolved
|
|
230
|
+
// ones to `computeHealth`. `totalCount` counts resolved and unresolved alike and
|
|
231
|
+
// GitHub offers no `isResolved` argument, so `unresolvedThreads` is permanently
|
|
232
|
+
// a sample; the honest stopping point is a window plus an honest sample size,
|
|
233
|
+
// never an "N unresolved" claim built on a windowed count.
|
|
234
|
+
//
|
|
235
|
+
// `last`, NOT `first`, AND THIS IS A BUG FIX RATHER THAN A PREFERENCE. A Relay
|
|
236
|
+
// connection's `first` returns the OLDEST N. Verified on `kud/ambre#69`, which
|
|
237
|
+
// carried 67 review threads and was open for 11 days (2025-08-12 → merged
|
|
238
|
+
// 2025-08-23): `reviewThreads(first: 3)` returns threads first commented on at
|
|
239
|
+
// 2025-08-12T23:44, while `last: 3` returns 2025-08-20 and 2025-08-23. So all
|
|
240
|
+
// the time that PR sat in the inbox, a `first: 50` window handed the mapper the
|
|
241
|
+
// oldest 50 and dropped the newest 17 — and its `last: 10` window alone carries
|
|
242
|
+
// 8 unresolved threads.
|
|
243
|
+
//
|
|
244
|
+
// Both readers in `@kud/gh-workflow`'s `map.ts` were wrong, in different
|
|
245
|
+
// directions and both unsafe:
|
|
246
|
+
//
|
|
247
|
+
// • `conversationOf` builds `lastEventAt` as a max over thread comment times,
|
|
248
|
+
// so the whose-move CLOCK read stale by days on exactly the PRs with live
|
|
249
|
+
// discussion.
|
|
250
|
+
// • `computeHealth` tests `unresolvedThreads > 0`. Threads get RESOLVED over
|
|
251
|
+
// time, so anchoring at `first` systematically samples the end of a PR most
|
|
252
|
+
// likely to be already resolved — the token fell through to `waiting` or
|
|
253
|
+
// `approved` and the row read CLEAR while a reviewer was waiting. A false
|
|
254
|
+
// `threads` costs a glance; a false clear costs a missed review.
|
|
255
|
+
//
|
|
256
|
+
// `last` biases both the other way, which is the right way, and costs exactly
|
|
257
|
+
// what `first` costs at the same N.
|
|
258
|
+
//
|
|
259
|
+
// TWENTY, NOT TEN, and the measured distribution does not decide this — at the
|
|
260
|
+
// deepest-carried TWO threads above, 10 and 20 are both complete for every row
|
|
261
|
+
// in the inbox, so the choice is not paid for by that table. What pays for it is
|
|
262
|
+
// ambre#69: 67 threads is the only evidence anyone holds of what a BUSY PR looks
|
|
263
|
+
// like, and a quiet week is not a ceiling. The margin is spent on the two
|
|
264
|
+
// readers that are not the health token — `conversationOf` sums
|
|
265
|
+
// `comments.totalCount` across the window, and `detailOf` reports numbers a
|
|
266
|
+
// human reads. 50→20 removes 1,800 nodes; 20→10 removes another 600, so the win
|
|
267
|
+
// is banked at 20 and the last step buys three points for the only headroom
|
|
268
|
+
// there is against the next PR that gets busy. The budget note above already
|
|
269
|
+
// made this argument for the row caps: against 5,000 points an hour with a
|
|
270
|
+
// 10-minute cache, what actually fails is wall clock at the proxy, not cost.
|
|
178
271
|
const PR_CONVERSATION = `
|
|
179
272
|
reactionGroups { content viewerHasReacted }
|
|
180
273
|
comments(last: 1) { totalCount nodes { author { __typename login } createdAt reactionGroups { content viewerHasReacted } } }
|
|
181
274
|
reviews(last: 1) { nodes { author { __typename login } state submittedAt } }
|
|
182
|
-
reviewThreads(
|
|
275
|
+
reviewThreads(last: 20) { totalCount nodes {
|
|
183
276
|
isResolved
|
|
184
277
|
comments(last: 1) { totalCount nodes { author { __typename login } createdAt } }
|
|
185
278
|
} }
|
|
@@ -204,37 +297,40 @@ const sinceDay = (days) => new Date(Date.now() - days * 86400 * 1000).toISOStrin
|
|
|
204
297
|
* appears in the document.
|
|
205
298
|
*/
|
|
206
299
|
const SOURCES = {
|
|
207
|
-
myPRs: ({ scope, health, conversation }, first) => ` myPRs: search(query: "${scope}is:pr is:open author:@me", type: ISSUE, first: ${first}) {
|
|
300
|
+
myPRs: ({ scope, health, size, conversation }, first) => ` myPRs: search(query: "${scope}is:pr is:open author:@me", type: ISSUE, first: ${first}) {
|
|
208
301
|
issueCount
|
|
209
302
|
nodes { __typename ... on PullRequest {
|
|
210
303
|
id number title createdAt url headRefName isDraft
|
|
211
304
|
repository { nameWithOwner }
|
|
212
305
|
author { login }
|
|
306
|
+
${size}
|
|
213
307
|
${health}
|
|
214
308
|
${conversation}
|
|
215
309
|
}}
|
|
216
310
|
}`,
|
|
217
|
-
reviewRequests: ({ scope, health, conversation }, first) => ` reviewRequests: search(query: "${scope}is:pr is:open review-requested:@me", type: ISSUE, first: ${first}) {
|
|
311
|
+
reviewRequests: ({ scope, health, size, conversation }, first) => ` reviewRequests: search(query: "${scope}is:pr is:open review-requested:@me", type: ISSUE, first: ${first}) {
|
|
218
312
|
issueCount
|
|
219
313
|
nodes { __typename ... on PullRequest {
|
|
220
314
|
id number title createdAt url headRefName isDraft
|
|
221
315
|
repository { nameWithOwner }
|
|
222
316
|
author { login }
|
|
317
|
+
${size}
|
|
223
318
|
${health}
|
|
224
319
|
${conversation}
|
|
225
320
|
}}
|
|
226
321
|
}`,
|
|
227
|
-
reviewed: ({ scope, health, conversation }, first) => ` reviewed: search(query: "${scope}is:pr is:open reviewed-by:@me -author:@me -review-requested:@me", type: ISSUE, first: ${first}) {
|
|
322
|
+
reviewed: ({ scope, health, size, conversation }, first) => ` reviewed: search(query: "${scope}is:pr is:open reviewed-by:@me -author:@me -review-requested:@me", type: ISSUE, first: ${first}) {
|
|
228
323
|
issueCount
|
|
229
324
|
nodes { __typename ... on PullRequest {
|
|
230
325
|
id number title createdAt url headRefName isDraft
|
|
231
326
|
repository { nameWithOwner }
|
|
232
327
|
author { login }
|
|
328
|
+
${size}
|
|
233
329
|
${health}
|
|
234
330
|
${conversation}
|
|
235
331
|
}}
|
|
236
332
|
}`,
|
|
237
|
-
assigned: ({ scope, health, conversation, issueConversation, issueLabels }, first) => ` assigned: search(query: "${scope}is:open assignee:@me", type: ISSUE, first: ${first}) {
|
|
333
|
+
assigned: ({ scope, health, size, conversation, issueConversation, issueLabels }, first) => ` assigned: search(query: "${scope}is:open assignee:@me", type: ISSUE, first: ${first}) {
|
|
238
334
|
issueCount
|
|
239
335
|
nodes {
|
|
240
336
|
__typename
|
|
@@ -245,6 +341,7 @@ const SOURCES = {
|
|
|
245
341
|
}
|
|
246
342
|
... on PullRequest {
|
|
247
343
|
id number title createdAt url headRefName isDraft repository { nameWithOwner } author { login }
|
|
344
|
+
${size}
|
|
248
345
|
${health}
|
|
249
346
|
${conversation}
|
|
250
347
|
}
|
|
@@ -298,12 +395,13 @@ const SOURCES = {
|
|
|
298
395
|
${issueLabels}
|
|
299
396
|
}}
|
|
300
397
|
}`,
|
|
301
|
-
repoPRs: ({ scope, owned, health, conversation }, first) => ` repoPRs: search(query: "${scope}${owned}is:pr is:open -author:@me archived:false", type: ISSUE, first: ${first}) {
|
|
398
|
+
repoPRs: ({ scope, owned, health, size, conversation }, first) => ` repoPRs: search(query: "${scope}${owned}is:pr is:open -author:@me archived:false", type: ISSUE, first: ${first}) {
|
|
302
399
|
issueCount
|
|
303
400
|
nodes { __typename ... on PullRequest {
|
|
304
401
|
id number title createdAt url headRefName isDraft
|
|
305
402
|
repository { nameWithOwner }
|
|
306
403
|
author { login }
|
|
404
|
+
${size}
|
|
307
405
|
${health}
|
|
308
406
|
${conversation}
|
|
309
407
|
}}
|
|
@@ -325,6 +423,7 @@ const selectionsFor = ({ repo, doneWithinDays = 14, shape = "full", }) => {
|
|
|
325
423
|
owned: repo ? "" : "user:@me ",
|
|
326
424
|
doneSince: sinceDay(doneWithinDays),
|
|
327
425
|
health: full ? PR_HEALTH : "",
|
|
426
|
+
size: PR_SIZE,
|
|
328
427
|
conversation: full ? PR_CONVERSATION : "",
|
|
329
428
|
issueConversation: full ? ISSUE_CONVERSATION : "",
|
|
330
429
|
issueLabels: full ? ISSUE_LABELS : "",
|
|
@@ -369,7 +468,8 @@ export const buildInboxQuery = (options = {}) => {
|
|
|
369
468
|
* that on 2026-08-14 was wrong, one of them by 25x, because GraphQL cost is
|
|
370
469
|
* node-count based and nested connections multiply: `reviewThreads(first: 50)`
|
|
371
470
|
* beneath `search(first: 100)` is 5,000 nodes from two lines of query text. A
|
|
372
|
-
* package handing out a
|
|
471
|
+
* package handing out a query costing tens of points should hand out the
|
|
472
|
+
* means to see it — and it is what proved the window narrowing worked.
|
|
373
473
|
*
|
|
374
474
|
* (GraphQL has no block comments, only `#`, so this note lives out here.)
|
|
375
475
|
*/
|
package/dist/inbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../src/inbox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../src/inbox.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,WAAW,CAAA"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,iFAAiF;AACjF,2EAA2E;AAC3E,EAAE;AACF,6EAA6E;AAC7E,8EAA8E;AAC9E,+EAA+E;AAC/E,4EAA4E;AAC5E,gFAAgF;AAChF,iFAAiF;AACjF,mFAAmF;AACnF,2EAA2E;AAC3E,aAAa;AACb,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,iFAAiF;AACjF,2EAA2E;AAC3E,EAAE;AACF,6EAA6E;AAC7E,8EAA8E;AAC9E,+EAA+E;AAC/E,4EAA4E;AAC5E,gFAAgF;AAChF,iFAAiF;AACjF,mFAAmF;AACnF,2EAA2E;AAC3E,aAAa;AACb,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,WAAW,CAAA"}
|
package/dist/repo.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The repo's default branch. `undefined` when the repo genuinely has none.
|
|
3
|
+
*
|
|
4
|
+
* THROWS RATHER THAN SWALLOWING, and the two outcomes have to stay apart. A
|
|
5
|
+
* consumer suppressing something on a match reads `undefined` as *draw it
|
|
6
|
+
* anyway* — so a failed call resolving to `undefined` would be read as "this
|
|
7
|
+
* repo has no default branch" and redraw a cell that had been correctly
|
|
8
|
+
* suppressed. Against a caller that revalidates on every mount, that is a
|
|
9
|
+
* single network blip flickering the cell back on.
|
|
10
|
+
*
|
|
11
|
+
* Throwing instead lets a caching caller keep the stale-but-good value it
|
|
12
|
+
* already has. The split is: ANSWERED, NO DEFAULT → `undefined`; DID NOT ANSWER
|
|
13
|
+
* → throw, keep what you had.
|
|
14
|
+
*/
|
|
15
|
+
export declare const fetchDefaultBranch: (repo: string) => Promise<string | undefined>;
|
|
16
|
+
//# sourceMappingURL=repo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo.d.ts","sourceRoot":"","sources":["../src/repo.ts"],"names":[],"mappings":"AA6BA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,KACX,OAAO,CAAC,MAAM,GAAG,SAAS,CAY5B,CAAA"}
|
package/dist/repo.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { execa } from "execa";
|
|
2
|
+
// Repository metadata — facts about the repo rather than about anything in it.
|
|
3
|
+
//
|
|
4
|
+
// Separate from `health-fetch.ts` on purpose, and the comment above the
|
|
5
|
+
// projection there is the reason. That one boasts that `additions`,
|
|
6
|
+
// `deletions`, `changedFiles` and `baseRefName` ride along on a call already in
|
|
7
|
+
// flight rather than costing a round trip, which is true and is exactly the
|
|
8
|
+
// argument a later reader will try to extend to the default branch. It does not
|
|
9
|
+
// extend, for two reasons:
|
|
10
|
+
//
|
|
11
|
+
// • `gh pr view --json` HAS NO DEFAULT-BRANCH FIELD. Checked against the live
|
|
12
|
+
// field list on gh 2.100.0: the projection carries `baseRefName`,
|
|
13
|
+
// `headRefName`, `headRepository`, `headRepositoryOwner` and
|
|
14
|
+
// `isCrossRepository`, and nothing naming the repo's own default. Tidying
|
|
15
|
+
// this call into that projection does not make it cheaper, it makes it
|
|
16
|
+
// return nothing.
|
|
17
|
+
// • It is a PER-REPO fact, so it caches on a different key from anything
|
|
18
|
+
// per-PR. Folding it into a per-PR call would re-fetch an unchanging fact
|
|
19
|
+
// once per pull request.
|
|
20
|
+
//
|
|
21
|
+
// No memo here. This package is request-in / data-out with no module state, and
|
|
22
|
+
// the caller that wants one has a session to hang it on — cockpit keys it by
|
|
23
|
+
// repo through `useCachedResource`, which paints the last known answer from disk
|
|
24
|
+
// immediately and revalidates behind it. So the cost is one concurrent call per
|
|
25
|
+
// drill-in, not one per repo per session; what the cache buys is that nobody
|
|
26
|
+
// ever waits for it, and that a repo renaming its default branch heals itself.
|
|
27
|
+
// A `Map` at module scope would be the first mutable state in the package and
|
|
28
|
+
// would leak between tests in the same file.
|
|
29
|
+
/**
|
|
30
|
+
* The repo's default branch. `undefined` when the repo genuinely has none.
|
|
31
|
+
*
|
|
32
|
+
* THROWS RATHER THAN SWALLOWING, and the two outcomes have to stay apart. A
|
|
33
|
+
* consumer suppressing something on a match reads `undefined` as *draw it
|
|
34
|
+
* anyway* — so a failed call resolving to `undefined` would be read as "this
|
|
35
|
+
* repo has no default branch" and redraw a cell that had been correctly
|
|
36
|
+
* suppressed. Against a caller that revalidates on every mount, that is a
|
|
37
|
+
* single network blip flickering the cell back on.
|
|
38
|
+
*
|
|
39
|
+
* Throwing instead lets a caching caller keep the stale-but-good value it
|
|
40
|
+
* already has. The split is: ANSWERED, NO DEFAULT → `undefined`; DID NOT ANSWER
|
|
41
|
+
* → throw, keep what you had.
|
|
42
|
+
*/
|
|
43
|
+
export const fetchDefaultBranch = async (repo) => {
|
|
44
|
+
const { stdout } = await execa("gh", [
|
|
45
|
+
"repo",
|
|
46
|
+
"view",
|
|
47
|
+
repo,
|
|
48
|
+
"--json",
|
|
49
|
+
"defaultBranchRef",
|
|
50
|
+
]);
|
|
51
|
+
return (JSON.parse(stdout)
|
|
52
|
+
.defaultBranchRef?.name ?? undefined);
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=repo.js.map
|
package/dist/repo.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo.js","sourceRoot":"","sources":["../src/repo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAE7B,+EAA+E;AAC/E,EAAE;AACF,wEAAwE;AACxE,oEAAoE;AACpE,gFAAgF;AAChF,4EAA4E;AAC5E,gFAAgF;AAChF,2BAA2B;AAC3B,EAAE;AACF,gFAAgF;AAChF,sEAAsE;AACtE,iEAAiE;AACjE,8EAA8E;AAC9E,2EAA2E;AAC3E,sBAAsB;AACtB,2EAA2E;AAC3E,8EAA8E;AAC9E,6BAA6B;AAC7B,EAAE;AACF,gFAAgF;AAChF,6EAA6E;AAC7E,iFAAiF;AACjF,gFAAgF;AAChF,6EAA6E;AAC7E,+EAA+E;AAC/E,8EAA8E;AAC9E,6CAA6C;AAC7C;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,IAAY,EACiB,EAAE;IAC/B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE;QACnC,MAAM;QACN,MAAM;QACN,IAAI;QACJ,QAAQ;QACR,kBAAkB;KACnB,CAAC,CAAA;IACF,OAAO,CACJ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAqD;SACpE,gBAAgB,EAAE,IAAI,IAAI,SAAS,CACvC,CAAA;AACH,CAAC,CAAA"}
|