@alpic-ai/sdk 0.0.0-dev.gf29ec86 → 0.0.0-dev.gf480db6
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/lib/emitter.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
//
|
|
2
|
-
// never throws on an unlistened "error" event, and swallows listener errors so
|
|
3
|
-
// observability can never break the operation that emitted the event.
|
|
1
|
+
// Unlike node's EventEmitter, this never throws on an unlistened "error" event and swallows listener errors so observability can never break the operation that emitted the event.
|
|
4
2
|
export class TypedEventEmitter {
|
|
5
3
|
listeners = new Map();
|
|
6
4
|
on(event, listener) {
|
|
@@ -20,9 +18,7 @@ export class TypedEventEmitter {
|
|
|
20
18
|
try {
|
|
21
19
|
listener(payload);
|
|
22
20
|
}
|
|
23
|
-
catch {
|
|
24
|
-
// Listener errors must never break the emitting operation.
|
|
25
|
-
}
|
|
21
|
+
catch { }
|
|
26
22
|
}
|
|
27
23
|
}
|
|
28
24
|
}
|
package/dist/lib/emitter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/lib/emitter.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/lib/emitter.ts"],"names":[],"mappings":"AAEA,mLAAmL;AACnL,MAAM,OAAO,iBAAiB;IACX,SAAS,GAAG,IAAI,GAAG,EAA0C,CAAC;IAE/E,EAAE,CAA2B,KAAQ,EAAE,QAA+B;QACpE,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAqB,CAAC;QACtE,GAAG,CAAC,GAAG,CAAC,QAA6B,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAA2B,KAAQ,EAAE,QAA+B;QACrE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,QAA6B,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,CAA2B,KAAQ,EAAE,OAAoB;QAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO;QACT,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACF,QAAkC,CAAC,OAAO,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;IACH,CAAC;CACF"}
|
package/dist/tunnel/tunnel.js
CHANGED
|
@@ -11,14 +11,10 @@ export class Tunnel {
|
|
|
11
11
|
this.deps = deps;
|
|
12
12
|
}
|
|
13
13
|
async open(opts) {
|
|
14
|
-
//
|
|
15
|
-
// `alpic` command, the skybridge dev server) don't pay its ~500KB load
|
|
16
|
-
// cost at startup — only when a tunnel is actually opened.
|
|
14
|
+
// Loaded lazily so non-tunnel consumers don't pay the patched pipenet bundle's ~500KB load cost at startup.
|
|
17
15
|
const pipenet = this.deps.pipenet ?? (await import("../vendor/pipenet.js")).pipenet;
|
|
18
16
|
const ticket = await this.deps.api.tunnels.getTicket.v1();
|
|
19
|
-
// ALPIC_TUNNEL_HOST
|
|
20
|
-
// override for a local (plain-HTTP) server, so default to http regardless of the host;
|
|
21
|
-
// pass an explicit https:// to force TLS.
|
|
17
|
+
// ALPIC_TUNNEL_HOST is a dev override pointing a real ticket at a locally-run (plain-HTTP) tunnel server, so default to http regardless of the host; pass an explicit https:// to force TLS.
|
|
22
18
|
const hostOverride = process.env.ALPIC_TUNNEL_HOST;
|
|
23
19
|
let tunnelHost;
|
|
24
20
|
let proto;
|
|
@@ -73,19 +69,7 @@ export class Tunnel {
|
|
|
73
69
|
listener(info);
|
|
74
70
|
}
|
|
75
71
|
});
|
|
76
|
-
//
|
|
77
|
-
// account's subdomain, the server closes our tunnel and rejects our reconnections
|
|
78
|
-
// (they target a session id that no longer exists), so each one connects and is
|
|
79
|
-
// dropped within milliseconds. pipenet's offlineTimeoutMs never fires for this — it
|
|
80
|
-
// only triggers when the server is unreachable entirely (failed connects emit no
|
|
81
|
-
// "dead"). A "dead" with a prior "open" means a socket reached the server and was
|
|
82
|
-
// dropped, so a sustained storm of them is the takeover signature.
|
|
83
|
-
//
|
|
84
|
-
// Normal serving also churns sockets: with the server's small keep-alive pool, most
|
|
85
|
-
// concurrent requests get their socket destroyed right after serving, emitting a
|
|
86
|
-
// "dead" each. A heavy page load can fire 15+ in a few seconds and look identical to
|
|
87
|
-
// a takeover. The discriminator: a real takeover routes all traffic to the new
|
|
88
|
-
// tunnel, so we serve zero requests during the storm. Ignore it while requests flow.
|
|
72
|
+
// Takeover by a newer tunnel shows up as a sustained storm of "dead" events with zero requests served (rejected reconnections reach the server and are dropped in milliseconds, so pipenet's offlineTimeoutMs never fires); normal serving also churns sockets, but only while requests flow, hence the lastRequestAt discriminator.
|
|
89
73
|
let drops = [];
|
|
90
74
|
socket.tunnelCluster?.on("dead", () => {
|
|
91
75
|
if (displaced || closed) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../../src/tunnel/tunnel.ts"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAElC,qEAAqE;AACrE,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,MAAM,cAAc,GAAG,EAAE,CAAC;AAsC1B,MAAM,OAAO,MAAM;IACY;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,IAAI,CAAC,IAAuB;QAChC,
|
|
1
|
+
{"version":3,"file":"tunnel.js","sourceRoot":"","sources":["../../src/tunnel/tunnel.ts"],"names":[],"mappings":"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"}
|
package/dist/vendor/pipenet.js
CHANGED
|
@@ -16574,18 +16574,18 @@ var {
|
|
|
16574
16574
|
create
|
|
16575
16575
|
} = axios_default;
|
|
16576
16576
|
|
|
16577
|
-
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=
|
|
16577
|
+
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=6563a9cc9b0f2a1e688a2ed680b80f8623092856e6c4c446e0cdc8d98f497ac9_supports-color@8.1.1/node_modules/pipenet/dist/Tunnel.js
|
|
16578
16578
|
var import_debug2 = __toESM(require_src(), 1);
|
|
16579
16579
|
import { EventEmitter as EventEmitter3 } from "events";
|
|
16580
16580
|
|
|
16581
|
-
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=
|
|
16581
|
+
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=6563a9cc9b0f2a1e688a2ed680b80f8623092856e6c4c446e0cdc8d98f497ac9_supports-color@8.1.1/node_modules/pipenet/dist/TunnelCluster.js
|
|
16582
16582
|
var import_debug = __toESM(require_src(), 1);
|
|
16583
16583
|
import { EventEmitter as EventEmitter2 } from "events";
|
|
16584
16584
|
import fs from "fs";
|
|
16585
16585
|
import net from "net";
|
|
16586
16586
|
import tls from "tls";
|
|
16587
16587
|
|
|
16588
|
-
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=
|
|
16588
|
+
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=6563a9cc9b0f2a1e688a2ed680b80f8623092856e6c4c446e0cdc8d98f497ac9_supports-color@8.1.1/node_modules/pipenet/dist/HeaderHostTransformer.js
|
|
16589
16589
|
import { Transform } from "stream";
|
|
16590
16590
|
var HeaderHostTransformer = class extends Transform {
|
|
16591
16591
|
host;
|
|
@@ -16603,7 +16603,7 @@ var HeaderHostTransformer = class extends Transform {
|
|
|
16603
16603
|
}
|
|
16604
16604
|
};
|
|
16605
16605
|
|
|
16606
|
-
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=
|
|
16606
|
+
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=6563a9cc9b0f2a1e688a2ed680b80f8623092856e6c4c446e0cdc8d98f497ac9_supports-color@8.1.1/node_modules/pipenet/dist/TunnelCluster.js
|
|
16607
16607
|
var log = (0, import_debug.default)("pipenet:client");
|
|
16608
16608
|
var TunnelCluster = class extends EventEmitter2 {
|
|
16609
16609
|
opts;
|
|
@@ -16703,7 +16703,7 @@ var TunnelCluster = class extends EventEmitter2 {
|
|
|
16703
16703
|
}
|
|
16704
16704
|
};
|
|
16705
16705
|
|
|
16706
|
-
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=
|
|
16706
|
+
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=6563a9cc9b0f2a1e688a2ed680b80f8623092856e6c4c446e0cdc8d98f497ac9_supports-color@8.1.1/node_modules/pipenet/dist/Tunnel.js
|
|
16707
16707
|
var log2 = (0, import_debug2.default)("pipenet:client");
|
|
16708
16708
|
var Tunnel = class extends EventEmitter3 {
|
|
16709
16709
|
cachedUrl;
|
|
@@ -16851,7 +16851,7 @@ var Tunnel = class extends EventEmitter3 {
|
|
|
16851
16851
|
}
|
|
16852
16852
|
};
|
|
16853
16853
|
|
|
16854
|
-
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=
|
|
16854
|
+
// ../../node_modules/.pnpm/pipenet@1.4.2_patch_hash=6563a9cc9b0f2a1e688a2ed680b80f8623092856e6c4c446e0cdc8d98f497ac9_supports-color@8.1.1/node_modules/pipenet/dist/pipenet.js
|
|
16855
16855
|
function pipenet(arg1, arg2, arg3) {
|
|
16856
16856
|
const options = typeof arg1 === "object" ? arg1 : { ...arg2, port: arg1 };
|
|
16857
16857
|
const callback = typeof arg1 === "object" ? arg2 : arg3;
|