aibroker 0.33.0 → 0.33.2
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.
|
@@ -81,15 +81,34 @@ export interface DecideOptions {
|
|
|
81
81
|
export declare function decide(state: WatchdogState, verdict: Verdict, now: number, opts?: DecideOptions): Decision;
|
|
82
82
|
/** The `tailscale` binary, or undefined when it is not installed here. */
|
|
83
83
|
export declare function tailscaleBinary(): string | undefined;
|
|
84
|
+
export interface CliResult {
|
|
85
|
+
ok: boolean;
|
|
86
|
+
stdout?: string;
|
|
87
|
+
error?: string;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Run the client, and report failure rather than swallowing it.
|
|
91
|
+
*
|
|
92
|
+
* The macOS app's CLI is not always usable from a background process: it wants
|
|
93
|
+
* to talk to the GUI app and answers "The Tailscale GUI failed to start" when
|
|
94
|
+
* it cannot. The first version of this file treated that error as "no funnel
|
|
95
|
+
* configured", so the watchdog returned quietly and looked exactly like a
|
|
96
|
+
* watchdog that was working — the precise failure it exists to prevent.
|
|
97
|
+
*/
|
|
98
|
+
export declare function runTailscale(bin: string, args: string[]): CliResult;
|
|
84
99
|
/**
|
|
85
100
|
* The node's funnel hostname, read from the client rather than configured.
|
|
86
101
|
*
|
|
87
102
|
* Hard-coding it would put one machine's name in the source and go stale the
|
|
88
103
|
* first time the node is renamed.
|
|
89
104
|
*/
|
|
90
|
-
export declare function funnelHostname(bin?: string | undefined):
|
|
105
|
+
export declare function funnelHostname(bin?: string | undefined): CliResult & {
|
|
106
|
+
hostname?: string;
|
|
107
|
+
};
|
|
91
108
|
/** Is a funnel even configured? Nothing to watch when it is not. */
|
|
92
|
-
export declare function funnelConfigured(bin?: string | undefined):
|
|
109
|
+
export declare function funnelConfigured(bin?: string | undefined): CliResult & {
|
|
110
|
+
configured?: boolean;
|
|
111
|
+
};
|
|
93
112
|
/** Public ingress addresses for the funnel hostname, via a public resolver. */
|
|
94
113
|
export declare function resolveIngress(hostname: string): Promise<string[]>;
|
|
95
114
|
/** One request to one ingress address, with SNI set to the funnel hostname. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"funnel-watchdog.d.ts","sourceRoot":"","sources":["../../src/daemon/funnel-watchdog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AA0BH,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhD,MAAM,WAAW,aAAa;IAC5B,6EAA6E;IAC7E,eAAe,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,YAAY,IAAI,aAAa,CAE5C;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAIxD;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,aAAkB,GACvB,QAAQ,CAyCV;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAEpD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,qBAAoB,GAAG,
|
|
1
|
+
{"version":3,"file":"funnel-watchdog.d.ts","sourceRoot":"","sources":["../../src/daemon/funnel-watchdog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AA0BH,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhD,MAAM,WAAW,aAAa;IAC5B,6EAA6E;IAC7E,eAAe,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,YAAY,IAAI,aAAa,CAE5C;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAIxD;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,aAAkB,GACvB,QAAQ,CAyCV;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAEpD;AAED,MAAM,WAAW,SAAS;IAAG,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CAAE;AAE5E;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,CASnE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,qBAAoB,GAAG,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAkBzF;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,GAAG,qBAAoB,GAAG,SAAS,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAY9F;AAED,+EAA+E;AAC/E,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAUxE;AAED,+EAA+E;AAC/E,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,SAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAuBvF;AAED,6CAA6C;AAC7C,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAI3E;AAED,+DAA+D;AAC/D,wBAAgB,SAAS,CAAC,GAAG,qBAAoB,GAAG,OAAO,CAU1D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,GAAE;IACxC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACrD,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,MAAM,IAAI,CAoHlB"}
|
|
@@ -120,6 +120,26 @@ export function decide(state, verdict, now, opts = {}) {
|
|
|
120
120
|
export function tailscaleBinary() {
|
|
121
121
|
return TAILSCALE_CANDIDATES.find((p) => existsSync(p));
|
|
122
122
|
}
|
|
123
|
+
/**
|
|
124
|
+
* Run the client, and report failure rather than swallowing it.
|
|
125
|
+
*
|
|
126
|
+
* The macOS app's CLI is not always usable from a background process: it wants
|
|
127
|
+
* to talk to the GUI app and answers "The Tailscale GUI failed to start" when
|
|
128
|
+
* it cannot. The first version of this file treated that error as "no funnel
|
|
129
|
+
* configured", so the watchdog returned quietly and looked exactly like a
|
|
130
|
+
* watchdog that was working — the precise failure it exists to prevent.
|
|
131
|
+
*/
|
|
132
|
+
export function runTailscale(bin, args) {
|
|
133
|
+
try {
|
|
134
|
+
const stdout = execFileSync(bin, args, { encoding: "utf8", timeout: 15_000, stdio: ["ignore", "pipe", "pipe"] });
|
|
135
|
+
return { ok: true, stdout };
|
|
136
|
+
}
|
|
137
|
+
catch (e) {
|
|
138
|
+
const err = e;
|
|
139
|
+
const text = (typeof err.stderr === "string" ? err.stderr : err.stderr?.toString()) || err.message || "unknown error";
|
|
140
|
+
return { ok: false, error: text.trim().split("\n")[0] };
|
|
141
|
+
}
|
|
142
|
+
}
|
|
123
143
|
/**
|
|
124
144
|
* The node's funnel hostname, read from the client rather than configured.
|
|
125
145
|
*
|
|
@@ -127,28 +147,42 @@ export function tailscaleBinary() {
|
|
|
127
147
|
* first time the node is renamed.
|
|
128
148
|
*/
|
|
129
149
|
export function funnelHostname(bin = tailscaleBinary()) {
|
|
150
|
+
// An explicit override keeps the probe running where the client cannot be
|
|
151
|
+
// queried. Watching is worth having on its own: it is what turns a silent
|
|
152
|
+
// outage into a log line, even when this process cannot pull the lever.
|
|
153
|
+
const override = process.env.AIBROKER_FUNNEL_HOST;
|
|
154
|
+
if (override)
|
|
155
|
+
return { ok: true, hostname: override };
|
|
130
156
|
if (!bin)
|
|
131
|
-
return
|
|
157
|
+
return { ok: false, error: "no tailscale binary" };
|
|
158
|
+
const r = runTailscale(bin, ["status", "--json"]);
|
|
159
|
+
if (!r.ok)
|
|
160
|
+
return r;
|
|
132
161
|
try {
|
|
133
|
-
const
|
|
134
|
-
|
|
135
|
-
|
|
162
|
+
const name = JSON.parse(r.stdout ?? "")?.Self?.DNSName;
|
|
163
|
+
return typeof name === "string" && name
|
|
164
|
+
? { ok: true, hostname: name.replace(/\.$/, "") }
|
|
165
|
+
: { ok: false, error: "client reported no DNS name" };
|
|
136
166
|
}
|
|
137
167
|
catch {
|
|
138
|
-
return
|
|
168
|
+
return { ok: false, error: "could not parse status output" };
|
|
139
169
|
}
|
|
140
170
|
}
|
|
141
171
|
/** Is a funnel even configured? Nothing to watch when it is not. */
|
|
142
172
|
export function funnelConfigured(bin = tailscaleBinary()) {
|
|
173
|
+
if (process.env.AIBROKER_FUNNEL_HOST)
|
|
174
|
+
return { ok: true, configured: true };
|
|
143
175
|
if (!bin)
|
|
144
|
-
return false;
|
|
176
|
+
return { ok: false, error: "no tailscale binary" };
|
|
177
|
+
const r = runTailscale(bin, ["serve", "status", "--json"]);
|
|
178
|
+
if (!r.ok)
|
|
179
|
+
return r;
|
|
145
180
|
try {
|
|
146
|
-
const
|
|
147
|
-
|
|
148
|
-
return Boolean(cfg?.AllowFunnel && Object.keys(cfg.AllowFunnel).length > 0);
|
|
181
|
+
const cfg = JSON.parse(r.stdout ?? "");
|
|
182
|
+
return { ok: true, configured: Boolean(cfg?.AllowFunnel && Object.keys(cfg.AllowFunnel).length > 0) };
|
|
149
183
|
}
|
|
150
184
|
catch {
|
|
151
|
-
return false;
|
|
185
|
+
return { ok: false, error: "could not parse serve output" };
|
|
152
186
|
}
|
|
153
187
|
}
|
|
154
188
|
/** Public ingress addresses for the funnel hostname, via a public resolver. */
|
|
@@ -224,6 +258,8 @@ export function startFunnelWatchdog(opts = {}) {
|
|
|
224
258
|
const heal = opts.heal ?? (() => reconnect(bin));
|
|
225
259
|
const state = initialState();
|
|
226
260
|
let stopped = false;
|
|
261
|
+
let watching = false;
|
|
262
|
+
let cliComplained = false;
|
|
227
263
|
let timer;
|
|
228
264
|
const arm = (ms) => {
|
|
229
265
|
if (stopped)
|
|
@@ -235,14 +271,46 @@ export function startFunnelWatchdog(opts = {}) {
|
|
|
235
271
|
if (stopped)
|
|
236
272
|
return;
|
|
237
273
|
try {
|
|
238
|
-
|
|
239
|
-
if (!hostname
|
|
274
|
+
let hostname = opts.hostname;
|
|
275
|
+
if (!hostname) {
|
|
276
|
+
const found = funnelHostname(bin);
|
|
277
|
+
if (!found.ok) {
|
|
278
|
+
// Cannot ask the client. Say it once — quietly returning here is what
|
|
279
|
+
// made the first version of this watchdog indistinguishable from a
|
|
280
|
+
// working one.
|
|
281
|
+
if (!cliComplained) {
|
|
282
|
+
cliComplained = true;
|
|
283
|
+
log(`funnel-watchdog: cannot query the Tailscale client — ${found.error}. ` +
|
|
284
|
+
"Set AIBROKER_FUNNEL_HOST to watch anyway (healing still needs the client).");
|
|
285
|
+
}
|
|
286
|
+
return arm(HEALTHY_INTERVAL_MS);
|
|
287
|
+
}
|
|
288
|
+
hostname = found.hostname;
|
|
289
|
+
}
|
|
290
|
+
const cfg = funnelConfigured(bin);
|
|
291
|
+
if (!cfg.ok) {
|
|
292
|
+
if (!cliComplained) {
|
|
293
|
+
cliComplained = true;
|
|
294
|
+
log(`funnel-watchdog: cannot read the serve config — ${cfg.error}`);
|
|
295
|
+
}
|
|
296
|
+
return arm(HEALTHY_INTERVAL_MS);
|
|
297
|
+
}
|
|
298
|
+
if (!hostname || !cfg.configured) {
|
|
240
299
|
// No funnel to watch. Not an error — the OTA hub and the webhook are
|
|
241
300
|
// both optional — so check again later rather than giving up for good.
|
|
242
301
|
return arm(HEALTHY_INTERVAL_MS);
|
|
243
302
|
}
|
|
303
|
+
cliComplained = false;
|
|
244
304
|
const results = await probe(hostname);
|
|
245
305
|
const verdict = classify(results);
|
|
306
|
+
if (!watching) {
|
|
307
|
+
// Say once that this is running. A watchdog whose healthy path is
|
|
308
|
+
// silent is indistinguishable from one that never started — which is
|
|
309
|
+
// the same invisibility it exists to fix.
|
|
310
|
+
watching = true;
|
|
311
|
+
log(`funnel-watchdog: watching public ingress across ${results.length} relay(s), ` +
|
|
312
|
+
`every ${Math.round(HEALTHY_INTERVAL_MS / 1000)}s — currently ${verdict}`);
|
|
313
|
+
}
|
|
246
314
|
const decision = decide(state, verdict, Date.now());
|
|
247
315
|
if (verdict === "down" && !state.announced) {
|
|
248
316
|
state.announced = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"funnel-watchdog.js","sourceRoot":"","sources":["../../src/daemon/funnel-watchdog.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"funnel-watchdog.js","sourceRoot":"","sources":["../../src/daemon/funnel-watchdog.ts"],"names":[],"mappings":"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"}
|