@camstack/addon-matter-broker 0.2.0 → 0.2.1

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
@@ -12677,7 +12677,21 @@ var NativeCropResultSchema = object({
12677
12677
  /** Packed rgb (24-bit) pixels of the crop. */
12678
12678
  bytes: _instanceof(Uint8Array),
12679
12679
  width: number().int().positive(),
12680
- height: number().int().positive()
12680
+ height: number().int().positive(),
12681
+ /**
12682
+ * Which source served this crop, so a quality-sensitive consumer (the native
12683
+ * `keyFrame`) can reject a degraded fallback:
12684
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
12685
+ * quality path).
12686
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
12687
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
12688
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
12689
+ *
12690
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
12691
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
12692
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
12693
+ */
12694
+ tier: _enum(["native", "ram-fullframe"]).optional()
12681
12695
  });
12682
12696
  /** Parent detection context passed to `runDetailSubtree` — the crop's
12683
12697
  * originating detection, in FRAME-space coordinates. Reuses
@@ -17747,7 +17761,8 @@ var LinkedDeviceSchema = object({
17747
17761
  deviceId: number(),
17748
17762
  name: string$2(),
17749
17763
  location: string$2().nullable(),
17750
- features: array(string$2())
17764
+ features: array(string$2()),
17765
+ producesTrackedEvents: boolean().optional()
17751
17766
  });
17752
17767
  var SavedDeviceRowSchema = object({
17753
17768
  /** Numeric id reserved at allocateDeviceId time. */
@@ -19377,6 +19392,7 @@ var TrackSchema = object({
19377
19392
  deviceId: number(),
19378
19393
  className: string$2(),
19379
19394
  label: string$2().optional(),
19395
+ producingDeviceName: string$2().optional(),
19380
19396
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
19381
19397
  source: TrackSourceSchema.optional(),
19382
19398
  firstSeen: number(),
@@ -19514,7 +19530,8 @@ var MediaFileKindEnum = _enum([
19514
19530
  "fullFrameBoxed",
19515
19531
  "faceCrop",
19516
19532
  "plateCrop",
19517
- "keyFrame"
19533
+ "keyFrame",
19534
+ "keyFrameSmall"
19518
19535
  ]);
19519
19536
  var MediaFileSchema = object({
19520
19537
  key: string$2(),
package/dist/addon.mjs CHANGED
@@ -12675,7 +12675,21 @@ var NativeCropResultSchema = object({
12675
12675
  /** Packed rgb (24-bit) pixels of the crop. */
12676
12676
  bytes: _instanceof(Uint8Array),
12677
12677
  width: number().int().positive(),
12678
- height: number().int().positive()
12678
+ height: number().int().positive(),
12679
+ /**
12680
+ * Which source served this crop, so a quality-sensitive consumer (the native
12681
+ * `keyFrame`) can reject a degraded fallback:
12682
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
12683
+ * quality path).
12684
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
12685
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
12686
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
12687
+ *
12688
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
12689
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
12690
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
12691
+ */
12692
+ tier: _enum(["native", "ram-fullframe"]).optional()
12679
12693
  });
12680
12694
  /** Parent detection context passed to `runDetailSubtree` — the crop's
12681
12695
  * originating detection, in FRAME-space coordinates. Reuses
@@ -17745,7 +17759,8 @@ var LinkedDeviceSchema = object({
17745
17759
  deviceId: number(),
17746
17760
  name: string$2(),
17747
17761
  location: string$2().nullable(),
17748
- features: array(string$2())
17762
+ features: array(string$2()),
17763
+ producesTrackedEvents: boolean().optional()
17749
17764
  });
17750
17765
  var SavedDeviceRowSchema = object({
17751
17766
  /** Numeric id reserved at allocateDeviceId time. */
@@ -19375,6 +19390,7 @@ var TrackSchema = object({
19375
19390
  deviceId: number(),
19376
19391
  className: string$2(),
19377
19392
  label: string$2().optional(),
19393
+ producingDeviceName: string$2().optional(),
19378
19394
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
19379
19395
  source: TrackSourceSchema.optional(),
19380
19396
  firstSeen: number(),
@@ -19512,7 +19528,8 @@ var MediaFileKindEnum = _enum([
19512
19528
  "fullFrameBoxed",
19513
19529
  "faceCrop",
19514
19530
  "plateCrop",
19515
- "keyFrame"
19531
+ "keyFrame",
19532
+ "keyFrameSmall"
19516
19533
  ]);
19517
19534
  var MediaFileSchema = object({
19518
19535
  key: string$2(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-matter-broker",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Matter broker addon for CamStack — owns a Matter fabric (commissioning + the long-lived controller) via the matter.js controller and brokers commissioned Matter nodes into CamStack",
5
5
  "keywords": [
6
6
  "camstack",