gcb-host 0.7.1 → 0.8.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.
Files changed (94) hide show
  1. package/CHANGELOG.md +22 -1
  2. package/bin/gcb.js +3 -3
  3. package/lib/audit.d.ts +4 -4
  4. package/lib/audit.d.ts.map +1 -1
  5. package/lib/audit.js +15 -14
  6. package/lib/audit.js.map +1 -1
  7. package/lib/broker.d.ts +12 -13
  8. package/lib/broker.d.ts.map +1 -1
  9. package/lib/broker.js +77 -53
  10. package/lib/broker.js.map +1 -1
  11. package/lib/commands/authorize.d.ts +43 -13
  12. package/lib/commands/authorize.d.ts.map +1 -1
  13. package/lib/commands/authorize.js +146 -53
  14. package/lib/commands/authorize.js.map +1 -1
  15. package/lib/commands/compose.d.ts +8 -10
  16. package/lib/commands/compose.d.ts.map +1 -1
  17. package/lib/commands/compose.js +33 -44
  18. package/lib/commands/compose.js.map +1 -1
  19. package/lib/commands/config.d.ts.map +1 -1
  20. package/lib/commands/config.js +59 -41
  21. package/lib/commands/config.js.map +1 -1
  22. package/lib/commands/deployment.d.ts +11 -11
  23. package/lib/commands/deployment.d.ts.map +1 -1
  24. package/lib/commands/deployment.js +19 -18
  25. package/lib/commands/deployment.js.map +1 -1
  26. package/lib/commands/diagnose.d.ts.map +1 -1
  27. package/lib/commands/diagnose.js +51 -33
  28. package/lib/commands/diagnose.js.map +1 -1
  29. package/lib/commands/doctor.d.ts +5 -5
  30. package/lib/commands/doctor.d.ts.map +1 -1
  31. package/lib/commands/doctor.js +53 -32
  32. package/lib/commands/doctor.js.map +1 -1
  33. package/lib/commands/host.d.ts +7 -7
  34. package/lib/commands/host.d.ts.map +1 -1
  35. package/lib/commands/host.js +144 -93
  36. package/lib/commands/host.js.map +1 -1
  37. package/lib/commands/init.d.ts +33 -33
  38. package/lib/commands/init.d.ts.map +1 -1
  39. package/lib/commands/init.js +93 -75
  40. package/lib/commands/init.js.map +1 -1
  41. package/lib/commands/stage.d.ts +6 -6
  42. package/lib/commands/stage.d.ts.map +1 -1
  43. package/lib/commands/stage.js +21 -15
  44. package/lib/commands/stage.js.map +1 -1
  45. package/lib/config.d.ts +29 -28
  46. package/lib/config.d.ts.map +1 -1
  47. package/lib/config.js +100 -84
  48. package/lib/config.js.map +1 -1
  49. package/lib/daemon.d.ts +9 -9
  50. package/lib/daemon.d.ts.map +1 -1
  51. package/lib/daemon.js +21 -18
  52. package/lib/daemon.js.map +1 -1
  53. package/lib/device-flow.d.ts +23 -22
  54. package/lib/device-flow.d.ts.map +1 -1
  55. package/lib/device-flow.js +33 -28
  56. package/lib/device-flow.js.map +1 -1
  57. package/lib/gh.d.ts +2 -2
  58. package/lib/gh.d.ts.map +1 -1
  59. package/lib/gh.js +74 -46
  60. package/lib/gh.js.map +1 -1
  61. package/lib/http.d.ts.map +1 -1
  62. package/lib/http.js +35 -18
  63. package/lib/http.js.map +1 -1
  64. package/lib/index.d.ts.map +1 -1
  65. package/lib/index.js.map +1 -1
  66. package/lib/policy.d.ts +25 -25
  67. package/lib/policy.d.ts.map +1 -1
  68. package/lib/policy.js +57 -36
  69. package/lib/policy.js.map +1 -1
  70. package/lib/providers/github-app.d.ts +12 -12
  71. package/lib/providers/github-app.d.ts.map +1 -1
  72. package/lib/providers/github-app.js +194 -125
  73. package/lib/providers/github-app.js.map +1 -1
  74. package/lib/providers/index.d.ts +8 -9
  75. package/lib/providers/index.d.ts.map +1 -1
  76. package/lib/providers/index.js +5 -5
  77. package/lib/providers/index.js.map +1 -1
  78. package/lib/providers/static.d.ts +3 -3
  79. package/lib/providers/static.d.ts.map +1 -1
  80. package/lib/providers/static.js +14 -12
  81. package/lib/providers/static.js.map +1 -1
  82. package/lib/proxy.d.ts +10 -10
  83. package/lib/proxy.d.ts.map +1 -1
  84. package/lib/proxy.js +18 -16
  85. package/lib/proxy.js.map +1 -1
  86. package/lib/public-repo.d.ts +10 -10
  87. package/lib/public-repo.d.ts.map +1 -1
  88. package/lib/public-repo.js +17 -14
  89. package/lib/public-repo.js.map +1 -1
  90. package/lib/reload.d.ts +4 -4
  91. package/lib/reload.d.ts.map +1 -1
  92. package/lib/reload.js +24 -14
  93. package/lib/reload.js.map +1 -1
  94. package/package.json +10 -10
