@camstack/addon-provider-dreo 0.2.86 → 0.2.87

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
@@ -7663,6 +7663,35 @@ var CameraSwitchGroupSchema = object({
7663
7663
  /** Unix ms when the group was composed server-side. */
7664
7664
  fetchedAt: number()
7665
7665
  });
7666
+ /** One archived note — the operator's words plus enough context to find what
7667
+ * they were looking at, after the track itself is gone. */
7668
+ var ArchivedDebugNoteSchema = object({
7669
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7670
+ * same sentence about the same track lands on the row already there. */
7671
+ id: string(),
7672
+ /** The operator's own words, verbatim. */
7673
+ note: string(),
7674
+ /** The camera. Required — every question here is asked per-camera. */
7675
+ deviceId: number().int(),
7676
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7677
+ * is expected to be gone, and this row is not a reference to it. */
7678
+ sourceTrackId: string(),
7679
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7680
+ archivedAt: number().int(),
7681
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7682
+ trackStartedAt: number().int().nullable(),
7683
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7684
+ trackClass: string().nullable(),
7685
+ /** The track's display label at review time; `null` when it had none. */
7686
+ trackLabel: string().nullable()
7687
+ });
7688
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7689
+ var ArchivedDebugNoteQueryInputSchema = object({
7690
+ /** Restrict to a single camera; omit for every row. */
7691
+ deviceId: number().int().optional(),
7692
+ /** Max rows returned, newest-first. */
7693
+ limit: number().int().min(1).max(1e3).optional()
7694
+ });
7666
7695
  /**
7667
7696
  * Ops-log — the durable, append-only operations audit shared by the
7668
7697
  * recordings and events management surfaces.
@@ -20143,7 +20172,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20143
20172
  deviceId: number(),
20144
20173
  trackId: string(),
20145
20174
  flags: TrackFlagsPatchSchema
20146
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20175
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20147
20176
  kind: "query",
20148
20177
  auth: "admin"
20149
20178
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -37545,6 +37574,12 @@ Object.freeze({
37545
37574
  addonId: null,
37546
37575
  access: "view"
37547
37576
  },
37577
+ "pipelineAnalytics.listArchivedDebugNotes": {
37578
+ capName: "pipeline-analytics",
37579
+ capScope: "device",
37580
+ addonId: null,
37581
+ access: "view"
37582
+ },
37548
37583
  "pipelineAnalytics.listEventKinds": {
37549
37584
  capName: "pipeline-analytics",
37550
37585
  capScope: "device",
@@ -41332,6 +41367,11 @@ Object.freeze({
41332
41367
  form: "array",
41333
41368
  optional: true
41334
41369
  }],
41370
+ "pipelineAnalytics.listArchivedDebugNotes": [{
41371
+ name: "deviceId",
41372
+ form: "single",
41373
+ optional: true
41374
+ }],
41335
41375
  "pipelineAnalytics.listEventKinds": [{
41336
41376
  name: "deviceId",
41337
41377
  form: "single",
package/dist/addon.mjs CHANGED
@@ -7664,6 +7664,35 @@ var CameraSwitchGroupSchema = object({
7664
7664
  /** Unix ms when the group was composed server-side. */
7665
7665
  fetchedAt: number()
7666
7666
  });
7667
+ /** One archived note — the operator's words plus enough context to find what
7668
+ * they were looking at, after the track itself is gone. */
7669
+ var ArchivedDebugNoteSchema = object({
7670
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7671
+ * same sentence about the same track lands on the row already there. */
7672
+ id: string(),
7673
+ /** The operator's own words, verbatim. */
7674
+ note: string(),
7675
+ /** The camera. Required — every question here is asked per-camera. */
7676
+ deviceId: number().int(),
7677
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7678
+ * is expected to be gone, and this row is not a reference to it. */
7679
+ sourceTrackId: string(),
7680
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7681
+ archivedAt: number().int(),
7682
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7683
+ trackStartedAt: number().int().nullable(),
7684
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7685
+ trackClass: string().nullable(),
7686
+ /** The track's display label at review time; `null` when it had none. */
7687
+ trackLabel: string().nullable()
7688
+ });
7689
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7690
+ var ArchivedDebugNoteQueryInputSchema = object({
7691
+ /** Restrict to a single camera; omit for every row. */
7692
+ deviceId: number().int().optional(),
7693
+ /** Max rows returned, newest-first. */
7694
+ limit: number().int().min(1).max(1e3).optional()
7695
+ });
7667
7696
  /**
7668
7697
  * Ops-log — the durable, append-only operations audit shared by the
7669
7698
  * recordings and events management surfaces.
@@ -20144,7 +20173,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20144
20173
  deviceId: number(),
20145
20174
  trackId: string(),
20146
20175
  flags: TrackFlagsPatchSchema
20147
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20176
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20148
20177
  kind: "query",
20149
20178
  auth: "admin"
20150
20179
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -37546,6 +37575,12 @@ Object.freeze({
37546
37575
  addonId: null,
37547
37576
  access: "view"
37548
37577
  },
37578
+ "pipelineAnalytics.listArchivedDebugNotes": {
37579
+ capName: "pipeline-analytics",
37580
+ capScope: "device",
37581
+ addonId: null,
37582
+ access: "view"
37583
+ },
37549
37584
  "pipelineAnalytics.listEventKinds": {
37550
37585
  capName: "pipeline-analytics",
37551
37586
  capScope: "device",
@@ -41333,6 +41368,11 @@ Object.freeze({
41333
41368
  form: "array",
41334
41369
  optional: true
41335
41370
  }],
41371
+ "pipelineAnalytics.listArchivedDebugNotes": [{
41372
+ name: "deviceId",
41373
+ form: "single",
41374
+ optional: true
41375
+ }],
41336
41376
  "pipelineAnalytics.listEventKinds": [{
41337
41377
  name: "deviceId",
41338
41378
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-dreo",
3
- "version": "0.2.86",
3
+ "version": "0.2.87",
4
4
  "description": "Dreo smart-device (fan / air-circulator / purifier / heater / humidifier) device-provider addon for CamStack — wraps the @apocaliss92/nodedreo Dreo cloud client (REST + WebSocket)",
5
5
  "keywords": [
6
6
  "camstack",