@camstack/addon-provider-wyze 0.2.107 → 0.2.109
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 +48 -8
- package/dist/addon.mjs +48 -8
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -19487,13 +19487,26 @@ var TrackAudioLabelSchema = object({
|
|
|
19487
19487
|
* - `audio` — an audio event on the camera itself that was anomalous for
|
|
19488
19488
|
* THAT camera, loud, and heard while nothing visual was happening (D62).
|
|
19489
19489
|
*
|
|
19490
|
+
* - `onboard` — the CAMERA's own firmware, paired with a decoded frame in
|
|
19491
|
+
* that frame's pixel space. A real root detector and a SPATIAL one: its
|
|
19492
|
+
* boxes are the same kind of fact `pipeline`'s are, produced by a different
|
|
19493
|
+
* detector.
|
|
19494
|
+
*
|
|
19495
|
+
* `onboard` was missing here while `DetectionSourceSchema` already had it, so
|
|
19496
|
+
* a persisted onboard track failed `safeParse` on read and came back with NO
|
|
19497
|
+
* source at all — which `isSpatialTrack` then admitted by accident, through the
|
|
19498
|
+
* `undefined` arm rather than by anybody's decision, and which `excludeSources`
|
|
19499
|
+
* could not name.
|
|
19500
|
+
*
|
|
19490
19501
|
* The spatial subsystems (tracker association, occupancy count, re-id /
|
|
19491
19502
|
* embedding, resurrection) MUST skip every synthetic source. Test for that
|
|
19492
|
-
* with `isSpatialTrack`, which allow-lists
|
|
19493
|
-
* check silently readmits every source added after it was
|
|
19503
|
+
* with `isSpatialTrack`, which allow-lists the spatial sources explicitly — a
|
|
19504
|
+
* `!== 'sensor'` check silently readmits every source added after it was
|
|
19505
|
+
* written.
|
|
19494
19506
|
*/
|
|
19495
19507
|
var TrackSourceSchema = _enum([
|
|
19496
19508
|
"pipeline",
|
|
19509
|
+
"onboard",
|
|
19497
19510
|
"sensor",
|
|
19498
19511
|
"audio"
|
|
19499
19512
|
]);
|
|
@@ -20081,6 +20094,7 @@ var MediaFileKindEnum = _enum([
|
|
|
20081
20094
|
"keyFrame",
|
|
20082
20095
|
"keyFrameSmall",
|
|
20083
20096
|
"thumbnailSmall",
|
|
20097
|
+
"confirmationCrop",
|
|
20084
20098
|
"sceneFrame"
|
|
20085
20099
|
]);
|
|
20086
20100
|
/**
|
|
@@ -21575,13 +21589,39 @@ var MotionSourceEnum = _enum([
|
|
|
21575
21589
|
*/
|
|
21576
21590
|
var MotionSourcesSchema = array(MotionSourceEnum);
|
|
21577
21591
|
/**
|
|
21578
|
-
* Which root
|
|
21579
|
-
*
|
|
21580
|
-
*
|
|
21581
|
-
*
|
|
21582
|
-
*
|
|
21592
|
+
* Which root detector a camera runs — EXACTLY ONE.
|
|
21593
|
+
*
|
|
21594
|
+
* Deliberately the SAME vocabulary post-analysis already tags every detection
|
|
21595
|
+
* with (`DetectionSource`) rather than a second spelling of the same two
|
|
21596
|
+
* ideas: the value an operator picks here is the value that comes back on the
|
|
21597
|
+
* track, the overlay and the debug row.
|
|
21598
|
+
*
|
|
21599
|
+
* ## Why one, and why it is still an array
|
|
21600
|
+
*
|
|
21601
|
+
* Two roots on one camera is a capability nobody asked for and the operator has
|
|
21602
|
+
* since ruled out. It was never free: both planes feed the SAME per-device
|
|
21603
|
+
* stationary registry, both can promote the same parked object, and the two
|
|
21604
|
+
* detectors disagree about the same box by construction — which is the
|
|
21605
|
+
* disagreement D505 had to arbitrate. Removing the case removes the arbitration.
|
|
21606
|
+
*
|
|
21607
|
+
* The ARRAY shape survives because the stored settings and the attach payload
|
|
21608
|
+
* already speak it on every camera of every fleet, and a cap input that
|
|
21609
|
+
* suddenly refuses a stored value makes the camera un-attachable — a fail-closed
|
|
21610
|
+
* in the one direction that costs an operator their cameras. So the wire stays
|
|
21611
|
+
* tolerant and the TYPE is exact: a longer list is truncated to its first
|
|
21612
|
+
* element rather than refused, and `max(1)` is what every consumer can then
|
|
21613
|
+
* rely on.
|
|
21614
|
+
*
|
|
21615
|
+
* AT MOST one, not exactly one. The EMPTY list is a legal, deliberate pick —
|
|
21616
|
+
* a camera an operator left with no root detector — and `planDetectionSources`
|
|
21617
|
+
* has always said so: inventing a root for them is how a default acts without
|
|
21618
|
+
* anybody choosing it. Tightening this to `length(1)` broke that, and the
|
|
21619
|
+
* suite caught it.
|
|
21620
|
+
*
|
|
21621
|
+
* Measured before tightening (2026-09-15, this fleet, 6 h of attaches): 3327
|
|
21622
|
+
* `["pipeline"]` and 2 `["onboard"]`. Not one camera had two.
|
|
21583
21623
|
*/
|
|
21584
|
-
var DetectionSourcesSchema = array(DetectionSourceSchema);
|
|
21624
|
+
var DetectionSourcesSchema = preprocess((value) => Array.isArray(value) && value.length > 1 ? value.slice(0, 1) : value, array(DetectionSourceSchema).max(1));
|
|
21585
21625
|
/**
|
|
21586
21626
|
* Input shape for `pipeline-runner.reportMotion` cap method. Exported
|
|
21587
21627
|
* so cap-side consumers (the orchestrator forward, the runner addon's
|
package/dist/addon.mjs
CHANGED
|
@@ -19466,13 +19466,26 @@ var TrackAudioLabelSchema = object({
|
|
|
19466
19466
|
* - `audio` — an audio event on the camera itself that was anomalous for
|
|
19467
19467
|
* THAT camera, loud, and heard while nothing visual was happening (D62).
|
|
19468
19468
|
*
|
|
19469
|
+
* - `onboard` — the CAMERA's own firmware, paired with a decoded frame in
|
|
19470
|
+
* that frame's pixel space. A real root detector and a SPATIAL one: its
|
|
19471
|
+
* boxes are the same kind of fact `pipeline`'s are, produced by a different
|
|
19472
|
+
* detector.
|
|
19473
|
+
*
|
|
19474
|
+
* `onboard` was missing here while `DetectionSourceSchema` already had it, so
|
|
19475
|
+
* a persisted onboard track failed `safeParse` on read and came back with NO
|
|
19476
|
+
* source at all — which `isSpatialTrack` then admitted by accident, through the
|
|
19477
|
+
* `undefined` arm rather than by anybody's decision, and which `excludeSources`
|
|
19478
|
+
* could not name.
|
|
19479
|
+
*
|
|
19469
19480
|
* The spatial subsystems (tracker association, occupancy count, re-id /
|
|
19470
19481
|
* embedding, resurrection) MUST skip every synthetic source. Test for that
|
|
19471
|
-
* with `isSpatialTrack`, which allow-lists
|
|
19472
|
-
* check silently readmits every source added after it was
|
|
19482
|
+
* with `isSpatialTrack`, which allow-lists the spatial sources explicitly — a
|
|
19483
|
+
* `!== 'sensor'` check silently readmits every source added after it was
|
|
19484
|
+
* written.
|
|
19473
19485
|
*/
|
|
19474
19486
|
var TrackSourceSchema = _enum([
|
|
19475
19487
|
"pipeline",
|
|
19488
|
+
"onboard",
|
|
19476
19489
|
"sensor",
|
|
19477
19490
|
"audio"
|
|
19478
19491
|
]);
|
|
@@ -20060,6 +20073,7 @@ var MediaFileKindEnum = _enum([
|
|
|
20060
20073
|
"keyFrame",
|
|
20061
20074
|
"keyFrameSmall",
|
|
20062
20075
|
"thumbnailSmall",
|
|
20076
|
+
"confirmationCrop",
|
|
20063
20077
|
"sceneFrame"
|
|
20064
20078
|
]);
|
|
20065
20079
|
/**
|
|
@@ -21554,13 +21568,39 @@ var MotionSourceEnum = _enum([
|
|
|
21554
21568
|
*/
|
|
21555
21569
|
var MotionSourcesSchema = array(MotionSourceEnum);
|
|
21556
21570
|
/**
|
|
21557
|
-
* Which root
|
|
21558
|
-
*
|
|
21559
|
-
*
|
|
21560
|
-
*
|
|
21561
|
-
*
|
|
21571
|
+
* Which root detector a camera runs — EXACTLY ONE.
|
|
21572
|
+
*
|
|
21573
|
+
* Deliberately the SAME vocabulary post-analysis already tags every detection
|
|
21574
|
+
* with (`DetectionSource`) rather than a second spelling of the same two
|
|
21575
|
+
* ideas: the value an operator picks here is the value that comes back on the
|
|
21576
|
+
* track, the overlay and the debug row.
|
|
21577
|
+
*
|
|
21578
|
+
* ## Why one, and why it is still an array
|
|
21579
|
+
*
|
|
21580
|
+
* Two roots on one camera is a capability nobody asked for and the operator has
|
|
21581
|
+
* since ruled out. It was never free: both planes feed the SAME per-device
|
|
21582
|
+
* stationary registry, both can promote the same parked object, and the two
|
|
21583
|
+
* detectors disagree about the same box by construction — which is the
|
|
21584
|
+
* disagreement D505 had to arbitrate. Removing the case removes the arbitration.
|
|
21585
|
+
*
|
|
21586
|
+
* The ARRAY shape survives because the stored settings and the attach payload
|
|
21587
|
+
* already speak it on every camera of every fleet, and a cap input that
|
|
21588
|
+
* suddenly refuses a stored value makes the camera un-attachable — a fail-closed
|
|
21589
|
+
* in the one direction that costs an operator their cameras. So the wire stays
|
|
21590
|
+
* tolerant and the TYPE is exact: a longer list is truncated to its first
|
|
21591
|
+
* element rather than refused, and `max(1)` is what every consumer can then
|
|
21592
|
+
* rely on.
|
|
21593
|
+
*
|
|
21594
|
+
* AT MOST one, not exactly one. The EMPTY list is a legal, deliberate pick —
|
|
21595
|
+
* a camera an operator left with no root detector — and `planDetectionSources`
|
|
21596
|
+
* has always said so: inventing a root for them is how a default acts without
|
|
21597
|
+
* anybody choosing it. Tightening this to `length(1)` broke that, and the
|
|
21598
|
+
* suite caught it.
|
|
21599
|
+
*
|
|
21600
|
+
* Measured before tightening (2026-09-15, this fleet, 6 h of attaches): 3327
|
|
21601
|
+
* `["pipeline"]` and 2 `["onboard"]`. Not one camera had two.
|
|
21562
21602
|
*/
|
|
21563
|
-
var DetectionSourcesSchema = array(DetectionSourceSchema);
|
|
21603
|
+
var DetectionSourcesSchema = preprocess((value) => Array.isArray(value) && value.length > 1 ? value.slice(0, 1) : value, array(DetectionSourceSchema).max(1));
|
|
21564
21604
|
/**
|
|
21565
21605
|
* Input shape for `pipeline-runner.reportMotion` cap method. Exported
|
|
21566
21606
|
* so cap-side consumers (the orchestrator forward, the runner addon's
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-provider-wyze",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.109",
|
|
4
4
|
"description": "Wyze camera device-provider addon for CamStack — wraps the @apocaliss92/wyze-bridge-js P2P/DTLS client, feeding the stream-broker via the pull-rfc4571 lazy-publish path (a structural twin of addon-provider-reolink)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|