package/lib/gh.js CHANGED
@@ -2,14 +2,14 @@
2
2
  * Run one catalogued `gh` action as the App, with the action's short-lived token.
3
3
  *
4
4
  * The caller has already validated the action, repository and values. This module owns the process
5
- * boundary: a temp HOME/GH_CONFIG_DIR, a minimal environment, no shell, a hard timeout and an output
6
- * ceiling. The host user's gh configuration and token are never read.
5
+ * boundary: a temp HOME/GH_CONFIG_DIR, a minimal environment, no shell, a hard timeout and an
6
+ * output ceiling. The host user's gh configuration and token are never read.
7
7
  */
8
8
  import { spawn } from 'node:child_process';
9
9
  import { mkdtempSync, mkdirSync, rmSync, writeFileSync } from 'node:fs';
10
10
  import { tmpdir } from 'node:os';
11
- import { StringDecoder } from 'node:string_decoder';
12
11
  import path from 'node:path';
12
+ import { StringDecoder } from 'node:string_decoder';
13
13
  import { apiBodyJson, buildGhArgv, getGhAction } from 'gcb-core';
14
14
  import { applyProxyChoice, PROXY_ENV_KEYS } from './http.js';
15
15
  /** The default stdout/stderr ceiling, in bytes per stream. */
@@ -19,24 +19,28 @@ export const KILL_GRACE_MS = 2_000;
19
19
  /**
20
20
  * Whether any proxy URL in an environment carries a username or password.
21
21
  *
22
- * jq can read the environment, so a credentialed proxy URL would expose its secret to the expression.
22
+ * Jq can read the environment, so a credentialed proxy URL would expose its secret to the
23
+ * expression.
23
24
  *
24
- * @param env - the environment gh will receive.
25
- * @returns true when a proxy URL has credentials.
25
+ * @param env - The environment gh will receive.
26
+ * @returns True when a proxy URL has credentials.
26
27
  */
