@google/gemini-cli-core 0.59.0-nightly.20260902.g4963a4456 → 0.59.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.
@@ -5,8 +5,7 @@
5
5
  */
6
6
  import { getErrorMessage, isAbortError } from './errors.js';
7
7
  import { URL } from 'node:url';
8
- import * as net from 'node:net';
9
- import * as undici from 'undici';
8
+ import { Agent, EnvHttpProxyAgent, setGlobalDispatcher } from 'undici';
10
9
  import ipaddr from 'ipaddr.js';
11
10
  import { lookup } from 'node:dns/promises';
12
11
  export class FetchError extends Error {
@@ -26,124 +25,8 @@ export class PrivateIpError extends Error {
26
25
  let defaultHeadersTimeout = 60000; // 60 seconds
27
26
  const defaultBodyTimeout = 300000; // 5 minutes
28
27
  let currentProxy = undefined;
29
- function getBuildConnector() {
30
- try {
31
- const fn = undici.buildConnector;
32
- return typeof fn === 'function' ? fn : undefined;
33
- }
34
- catch {
35
- return undefined;
36
- }
37
- }
38
- /**
39
- * Custom DNS lookup function for undici.buildConnector that resolves all IP addresses,
40
- * validates every address against private/reserved ranges, and passes back validated addresses
41
- * to preserve dual-stack fallback (Happy Eyeballs, RFC 8305) without risking DNS rebinding.
42
- */
43
- export function safeLookup(hostname, options, callback) {
44
- const sanitized = sanitizeHostname(hostname);
45
- // Block internal TLDs / loopback domain names
46
- if (sanitized === 'localhost' ||
47
- sanitized.endsWith('.localhost') ||
48
- sanitized.endsWith('.local') ||
49
- sanitized.endsWith('.internal')) {
50
- callback(new PrivateIpError(`Access to internal host ${sanitized} is blocked`), '');
51
- return;
52
- }
53
- // Direct IP literal check
54
- if (net.isIP(sanitized)) {
55
- if (isAddressPrivate(sanitized)) {
56
- callback(new PrivateIpError(`Access to private IP ${sanitized} is blocked`), '');
57
- return;
58
- }
59
- if (options?.all) {
60
- callback(null, [{ address: sanitized, family: net.isIP(sanitized) }]);
61
- }
62
- else {
63
- callback(null, sanitized, net.isIP(sanitized));
64
- }
65
- return;
66
- }
67
- // Resolve all IP addresses via dns.lookup
68
- lookup(sanitized, { all: true })
69
- .then((addresses) => {
70
- if (!addresses || addresses.length === 0) {
71
- callback(new Error(`getaddrinfo ENOTFOUND ${sanitized}`), '');
72
- return;
73
- }
74
- // Evaluate ALL resolved addresses against private ranges
75
- for (const addr of addresses) {
76
- if (isAddressPrivate(addr.address)) {
77
- callback(new PrivateIpError(`Access to private IP ${addr.address} (resolved from ${sanitized}) is blocked`), '');
78
- return;
79
- }
80
- }
81
- // Pass back safe addresses to undici connector
82
- if (options?.all) {
83
- callback(null, addresses);
84
- }
85
- else {
86
- const family = options?.family;
87
- const match = family
88
- ? addresses.find((a) => a.family === family) || addresses[0]
89
- : addresses[0];
90
- callback(null, match.address, match.family);
91
- }
92
- })
93
- .catch((err) => {
94
- callback(err instanceof Error ? err : new Error(String(err)), '');
95
- });
96
- }
97
- /**
98
- * Creates an undici connector that validates destination IP addresses and configures
99
- * a safe DNS lookup function to prevent DNS rebinding (TOCTOU) attacks while preserving
100
- * dual-stack resilience (Happy Eyeballs).
101
- */
102
- export function createSafeConnector(connectorOpts, customDefaultConnector) {
103
- const buildConnectorFn = getBuildConnector();
104
- const safeConnectorOpts = {
105
- ...connectorOpts,
106
- lookup: safeLookup,
107
- };
108
- const defaultConnector = customDefaultConnector ??
109
- (buildConnectorFn ? buildConnectorFn(safeConnectorOpts) : undefined);
110
- return function safeConnect(opts, callback) {
111
- if (!defaultConnector) {
112
- callback(new Error('Connector is unavailable'), null);
113
- return;
114
- }
115
- const rawHostname = opts.hostname;
116
- const sanitized = sanitizeHostname(rawHostname);
117
- // Direct IP address literal check or internal TLD check
118
- if (sanitized === 'localhost' ||
119
- sanitized.endsWith('.localhost') ||
120
- sanitized.endsWith('.local') ||
121
- sanitized.endsWith('.internal')) {
122
- callback(new PrivateIpError(`Access to internal host ${sanitized} is blocked`), null);
123
- return;
124
- }
125
- if (net.isIP(sanitized) && isAddressPrivate(sanitized)) {
126
- callback(new PrivateIpError(`Access to private IP ${sanitized} is blocked`), null);
127
- return;
128
- }
129
- defaultConnector(opts, callback);
130
- };
131
- }
132
- export function createSafeAgent(options) {
133
- const buildConnectorFn = getBuildConnector();
134
- if (!buildConnectorFn) {
135
- throw new Error('Security initialization failed: undici.buildConnector is not available.');
136
- }
137
- const connect = createSafeConnector();
138
- return new undici.Agent({
139
- headersTimeout: options?.headersTimeout ?? defaultHeadersTimeout,
140
- bodyTimeout: options?.bodyTimeout ?? defaultBodyTimeout,
141
- connect,
142
- });
143
- }
144
- let defaultSafeAgent = createSafeAgent();
145
28
  // Configure default global dispatcher with higher timeouts
146
- undici.setGlobalDispatcher(new undici.Agent({
29
+ setGlobalDispatcher(new Agent({
147
30
  headersTimeout: defaultHeadersTimeout,
148
31
  bodyTimeout: defaultBodyTimeout,
149
32
  }));
@@ -152,16 +35,12 @@ export function updateGlobalFetchTimeouts(timeoutMs) {
152
35
  throw new RangeError(`Invalid timeout value: ${timeoutMs}. Must be a positive finite number.`);
153
36
  }
154
37
  defaultHeadersTimeout = timeoutMs;
155
- defaultSafeAgent = createSafeAgent({
156
- headersTimeout: defaultHeadersTimeout,
157
- bodyTimeout: defaultBodyTimeout,
158
- });
159
38
  // We keep body timeout high for LLM streaming responses
160
39
  if (currentProxy) {
161
40
  setGlobalProxy(currentProxy);
162
41
  }
163
42
  else {
164
- undici.setGlobalDispatcher(new undici.Agent({
43
+ setGlobalDispatcher(new Agent({
165
44
  headersTimeout: defaultHeadersTimeout,
166
45
  bodyTimeout: defaultBodyTimeout,
167
46
  }));
@@ -184,6 +63,15 @@ export function isLoopbackHost(hostname) {
184
63
  sanitized === '127.0.0.1' ||
185
64
  sanitized === '::1');
186
65
  }
66
+ export function isPrivateIp(url) {
67
+ try {
68
+ const hostname = new URL(url).hostname;
69
+ return isAddressPrivate(hostname);
70
+ }
71
+ catch {
72
+ return false;
73
+ }
74
+ }
187
75
  /**
188
76
  * IANA Benchmark Testing Range (198.18.0.0/15).
189
77
  * Classified as 'unicast' by ipaddr.js but is reserved and should not be
@@ -204,10 +92,7 @@ function isBenchmarkAddress(addr) {
204
92
  */
205
93
  export function isAddressPrivate(address) {
206
94
  const sanitized = sanitizeHostname(address);
207
- if (sanitized === 'localhost' ||
208
- sanitized.endsWith('.localhost') ||
209
- sanitized.endsWith('.local') ||
210
- sanitized.endsWith('.internal')) {
95
+ if (sanitized === 'localhost') {
211
96
  return true;
212
97
  }
213
98
  try {
@@ -235,92 +120,24 @@ export function isAddressPrivate(address) {
235
120
  * Checks if a URL resolves to a private IP address.
236
121
  */
237
122
  export async function isPrivateIpAsync(url) {
238
- let parsedUrl;
239
123
  try {
240
- parsedUrl = new URL(url);
241
- }
242
- catch (error) {
243
- if (error instanceof TypeError) {
124
+ const parsedUrl = new URL(url);
125
+ const hostname = parsedUrl.hostname;
126
+ if (isLoopbackHost(hostname)) {
244
127
  return false;
245
128
  }
246
- throw error;
247
- }
248
- const hostname = sanitizeHostname(parsedUrl.hostname);
249
- if (hostname === 'localhost' ||
250
- hostname.endsWith('.localhost') ||
251
- hostname.endsWith('.local') ||
252
- hostname.endsWith('.internal')) {
253
- return true;
254
- }
255
- if (net.isIP(hostname)) {
256
- return isAddressPrivate(hostname);
257
- }
258
- try {
259
129
  const addresses = await lookup(hostname, { all: true });
260
- if (!addresses || addresses.length === 0) {
261
- return true;
262
- }
263
130
  return addresses.some((addr) => isAddressPrivate(addr.address));
264
131
  }
265
132
  catch (error) {
133
+ if (error instanceof TypeError) {
134
+ return false;
135
+ }
266
136
  throw new Error('Failed to verify if URL resolves to private IP', {
267
137
  cause: error,
268
138
  });
269
139
  }
270
140
  }
271
- /**
272
- * Checks if a URL targets or resolves to a private, loopback, or reserved network.
273
- * Fails closed on resolution errors or timeouts.
274
- *
275
- * Checks performed:
276
- * - RFC 1918 private ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
277
- * - Loopback addresses (127.0.0.0/8, ::1)
278
- * - Cloud Metadata and link-local addresses (169.254.0.0/16, fe80::/10)
279
- * - Carrier-Grade NAT (100.64.0.0/10)
280
- * - IANA benchmark testing range (198.18.0.0/15)
281
- * - IPv6 unique local addresses (fc00::/7) and IPv4-mapped IPv6 (::ffff:x.x.x.x)
282
- * - Internal top-level domains (.localhost, .local, .internal)
283
- * - Multi-IP resolution: rejects if ANY resolved address is private or reserved
284
- *
285
- * @param url - The URL string to inspect
286
- * @returns Promise resolving to `true` if private/reserved or resolution failed, `false` if safe public IP
287
- */
288
- export async function isPrivateIp(url) {
289
- try {
290
- return await isPrivateIpAsync(url);
291
- }
292
- catch {
293
- return true; // Fail closed
294
- }
295
- }
296
- /**
297
- * Validates a URL destination to ensure it safely targets the public internet and
298
- * does not target private, local, internal, or reserved networks (SSRF defense).
299
- *
300
- * Returns `false` if the destination is private, reserved, invalid, or cannot be
301
- * resolved (fail-closed security posture).
302
- *
303
- * @example
304
- * ```ts
305
- * import { validateUrlDestination } from '@google/gemini-cli-core';
306
- *
307
- * if (!(await validateUrlDestination(userSuppliedUrl))) {
308
- * throw new Error('Access to private or blocked host is not allowed.');
309
- * }
310
- * ```
311
- *
312
- * @param url - The URL string to validate
313
- * @returns Promise resolving to `true` if safe for outbound fetching, `false` otherwise
314
- */
315
- export async function validateUrlDestination(url) {
316
- try {
317
- const isPrivate = await isPrivateIp(url);
318
- return !isPrivate;
319
- }
320
- catch {
321
- return false; // Fail closed
322
- }
323
- }
324
141
  /**
325
142
  * Creates an undici EnvHttpProxyAgent that incorporates safe DNS lookup.
326
143
  */
@@ -329,7 +146,7 @@ export function createSafeProxyAgent(proxyUrl) {
329
146
  const noProxy = (process.env['NO_PROXY'] ??
330
147
  process.env['no_proxy'] ??
331
148
  '')?.trim();
332
- return new undici.EnvHttpProxyAgent({
149
+ return new EnvHttpProxyAgent({
333
150
  httpProxy: trimmedProxy,
334
151
  httpsProxy: trimmedProxy,
335
152
  noProxy,
@@ -338,9 +155,6 @@ export function createSafeProxyAgent(proxyUrl) {
338
155
  });
339
156
  }
340
157
  export async function fetchWithTimeout(url, timeout, options) {
341
- if (await isPrivateIp(url)) {
342
- throw new PrivateIpError(`Access to blocked or private host ${url} is not allowed.`);
343
- }
344
158
  const controller = new AbortController();
345
159
  const timeoutId = setTimeout(() => controller.abort(), timeout);
346
160
  if (options?.signal) {
@@ -354,16 +168,10 @@ export async function fetchWithTimeout(url, timeout, options) {
354
168
  }
355
169
  }
356
170
  try {
357
- const fetchOptions = {
171
+ const response = await fetch(url, {
358
172
  ...options,
359
173
  signal: controller.signal,
360
- };
361
- if (!fetchOptions.dispatcher) {
362
- fetchOptions.dispatcher = currentProxy
363
- ? createSafeProxyAgent(currentProxy)
364
- : defaultSafeAgent;
365
- }
366
- const response = await fetch(url, fetchOptions);
174
+ });
367
175
  return response;
368
176
  }
369
177
  catch (error) {
@@ -378,14 +186,6 @@ export async function fetchWithTimeout(url, timeout, options) {
378
186
  }
379
187
  throw new FetchError(`Request timed out after ${timeout}ms`, 'ETIMEDOUT');
380
188
  }
381
- if (error instanceof PrivateIpError) {
382
- throw error;
383
- }
384
- if (error && typeof error === 'object' && 'cause' in error) {
385
- if (error.cause instanceof PrivateIpError) {
386
- throw error.cause;
387
- }
388
- }
389
189
  throw new FetchError(getErrorMessage(error), undefined, { cause: error });
390
190
  }
391
191
  finally {
@@ -398,7 +198,7 @@ export function setGlobalProxy(proxy) {
398
198
  const noProxy = (process.env['NO_PROXY'] ??
399
199
  process.env['no_proxy'] ??
400
200
  '')?.trim();
401
- undici.setGlobalDispatcher(new undici.EnvHttpProxyAgent({
201
+ setGlobalDispatcher(new EnvHttpProxyAgent({
402
202
  httpProxy: trimmedProxy,
403
203
  httpsProxy: trimmedProxy,
404
204
  noProxy,
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/utils/fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/utils/fetch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AACvE,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,OAAO,UAAW,SAAQ,KAAK;IAG1B;IAFT,YACE,OAAe,EACR,IAAa,EACpB,OAAsB;QAEtB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAHjB,SAAI,GAAJ,IAAI,CAAS;QAIpB,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC3B,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,YAAY,OAAO,GAAG,sCAAsC;QAC1D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,IAAI,qBAAqB,GAAG,KAAK,CAAC,CAAC,aAAa;AAChD,MAAM,kBAAkB,GAAG,MAAM,CAAC,CAAC,YAAY;AAC/C,IAAI,YAAY,GAAuB,SAAS,CAAC;AAEjD,2DAA2D;AAC3D,mBAAmB,CACjB,IAAI,KAAK,CAAC;IACR,cAAc,EAAE,qBAAqB;IACrC,WAAW,EAAE,kBAAkB;CAChC,CAAC,CACH,CAAC;AAEF,MAAM,UAAU,yBAAyB,CAAC,SAAiB;IACzD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,UAAU,CAClB,0BAA0B,SAAS,qCAAqC,CACzE,CAAC;IACJ,CAAC;IACD,qBAAqB,GAAG,SAAS,CAAC;IAClC,wDAAwD;IACxD,IAAI,YAAY,EAAE,CAAC;QACjB,cAAc,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,mBAAmB,CACjB,IAAI,KAAK,CAAC;YACR,cAAc,EAAE,qBAAqB;YACrC,WAAW,EAAE,kBAAkB;SAChC,CAAC,CACH,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;QACvD,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC7C,OAAO,CACL,SAAS,KAAK,WAAW;QACzB,SAAS,KAAK,WAAW;QACzB,SAAS,KAAK,KAAK,CACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QACvC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;AAE/D;;GAEG;AACH,SAAS,kBAAkB,CAAC,IAA+B;IACzD,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,oBAAoB,CAAC;IACpD,OAAO,CACL,IAAI,YAAY,MAAM,CAAC,IAAI;QAC3B,SAAS,YAAY,MAAM,CAAC,IAAI;QAChC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CACjC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAErC,yDAAyD;QACzD,qDAAqD;QACrD,IAAI,IAAI,YAAY,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC;YAC9D,OAAO,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,iDAAiD;QACjD,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,EAAE,KAAK,SAAS,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QAEpC,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,EAAE;YAChE,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,CACd,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QACvB,EAAE,CACH,EAAE,IAAI,EAAE,CAAC;IACV,OAAO,IAAI,iBAAiB,CAAC;QAC3B,SAAS,EAAE,YAAY;QACvB,UAAU,EAAE,YAAY;QACxB,OAAO;QACP,cAAc,EAAE,qBAAqB;QACrC,WAAW,EAAE,kBAAkB;KAChC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAW,EACX,OAAe,EACf,OAAqB;IAErB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;IAEhE,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC3B,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE;gBACjE,IAAI,EAAE,IAAI;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,GAAG,OAAO;YACV,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,2EAA2E;YAC3E,2EAA2E;YAC3E,4EAA4E;YAC5E,IAAI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC7B,oEAAoE;gBACpE,kEAAkE;gBAClE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC;YACvC,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,2BAA2B,OAAO,IAAI,EAAE,WAAW,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,IAAI,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5E,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAClC,YAAY,GAAG,YAAY,CAAC;IAC5B,MAAM,OAAO,GAAG,CACd,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QACvB,EAAE,CACH,EAAE,IAAI,EAAE,CAAC;IACV,mBAAmB,CACjB,IAAI,iBAAiB,CAAC;QACpB,SAAS,EAAE,YAAY;QACvB,UAAU,EAAE,YAAY;QACxB,OAAO;QACP,cAAc,EAAE,qBAAqB;QACrC,WAAW,EAAE,kBAAkB;KAChC,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -7,27 +7,21 @@ import { updateGlobalFetchTimeouts } from './fetch.js';
7
7
  import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
8
8
  import * as dnsPromises from 'node:dns/promises';
9
9
  import ipaddr from 'ipaddr.js';
10
- const { setGlobalDispatcher, Agent, EnvHttpProxyAgent, mockHolder } = vi.hoisted(() => ({
10
+ const { setGlobalDispatcher, Agent, EnvHttpProxyAgent } = vi.hoisted(() => ({
11
11
  setGlobalDispatcher: vi.fn(),
12
12
  Agent: vi.fn(),
13
13
  EnvHttpProxyAgent: vi.fn(),
14
- mockHolder: {
15
- buildConnector: vi.fn(() => vi.fn()),
16
- },
17
14
  }));
18
15
  vi.mock('undici', () => ({
19
16
  setGlobalDispatcher,
20
17
  Agent,
21
18
  EnvHttpProxyAgent,
22
- get buildConnector() {
23
- return mockHolder.buildConnector;
24
- },
25
19
  }));
26
20
  vi.mock('node:dns/promises', () => ({
27
21
  lookup: vi.fn(),
28
22
  }));
29
23
  // Import after mocks are established
30
- const { isPrivateIp, isPrivateIpAsync, isAddressPrivate, fetchWithTimeout, setGlobalProxy, createSafeProxyAgent, createSafeAgent, } = await import('./fetch.js');
24
+ const { isPrivateIp, isPrivateIpAsync, isAddressPrivate, fetchWithTimeout, setGlobalProxy, createSafeProxyAgent, } = await import('./fetch.js');
31
25
  describe('fetch utils', () => {
32
26
  beforeEach(() => {
33
27
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -100,15 +94,15 @@ describe('fetch utils', () => {
100
94
  });
101
95
  });
102
96
  describe('isPrivateIp', () => {
103
- it('should identify private IPs in URLs', async () => {
104
- expect(await isPrivateIp('http://10.0.0.1/')).toBe(true);
105
- expect(await isPrivateIp('https://127.0.0.1:8080/')).toBe(true);
106
- expect(await isPrivateIp('http://localhost/')).toBe(true);
107
- expect(await isPrivateIp('http://[::1]/')).toBe(true);
97
+ it('should identify private IPs in URLs', () => {
98
+ expect(isPrivateIp('http://10.0.0.1/')).toBe(true);
99
+ expect(isPrivateIp('https://127.0.0.1:8080/')).toBe(true);
100
+ expect(isPrivateIp('http://localhost/')).toBe(true);
101
+ expect(isPrivateIp('http://[::1]/')).toBe(true);
108
102
  });
109
- it('should identify public IPs in URLs as non-private', async () => {
110
- expect(await isPrivateIp('http://8.8.8.8/')).toBe(false);
111
- expect(await isPrivateIp('https://google.com/')).toBe(false);
103
+ it('should identify public IPs in URLs as non-private', () => {
104
+ expect(isPrivateIp('http://8.8.8.8/')).toBe(false);
105
+ expect(isPrivateIp('https://google.com/')).toBe(false);
112
106
  });
113
107
  });
114
108
  describe('isPrivateIpAsync', () => {
@@ -176,14 +170,6 @@ describe('fetch utils', () => {
176
170
  // Must NOT be classified as a timeout
177
171
  await expect(rejection).rejects.not.toThrow('timed out');
178
172
  });
179
- it('should route dispatcher to createSafeProxyAgent when proxy is configured', async () => {
180
- setGlobalProxy('http://proxy.example.com');
181
- vi.mocked(global.fetch).mockResolvedValueOnce(new Response('OK'));
182
- await fetchWithTimeout('http://example.com', 10_000);
183
- expect(global.fetch).toHaveBeenCalledWith('http://example.com', expect.objectContaining({
184
- dispatcher: expect.any(Object),
185
- }));
186
- });
187
173
  });
188
174
  describe('setGlobalProxy', () => {
189
175
  it('should configure EnvHttpProxyAgent with experiment flag timeout and noProxy', () => {
@@ -244,23 +230,5 @@ describe('fetch utils', () => {
244
230
  });
245
231
  });
246
232
  });
247
- describe('createSafeAgent', () => {
248
- it('should instantiate undici.Agent with connect handler bound', () => {
249
- createSafeAgent();
250
- expect(Agent).toHaveBeenCalledWith(expect.objectContaining({
251
- connect: expect.any(Function),
252
- }));
253
- });
254
- it('should throw fail-closed error if buildConnector is unavailable', () => {
255
- const original = mockHolder.buildConnector;
256
- mockHolder.buildConnector = undefined;
257
- try {
258
- expect(() => createSafeAgent()).toThrow('Security initialization failed: undici.buildConnector is not available.');
259
- }
260
- finally {
261
- mockHolder.buildConnector = original;
262
- }
263
- });
264
- });
265
233
  });
266
234
  //# sourceMappingURL=fetch.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.test.js","sourceRoot":"","sources":["../../../src/utils/fetch.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.test.js","sourceRoot":"","sources":["../../../src/utils/fetch.test.ts"],"names":[],"mappings":"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"}