@camstack/addon-notifiers 1.2.57 → 1.2.59
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/addon.js +44 -5
- package/dist/addon.mjs +44 -5
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -13431,6 +13431,35 @@ method(_void(), array(string()).readonly(), { auth: "admin" }), method(object({
|
|
|
13431
13431
|
auth: "admin"
|
|
13432
13432
|
});
|
|
13433
13433
|
/**
|
|
13434
|
+
* Transport bounds for AI capability methods.
|
|
13435
|
+
*
|
|
13436
|
+
* Its own module because `llm.cap.ts` and `llm-runtime.cap.ts` already import
|
|
13437
|
+
* each other: declaring the constant in either one hands the other `undefined`
|
|
13438
|
+
* at module-init time, and an undefined `timeoutMs` silently falls back to the
|
|
13439
|
+
* kernel's 60 s default — the exact failure this constant exists to prevent,
|
|
13440
|
+
* reintroduced invisibly. Found by the guard, not by review.
|
|
13441
|
+
*/
|
|
13442
|
+
/**
|
|
13443
|
+
* Ceiling for a cap method that runs inference or loads a model.
|
|
13444
|
+
*
|
|
13445
|
+
* Deliberately far above anything the AI layer itself may wait for (a summary
|
|
13446
|
+
* asks 180 s by default, a rule may ask 600 s), because the TRANSPORT must
|
|
13447
|
+
* never be the layer that gives up first: when it does, the failure is
|
|
13448
|
+
* reported as a transport error for a model that was still thinking, naming
|
|
13449
|
+
* the wrong layer and hiding the real one.
|
|
13450
|
+
*
|
|
13451
|
+
* Measured 2026-09-03: a 6-image vision request needs 44.8 s warm and ~20 s
|
|
13452
|
+
* more on a cold model load. With no declaration every digest failed at
|
|
13453
|
+
* exactly 60 s and shipped without its text.
|
|
13454
|
+
*
|
|
13455
|
+
* A ceiling, not a budget. The AI layer's own timeouts (the rule's `timeoutMs`,
|
|
13456
|
+
* the profile's `timeoutMs` / `firstTokenTimeoutMs`) remain the things that
|
|
13457
|
+
* decide when to stop, because only they can say WHY.
|
|
13458
|
+
*/
|
|
13459
|
+
var AI_CAP_TRANSPORT_TIMEOUT_MS = 6e5;
|
|
13460
|
+
/** A multi-gigabyte download. An hour is not generous, it is honest. */
|
|
13461
|
+
var AI_MODEL_INSTALL_TIMEOUT_MS = 60 * 6e4;
|
|
13462
|
+
/**
|
|
13434
13463
|
* Shared LLM generate contracts — imported by BOTH `llm.cap.ts` (consumer
|
|
13435
13464
|
* surface) and `llm-runtime.cap.ts` (node-side managed executor) so the two
|
|
13436
13465
|
* caps stay wire-compatible without a circular cap→cap import.
|
|
@@ -13702,16 +13731,19 @@ method(LlmGenerateBaseInputSchema.extend({
|
|
|
13702
13731
|
timeoutMs: number().int().positive().optional()
|
|
13703
13732
|
}), LlmGenerateResultSchema, {
|
|
13704
13733
|
kind: "mutation",
|
|
13705
|
-
auth: "admin"
|
|
13734
|
+
auth: "admin",
|
|
13735
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13706
13736
|
}), method(object({ runtime: ManagedRuntimeConfigSchema }), LlmRuntimeStatusSchema, {
|
|
13707
13737
|
kind: "mutation",
|
|
13708
|
-
auth: "admin"
|
|
13738
|
+
auth: "admin",
|
|
13739
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13709
13740
|
}), method(object({}), _void(), {
|
|
13710
13741
|
kind: "mutation",
|
|
13711
13742
|
auth: "admin"
|
|
13712
13743
|
}), method(object({}), LlmRuntimeStatusSchema, { auth: "admin" }), method(object({ model: ManagedModelRefSchema }), _void(), {
|
|
13713
13744
|
kind: "mutation",
|
|
13714
|
-
auth: "admin"
|
|
13745
|
+
auth: "admin",
|
|
13746
|
+
timeoutMs: AI_MODEL_INSTALL_TIMEOUT_MS
|
|
13715
13747
|
}), method(object({ file: string() }), _void(), {
|
|
13716
13748
|
kind: "mutation",
|
|
13717
13749
|
auth: "admin"
|
|
@@ -13879,7 +13911,13 @@ var ProfileRefInputSchema = object({
|
|
|
13879
13911
|
addonId: string(),
|
|
13880
13912
|
profileId: string()
|
|
13881
13913
|
});
|
|
13882
|
-
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13914
|
+
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13915
|
+
kind: "mutation",
|
|
13916
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13917
|
+
}), method(GenerateVisionInputSchema, LlmGenerateResultSchema, {
|
|
13918
|
+
kind: "mutation",
|
|
13919
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13920
|
+
}), method(object({
|
|
13883
13921
|
addonId: string().optional(),
|
|
13884
13922
|
requestId: string()
|
|
13885
13923
|
}), _void(), { kind: "mutation" }), method(object({}), array(LlmProfileKindDescriptorSchema)), method(object({}), array(LlmProfileSchema)), method(object({ profile: LlmProfileSchema }), LlmProfileSchema, {
|
|
@@ -13890,7 +13928,8 @@ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }
|
|
|
13890
13928
|
auth: "admin"
|
|
13891
13929
|
}), method(ProfileRefInputSchema, LlmGenerateResultSchema, {
|
|
13892
13930
|
kind: "mutation",
|
|
13893
|
-
auth: "admin"
|
|
13931
|
+
auth: "admin",
|
|
13932
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13894
13933
|
}), method(ProfileRefInputSchema, array(string())), method(object({}), array(LlmDefaultSchema)), method(object({
|
|
13895
13934
|
selector: LlmDefaultSelectorSchema,
|
|
13896
13935
|
profileId: string().nullable()
|
package/dist/addon.mjs
CHANGED
|
@@ -13404,6 +13404,35 @@ method(_void(), array(string()).readonly(), { auth: "admin" }), method(object({
|
|
|
13404
13404
|
auth: "admin"
|
|
13405
13405
|
});
|
|
13406
13406
|
/**
|
|
13407
|
+
* Transport bounds for AI capability methods.
|
|
13408
|
+
*
|
|
13409
|
+
* Its own module because `llm.cap.ts` and `llm-runtime.cap.ts` already import
|
|
13410
|
+
* each other: declaring the constant in either one hands the other `undefined`
|
|
13411
|
+
* at module-init time, and an undefined `timeoutMs` silently falls back to the
|
|
13412
|
+
* kernel's 60 s default — the exact failure this constant exists to prevent,
|
|
13413
|
+
* reintroduced invisibly. Found by the guard, not by review.
|
|
13414
|
+
*/
|
|
13415
|
+
/**
|
|
13416
|
+
* Ceiling for a cap method that runs inference or loads a model.
|
|
13417
|
+
*
|
|
13418
|
+
* Deliberately far above anything the AI layer itself may wait for (a summary
|
|
13419
|
+
* asks 180 s by default, a rule may ask 600 s), because the TRANSPORT must
|
|
13420
|
+
* never be the layer that gives up first: when it does, the failure is
|
|
13421
|
+
* reported as a transport error for a model that was still thinking, naming
|
|
13422
|
+
* the wrong layer and hiding the real one.
|
|
13423
|
+
*
|
|
13424
|
+
* Measured 2026-09-03: a 6-image vision request needs 44.8 s warm and ~20 s
|
|
13425
|
+
* more on a cold model load. With no declaration every digest failed at
|
|
13426
|
+
* exactly 60 s and shipped without its text.
|
|
13427
|
+
*
|
|
13428
|
+
* A ceiling, not a budget. The AI layer's own timeouts (the rule's `timeoutMs`,
|
|
13429
|
+
* the profile's `timeoutMs` / `firstTokenTimeoutMs`) remain the things that
|
|
13430
|
+
* decide when to stop, because only they can say WHY.
|
|
13431
|
+
*/
|
|
13432
|
+
var AI_CAP_TRANSPORT_TIMEOUT_MS = 6e5;
|
|
13433
|
+
/** A multi-gigabyte download. An hour is not generous, it is honest. */
|
|
13434
|
+
var AI_MODEL_INSTALL_TIMEOUT_MS = 60 * 6e4;
|
|
13435
|
+
/**
|
|
13407
13436
|
* Shared LLM generate contracts — imported by BOTH `llm.cap.ts` (consumer
|
|
13408
13437
|
* surface) and `llm-runtime.cap.ts` (node-side managed executor) so the two
|
|
13409
13438
|
* caps stay wire-compatible without a circular cap→cap import.
|
|
@@ -13675,16 +13704,19 @@ method(LlmGenerateBaseInputSchema.extend({
|
|
|
13675
13704
|
timeoutMs: number().int().positive().optional()
|
|
13676
13705
|
}), LlmGenerateResultSchema, {
|
|
13677
13706
|
kind: "mutation",
|
|
13678
|
-
auth: "admin"
|
|
13707
|
+
auth: "admin",
|
|
13708
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13679
13709
|
}), method(object({ runtime: ManagedRuntimeConfigSchema }), LlmRuntimeStatusSchema, {
|
|
13680
13710
|
kind: "mutation",
|
|
13681
|
-
auth: "admin"
|
|
13711
|
+
auth: "admin",
|
|
13712
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13682
13713
|
}), method(object({}), _void(), {
|
|
13683
13714
|
kind: "mutation",
|
|
13684
13715
|
auth: "admin"
|
|
13685
13716
|
}), method(object({}), LlmRuntimeStatusSchema, { auth: "admin" }), method(object({ model: ManagedModelRefSchema }), _void(), {
|
|
13686
13717
|
kind: "mutation",
|
|
13687
|
-
auth: "admin"
|
|
13718
|
+
auth: "admin",
|
|
13719
|
+
timeoutMs: AI_MODEL_INSTALL_TIMEOUT_MS
|
|
13688
13720
|
}), method(object({ file: string() }), _void(), {
|
|
13689
13721
|
kind: "mutation",
|
|
13690
13722
|
auth: "admin"
|
|
@@ -13852,7 +13884,13 @@ var ProfileRefInputSchema = object({
|
|
|
13852
13884
|
addonId: string(),
|
|
13853
13885
|
profileId: string()
|
|
13854
13886
|
});
|
|
13855
|
-
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13887
|
+
method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
|
|
13888
|
+
kind: "mutation",
|
|
13889
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13890
|
+
}), method(GenerateVisionInputSchema, LlmGenerateResultSchema, {
|
|
13891
|
+
kind: "mutation",
|
|
13892
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13893
|
+
}), method(object({
|
|
13856
13894
|
addonId: string().optional(),
|
|
13857
13895
|
requestId: string()
|
|
13858
13896
|
}), _void(), { kind: "mutation" }), method(object({}), array(LlmProfileKindDescriptorSchema)), method(object({}), array(LlmProfileSchema)), method(object({ profile: LlmProfileSchema }), LlmProfileSchema, {
|
|
@@ -13863,7 +13901,8 @@ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }
|
|
|
13863
13901
|
auth: "admin"
|
|
13864
13902
|
}), method(ProfileRefInputSchema, LlmGenerateResultSchema, {
|
|
13865
13903
|
kind: "mutation",
|
|
13866
|
-
auth: "admin"
|
|
13904
|
+
auth: "admin",
|
|
13905
|
+
timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
|
|
13867
13906
|
}), method(ProfileRefInputSchema, array(string())), method(object({}), array(LlmDefaultSchema)), method(object({
|
|
13868
13907
|
selector: LlmDefaultSelectorSchema,
|
|
13869
13908
|
profileId: string().nullable()
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-notifiers",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.59",
|
|
4
4
|
"description": "System notifiers addon for CamStack — a `notification-output` collection provider hosting per-kind notifier adapters (ntfy, pushover, gotify, telegram, discord, webhook, zentik).",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|