27
28
  function proxyUrlHasCredentials(env) {
28
29
  for (const key of PROXY_ENV_KEYS) {
29
- if (key === 'NODE_USE_ENV_PROXY' || key.toLowerCase() === 'no_proxy')
30
+ if (key === 'NODE_USE_ENV_PROXY' || key.toLowerCase() === 'no_proxy') {
30
31
  continue;
32
+ }
31
33
  const value = env[key];
32
- if (value === undefined || value === '')
34
+ if (value === undefined || value === '') {
33
35
  continue;
36
+ }
34
37
  try {
35
38
  // Go prefixes a scheme-less value with http://, so `user:pass@host:3128` reaches the proxy
36
39
  // with credentials even though URL would read `user:` as the scheme.
37
40
  const url = new URL(/^[a-z][a-z0-9+.-]*:\/\//i.test(value) ? value : `http://${value}`);
38
- if (url.username !== '' || url.password !== '')
41
+ if (url.username !== '' || url.password !== '') {
39
42
  return true;
43
+ }
40
44
  }
41
45
  catch {
42
46
  // Still unparseable: Node's parser is not gh's, so fail closed.
@@ -54,8 +58,9 @@ function probeIssueTarget(command, env, cwd, repo, issueNumber, timeoutMs) {
54
58
  let settled = false;
55
59
  let timedOut = false;
56
60
  const killGroup = (signal) => {
57
- if (child.pid === undefined)
61
+ if (child.pid === undefined) {
58
62
  return;
63
+ }
59
64
  try {
60
65
  process.kill(-child.pid, signal);
61
66
  }
@@ -69,31 +74,38 @@ function probeIssueTarget(command, env, cwd, repo, issueNumber, timeoutMs) {
69
74
  setTimeout(() => killGroup('SIGKILL'), 200).unref();
70
75
  }, timeoutMs);
71
76
  child.stdout?.on('data', (chunk) => {
72
- if (stdout.length < 64_000)
77
+ if (stdout.length < 64_000) {
73
78
  stdout += chunk.toString();
79
+ }
74
80
  });
75
81
  child.stderr?.on('data', (chunk) => {
76
- if (stderr.length < 64_000)
82
+ if (stderr.length < 64_000) {
77
83
  stderr += chunk.toString();
84
+ }
78
85
  });
79
- child.on('error', (error) => {
80
- if (settled)
86
+ child.on('error', error => {
87
+ if (settled) {
81
88
  return;
89
+ }
82
90
  settled = true;
83
91
  clearTimeout(timer);
84
92
  reject(error);
85
93
  });
86
- child.on('close', (code) => {
87
- if (settled)
94
+ child.on('close', code => {
95
+ if (settled) {
88
96
  return;
97
+ }
89
98
  settled = true;
90
99
  clearTimeout(timer);
91
- if (timedOut)
100
+ if (timedOut) {
92
101
  reject(new Error('issue-target probe timed out'));
93
- else if (code === 0)
102
+ }
103
+ else if (code === 0) {
94
104
  resolve(stdout);
95
- else
105
+ }
106
+ else {
96
107
  reject(new Error(stderr.trim() || `gh api exited ${String(code)}`));
108
+ }
97
109
  });
98
110
  });
99
111
  }
@@ -111,16 +123,19 @@ async function assertIssueTarget(command, env, cwd, repo, number, timeoutMs) {
111
123
  }
112
124
  catch (error) {
113
125
  const message = error.message;
114
- if (message.includes('is a pull request'))
126
+ if (message.includes('is a pull request')) {
115
127
  throw error;
116
- throw new Error(`could not verify that #${String(issueNumber)} is an issue: ${message}`);
128
+ }
129
+ throw new Error(`could not verify that #${String(issueNumber)} is an issue: ${message}`, {
130
+ cause: error,
131
+ });
117
132
  }
118
133
  }
119
134
  /**
120
135
  * Run one allowed action.
121
136
  *
122
- * @param options - action, values, repository and token.
123
- * @returns the bounded process result.
137
+ * @param options - Action, values, repository and token.
138
+ * @returns The bounded process result.
124
139
  */
125
140
  export async function runGhAction(options) {
126
141
  const maxBytes = options.maxOutputBytes ?? DEFAULT_GH_OUTPUT_BYTES;
@@ -140,8 +155,9 @@ export async function runGhAction(options) {
140
155
  };
141
156
  for (const key of PROXY_ENV_KEYS) {
142
157
  const value = source[key];
143
- if (value !== undefined && value !== '')
158
+ if (value !== undefined && value !== '') {
144
159
  env[key] = value;
160
+ }
145
161
  }
146
162
  applyProxyChoice(env, options.proxy);
147
163
  if (usesJq && proxyUrlHasCredentials(env)) {
@@ -163,8 +179,9 @@ export async function runGhAction(options) {
163
179
  throw error;
164
180
  }
165
181
  }
166
- if (!usesJq)
182
+ if (!usesJq) {
167
183
  env.GH_TOKEN = options.token;
184
+ }
168
185
  const action = getGhAction(options.action);
169
186
  const timeoutMs = options.timeoutMs ?? action.timeoutSeconds * 1000;
170
187
  const deadline = Date.now() + timeoutMs;
@@ -186,7 +203,7 @@ export async function runGhAction(options) {
186
203
  writeFileSync(bodyFile, content, { mode: 0o600 });
187
204
  }
188
205
  const argv = buildGhArgv(action.name, options.values, options.repo, bodyFile);
189
- return await new Promise((resolve) => {
206
+ return await new Promise(resolve => {
190
207
  let stdout = '';
191
208
  let stderr = '';
192
209
  let stdoutBytes = 0;
@@ -196,7 +213,6 @@ export async function runGhAction(options) {
196
213
  let truncated = false;
197
214
  let timedOut = false;
198
215
  let settled = false;
199
- let timer;
200
216
  let killTimer;
201
217
  const child = spawn(options.ghPath ?? 'gh', argv, {
202
218
  cwd: home,
@@ -206,11 +222,11 @@ export async function runGhAction(options) {
206
222
  stdio: ['ignore', 'pipe', 'pipe'],
207
223
  });
208
224
  const finish = (result) => {
209
- if (settled)
225
+ if (settled) {
210
226
  return;
227
+ }
211
228
  settled = true;
212
- if (timer !== undefined)
213
- clearTimeout(timer);
229
+ clearTimeout(timer);
214
230
  // A closed parent does not prove the process group is gone; the repeat-kill interval below
215
231
  // chases a fork created between the group signal and its delivery. Keep it until the group
216
232
  // no longer exists.
@@ -218,13 +234,15 @@ export async function runGhAction(options) {
218
234
  const fullStderr = stderr + stderrDecoder.end();
219
235
  stdout = clampUtf8(fullStdout, maxBytes);
220
236
  stderr = clampUtf8(fullStderr, maxBytes);
221
- if (stdout !== fullStdout || stderr !== fullStderr)
237
+ if (stdout !== fullStdout || stderr !== fullStderr) {
222
238
  truncated = true;
239
+ }
223
240
  resolve({ ...result, stdout, stderr, truncated, timedOut });
224
241
  };
225
242
  const signalGroup = (signal = 'SIGKILL') => {
226
- if (child.pid === undefined)
243
+ if (child.pid === undefined) {
227
244
  return false;
245
+ }
228
246
  try {
229
247
  // The child is its own process-group leader; kill the group so a gh-spawned helper does
230
248
  // not keep the pipe open after timeout or output overflow.
@@ -234,8 +252,9 @@ export async function runGhAction(options) {
234
252
  catch (error) {
235
253
  // ESRCH means the group itself is gone; do not fall back to the parent handle, which can
236
254
  // report success while only a zombie remains.
237
- if (error.code === 'ESRCH')
255
+ if (error.code === 'ESRCH') {
238
256
  return false;
257
+ }
239
258
  return child.exitCode === null && child.signalCode === null ? child.kill(signal) : false;
240
259
  }
241
260
  };
@@ -243,16 +262,20 @@ export async function runGhAction(options) {
243
262
  // active after close when the timeout path scheduled it, because gh itself may exit on SIGTERM
244
263
  // while a descendant that ignores SIGTERM is still in the group.
245
264
  const chase = () => {
246
- if (killTimer !== undefined)
265
+ if (killTimer !== undefined) {
247
266
  return;
248
- if (!signalGroup())
267
+ }
268
+ if (!signalGroup()) {
249
269
  return;
270
+ }
250
271
  const handle = setInterval(() => {
251
- if (signalGroup())
272
+ if (signalGroup()) {
252
273
  return;
274
+ }
253
275
  clearInterval(handle);
254
- if (killTimer === handle)
276
+ if (killTimer === handle) {
255
277
  killTimer = undefined;
278
+ }
256
279
  }, 100);
257
280
  handle.unref();
258
281
  killTimer = handle;
@@ -260,13 +283,15 @@ export async function runGhAction(options) {
260
283
  const kill = () => {
261
284
  // Truncation stops once the action settles; the timeout grace uses chase() directly so a
262
285
  // child that closed does not hide a surviving descendant.
263
- if (settled)
286
+ if (settled) {
264
287
  return;
288
+ }
265
289
  chase();
266
290
  };
267
291
  const take = (stream, chunk) => {
268
- if (truncated || timedOut)
292
+ if (truncated || timedOut) {
269
293
  return;
294
+ }
270
295
  const used = stream === 'stdout' ? stdoutBytes : stderrBytes;
271
296
  if (used >= maxBytes) {
272
297
  truncated = true;
@@ -288,11 +313,12 @@ export async function runGhAction(options) {
288
313
  kill();
289
314
  }
290
315
  };
291
- timer = setTimeout(() => {
316
+ const timer = setTimeout(() => {
292
317
  timedOut = true;
293
318
  // Ask politely first; a gh process that ignores SIGTERM is killed on the grace deadline.
294
- if (!signalGroup('SIGTERM'))
319
+ if (!signalGroup('SIGTERM')) {
295
320
  return;
321
+ }
296
322
  setTimeout(() => chase(), KILL_GRACE_MS).unref();
297
323
  }, Math.max(1, deadline - Date.now()));
298
324
  child.stdout?.on('data', (chunk) => take('stdout', chunk));
@@ -308,19 +334,21 @@ export async function runGhAction(options) {
308
334
  /**
309
335
  * Keep a decoded string within a UTF-8 byte budget without splitting a code point.
310
336
  *
311
- * @param text - the decoded text.
312
- * @param maxBytes - the byte budget.
313
- * @returns the prefix that fits.
337
+ * @param text - The decoded text.
338
+ * @param maxBytes - The byte budget.
339
+ * @returns The prefix that fits.
314
340
  */
315
341
  function clampUtf8(text, maxBytes) {
316
- if (Buffer.byteLength(text) <= maxBytes)
342
+ if (Buffer.byteLength(text) <= maxBytes) {
317
343
  return text;
344
+ }
318
345
  let used = 0;
319
346
  let kept = '';
320
347
  for (const character of text) {
321
348
  const size = Buffer.byteLength(character);
322
- if (used + size > maxBytes)
349
+ if (used + size > maxBytes) {
323
350
  break;
351
+ }
324
352
  kept += character;
325
353
  used += size;
326
354
  }
package/lib/gh.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gh.js","sourceRoot":"","sources":["../src/gh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gh.js","sourceRoot":"","sources":["../src/gh.ts"],"names":[],"mappings":"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"}
package/lib/http.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,oFAAoF;AACpF,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAEpD,2EAA2E;AAC3E,eAAO,MAAM,cAAc,YACzB,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EACpD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,oBAAoB,CAClE,CAAC;AAEX,8EAA8E;AAC9E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAQjF;AAED,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,KAAK,CAU9D;AAKD,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE/D;AAED,kDAAkD;AAClD,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAIxD;AA4CD,sFAAsF;AACtF,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,gFAAgF;AAChF,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAcxD;AAED,2DAA2D;AAC3D,eAAO,MAAM,UAAU,EAAE,SAGxB,CAAC"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAKzC,oFAAoF;AACpF,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;AAEnD,2EAA2E;AAC3E,eAAO,MAAM,cAAc,YACzB,YAAY,EACZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EACb,WAAW,EACX,UAAU,EACV,oBAAoB,CACZ,CAAA;AAEV,8EAA8E;AAC9E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAcjF;AAED,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,KAAK,CAgB9D;AAKD,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE/D;AAED,kDAAkD;AAClD,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAQxD;AAkDD,sFAAsF;AACtF,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,gFAAgF;AAChF,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAgBxD;AAED,2DAA2D;AAC3D,eAAO,MAAM,UAAU,EAAE,SAGxB,CAAA"}
package/lib/http.js CHANGED
@@ -4,29 +4,39 @@
4
4
  * Node's native fetch reads proxy variables once, when its dispatcher is created, so a command that
5
5
  * wants a different proxy cannot get one by editing `process.env` (verified on 24.22: a later
6
6
  * `http_proxy` change is ignored). `node-fetch-native` supplies the node-fetch agents (a direct
7
- * pair, or `createProxy().agent` for an explicit proxy), and `x-fetch` wraps that fetch. The wrapped
8
- * instance is cached by the effective proxy choice, so a busy broker does not create an agent per
9
- * command.
7
+ * pair, or `createProxy().agent` for an explicit proxy), and `x-fetch` wraps that fetch. The
8
+ * wrapped instance is cached by the effective proxy choice, so a busy broker does not create an
9
+ * agent per command.
10
10
  */
11
11
  import { AsyncLocalStorage } from 'node:async_hooks';
12
12
  import http from 'node:http';
13
13
  import https from 'node:https';
14
- import { createProxy } from 'node-fetch-native/proxy';
15
14
  import { fetch as directFetch } from 'node-fetch-native/node';
15
+ import { createProxy } from 'node-fetch-native/proxy';
16
16
  import { createXFetch, isXFetchError } from 'x-fetch';
17
17
  /** Every spelling that can carry a proxy to Node or to a child process. */
18
18
  export const PROXY_ENV_KEYS = [
19
- 'http_proxy', 'https_proxy', 'all_proxy', 'no_proxy',
20
- 'HTTP_PROXY', 'HTTPS_PROXY', 'ALL_PROXY', 'NO_PROXY', 'NODE_USE_ENV_PROXY',
19
+ 'http_proxy',
20
+ 'https_proxy',
21
+ 'all_proxy',
22
+ 'no_proxy',
23
+ 'HTTP_PROXY',
24
+ 'HTTPS_PROXY',
25
+ 'ALL_PROXY',
26
+ 'NO_PROXY',
27
+ 'NODE_USE_ENV_PROXY',
21
28
  ];
22
29
  /** Apply one command's proxy choice to an environment for a child process. */
23
30
  export function applyProxyChoice(env, proxy) {
24
- if (proxy === undefined)
31
+ if (proxy === undefined) {
25
32
  return;
26
- for (const key of PROXY_ENV_KEYS)
33
+ }
34
+ for (const key of PROXY_ENV_KEYS) {
27
35
  delete env[key];
28
- if (proxy === null)
36
+ }
37
+ if (proxy === null) {
29
38
  return;
39
+ }
30
40
  env.HTTP_PROXY = proxy;
31
41
  env.HTTPS_PROXY = proxy;
32
42
  env.ALL_PROXY = proxy;
@@ -34,12 +44,15 @@ export function applyProxyChoice(env, proxy) {
34
44
  }
35
45
  /** Parse a proxy choice; false means it is not a usable http(s) URL. */
36
46
  export function parseProxy(value) {
37
- if (value === undefined)
47
+ if (value === undefined) {
38
48
  return undefined;
39
- if (value === null)
49
+ }
50
+ if (value === null) {
40
51
  return null;
41
- if (typeof value !== 'string')
52
+ }
53
+ if (typeof value !== 'string') {
42
54
  return false;
55
+ }
43
56
  try {
44
57
  const url = new URL(value);
45
58
  return url.protocol === 'http:' || url.protocol === 'https:' ? value : false;
@@ -56,14 +69,16 @@ export function withProxy(proxy, fn) {
56
69
  }
57
70
  /** Return the stable key for one proxy choice. */
58
71
  export function proxyCacheKey(proxy) {
59
- if (proxy === null)
72
+ if (proxy === null) {
60
73
  return 'direct';
61
- if (proxy !== undefined)
74
+ }
75
+ if (proxy !== undefined) {
62
76
  return `proxy:${proxy}`;
77
+ }
63
78
  return `env:${process.env['https_proxy'] ?? ''}|${process.env['HTTPS_PROXY'] ?? ''}|${process.env['http_proxy'] ?? ''}|${process.env['HTTP_PROXY'] ?? ''}|${process.env['no_proxy'] ?? ''}|${process.env['NO_PROXY'] ?? ''}|${process.env['NODE_USE_ENV_PROXY'] ?? ''}`;
64
79
  }
65
80
  /**
66
- * x-fetch throws on non-2xx, while every provider here wants to inspect the status and body itself.
81
+ * X-fetch throws on non-2xx, while every provider here wants to inspect the status and body itself.
67
82
  * Turn the thrown error back into its response for this adapter.
68
83
  */
69
84
  const returnResponse = async (_ctx, next) => {
@@ -71,8 +86,9 @@ const returnResponse = async (_ctx, next) => {
71
86
  return await next();
72
87
  }
73
88
  catch (error) {
74
- if (isXFetchError(error) && error.response !== undefined)
89
+ if (isXFetchError(error) && error.response !== undefined) {
75
90
  return error.response;
91
+ }
76
92
  throw error;
77
93
  }
78
94
  };
@@ -91,7 +107,7 @@ function makeFetch(proxy) {
91
107
  // NODE_USE_ENV_PROXY=1, so a direct choice needs its own agents rather than agent: false.
92
108
  const httpAgent = new http.Agent();
93
109
  const httpsAgent = new https.Agent();
94
- native = nodeFetchWithAgent((url) => (url.protocol === 'https:' ? httpsAgent : httpAgent));
110
+ native = nodeFetchWithAgent(url => (url.protocol === 'https:' ? httpsAgent : httpAgent));
95
111
  }
96
112
  else {
97
113
  // createProxy's agent is a node-fetch agent; this works on Node 24 and 26, unlike handing its
@@ -117,8 +133,9 @@ export function fetcherFor(proxy) {
117
133
  // arbitrary URLs grow this map for the life of the broker.
118
134
  if (instances.size >= 16) {
119
135
  const oldest = instances.keys().next().value;
120
- if (oldest !== undefined)
136
+ if (oldest !== undefined) {
121
137
  instances.delete(oldest);
138
+ }
122
139
  }
123
140
  fetcher = makeFetch(proxy);
124
141
  instances.set(key, fetcher);
package/lib/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAG9D,cAAc,SAAS,CAAC;AAExB,eAAO,MAAM,SAAS,k1BAgByC,CAAC;AAiChE,eAAO,MAAM,WAAW,EAAE,cAKzB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAI7D,cAAc,SAAS,CAAA;AAEvB,eAAO,MAAM,SAAS,k1BAgByC,CAAA;AAiC/D,eAAO,MAAM,WAAW,EAAE,cAKzB,CAAA"}
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,aAAa,EAAuB,MAAM,UAAU,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,cAAc,SAAS,CAAC;AAExB,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;+DAgBsC,CAAC;AAEhE,KAAK,UAAU,GAAG,CAAC,IAAuB;IACxC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAChC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ,EAAE,CAAC;YACd,kBAAkB,EAAE,CAAC;YACrB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YAClD,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QACD,KAAK,MAAM;YACT,OAAO,CAAC,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5D,KAAK,OAAO;YACV,OAAO,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9D,KAAK,SAAS;YACZ,OAAO,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAClE,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAChE,KAAK,UAAU;YACb,OAAO,CAAC,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpE,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAChE,KAAK,WAAW;YACd,OAAO,CAAC,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACtE,KAAK,MAAM;YACT,OAAO,CAAC,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAClE;YACE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,OAAO,IAAI,EAAE,OAAO,CAAC,CAAC;YAC1E,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAmB;IACzC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,aAAa;IACvB,IAAI,EAAE,SAAS;IACf,GAAG;CACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,aAAa,EAAuB,MAAM,UAAU,CAAA;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAE/C,cAAc,SAAS,CAAA;AAEvB,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;+DAgBsC,CAAA;AAE/D,KAAK,UAAU,GAAG,CAAC,IAAuB;IACxC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;IAC/B,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ,EAAE,CAAC;YACd,kBAAkB,EAAE,CAAA;YACpB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAA;YACjD,OAAO,SAAS,CAAC,IAAI,CAAC,CAAA;QACxB,CAAC;QACD,KAAK,MAAM;YACT,OAAO,CAAC,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC3D,KAAK,OAAO;YACV,OAAO,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC7D,KAAK,SAAS;YACZ,OAAO,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACjE,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/D,KAAK,UAAU;YACb,OAAO,CAAC,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QACnE,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/D,KAAK,WAAW;YACd,OAAO,CAAC,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QACrE,KAAK,MAAM;YACT,OAAO,CAAC,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QACjE;YACE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,OAAO,IAAI,EAAE,OAAO,CAAC,CAAA;YACzE,OAAO,CAAC,CAAA;IACZ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAmB;IACzC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,aAAa;IACvB,IAAI,EAAE,SAAS;IACf,GAAG;CACJ,CAAA"}
package/lib/policy.d.ts CHANGED
@@ -1,16 +1,16 @@
1
1
  /**
2
- * Authorization policy: the only place that decides whether a host + repository pair may
3
- * receive a credential.
2
+ * Authorization policy: the only place that decides whether a host + repository pair may receive a
3
+ * credential.
4
4
  *
5
5
  * Design rules (see the design review, findings P0-1 and P2-3):
6
- * - default deny: an unknown host or an unlisted repository never yields a credential;
7
- * - repository paths are normalized (drop leading/trailing slashes, drop a trailing
8
- * `.git`, lowercase) before matching, because GitHub owner/repo names are
9
- * case-insensitive;
10
- * - matching is exact per path segment, never a prefix match, so an allowlist entry for
11
- * `acme/widget` can never authorize `acme/widget-evil`;
12
- * - a wildcard is allowed only as a whole segment, never inside one, so a malformed entry
13
- * matches nothing and therefore fails closed.
6
+ *
7
+ * - Default deny: an unknown host or an unlisted repository never yields a credential;
8
+ * - Repository paths are normalized (drop leading/trailing slashes, drop a trailing `.git`,
9
+ * lowercase) before matching, because GitHub owner/repo names are case-insensitive;
10
+ * - Matching is exact per path segment, never a prefix match, so an allowlist entry for `acme/widget`
11
+ * can never authorize `acme/widget-evil`;
12
+ * - A wildcard is allowed only as a whole segment, never inside one, so a malformed entry matches
13
+ * nothing and therefore fails closed.
14
14
  */
15
15
  import type { BrokerConfig, HostConfig, RepoRef } from 'gcb-core';
16
16
  /** One parsed allowlist entry. */
@@ -21,25 +21,25 @@ export interface AllowEntry {
21
21
  /**
22
22
  * Normalize the `path=` value git hands to a credential helper into an `owner/repo` pair.
23
23
  *
24
- * @param rawPath - the raw `path` field, e.g. `acme/widget.git`.
25
- * @returns the normalized reference, or null when the value is missing, has more than two
26
- * segments, is made of dots, or contains characters we refuse to guess about.
24
+ * @param rawPath - The raw `path` field, e.g. `acme/widget.git`.
25
+ * @returns The normalized reference, or null when the value is missing, has more than two segments,
26
+ * is made of dots, or contains characters we refuse to guess about.
27
27
  */
28
28
  export declare function normalizeRepoPath(rawPath: unknown): RepoRef | null;
29
29
  /**
30
- * Parse one allowlist entry: exactly two segments, each either an identifier or a
31
- * whole-segment wildcard.
30
+ * Parse one allowlist entry: exactly two segments, each either an identifier or a whole-segment
31
+ * wildcard.
32
32
  *
33
- * @param entry - the raw entry from configuration.
34
- * @returns the parsed entry, or null when it is malformed (which matches nothing).
33
+ * @param entry - The raw entry from configuration.
34
+ * @returns The parsed entry, or null when it is malformed (which matches nothing).
35
35
  */
36
36
  export declare function parseAllowEntry(entry: unknown): AllowEntry | null;
37
37
  /**
38
38
  * Whether a normalized repository is covered by an allowlist.
39
39
  *
40
- * @param allowList - configured allow entries.
41
- * @param full - a normalized `owner/repo` string.
42
- * @returns true only for an exact segment-wise match.
40
+ * @param allowList - Configured allow entries.
41
+ * @param full - A normalized `owner/repo` string.
42
+ * @returns True only for an exact segment-wise match.
43
43
  */
44
44
  export declare function repoAllowed(allowList: unknown, full: string): boolean;
45
45
  /** A host block together with the key it was configured under. */
@@ -49,12 +49,12 @@ export type ResolvedHostConfig = HostConfig & {
49
49
  /**
50
50
  * Look up the configuration block for a host as git reports it.
51
51
  *
52
- * git sends `host=github.com` for the default port and `host=127.0.0.1:8080` otherwise, so
53
- * the comparison is on the literal string, case-insensitively.
52
+ * Git sends `host=github.com` for the default port and `host=127.0.0.1:8080` otherwise, so the
53
+ * comparison is on the literal string, case-insensitively.
54
54
  *
55
- * @param config - a validated broker config.
56
- * @param host - the `host` field from the credential request.
57
- * @returns the matching block, or null (default deny).
55
+ * @param config - A validated broker config.
56
+ * @param host - The `host` field from the credential request.
57
+ * @returns The matching block, or null (default deny).
58
58
  */
59
59
  export declare function hostConfig(config: BrokerConfig, host: unknown): ResolvedHostConfig | null;
60
60
  //# sourceMappingURL=policy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAclE,kCAAkC;AAClC,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CA2BlE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAUjE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAiBrE;AAED,kEAAkE;AAClE,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,GAAG,kBAAkB,GAAG,IAAI,CAOzF"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAcjE,kCAAkC;AAClC,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAiDlE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAkBjE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAyBrE;AAED,kEAAkE;AAClE,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEvE;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,GAAG,kBAAkB,GAAG,IAAI,CAWzF"}