@camstack/addon-provider-velux 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
@@ -7627,6 +7627,35 @@ var CameraSwitchGroupSchema = object({
7627
7627
  /** Unix ms when the group was composed server-side. */
7628
7628
  fetchedAt: number()
7629
7629
  });
7630
+ /** One archived note — the operator's words plus enough context to find what
7631
+ * they were looking at, after the track itself is gone. */
7632
+ var ArchivedDebugNoteSchema = object({
7633
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7634
+ * same sentence about the same track lands on the row already there. */
7635
+ id: string(),
7636
+ /** The operator's own words, verbatim. */
7637
+ note: string(),
7638
+ /** The camera. Required — every question here is asked per-camera. */
7639
+ deviceId: number().int(),
7640
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7641
+ * is expected to be gone, and this row is not a reference to it. */
7642
+ sourceTrackId: string(),
7643
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7644
+ archivedAt: number().int(),
7645
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7646
+ trackStartedAt: number().int().nullable(),
7647
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7648
+ trackClass: string().nullable(),
7649
+ /** The track's display label at review time; `null` when it had none. */
7650
+ trackLabel: string().nullable()
7651
+ });
7652
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7653
+ var ArchivedDebugNoteQueryInputSchema = object({
7654
+ /** Restrict to a single camera; omit for every row. */
7655
+ deviceId: number().int().optional(),
7656
+ /** Max rows returned, newest-first. */
7657
+ limit: number().int().min(1).max(1e3).optional()
7658
+ });
7630
7659
  /**
7631
7660
  * Ops-log — the durable, append-only operations audit shared by the
7632
7661
  * recordings and events management surfaces.
@@ -20090,7 +20119,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20090
20119
  deviceId: number(),
20091
20120
  trackId: string(),
20092
20121
  flags: TrackFlagsPatchSchema
20093
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20122
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20094
20123
  kind: "query",
20095
20124
  auth: "admin"
20096
20125
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -37484,6 +37513,12 @@ Object.freeze({
37484
37513
  addonId: null,
37485
37514
  access: "view"
37486
37515
  },
37516
+ "pipelineAnalytics.listArchivedDebugNotes": {
37517
+ capName: "pipeline-analytics",
37518
+ capScope: "device",
37519
+ addonId: null,
37520
+ access: "view"
37521
+ },
37487
37522
  "pipelineAnalytics.listEventKinds": {
37488
37523
  capName: "pipeline-analytics",
37489
37524
  capScope: "device",
@@ -41271,6 +41306,11 @@ Object.freeze({
41271
41306
  form: "array",
41272
41307
  optional: true
41273
41308
  }],
41309
+ "pipelineAnalytics.listArchivedDebugNotes": [{
41310
+ name: "deviceId",
41311
+ form: "single",
41312
+ optional: true
41313
+ }],
41274
41314
  "pipelineAnalytics.listEventKinds": [{
41275
41315
  name: "deviceId",
41276
41316
  form: "single",
package/dist/addon.mjs CHANGED
@@ -7626,6 +7626,35 @@ var CameraSwitchGroupSchema = object({
7626
7626
  /** Unix ms when the group was composed server-side. */
7627
7627
  fetchedAt: number()
7628
7628
  });
7629
+ /** One archived note — the operator's words plus enough context to find what
7630
+ * they were looking at, after the track itself is gone. */
7631
+ var ArchivedDebugNoteSchema = object({
7632
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7633
+ * same sentence about the same track lands on the row already there. */
7634
+ id: string(),
7635
+ /** The operator's own words, verbatim. */
7636
+ note: string(),
7637
+ /** The camera. Required — every question here is asked per-camera. */
7638
+ deviceId: number().int(),
7639
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7640
+ * is expected to be gone, and this row is not a reference to it. */
7641
+ sourceTrackId: string(),
7642
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7643
+ archivedAt: number().int(),
7644
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7645
+ trackStartedAt: number().int().nullable(),
7646
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7647
+ trackClass: string().nullable(),
7648
+ /** The track's display label at review time; `null` when it had none. */
7649
+ trackLabel: string().nullable()
7650
+ });
7651
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7652
+ var ArchivedDebugNoteQueryInputSchema = object({
7653
+ /** Restrict to a single camera; omit for every row. */
7654
+ deviceId: number().int().optional(),
7655
+ /** Max rows returned, newest-first. */
7656
+ limit: number().int().min(1).max(1e3).optional()
7657
+ });
7629
7658
  /**
7630
7659
  * Ops-log — the durable, append-only operations audit shared by the
7631
7660
  * recordings and events management surfaces.
@@ -20089,7 +20118,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20089
20118
  deviceId: number(),
20090
20119
  trackId: string(),
20091
20120
  flags: TrackFlagsPatchSchema
20092
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20121
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20093
20122
  kind: "query",
20094
20123
  auth: "admin"
20095
20124
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -37483,6 +37512,12 @@ Object.freeze({
37483
37512
  addonId: null,
37484
37513
  access: "view"
37485
37514
  },
37515
+ "pipelineAnalytics.listArchivedDebugNotes": {
37516
+ capName: "pipeline-analytics",
37517
+ capScope: "device",
37518
+ addonId: null,
37519
+ access: "view"
37520
+ },
37486
37521
  "pipelineAnalytics.listEventKinds": {
37487
37522
  capName: "pipeline-analytics",
37488
37523
  capScope: "device",
@@ -41270,6 +41305,11 @@ Object.freeze({
41270
41305
  form: "array",
41271
41306
  optional: true
41272
41307
  }],
41308
+ "pipelineAnalytics.listArchivedDebugNotes": [{
41309
+ name: "deviceId",
41310
+ form: "single",
41311
+ optional: true
41312
+ }],
41273
41313
  "pipelineAnalytics.listEventKinds": [{
41274
41314
  name: "deviceId",
41275
41315
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-velux",
3
- "version": "0.2.86",
3
+ "version": "0.2.87",
4
4
  "description": "Velux KLF-200 device-provider addon for CamStack — local-gateway window + shutter covers (positional, no tilt)",
5
5
  "keywords": [
6
6
  "camstack",