@camstack/addon-export-alexa 1.2.92 → 1.2.93

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.
@@ -7795,6 +7795,35 @@ var CameraSwitchGroupSchema = object({
7795
7795
  /** Unix ms when the group was composed server-side. */
7796
7796
  fetchedAt: number()
7797
7797
  });
7798
+ /** One archived note — the operator's words plus enough context to find what
7799
+ * they were looking at, after the track itself is gone. */
7800
+ var ArchivedDebugNoteSchema = object({
7801
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7802
+ * same sentence about the same track lands on the row already there. */
7803
+ id: string(),
7804
+ /** The operator's own words, verbatim. */
7805
+ note: string(),
7806
+ /** The camera. Required — every question here is asked per-camera. */
7807
+ deviceId: number().int(),
7808
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7809
+ * is expected to be gone, and this row is not a reference to it. */
7810
+ sourceTrackId: string(),
7811
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7812
+ archivedAt: number().int(),
7813
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7814
+ trackStartedAt: number().int().nullable(),
7815
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7816
+ trackClass: string().nullable(),
7817
+ /** The track's display label at review time; `null` when it had none. */
7818
+ trackLabel: string().nullable()
7819
+ });
7820
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7821
+ var ArchivedDebugNoteQueryInputSchema = object({
7822
+ /** Restrict to a single camera; omit for every row. */
7823
+ deviceId: number().int().optional(),
7824
+ /** Max rows returned, newest-first. */
7825
+ limit: number().int().min(1).max(1e3).optional()
7826
+ });
7798
7827
  /**
7799
7828
  * Ops-log — the durable, append-only operations audit shared by the
7800
7829
  * recordings and events management surfaces.
@@ -20033,7 +20062,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20033
20062
  deviceId: number(),
20034
20063
  trackId: string(),
20035
20064
  flags: TrackFlagsPatchSchema
20036
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20065
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20037
20066
  kind: "query",
20038
20067
  auth: "admin"
20039
20068
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -33431,6 +33460,12 @@ Object.freeze({
33431
33460
  addonId: null,
33432
33461
  access: "view"
33433
33462
  },
33463
+ "pipelineAnalytics.listArchivedDebugNotes": {
33464
+ capName: "pipeline-analytics",
33465
+ capScope: "device",
33466
+ addonId: null,
33467
+ access: "view"
33468
+ },
33434
33469
  "pipelineAnalytics.listEventKinds": {
33435
33470
  capName: "pipeline-analytics",
33436
33471
  capScope: "device",
@@ -37218,6 +37253,11 @@ Object.freeze({
37218
37253
  form: "array",
37219
37254
  optional: true
37220
37255
  }],
37256
+ "pipelineAnalytics.listArchivedDebugNotes": [{
37257
+ name: "deviceId",
37258
+ form: "single",
37259
+ optional: true
37260
+ }],
37221
37261
  "pipelineAnalytics.listEventKinds": [{
37222
37262
  name: "deviceId",
37223
37263
  form: "single",
@@ -7768,6 +7768,35 @@ var CameraSwitchGroupSchema = object({
7768
7768
  /** Unix ms when the group was composed server-side. */
7769
7769
  fetchedAt: number()
7770
7770
  });
7771
+ /** One archived note — the operator's words plus enough context to find what
7772
+ * they were looking at, after the track itself is gone. */
7773
+ var ArchivedDebugNoteSchema = object({
7774
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7775
+ * same sentence about the same track lands on the row already there. */
7776
+ id: string(),
7777
+ /** The operator's own words, verbatim. */
7778
+ note: string(),
7779
+ /** The camera. Required — every question here is asked per-camera. */
7780
+ deviceId: number().int(),
7781
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7782
+ * is expected to be gone, and this row is not a reference to it. */
7783
+ sourceTrackId: string(),
7784
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7785
+ archivedAt: number().int(),
7786
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7787
+ trackStartedAt: number().int().nullable(),
7788
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7789
+ trackClass: string().nullable(),
7790
+ /** The track's display label at review time; `null` when it had none. */
7791
+ trackLabel: string().nullable()
7792
+ });
7793
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7794
+ var ArchivedDebugNoteQueryInputSchema = object({
7795
+ /** Restrict to a single camera; omit for every row. */
7796
+ deviceId: number().int().optional(),
7797
+ /** Max rows returned, newest-first. */
7798
+ limit: number().int().min(1).max(1e3).optional()
7799
+ });
7771
7800
  /**
7772
7801
  * Ops-log — the durable, append-only operations audit shared by the
7773
7802
  * recordings and events management surfaces.
@@ -20006,7 +20035,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
20006
20035
  deviceId: number(),
20007
20036
  trackId: string(),
20008
20037
  flags: TrackFlagsPatchSchema
20009
- }), TrackFlagsSchema, { kind: "mutation" }), method(object({}), EventStoreFootprintSchema, {
20038
+ }), TrackFlagsSchema, { kind: "mutation" }), method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }), method(object({}), EventStoreFootprintSchema, {
20010
20039
  kind: "query",
20011
20040
  auth: "admin"
20012
20041
  }), method(object({ deviceId: number().int().optional() }), EventMediaKindBreakdownSchema, {
@@ -33404,6 +33433,12 @@ Object.freeze({
33404
33433
  addonId: null,
33405
33434
  access: "view"
33406
33435
  },
33436
+ "pipelineAnalytics.listArchivedDebugNotes": {
33437
+ capName: "pipeline-analytics",
33438
+ capScope: "device",
33439
+ addonId: null,
33440
+ access: "view"
33441
+ },
33407
33442
  "pipelineAnalytics.listEventKinds": {
33408
33443
  capName: "pipeline-analytics",
33409
33444
  capScope: "device",
@@ -37191,6 +37226,11 @@ Object.freeze({
37191
37226
  form: "array",
37192
37227
  optional: true
37193
37228
  }],
37229
+ "pipelineAnalytics.listArchivedDebugNotes": [{
37230
+ name: "deviceId",
37231
+ form: "single",
37232
+ optional: true
37233
+ }],
37194
37234
  "pipelineAnalytics.listEventKinds": [{
37195
37235
  name: "deviceId",
37196
37236
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-export-alexa",
3
- "version": "1.2.92",
3
+ "version": "1.2.93",
4
4
  "description": "Alexa Smart Home Skill export — hub-side OAuth provider + directive handler. The companion AWS Lambda forwards Alexa directives to this addon's /addon/export-alexa/directive endpoint.",
5
5
  "keywords": [
6
6
  "camstack",