@iicp/client 0.7.72 → 0.7.73
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/README.md +3 -3
- package/dist/tunnel.d.ts +2 -0
- package/dist/tunnel.d.ts.map +1 -1
- package/dist/tunnel.js +41 -2
- package/dist/tunnel.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -23,12 +23,12 @@ npm install @iicp/client@latest
|
|
|
23
23
|
# pnpm add @iicp/client@latest
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
> **Upgrade note (0.7.
|
|
26
|
+
> **Upgrade note (0.7.73)** — upgrade provider nodes so Quick Tunnel endpoints
|
|
27
27
|
> recover safely after sleep, idle, Cloudflare edge drops, and local DNS
|
|
28
28
|
> propagation lag on freshly-created `trycloudflare.com` URLs. Tunnel
|
|
29
29
|
> twilight/recovery still heartbeats as unavailable and only re-registers once
|
|
30
30
|
> public `/iicp/health` verifies; supervised services and Docker containers now
|
|
31
|
-
> fail visibly so launchd/systemd/Docker can restart instead of staying stuck.
|
|
31
|
+
> fail visibly so launchd/systemd/Docker can restart instead of staying stuck. This release also pauses accountless Cloudflare Quick Tunnel creation after `429` / `1015` rate limits; persistent relays should use a named tunnel or `IICP_PUBLIC_ENDPOINT`.
|
|
32
32
|
|
|
33
33
|
### Keeping provider nodes current
|
|
34
34
|
|
|
@@ -42,7 +42,7 @@ If a node is older than 0.7.67, perform one manual upgrade/restart first,
|
|
|
42
42
|
especially for Dockerized Python or TypeScript providers: early updater wiring
|
|
43
43
|
did not reliably cover every normal `serve` path. For Docker, use a Compose
|
|
44
44
|
`restart: unless-stopped` policy (or `docker run --restart unless-stopped`) so
|
|
45
|
-
0.7.
|
|
45
|
+
0.7.73 can intentionally exit from a confirmed tunnel-dead state and let Docker
|
|
46
46
|
bring it back cleanly.
|
|
47
47
|
|
|
48
48
|
> **Upgrade note (0.5.3)** — if you operate a node and use the native IICP
|
package/dist/tunnel.d.ts
CHANGED
|
@@ -33,6 +33,7 @@ export declare const TUNNEL_HEALTH_INTERVAL_MS = 30000;
|
|
|
33
33
|
export declare const TUNNEL_HEALTH_MAX_FAILS = 2;
|
|
34
34
|
export declare const TUNNEL_VERIFY_TIMEOUT_MS = 30000;
|
|
35
35
|
export declare const TUNNEL_DOH_TIMEOUT_MS = 5000;
|
|
36
|
+
export declare const TUNNEL_RATE_LIMIT_COOLDOWN_MS: number;
|
|
36
37
|
export declare const TUNNEL_DEAD_RETRY_INITIAL_MS = 30000;
|
|
37
38
|
export declare const TUNNEL_DEAD_RETRY_MAX_MS = 300000;
|
|
38
39
|
export type TunnelState = "ready" | "twilight" | "recovering" | "dead";
|
|
@@ -46,6 +47,7 @@ export interface TunnelWatchOptions {
|
|
|
46
47
|
verifyTimeoutMs?: number;
|
|
47
48
|
deadRetryDelayMs?: (attempt: number) => number;
|
|
48
49
|
}
|
|
50
|
+
export declare function __resetQuickTunnelRateLimitForTests(): void;
|
|
49
51
|
export declare const INSTALL_HINT: string;
|
|
50
52
|
/** Locate the cloudflared binary on PATH, or null (we never auto-install it). */
|
|
51
53
|
export declare function cloudflaredPath(): string | null;
|
package/dist/tunnel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../src/tunnel.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAM9D,mFAAmF;AACnF,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAC9C;;;;GAIG;AACH,eAAO,MAAM,YAAY,IAAI,CAAC;AAC9B;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAChD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAC/C,eAAO,MAAM,qBAAqB,OAAQ,CAAC;AAC3C,eAAO,MAAM,4BAA4B,QAAS,CAAC;AACnD,eAAO,MAAM,wBAAwB,SAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../src/tunnel.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAM9D,mFAAmF;AACnF,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAC9C;;;;GAIG;AACH,eAAO,MAAM,YAAY,IAAI,CAAC;AAC9B;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAChD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAC/C,eAAO,MAAM,qBAAqB,OAAQ,CAAC;AAC3C,eAAO,MAAM,6BAA6B,QAAc,CAAC;AACzD,eAAO,MAAM,4BAA4B,QAAS,CAAC;AACnD,eAAO,MAAM,wBAAwB,SAAU,CAAC;AAIhD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CAAC;AACvE,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,gBAAgB,GAAG,IAAI,CAAC;IAC7C,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;CAChD;AAoDD,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D;AAuED,eAAO,MAAM,YAAY,QAI0B,CAAC;AAEpD,iFAAiF;AACjF,wBAAgB,eAAe,IAAI,MAAM,GAAG,IAAI,CAe/C;AAED,6EAA6E;AAC7E,qBAAa,WAAW;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAC,CAAiC;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;gBAE3B,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAS9E,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAAE,MAAM,EAAE,MAAM,IAAI,EAAE,OAAO,GAAE,kBAAuB,GAAG,IAAI;IA2HlG,yEAAyE;IACzE,KAAK,IAAI,IAAI;CASd;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAgC,EAC3C,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,CAAC,CAkEtB"}
|
package/dist/tunnel.js
CHANGED
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
* hook so a normal exit never orphans the child).
|
|
17
17
|
*/
|
|
18
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.QuickTunnel = exports.INSTALL_HINT = exports.TUNNEL_DEAD_RETRY_MAX_MS = exports.TUNNEL_DEAD_RETRY_INITIAL_MS = exports.TUNNEL_DOH_TIMEOUT_MS = exports.TUNNEL_VERIFY_TIMEOUT_MS = exports.TUNNEL_HEALTH_MAX_FAILS = exports.TUNNEL_HEALTH_INTERVAL_MS = exports.MAX_RESPAWNS = exports.TUNNEL_START_TIMEOUT_MS = void 0;
|
|
19
|
+
exports.QuickTunnel = exports.INSTALL_HINT = exports.TUNNEL_DEAD_RETRY_MAX_MS = exports.TUNNEL_DEAD_RETRY_INITIAL_MS = exports.TUNNEL_RATE_LIMIT_COOLDOWN_MS = exports.TUNNEL_DOH_TIMEOUT_MS = exports.TUNNEL_VERIFY_TIMEOUT_MS = exports.TUNNEL_HEALTH_MAX_FAILS = exports.TUNNEL_HEALTH_INTERVAL_MS = exports.MAX_RESPAWNS = exports.TUNNEL_START_TIMEOUT_MS = void 0;
|
|
20
|
+
exports.__resetQuickTunnelRateLimitForTests = __resetQuickTunnelRateLimitForTests;
|
|
20
21
|
exports.cloudflaredPath = cloudflaredPath;
|
|
21
22
|
exports.openQuickTunnel = openQuickTunnel;
|
|
22
23
|
const node_child_process_1 = require("node:child_process");
|
|
@@ -42,8 +43,10 @@ exports.TUNNEL_HEALTH_INTERVAL_MS = 30_000;
|
|
|
42
43
|
exports.TUNNEL_HEALTH_MAX_FAILS = 2;
|
|
43
44
|
exports.TUNNEL_VERIFY_TIMEOUT_MS = 30_000;
|
|
44
45
|
exports.TUNNEL_DOH_TIMEOUT_MS = 5_000;
|
|
46
|
+
exports.TUNNEL_RATE_LIMIT_COOLDOWN_MS = 15 * 60_000;
|
|
45
47
|
exports.TUNNEL_DEAD_RETRY_INITIAL_MS = 30_000;
|
|
46
48
|
exports.TUNNEL_DEAD_RETRY_MAX_MS = 300_000;
|
|
49
|
+
let quickTunnelRateLimitUntil = 0;
|
|
47
50
|
function trycloudflareHost(url) {
|
|
48
51
|
if (!url.trim().startsWith("https://"))
|
|
49
52
|
return null;
|
|
@@ -68,6 +71,29 @@ function isLikelyDnsError(exc) {
|
|
|
68
71
|
msg.includes("enotfound") ||
|
|
69
72
|
msg.includes("eai_again"));
|
|
70
73
|
}
|
|
74
|
+
function rateLimitCooldownMs() {
|
|
75
|
+
const raw = process.env.IICP_TUNNEL_RATE_LIMIT_COOLDOWN_S;
|
|
76
|
+
const seconds = raw ? Number.parseInt(raw, 10) : Number.NaN;
|
|
77
|
+
return Number.isFinite(seconds) && seconds > 0 ? seconds * 1000 : exports.TUNNEL_RATE_LIMIT_COOLDOWN_MS;
|
|
78
|
+
}
|
|
79
|
+
function quickTunnelRateLimitRemainingMs() {
|
|
80
|
+
return Math.max(0, quickTunnelRateLimitUntil - Date.now());
|
|
81
|
+
}
|
|
82
|
+
function markQuickTunnelRateLimited() {
|
|
83
|
+
const cooldown = rateLimitCooldownMs();
|
|
84
|
+
quickTunnelRateLimitUntil = Date.now() + cooldown;
|
|
85
|
+
return cooldown;
|
|
86
|
+
}
|
|
87
|
+
function cloudflaredOutputIsRateLimited(lines) {
|
|
88
|
+
const joined = lines.join(" ").toLowerCase();
|
|
89
|
+
return (joined.includes("429") ||
|
|
90
|
+
joined.includes("too many requests") ||
|
|
91
|
+
joined.includes("error code: 1015") ||
|
|
92
|
+
joined.includes("rate limit"));
|
|
93
|
+
}
|
|
94
|
+
function __resetQuickTunnelRateLimitForTests() {
|
|
95
|
+
quickTunnelRateLimitUntil = 0;
|
|
96
|
+
}
|
|
71
97
|
async function dohHasAnswer(host, recordType) {
|
|
72
98
|
const ctrl = new AbortController();
|
|
73
99
|
const timer = setTimeout(() => ctrl.abort(), exports.TUNNEL_DOH_TIMEOUT_MS);
|
|
@@ -325,6 +351,12 @@ exports.QuickTunnel = QuickTunnel;
|
|
|
325
351
|
*/
|
|
326
352
|
function openQuickTunnel(localPort, timeoutMs = exports.TUNNEL_START_TIMEOUT_MS, binary) {
|
|
327
353
|
return new Promise((resolve, reject) => {
|
|
354
|
+
const remainingMs = quickTunnelRateLimitRemainingMs();
|
|
355
|
+
if (remainingMs > 0) {
|
|
356
|
+
reject(new Error(`accountless Quick Tunnel creation paused for ${Math.ceil(remainingMs / 1000)}s after Cloudflare rate limiting; ` +
|
|
357
|
+
"retry later or configure a named tunnel / IICP_PUBLIC_ENDPOINT"));
|
|
358
|
+
return;
|
|
359
|
+
}
|
|
328
360
|
const resolved = binary ?? cloudflaredPath();
|
|
329
361
|
if (!resolved) {
|
|
330
362
|
reject(new Error(exports.INSTALL_HINT));
|
|
@@ -335,7 +367,14 @@ function openQuickTunnel(localPort, timeoutMs = exports.TUNNEL_START_TIMEOUT_MS,
|
|
|
335
367
|
});
|
|
336
368
|
let settled = false;
|
|
337
369
|
const lastLines = [];
|
|
338
|
-
const errorWithOutput = (reason) =>
|
|
370
|
+
const errorWithOutput = (reason) => {
|
|
371
|
+
let out = lastLines.length ? `${reason}; last cloudflared output: ${lastLines.join(" | ")}` : reason;
|
|
372
|
+
if (cloudflaredOutputIsRateLimited(lastLines)) {
|
|
373
|
+
const cooldown = markQuickTunnelRateLimited();
|
|
374
|
+
out += `; accountless Quick Tunnel rate limit detected — pausing tunnel creation for ${Math.ceil(cooldown / 1000)}s`;
|
|
375
|
+
}
|
|
376
|
+
return out;
|
|
377
|
+
};
|
|
339
378
|
const timer = setTimeout(() => {
|
|
340
379
|
if (settled)
|
|
341
380
|
return;
|
package/dist/tunnel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../src/tunnel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../src/tunnel.ts"],"names":[],"mappings":"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"}
|