@camstack/addon-provider-onvif 1.2.52 → 1.2.54

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 CHANGED
@@ -13311,6 +13311,35 @@ method(_void(), array(string()).readonly(), { auth: "admin" }), method(object({
13311
13311
  auth: "admin"
13312
13312
  });
13313
13313
  /**
13314
+ * Transport bounds for AI capability methods.
13315
+ *
13316
+ * Its own module because `llm.cap.ts` and `llm-runtime.cap.ts` already import
13317
+ * each other: declaring the constant in either one hands the other `undefined`
13318
+ * at module-init time, and an undefined `timeoutMs` silently falls back to the
13319
+ * kernel's 60 s default — the exact failure this constant exists to prevent,
13320
+ * reintroduced invisibly. Found by the guard, not by review.
13321
+ */
13322
+ /**
13323
+ * Ceiling for a cap method that runs inference or loads a model.
13324
+ *
13325
+ * Deliberately far above anything the AI layer itself may wait for (a summary
13326
+ * asks 180 s by default, a rule may ask 600 s), because the TRANSPORT must
13327
+ * never be the layer that gives up first: when it does, the failure is
13328
+ * reported as a transport error for a model that was still thinking, naming
13329
+ * the wrong layer and hiding the real one.
13330
+ *
13331
+ * Measured 2026-09-03: a 6-image vision request needs 44.8 s warm and ~20 s
13332
+ * more on a cold model load. With no declaration every digest failed at
13333
+ * exactly 60 s and shipped without its text.
13334
+ *
13335
+ * A ceiling, not a budget. The AI layer's own timeouts (the rule's `timeoutMs`,
13336
+ * the profile's `timeoutMs` / `firstTokenTimeoutMs`) remain the things that
13337
+ * decide when to stop, because only they can say WHY.
13338
+ */
13339
+ var AI_CAP_TRANSPORT_TIMEOUT_MS = 6e5;
13340
+ /** A multi-gigabyte download. An hour is not generous, it is honest. */
13341
+ var AI_MODEL_INSTALL_TIMEOUT_MS = 60 * 6e4;
13342
+ /**
13314
13343
  * Shared LLM generate contracts — imported by BOTH `llm.cap.ts` (consumer
13315
13344
  * surface) and `llm-runtime.cap.ts` (node-side managed executor) so the two
13316
13345
  * caps stay wire-compatible without a circular cap→cap import.
@@ -13582,16 +13611,19 @@ method(LlmGenerateBaseInputSchema.extend({
13582
13611
  timeoutMs: number().int().positive().optional()
13583
13612
  }), LlmGenerateResultSchema, {
13584
13613
  kind: "mutation",
13585
- auth: "admin"
13614
+ auth: "admin",
13615
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13586
13616
  }), method(object({ runtime: ManagedRuntimeConfigSchema }), LlmRuntimeStatusSchema, {
13587
13617
  kind: "mutation",
13588
- auth: "admin"
13618
+ auth: "admin",
13619
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13589
13620
  }), method(object({}), _void(), {
13590
13621
  kind: "mutation",
13591
13622
  auth: "admin"
13592
13623
  }), method(object({}), LlmRuntimeStatusSchema, { auth: "admin" }), method(object({ model: ManagedModelRefSchema }), _void(), {
13593
13624
  kind: "mutation",
13594
- auth: "admin"
13625
+ auth: "admin",
13626
+ timeoutMs: AI_MODEL_INSTALL_TIMEOUT_MS
13595
13627
  }), method(object({ file: string() }), _void(), {
13596
13628
  kind: "mutation",
13597
13629
  auth: "admin"
@@ -13759,7 +13791,13 @@ var ProfileRefInputSchema = object({
13759
13791
  addonId: string(),
13760
13792
  profileId: string()
13761
13793
  });
13762
- method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }), method(GenerateVisionInputSchema, LlmGenerateResultSchema, { kind: "mutation" }), method(object({
13794
+ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
13795
+ kind: "mutation",
13796
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13797
+ }), method(GenerateVisionInputSchema, LlmGenerateResultSchema, {
13798
+ kind: "mutation",
13799
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13800
+ }), method(object({
13763
13801
  addonId: string().optional(),
13764
13802
  requestId: string()
13765
13803
  }), _void(), { kind: "mutation" }), method(object({}), array(LlmProfileKindDescriptorSchema)), method(object({}), array(LlmProfileSchema)), method(object({ profile: LlmProfileSchema }), LlmProfileSchema, {
@@ -13770,7 +13808,8 @@ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }
13770
13808
  auth: "admin"
13771
13809
  }), method(ProfileRefInputSchema, LlmGenerateResultSchema, {
13772
13810
  kind: "mutation",
13773
- auth: "admin"
13811
+ auth: "admin",
13812
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13774
13813
  }), method(ProfileRefInputSchema, array(string())), method(object({}), array(LlmDefaultSchema)), method(object({
13775
13814
  selector: LlmDefaultSelectorSchema,
13776
13815
  profileId: string().nullable()
package/dist/addon.mjs CHANGED
@@ -13312,6 +13312,35 @@ method(_void(), array(string()).readonly(), { auth: "admin" }), method(object({
13312
13312
  auth: "admin"
13313
13313
  });
13314
13314
  /**
13315
+ * Transport bounds for AI capability methods.
13316
+ *
13317
+ * Its own module because `llm.cap.ts` and `llm-runtime.cap.ts` already import
13318
+ * each other: declaring the constant in either one hands the other `undefined`
13319
+ * at module-init time, and an undefined `timeoutMs` silently falls back to the
13320
+ * kernel's 60 s default — the exact failure this constant exists to prevent,
13321
+ * reintroduced invisibly. Found by the guard, not by review.
13322
+ */
13323
+ /**
13324
+ * Ceiling for a cap method that runs inference or loads a model.
13325
+ *
13326
+ * Deliberately far above anything the AI layer itself may wait for (a summary
13327
+ * asks 180 s by default, a rule may ask 600 s), because the TRANSPORT must
13328
+ * never be the layer that gives up first: when it does, the failure is
13329
+ * reported as a transport error for a model that was still thinking, naming
13330
+ * the wrong layer and hiding the real one.
13331
+ *
13332
+ * Measured 2026-09-03: a 6-image vision request needs 44.8 s warm and ~20 s
13333
+ * more on a cold model load. With no declaration every digest failed at
13334
+ * exactly 60 s and shipped without its text.
13335
+ *
13336
+ * A ceiling, not a budget. The AI layer's own timeouts (the rule's `timeoutMs`,
13337
+ * the profile's `timeoutMs` / `firstTokenTimeoutMs`) remain the things that
13338
+ * decide when to stop, because only they can say WHY.
13339
+ */
13340
+ var AI_CAP_TRANSPORT_TIMEOUT_MS = 6e5;
13341
+ /** A multi-gigabyte download. An hour is not generous, it is honest. */
13342
+ var AI_MODEL_INSTALL_TIMEOUT_MS = 60 * 6e4;
13343
+ /**
13315
13344
  * Shared LLM generate contracts — imported by BOTH `llm.cap.ts` (consumer
13316
13345
  * surface) and `llm-runtime.cap.ts` (node-side managed executor) so the two
13317
13346
  * caps stay wire-compatible without a circular cap→cap import.
@@ -13583,16 +13612,19 @@ method(LlmGenerateBaseInputSchema.extend({
13583
13612
  timeoutMs: number().int().positive().optional()
13584
13613
  }), LlmGenerateResultSchema, {
13585
13614
  kind: "mutation",
13586
- auth: "admin"
13615
+ auth: "admin",
13616
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13587
13617
  }), method(object({ runtime: ManagedRuntimeConfigSchema }), LlmRuntimeStatusSchema, {
13588
13618
  kind: "mutation",
13589
- auth: "admin"
13619
+ auth: "admin",
13620
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13590
13621
  }), method(object({}), _void(), {
13591
13622
  kind: "mutation",
13592
13623
  auth: "admin"
13593
13624
  }), method(object({}), LlmRuntimeStatusSchema, { auth: "admin" }), method(object({ model: ManagedModelRefSchema }), _void(), {
13594
13625
  kind: "mutation",
13595
- auth: "admin"
13626
+ auth: "admin",
13627
+ timeoutMs: AI_MODEL_INSTALL_TIMEOUT_MS
13596
13628
  }), method(object({ file: string() }), _void(), {
13597
13629
  kind: "mutation",
13598
13630
  auth: "admin"
@@ -13760,7 +13792,13 @@ var ProfileRefInputSchema = object({
13760
13792
  addonId: string(),
13761
13793
  profileId: string()
13762
13794
  });
13763
- method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }), method(GenerateVisionInputSchema, LlmGenerateResultSchema, { kind: "mutation" }), method(object({
13795
+ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, {
13796
+ kind: "mutation",
13797
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13798
+ }), method(GenerateVisionInputSchema, LlmGenerateResultSchema, {
13799
+ kind: "mutation",
13800
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13801
+ }), method(object({
13764
13802
  addonId: string().optional(),
13765
13803
  requestId: string()
13766
13804
  }), _void(), { kind: "mutation" }), method(object({}), array(LlmProfileKindDescriptorSchema)), method(object({}), array(LlmProfileSchema)), method(object({ profile: LlmProfileSchema }), LlmProfileSchema, {
@@ -13771,7 +13809,8 @@ method(LlmGenerateBaseInputSchema, LlmGenerateResultSchema, { kind: "mutation" }
13771
13809
  auth: "admin"
13772
13810
  }), method(ProfileRefInputSchema, LlmGenerateResultSchema, {
13773
13811
  kind: "mutation",
13774
- auth: "admin"
13812
+ auth: "admin",
13813
+ timeoutMs: AI_CAP_TRANSPORT_TIMEOUT_MS
13775
13814
  }), method(ProfileRefInputSchema, array(string())), method(object({}), array(LlmDefaultSchema)), method(object({
13776
13815
  selector: LlmDefaultSelectorSchema,
13777
13816
  profileId: string().nullable()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-onvif",
3
- "version": "1.2.52",
3
+ "version": "1.2.54",
4
4
  "description": "ONVIF camera device provider addon for CamStack",
5
5
  "keywords": [
6
6
  "camstack",