@camstack/addon-ai 0.4.84 → 0.4.85

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
@@ -27394,8 +27394,27 @@ var PrivacyMaskRegionSchema = object({
27394
27394
  });
27395
27395
  object({
27396
27396
  enabled: boolean(),
27397
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
27398
- regions: array(PrivacyMaskRegionSchema),
27397
+ /**
27398
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
27399
+ *
27400
+ * `null` means "no answer" — the provider has never reached this camera
27401
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
27402
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
27403
+ * has no zones": those two look identical to an operator right up to the
27404
+ * moment one of them is acted on, and acting on them differs completely.
27405
+ * The switch group turned an unanswered read into *"nothing is set up for
27406
+ * it to act on"* — an instruction to go and draw a zone that already
27407
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
27408
+ * from deleting the mask it could not read.
27409
+ *
27410
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
27411
+ * has no zones. The distinction is the same one {@link
27412
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
27413
+ * microphone, on the very same payload — both planes come from ONE refresh,
27414
+ * so it was never coherent for one of them to be able to say "unknown"
27415
+ * while the other could not.
27416
+ */
27417
+ regions: array(PrivacyMaskRegionSchema).nullable(),
27399
27418
  /**
27400
27419
  * Is the camera capturing sound right now? Read from the camera, never from
27401
27420
  * a server-side mirror.
package/dist/addon.mjs CHANGED
@@ -27421,8 +27421,27 @@ var PrivacyMaskRegionSchema = object({
27421
27421
  });
27422
27422
  object({
27423
27423
  enabled: boolean(),
27424
- /** Active zones (normalized 0..1). Length ≤ maxRegions. */
27425
- regions: array(PrivacyMaskRegionSchema),
27424
+ /**
27425
+ * Active zones (normalized 0..1). Length ≤ maxRegions.
27426
+ *
27427
+ * `null` means "no answer" — the provider has never reached this camera
27428
+ * (a cold `runtimeState` slice, a battery camera asleep) or the read
27429
+ * failed. A consumer must render it as UNKNOWN and never as "this camera
27430
+ * has no zones": those two look identical to an operator right up to the
27431
+ * moment one of them is acted on, and acting on them differs completely.
27432
+ * The switch group turned an unanswered read into *"nothing is set up for
27433
+ * it to act on"* — an instruction to go and draw a zone that already
27434
+ * exists — and this editor seeded an EMPTY canvas from it, one Save away
27435
+ * from deleting the mask it could not read.
27436
+ *
27437
+ * Empty-and-answered is `[]` and stays a real answer: this camera genuinely
27438
+ * has no zones. The distinction is the same one {@link
27439
+ * PrivacyMaskStatusSchema.shape.audioEnabled} already draws for the
27440
+ * microphone, on the very same payload — both planes come from ONE refresh,
27441
+ * so it was never coherent for one of them to be able to say "unknown"
27442
+ * while the other could not.
27443
+ */
27444
+ regions: array(PrivacyMaskRegionSchema).nullable(),
27426
27445
  /**
27427
27446
  * Is the camera capturing sound right now? Read from the camera, never from
27428
27447
  * a server-side mirror.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-ai",
3
- "version": "0.4.84",
3
+ "version": "0.4.85",
4
4
  "description": "AI addon for CamStack — the `llm` collection provider (cloud, LAN, and camstack-managed local llama.cpp profiles) plus the per-node `llm-runtime` managed executor.",
5
5
  "keywords": [
6
6
  "camstack",