@inkbox/sdk 0.4.7 → 0.4.8
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/tunnels/client/_runtime.d.ts +45 -10
- package/dist/tunnels/client/_runtime.d.ts.map +1 -1
- package/dist/tunnels/client/_runtime.js +423 -183
- package/dist/tunnels/client/_runtime.js.map +1 -1
- package/dist/tunnels/client/_ws.d.ts +12 -0
- package/dist/tunnels/client/_ws.d.ts.map +1 -1
- package/dist/tunnels/client/_ws.js +26 -1
- package/dist/tunnels/client/_ws.js.map +1 -1
- package/dist/tunnels/client/_ws_url_edge_bridge.d.ts +1 -1
- package/dist/tunnels/client/_ws_url_edge_bridge.d.ts.map +1 -1
- package/dist/tunnels/client/_ws_url_edge_bridge.js +17 -2
- package/dist/tunnels/client/_ws_url_edge_bridge.js.map +1 -1
- package/dist/tunnels/client/index.d.ts +1 -1
- package/dist/tunnels/client/index.d.ts.map +1 -1
- package/dist/tunnels/client/index.js +1 -1
- package/dist/tunnels/client/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -30,6 +30,10 @@ export declare const PING_INTERVAL_MS = 20000;
|
|
|
30
30
|
export declare const PING_ACK_TIMEOUT_MS = 10000;
|
|
31
31
|
export declare const BACKOFF_CAP_SEC = 30;
|
|
32
32
|
export declare const BACKOFF_JITTER = 0.25;
|
|
33
|
+
export declare const DRAINING_CONNECTION_CLOSE_TIMEOUT_MS = 90000;
|
|
34
|
+
export declare const HANDOFF_REDIAL_BUDGET_MS = 30000;
|
|
35
|
+
export declare const HANDOFF_SETTLE_MS = 2000;
|
|
36
|
+
export declare const POST_ACTIVE_WAIT_MS = 5000;
|
|
33
37
|
export declare const DEFAULT_INBOUND_BODY_BYTES: number;
|
|
34
38
|
export declare const DEFAULT_OUTBOUND_BODY_BYTES: number;
|
|
35
39
|
export declare class TunnelAuthError extends Error {
|
|
@@ -95,19 +99,17 @@ export declare class TunnelRuntime {
|
|
|
95
99
|
private readonly onStatus?;
|
|
96
100
|
private readonly rng;
|
|
97
101
|
private readonly http2Connect;
|
|
98
|
-
private
|
|
99
|
-
private
|
|
100
|
-
private
|
|
101
|
-
private
|
|
102
|
-
private
|
|
102
|
+
private active;
|
|
103
|
+
private readonly draining;
|
|
104
|
+
private nextConnId;
|
|
105
|
+
private handoffInFlight;
|
|
106
|
+
private lastHandoffAt;
|
|
107
|
+
private handoffPromise;
|
|
108
|
+
private wakeSupervisor;
|
|
103
109
|
private stop;
|
|
104
|
-
private readonly streams;
|
|
105
|
-
private readonly bridgeStreamIds;
|
|
106
110
|
private readonly tasks;
|
|
107
111
|
private passthroughDispatch;
|
|
108
112
|
private readonly undiciAgentCache;
|
|
109
|
-
private pingHandle;
|
|
110
|
-
private pingAbort;
|
|
111
113
|
private shutdownAbort;
|
|
112
114
|
constructor(opts: TunnelRuntimeOpts);
|
|
113
115
|
/**
|
|
@@ -116,9 +118,30 @@ export declare class TunnelRuntime {
|
|
|
116
118
|
* secret) or after `aclose()`.
|
|
117
119
|
*/
|
|
118
120
|
serveForever(): Promise<void>;
|
|
119
|
-
/** Graceful shutdown. Signals all loops to exit; closes
|
|
121
|
+
/** Graceful shutdown. Signals all loops to exit; closes every conn. */
|
|
120
122
|
aclose(): Promise<void>;
|
|
123
|
+
/**
|
|
124
|
+
* Emit GOAWAY then close/destroy a connection's session, bounded by a
|
|
125
|
+
* short grace. The intake pool parks streams indefinitely, so a plain
|
|
126
|
+
* `close()` would never resolve; we GOAWAY then destroy after 250ms.
|
|
127
|
+
*/
|
|
128
|
+
private closeConnection;
|
|
121
129
|
private runOnce;
|
|
130
|
+
/** Spawn a connection's intake pool + ping loop (cold open or handoff). */
|
|
131
|
+
private startServing;
|
|
132
|
+
/** Resolve once the supervised conn closes OR a handoff swaps active. */
|
|
133
|
+
private waitCloseOrHandoff;
|
|
134
|
+
private signalSupervisor;
|
|
135
|
+
/**
|
|
136
|
+
* On a NO_ERROR GOAWAY, mark the old conn draining and stand up a fresh
|
|
137
|
+
* connection before closing it. In-band: never trips the backoff loop.
|
|
138
|
+
*/
|
|
139
|
+
private beginHandoff;
|
|
140
|
+
private runHandoff;
|
|
141
|
+
/** Dial + hello + park a replacement, retrying transient hello failures. */
|
|
142
|
+
private makeReplacementConnection;
|
|
143
|
+
/** Wait for a draining conn's bridges to finish, then close it. */
|
|
144
|
+
private drainOldConnection;
|
|
122
145
|
private openConnection;
|
|
123
146
|
private waitForSessionClose;
|
|
124
147
|
private sendHello;
|
|
@@ -138,6 +161,18 @@ export declare class TunnelRuntime {
|
|
|
138
161
|
private openWsBridge;
|
|
139
162
|
private dispatchTcpStream;
|
|
140
163
|
private writeBridgeFrame;
|
|
164
|
+
/**
|
|
165
|
+
* Post an HTTP webhook reply on the CURRENT active connection (not the
|
|
166
|
+
* connection the envelope arrived on). After a GOAWAY the old connection
|
|
167
|
+
* refuses new streams, so an in-flight reply must ride the new one, which
|
|
168
|
+
* lands on the new task. `origin` is the fallback if no handoff is active.
|
|
169
|
+
* If a handoff is mid-dial, wait (bounded) for it to publish the new
|
|
170
|
+
* active; if none is healthy in time, drop the reply (the server deadline
|
|
171
|
+
* + third-party retry recover it).
|
|
172
|
+
*/
|
|
173
|
+
private postHttpResponse;
|
|
174
|
+
/** The active conn if it can take new streams, else the origin if it can. */
|
|
175
|
+
private pickReplyConnection;
|
|
141
176
|
private postResponse;
|
|
142
177
|
private notifyStatus;
|
|
143
178
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_runtime.d.ts","sourceRoot":"","sources":["../../../src/tunnels/client/_runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAGpC,OAAO,KAAK,EAAE,kBAAkB,EAAqB,MAAM,YAAY,CAAC;AAiBxE,OAAO,EAEL,KAAK,aAAa,EAEnB,MAAM,eAAe,CAAC;AAiBvB,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,WAAW,CAAC;AAY3D,OAAO,
|
|
1
|
+
{"version":3,"file":"_runtime.d.ts","sourceRoot":"","sources":["../../../src/tunnels/client/_runtime.ts"],"names":[],"mappings":"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"}
|