@kaitranntt/ccs 7.47.0-dev.4 → 7.47.0-dev.5
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.
|
@@ -40,20 +40,13 @@ export interface RemoteProxyClientConfig {
|
|
|
40
40
|
/**
|
|
41
41
|
* Check health of remote CLIProxyAPI instance
|
|
42
42
|
*
|
|
43
|
-
* Uses
|
|
44
|
-
*
|
|
43
|
+
* Uses root endpoint (/) for health check since CLIProxyAPI doesn't expose /health.
|
|
44
|
+
* Root is cheap and avoids false negatives from slower model-list endpoints.
|
|
45
45
|
*
|
|
46
46
|
* @param config Remote proxy client configuration
|
|
47
47
|
* @returns RemoteProxyStatus with reachability and latency
|
|
48
48
|
*/
|
|
49
49
|
export declare function checkRemoteProxy(config: RemoteProxyClientConfig): Promise<RemoteProxyStatus>;
|
|
50
|
-
/**
|
|
51
|
-
* Test connection to remote CLIProxyAPI (alias for dashboard use)
|
|
52
|
-
*
|
|
53
|
-
* This is an alias for checkRemoteProxy() for semantic clarity in UI contexts.
|
|
54
|
-
*
|
|
55
|
-
* @param config Remote proxy client configuration
|
|
56
|
-
* @returns RemoteProxyStatus with reachability and latency
|
|
57
|
-
*/
|
|
50
|
+
/** Alias for dashboard connection tests. */
|
|
58
51
|
export declare function testConnection(config: RemoteProxyClientConfig): Promise<RemoteProxyStatus>;
|
|
59
52
|
//# sourceMappingURL=remote-proxy-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-proxy-client.d.ts","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,0CAA0C;AAC1C,MAAM,MAAM,oBAAoB,GAC5B,oBAAoB,GACpB,SAAS,GACT,aAAa,GACb,YAAY,GACZ,qBAAqB,GACrB,SAAS,CAAC;AAEd,qDAAqD;AACrD,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,SAAS,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC;AAED,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB;IACtC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAiJD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"remote-proxy-client.d.ts","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,0CAA0C;AAC1C,MAAM,MAAM,oBAAoB,GAC5B,oBAAoB,GACpB,SAAS,GACT,aAAa,GACb,YAAY,GACZ,qBAAqB,GACrB,SAAS,CAAC;AAEd,qDAAqD;AACrD,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,SAAS,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC;AAED,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB;IACtC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAiJD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,iBAAiB,CAAC,CAuI5B;AAED,4CAA4C;AAC5C,wBAAsB,cAAc,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAEhG"}
|
|
@@ -152,8 +152,8 @@ function createHttpsAgent(allowSelfSigned) {
|
|
|
152
152
|
/**
|
|
153
153
|
* Check health of remote CLIProxyAPI instance
|
|
154
154
|
*
|
|
155
|
-
* Uses
|
|
156
|
-
*
|
|
155
|
+
* Uses root endpoint (/) for health check since CLIProxyAPI doesn't expose /health.
|
|
156
|
+
* Root is cheap and avoids false negatives from slower model-list endpoints.
|
|
157
157
|
*
|
|
158
158
|
* @param config Remote proxy client configuration
|
|
159
159
|
* @returns RemoteProxyStatus with reachability and latency
|
|
@@ -169,12 +169,12 @@ async function checkRemoteProxy(config) {
|
|
|
169
169
|
errorCode: 'UNKNOWN',
|
|
170
170
|
};
|
|
171
171
|
}
|
|
172
|
-
// Use
|
|
173
|
-
const url = buildProxyUrl(host, port, protocol, '/
|
|
172
|
+
// Use root endpoint for liveness check - cheap and available across deployments
|
|
173
|
+
const url = buildProxyUrl(host, port, protocol, '/');
|
|
174
174
|
const startTime = Date.now();
|
|
175
|
+
const controller = new AbortController();
|
|
176
|
+
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
175
177
|
try {
|
|
176
|
-
const controller = new AbortController();
|
|
177
|
-
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
178
178
|
// Build request options
|
|
179
179
|
const headers = {
|
|
180
180
|
Accept: 'application/json',
|
|
@@ -191,8 +191,18 @@ async function checkRemoteProxy(config) {
|
|
|
191
191
|
// Use native https module for self-signed cert support
|
|
192
192
|
response = await new Promise((resolve, reject) => {
|
|
193
193
|
const agent = createHttpsAgent(true);
|
|
194
|
+
let settled = false;
|
|
195
|
+
const settle = (callback) => {
|
|
196
|
+
if (settled)
|
|
197
|
+
return;
|
|
198
|
+
settled = true;
|
|
199
|
+
clearTimeout(reqTimeout);
|
|
200
|
+
callback();
|
|
201
|
+
};
|
|
194
202
|
const reqTimeout = setTimeout(() => {
|
|
195
|
-
|
|
203
|
+
const timeoutError = new Error('Request timeout');
|
|
204
|
+
req.destroy(timeoutError);
|
|
205
|
+
settle(() => reject(timeoutError));
|
|
196
206
|
}, timeout);
|
|
197
207
|
const req = https.request(url, {
|
|
198
208
|
method: 'GET',
|
|
@@ -200,23 +210,21 @@ async function checkRemoteProxy(config) {
|
|
|
200
210
|
agent,
|
|
201
211
|
timeout,
|
|
202
212
|
}, (res) => {
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
res.
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
}));
|
|
211
|
-
});
|
|
213
|
+
// Health check only needs response headers; don't wait for full body.
|
|
214
|
+
// This avoids timeout false negatives when servers stream slower payloads.
|
|
215
|
+
res.resume();
|
|
216
|
+
settle(() => resolve(new Response(null, {
|
|
217
|
+
status: res.statusCode || 500,
|
|
218
|
+
statusText: res.statusMessage ?? '',
|
|
219
|
+
})));
|
|
212
220
|
});
|
|
213
221
|
req.on('error', (err) => {
|
|
214
|
-
|
|
215
|
-
reject(err);
|
|
222
|
+
settle(() => reject(err));
|
|
216
223
|
});
|
|
217
224
|
req.on('timeout', () => {
|
|
218
|
-
|
|
219
|
-
|
|
225
|
+
const timeoutError = new Error('Request timeout');
|
|
226
|
+
req.destroy(timeoutError);
|
|
227
|
+
settle(() => reject(timeoutError));
|
|
220
228
|
});
|
|
221
229
|
req.end();
|
|
222
230
|
});
|
|
@@ -228,7 +236,6 @@ async function checkRemoteProxy(config) {
|
|
|
228
236
|
headers,
|
|
229
237
|
});
|
|
230
238
|
}
|
|
231
|
-
clearTimeout(timeoutId);
|
|
232
239
|
const latencyMs = Date.now() - startTime;
|
|
233
240
|
// Check for auth failure
|
|
234
241
|
if (response.status === 401 || response.status === 403) {
|
|
@@ -261,16 +268,12 @@ async function checkRemoteProxy(config) {
|
|
|
261
268
|
errorCode,
|
|
262
269
|
};
|
|
263
270
|
}
|
|
271
|
+
finally {
|
|
272
|
+
clearTimeout(timeoutId);
|
|
273
|
+
}
|
|
264
274
|
}
|
|
265
275
|
exports.checkRemoteProxy = checkRemoteProxy;
|
|
266
|
-
/**
|
|
267
|
-
* Test connection to remote CLIProxyAPI (alias for dashboard use)
|
|
268
|
-
*
|
|
269
|
-
* This is an alias for checkRemoteProxy() for semantic clarity in UI contexts.
|
|
270
|
-
*
|
|
271
|
-
* @param config Remote proxy client configuration
|
|
272
|
-
* @returns RemoteProxyStatus with reachability and latency
|
|
273
|
-
*/
|
|
276
|
+
/** Alias for dashboard connection tests. */
|
|
274
277
|
async function testConnection(config) {
|
|
275
278
|
return checkRemoteProxy(config);
|
|
276
279
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-proxy-client.js","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"remote-proxy-client.js","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"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"}
|