@camstack/types 1.2.189 → 1.2.191

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.
@@ -1,5 +1,6 @@
1
1
  import type { BulkUpdateState } from '../capabilities/addons.cap.js';
2
2
  import type { MotionRegion } from '../capabilities/motion-detection.cap.js';
3
+ import type { DetectionSource } from '../capabilities/pipeline-analytics.cap.js';
3
4
  import type { CamProfile } from '../capabilities/schemas/streaming-shared.js';
4
5
  import type { WrapperKind } from '../capabilities/server-management.cap.js';
5
6
  import type { CameraPipelineConfig } from '../types/camera-pipeline.js';
@@ -363,6 +364,23 @@ export interface PipelineInferenceResultPayload {
363
364
  readonly emittedAt?: number;
364
365
  /** Child steps enabled for this camera + their scheduling policy (from the catalog). */
365
366
  readonly detailSteps?: readonly DetailStepAnnounce[];
367
+ /**
368
+ * WHICH root detector produced `frame.detections`.
369
+ *
370
+ * `'pipeline'` (the default when absent — a runner older than this field
371
+ * emits nothing else) is this runner's own root step on decoded pixels.
372
+ * `'onboard'` is the CAMERA's detector, admitted by the runner because the
373
+ * camera's `detectionSources` names it, and carried on this payload rather
374
+ * than through a door of its own.
375
+ *
376
+ * One door on purpose. A camera-native detection used to reach post-analysis
377
+ * on a separate event, and everything the pipeline plane gets for free was
378
+ * lost on the way: the per-camera `detailSteps` announce above rides THIS
379
+ * payload, so an onboard-born track had no face, no plate and no embedding
380
+ * — invisible while the two planes ran side by side, and the whole feature
381
+ * the moment one replaces the other.
382
+ */
383
+ readonly source?: DetectionSource;
366
384
  readonly [key: string]: unknown;
367
385
  }
368
386
  /**
@@ -29,9 +29,9 @@ export type OpsLogOp = z.infer<typeof OpsLogOpSchema>;
29
29
  /** Why the operation ran. */
30
30
  export declare const OpsLogReasonSchema: z.ZodEnum<{
31
31
  manual: "manual";
32
- operator: "operator";
33
32
  retention: "retention";
34
33
  quota: "quota";
34
+ operator: "operator";
35
35
  maintenance: "maintenance";
36
36
  "orphaned-device": "orphaned-device";
37
37
  }>;
@@ -54,9 +54,9 @@ export declare const OpsLogEntrySchema: z.ZodObject<{
54
54
  }>;
55
55
  reason: z.ZodEnum<{
56
56
  manual: "manual";
57
- operator: "operator";
58
57
  retention: "retention";
59
58
  quota: "quota";
59
+ operator: "operator";
60
60
  maintenance: "maintenance";
61
61
  "orphaned-device": "orphaned-device";
62
62
  }>;
@@ -21,6 +21,13 @@ export interface RunnerCameraConfig {
21
21
  readonly detectionStreamId: string;
22
22
  /** Motion sources that can activate the pipeline. At least one entry. */
23
23
  readonly motionSources: import('../capabilities/pipeline-runner.cap.js').MotionSources;
24
+ /**
25
+ * Which root detectors run for this camera. Optional HERE and not on the Zod
26
+ * schema, which defaults it: this interface is also what a runner older than
27
+ * the field sees on the wire, and `planDetectionSources` reads an absent list
28
+ * as `['pipeline']` — today's behaviour, unchanged.
29
+ */
30
+ readonly detectionSources?: import('../capabilities/pipeline-runner.cap.js').DetectionSources;
24
31
  readonly pipelineEnabled: boolean;
25
32
  /**
26
33
  * Which of the node's inference accelerators this session runs on
@@ -416,6 +416,11 @@ export interface CameraDetectionConfig {
416
416
  readonly pipelineEnabled: boolean;
417
417
  /** Motion sources that activate this camera's pipeline. At least one. */
418
418
  readonly motionSources: import('./pipeline-orchestrator-capability.js').OrchestrationMotionSources;
419
+ /**
420
+ * Which root detectors run for this camera. Forwarded verbatim onto the
421
+ * runner's attach payload; absent is `['pipeline']` all the way down.
422
+ */
423
+ readonly detectionSources?: import('../capabilities/pipeline-runner.cap.js').DetectionSources;
419
424
  readonly motionStreamId: string;
420
425
  readonly detectionStreamId: string;
421
426
  readonly motionFps: number;
@@ -3572,6 +3572,8 @@ function createDeviceProxy(api, binding, opts) {
3572
3572
  getStatus: (input) => dispatch("motion-zones", "motionZones", "getStatus", "query", input)
3573
3573
  },
3574
3574
  nativeObjectDetection: {
3575
+ getOptions: (input) => dispatch("native-object-detection", "nativeObjectDetection", "getOptions", "query", input),
3576
+ setSettings: (input) => dispatch("native-object-detection", "nativeObjectDetection", "setSettings", "mutation", input),
3575
3577
  setEnabled: (input) => dispatch("native-object-detection", "nativeObjectDetection", "setEnabled", "mutation", input),
3576
3578
  getStatus: (input) => dispatch("native-object-detection", "nativeObjectDetection", "getStatus", "query", input)
3577
3579
  },
@@ -3572,6 +3572,8 @@ function createDeviceProxy(api, binding, opts) {
3572
3572
  getStatus: (input) => dispatch("motion-zones", "motionZones", "getStatus", "query", input)
3573
3573
  },
3574
3574
  nativeObjectDetection: {
3575
+ getOptions: (input) => dispatch("native-object-detection", "nativeObjectDetection", "getOptions", "query", input),
3576
+ setSettings: (input) => dispatch("native-object-detection", "nativeObjectDetection", "setSettings", "mutation", input),
3575
3577
  setEnabled: (input) => dispatch("native-object-detection", "nativeObjectDetection", "setEnabled", "mutation", input),
3576
3578
  getStatus: (input) => dispatch("native-object-detection", "nativeObjectDetection", "getStatus", "query", input)
3577
3579
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/types",
3
- "version": "1.2.189",
3
+ "version": "1.2.191",
4
4
  "description": "Shared types, interfaces, and model catalogs for the CamStack detection ecosystem",
5
5
  "keywords": [
6
6
  "camstack",