@camstack/addon-tailscale 1.2.53 → 1.2.55
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/client/tailscale.addon.js +1 -1
- package/dist/client/tailscale.addon.mjs +1 -1
- package/dist/{dist-BFbW-DND.js → dist-BmbP0N1f.js} +44 -5
- package/dist/{dist-DCvDQ86T.mjs → dist-DSSjHdog.mjs} +44 -5
- package/dist/ingress/tailscale-ingress.addon.js +1 -1
- package/dist/ingress/tailscale-ingress.addon.mjs +1 -1
- package/package.json +1 -1
|
@@ -24,7 +24,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
24
24
|
enumerable: true
|
|
25
25
|
}) : target, mod));
|
|
26
26
|
//#endregion
|
|
27
|
-
const require_dist = require("../dist-
|
|
27
|
+
const require_dist = require("../dist-BmbP0N1f.js");
|
|
28
28
|
let node_child_process = require("node:child_process");
|
|
29
29
|
let node_util = require("node:util");
|
|
30
30
|
let node_fs = require("node:fs");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as EventCategory, i as BaseAddon, n as networkAccessCapability, r as BOOT_RECOVERY_BACKOFF_MS, t as meshNetworkCapability } from "../dist-
|
|
1
|
+
import { a as EventCategory, i as BaseAddon, n as networkAccessCapability, r as BOOT_RECOVERY_BACKOFF_MS, t as meshNetworkCapability } from "../dist-DSSjHdog.mjs";
|
|
2
2
|
import { execFile, spawn } from "node:child_process";
|
|
3
3
|
import { promisify } from "node:util";
|
|
4
4
|
import * as fs from "node:fs";
|
|
@@ -13274,6 +13274,35 @@ method(_void(), array(string()).readonly(), { auth: "admin" }), method(object({
|
|
|
13274
13274
|
auth: "admin"
|
|
13275
13275
|
});
|
|
13276
13276
|
/**
|
|
13277
|
+
* Transport bounds for AI capability methods.
|
|
13278
|
+
*
|
|
13279
|
+
* Its own module because `llm.cap.ts` and `llm-runtime.cap.ts` already import
|
|
13280
|
+
* each other: declaring the constant in either one hands the other `undefined`
|
|
13281
|
+
* at module-init time, and an undefined `timeoutMs` silently falls back to the
|
|
13282
|
+
* kernel's 60 s default — the exact failure this constant exists to prevent,
|
|
13283
|
+
* reintroduced invisibly. Found by the guard, not by review.
|
|
13284
|
+
*/
|
|
13285
|
+
/**
|
|
13286
|
+
* Ceiling for a cap method that runs inference or loads a model.
|
|
13287
|
+
*
|
|
13288
|
+
* Deliberately far above anything the AI layer itself may wait for (a summary
|
|
13289
|
+
* asks 180 s by default, a rule may ask 600 s), because the TRANSPORT must
|
|
13290
|
+
* never be the layer that gives up first: when it does, the failure is
|
|
13291
|
+
* reported as a transport error for a model that was still thinking, naming
|
|
13292
|
+
* the wrong layer and hiding the real one.
|
|
13293
|
+
*
|
|
13294
|
+
* Measured 2026-09-03: a 6-image vision request needs 44.8 s warm and ~20 s
|
|
13295
|
+
* more on a cold model load. With no declaration every digest failed at
|
|
13296
|
+
* exactly 60 s and shipped without its text.
|
|
13297
|
+
*
|
|
13298
|
+
* A ceiling, not a budget. The AI layer's own timeouts (the rule's `timeoutMs`,
|
|
13299
|
+
* the profile's `timeoutMs` / `firstTokenTimeoutMs`) remain the things that
|
|
13300
|
+
* decide when to stop, because only they can say WHY.
|
|
13301
|
+
*/
|
|
13302
|
+
var AI_CAP_TRANSPORT_TIMEOUT_MS = 6e5;
|
|
13303
|
+
/** A multi-gigabyte download. An hour is not generous, it is honest. */
|
|
13304
|
+
var AI_MODEL_INSTALL_TIMEOUT_MS = 60 * 6e4;
|
|
13305
|
+
/**
|
|
13277
13306
|
* Shared LLM generate contracts — imported by BOTH `llm.cap.ts` (consumer
|
|
13278
13307
|
* surface) and `llm-runtime.cap.ts` (node-side managed executor) so the two
|
|
13279
13308
|
* caps stay wire-compatible without a circular cap→cap import.
|
|
@@ -13545,16 +13574,19 @@ method(LlmGenerateBaseInputSchema.extend({
|
|
|
13545
13574
|
timeoutMs: number().int().positive().optional()
|
|
13546
13575
|
}), LlmGenerateResultSchema, {
|
|
13547
13576
|
kind: "mutation",
|
|
13548
|
-
auth: "admin"
|
|
13577
|
+
auth: "admin",
|
|
13578
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13549
13579
|
}), method(object({ runtime: ManagedRuntimeConfigSchema }), LlmRuntimeStatusSchema, {
|
|
13550
13580
|
kind: "mutation",
|
|
13551
|
-
auth: "admin"
|
|
13581
|
+
auth: "admin",
|
|
13582
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13552
13583
|
}), method(object({}), _void(), {
|
|
13553
13584
|
kind: "mutation",
|
|
13554
13585
|
auth: "admin"
|
|
13555
13586
|
}), method(object({}), LlmRuntimeStatusSchema, { auth: "admin" }), method(object({ model: ManagedModelRefSchema }), _void(), {
|
|
13556
13587
|
kind: "mutation",
|
|
13557
|
-
auth: "admin"
|
|
13588
|
+
auth: "admin",
|
|
13589
|
+
timeoutMs: AI_MODEL_INSTALL_TIMEOUT_MS
|
|
13558
13590
|
}), method(object({ file: string() }), _void(), {
|
|
13559
13591
|
kind: "mutation",
|
|
13560
13592
|
auth: "admin"
|
|
@@ -13722,7 +13754,13 @@ var ProfileRefInputSchema = object({
|
|
|
13722
13754
|
addonId: string(),
|
|
13723
13755
|
profileId: string()
|
|
13724
13756
|
});
|
|
13725
|
-
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13757
|
+
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13758
|
+
kind: "mutation",
|
|
13759
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13760
|
+
}), method(GenerateVisionInputSchema, LlmGenerateResultSchema, {
|
|
13761
|
+
kind: "mutation",
|
|
13762
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13763
|
+
}), method(object({
|
|
13726
13764
|
addonId: string().optional(),
|
|
13727
13765
|
requestId: string()
|
|
13728
13766
|
}), _void(), { kind: "mutation" }), method(object({}), array(LlmProfileKindDescriptorSchema)), method(object({}), array(LlmProfileSchema)), method(object({ profile: LlmProfileSchema }), LlmProfileSchema, {
|
|
@@ -13733,7 +13771,8 @@ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }
|
|
|
13733
13771
|
auth: "admin"
|
|
13734
13772
|
}), method(ProfileRefInputSchema, LlmGenerateResultSchema, {
|
|
13735
13773
|
kind: "mutation",
|
|
13736
|
-
auth: "admin"
|
|
13774
|
+
auth: "admin",
|
|
13775
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13737
13776
|
}), method(ProfileRefInputSchema, array(string())), method(object({}), array(LlmDefaultSchema)), method(object({
|
|
13738
13777
|
selector: LlmDefaultSelectorSchema,
|
|
13739
13778
|
profileId: string().nullable()
|
|
@@ -13274,6 +13274,35 @@ method(_void(), array(string()).readonly(), { auth: "admin" }), method(object({
|
|
|
13274
13274
|
auth: "admin"
|
|
13275
13275
|
});
|
|
13276
13276
|
/**
|
|
13277
|
+
* Transport bounds for AI capability methods.
|
|
13278
|
+
*
|
|
13279
|
+
* Its own module because `llm.cap.ts` and `llm-runtime.cap.ts` already import
|
|
13280
|
+
* each other: declaring the constant in either one hands the other `undefined`
|
|
13281
|
+
* at module-init time, and an undefined `timeoutMs` silently falls back to the
|
|
13282
|
+
* kernel's 60 s default — the exact failure this constant exists to prevent,
|
|
13283
|
+
* reintroduced invisibly. Found by the guard, not by review.
|
|
13284
|
+
*/
|
|
13285
|
+
/**
|
|
13286
|
+
* Ceiling for a cap method that runs inference or loads a model.
|
|
13287
|
+
*
|
|
13288
|
+
* Deliberately far above anything the AI layer itself may wait for (a summary
|
|
13289
|
+
* asks 180 s by default, a rule may ask 600 s), because the TRANSPORT must
|
|
13290
|
+
* never be the layer that gives up first: when it does, the failure is
|
|
13291
|
+
* reported as a transport error for a model that was still thinking, naming
|
|
13292
|
+
* the wrong layer and hiding the real one.
|
|
13293
|
+
*
|
|
13294
|
+
* Measured 2026-09-03: a 6-image vision request needs 44.8 s warm and ~20 s
|
|
13295
|
+
* more on a cold model load. With no declaration every digest failed at
|
|
13296
|
+
* exactly 60 s and shipped without its text.
|
|
13297
|
+
*
|
|
13298
|
+
* A ceiling, not a budget. The AI layer's own timeouts (the rule's `timeoutMs`,
|
|
13299
|
+
* the profile's `timeoutMs` / `firstTokenTimeoutMs`) remain the things that
|
|
13300
|
+
* decide when to stop, because only they can say WHY.
|
|
13301
|
+
*/
|
|
13302
|
+
var AI_CAP_TRANSPORT_TIMEOUT_MS = 6e5;
|
|
13303
|
+
/** A multi-gigabyte download. An hour is not generous, it is honest. */
|
|
13304
|
+
var AI_MODEL_INSTALL_TIMEOUT_MS = 60 * 6e4;
|
|
13305
|
+
/**
|
|
13277
13306
|
* Shared LLM generate contracts — imported by BOTH `llm.cap.ts` (consumer
|
|
13278
13307
|
* surface) and `llm-runtime.cap.ts` (node-side managed executor) so the two
|
|
13279
13308
|
* caps stay wire-compatible without a circular cap→cap import.
|
|
@@ -13545,16 +13574,19 @@ method(LlmGenerateBaseInputSchema.extend({
|
|
|
13545
13574
|
timeoutMs: number().int().positive().optional()
|
|
13546
13575
|
}), LlmGenerateResultSchema, {
|
|
13547
13576
|
kind: "mutation",
|
|
13548
|
-
auth: "admin"
|
|
13577
|
+
auth: "admin",
|
|
13578
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13549
13579
|
}), method(object({ runtime: ManagedRuntimeConfigSchema }), LlmRuntimeStatusSchema, {
|
|
13550
13580
|
kind: "mutation",
|
|
13551
|
-
auth: "admin"
|
|
13581
|
+
auth: "admin",
|
|
13582
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13552
13583
|
}), method(object({}), _void(), {
|
|
13553
13584
|
kind: "mutation",
|
|
13554
13585
|
auth: "admin"
|
|
13555
13586
|
}), method(object({}), LlmRuntimeStatusSchema, { auth: "admin" }), method(object({ model: ManagedModelRefSchema }), _void(), {
|
|
13556
13587
|
kind: "mutation",
|
|
13557
|
-
auth: "admin"
|
|
13588
|
+
auth: "admin",
|
|
13589
|
+
timeoutMs: AI_MODEL_INSTALL_TIMEOUT_MS
|
|
13558
13590
|
}), method(object({ file: string() }), _void(), {
|
|
13559
13591
|
kind: "mutation",
|
|
13560
13592
|
auth: "admin"
|
|
@@ -13722,7 +13754,13 @@ var ProfileRefInputSchema = object({
|
|
|
13722
13754
|
addonId: string(),
|
|
13723
13755
|
profileId: string()
|
|
13724
13756
|
});
|
|
13725
|
-
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13757
|
+
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13758
|
+
kind: "mutation",
|
|
13759
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13760
|
+
}), method(GenerateVisionInputSchema, LlmGenerateResultSchema, {
|
|
13761
|
+
kind: "mutation",
|
|
13762
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13763
|
+
}), method(object({
|
|
13726
13764
|
addonId: string().optional(),
|
|
13727
13765
|
requestId: string()
|
|
13728
13766
|
}), _void(), { kind: "mutation" }), method(object({}), array(LlmProfileKindDescriptorSchema)), method(object({}), array(LlmProfileSchema)), method(object({ profile: LlmProfileSchema }), LlmProfileSchema, {
|
|
@@ -13733,7 +13771,8 @@ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }
|
|
|
13733
13771
|
auth: "admin"
|
|
13734
13772
|
}), method(ProfileRefInputSchema, LlmGenerateResultSchema, {
|
|
13735
13773
|
kind: "mutation",
|
|
13736
|
-
auth: "admin"
|
|
13774
|
+
auth: "admin",
|
|
13775
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13737
13776
|
}), method(ProfileRefInputSchema, array(string())), method(object({}), array(LlmDefaultSchema)), method(object({
|
|
13738
13777
|
selector: LlmDefaultSelectorSchema,
|
|
13739
13778
|
profileId: string().nullable()
|
|
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_dist = require("../dist-
|
|
5
|
+
const require_dist = require("../dist-BmbP0N1f.js");
|
|
6
6
|
let node_crypto = require("node:crypto");
|
|
7
7
|
let node_child_process = require("node:child_process");
|
|
8
8
|
//#region src/ingress/tailscale-cli.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as EventCategory, i as BaseAddon, n as networkAccessCapability } from "../dist-
|
|
1
|
+
import { a as EventCategory, i as BaseAddon, n as networkAccessCapability } from "../dist-DSSjHdog.mjs";
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
3
|
import { execFile } from "node:child_process";
|
|
4
4
|
import { promisify } from "node:util";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-tailscale",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.55",
|
|
4
4
|
"description": "Tailscale bundle for CamStack — joins the host to a tailnet (client) and exposes the hub via Serve/Funnel (ingress). Multi-entry npm package shipping 2 addons under a single bundle.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|