@camstack/addon-terminal 0.1.72 → 0.1.74

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
@@ -19407,6 +19407,33 @@ var RecentTracksQueryInput = object({
19407
19407
  */
19408
19408
  classes: array(string()).optional()
19409
19409
  });
19410
+ /**
19411
+ * A Summary (D359): the per-camera session envelope that references tracks.
19412
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19413
+ * served by the event-media plane by key), null until the first frame with a
19414
+ * member visible has been materialised.
19415
+ */
19416
+ var SummarySchema = object({
19417
+ id: string(),
19418
+ deviceId: number(),
19419
+ openedAt: number(),
19420
+ lastActiveAt: number(),
19421
+ sealedAt: number().nullable(),
19422
+ memberCount: number().int().nonnegative(),
19423
+ groupShotKey: string().nullable()
19424
+ });
19425
+ var SummariesQueryInput = object({
19426
+ deviceIds: array(number()).min(1),
19427
+ since: number().optional(),
19428
+ until: number().optional(),
19429
+ limit: number().int().min(1).max(200).default(50)
19430
+ });
19431
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19432
+ var SummaryDetailSchema = object({
19433
+ summary: SummarySchema,
19434
+ /** Member track ids, in absorption order. */
19435
+ trackIds: array(string()).readonly()
19436
+ });
19410
19437
  var RecentTracksPageSchema = object({
19411
19438
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19412
19439
  tracks: array(TrackSchema).readonly(),
@@ -19807,7 +19834,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19807
19834
  * timeline would read as a camera that saw nothing.
19808
19835
  */
19809
19836
  classes: array(string()).optional()
19810
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19837
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19811
19838
  kind: "mutation",
19812
19839
  auth: "admin"
19813
19840
  }), method(DeviceEventQueryInput, array(MotionEventSchema).readonly()), method(ObjectEventQueryInput, array(ObjectEventSchema).readonly()), method(DeviceEventQueryInput, array(AudioEventSchema).readonly()), method(object({ deviceId: number() }), array(EventKindDescriptorSchema).readonly()), method(object({ deviceIds: array(number()).min(1).max(200) }), array(EventKindsForDeviceSchema).readonly()), method(object({
@@ -20742,6 +20769,14 @@ var AgentPipelineSettingsSchema = object({
20742
20769
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20743
20770
  ingest: boolean().optional(),
20744
20771
  /**
20772
+ * This node's decode RAM budget, MB. Wins over the cluster
20773
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20774
+ * own RAM unless the operator moved the cluster value (D365).
20775
+ */
20776
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20777
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20778
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20779
+ /**
20745
20780
  * Operator override for the LAN host a cross-node decoder dials to reach
20746
20781
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20747
20782
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21203,6 +21238,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21203
21238
  }), object({ success: literal(true) }), {
21204
21239
  kind: "mutation",
21205
21240
  auth: "admin"
21241
+ }), method(object({
21242
+ agentNodeId: string(),
21243
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21244
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21245
+ }), object({ success: literal(true) }), {
21246
+ kind: "mutation",
21247
+ auth: "admin"
21206
21248
  }), method(object({
21207
21249
  agentNodeId: string(),
21208
21250
  reachableHost: string().nullable()
@@ -36307,6 +36349,12 @@ Object.freeze({
36307
36349
  addonId: null,
36308
36350
  access: "view"
36309
36351
  },
36352
+ "pipelineAnalytics.getSummary": {
36353
+ capName: "pipeline-analytics",
36354
+ capScope: "device",
36355
+ addonId: null,
36356
+ access: "view"
36357
+ },
36310
36358
  "pipelineAnalytics.getTrack": {
36311
36359
  capName: "pipeline-analytics",
36312
36360
  capScope: "device",
@@ -36385,6 +36433,12 @@ Object.freeze({
36385
36433
  addonId: null,
36386
36434
  access: "view"
36387
36435
  },
36436
+ "pipelineAnalytics.listSummaries": {
36437
+ capName: "pipeline-analytics",
36438
+ capScope: "device",
36439
+ addonId: null,
36440
+ access: "view"
36441
+ },
36388
36442
  "pipelineAnalytics.listTrackMedia": {
36389
36443
  capName: "pipeline-analytics",
36390
36444
  capScope: "device",
@@ -36943,6 +36997,12 @@ Object.freeze({
36943
36997
  addonId: null,
36944
36998
  access: "create"
36945
36999
  },
37000
+ "pipelineOrchestrator.setAgentDecodeLimits": {
37001
+ capName: "pipeline-orchestrator",
37002
+ capScope: "system",
37003
+ addonId: null,
37004
+ access: "create"
37005
+ },
36946
37006
  "pipelineOrchestrator.setAgentDetectWeight": {
36947
37007
  capName: "pipeline-orchestrator",
36948
37008
  capScope: "system",
@@ -40074,6 +40134,11 @@ Object.freeze({
40074
40134
  form: "array",
40075
40135
  optional: true
40076
40136
  }],
40137
+ "pipelineAnalytics.listSummaries": [{
40138
+ name: "deviceIds",
40139
+ form: "array",
40140
+ optional: false
40141
+ }],
40077
40142
  "pipelineAnalytics.listTrackMedia": [{
40078
40143
  name: "deviceId",
40079
40144
  form: "single",
package/dist/addon.mjs CHANGED
@@ -19384,6 +19384,33 @@ var RecentTracksQueryInput = object({
19384
19384
  */
19385
19385
  classes: array(string()).optional()
19386
19386
  });
19387
+ /**
19388
+ * A Summary (D359): the per-camera session envelope that references tracks.
19389
+ * `groupShotKey` is the media key of its group shot (`ownerKind: 'summary'`,
19390
+ * served by the event-media plane by key), null until the first frame with a
19391
+ * member visible has been materialised.
19392
+ */
19393
+ var SummarySchema = object({
19394
+ id: string(),
19395
+ deviceId: number(),
19396
+ openedAt: number(),
19397
+ lastActiveAt: number(),
19398
+ sealedAt: number().nullable(),
19399
+ memberCount: number().int().nonnegative(),
19400
+ groupShotKey: string().nullable()
19401
+ });
19402
+ var SummariesQueryInput = object({
19403
+ deviceIds: array(number()).min(1),
19404
+ since: number().optional(),
19405
+ until: number().optional(),
19406
+ limit: number().int().min(1).max(200).default(50)
19407
+ });
19408
+ var SummariesPageSchema = object({ summaries: array(SummarySchema).readonly() });
19409
+ var SummaryDetailSchema = object({
19410
+ summary: SummarySchema,
19411
+ /** Member track ids, in absorption order. */
19412
+ trackIds: array(string()).readonly()
19413
+ });
19387
19414
  var RecentTracksPageSchema = object({
19388
19415
  /** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
19389
19416
  tracks: array(TrackSchema).readonly(),
@@ -19784,7 +19811,7 @@ DeviceType.Camera, method(object({ deviceId: number() }), array(TrackSchema).rea
19784
19811
  * timeline would read as a camera that saw nothing.
19785
19812
  */
19786
19813
  classes: array(string()).optional()
19787
- }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(object({ deviceId: number() }), _void(), {
19814
+ }), array(TrackSchema).readonly()), method(RecentTracksQueryInput, RecentTracksPageSchema), method(SummariesQueryInput, SummariesPageSchema), method(object({ id: string() }), SummaryDetailSchema.nullable()), method(object({ deviceId: number() }), _void(), {
19788
19815
  kind: "mutation",
19789
19816
  auth: "admin"
19790
19817
  }), method(DeviceEventQueryInput, array(MotionEventSchema).readonly()), method(ObjectEventQueryInput, array(ObjectEventSchema).readonly()), method(DeviceEventQueryInput, array(AudioEventSchema).readonly()), method(object({ deviceId: number() }), array(EventKindDescriptorSchema).readonly()), method(object({ deviceIds: array(number()).min(1).max(200) }), array(EventKindsForDeviceSchema).readonly()), method(object({
@@ -20719,6 +20746,14 @@ var AgentPipelineSettingsSchema = object({
20719
20746
  /** Node is eligible to be the ingest / source-owner (serve the restream). */
20720
20747
  ingest: boolean().optional(),
20721
20748
  /**
20749
+ * This node's decode RAM budget, MB. Wins over the cluster
20750
+ * `nodeDecodeBudgetMb`; absent, the runner derives a share of the node's
20751
+ * own RAM unless the operator moved the cluster value (D365).
20752
+ */
20753
+ decodeBudgetMb: number().int().min(1024).max(65536).optional(),
20754
+ /** This node's live decode-worker cap. Wins over the cluster `maxLiveDecodeWorkers`. */
20755
+ maxLiveDecodeWorkers: number().int().min(1).max(32).optional(),
20756
+ /**
20722
20757
  * Operator override for the LAN host a cross-node decoder dials to reach
20723
20758
  * THIS node's restream (Cluster UI). Absent → auto-detect: a remote runner
20724
20759
  * falls back to its `CAMSTACK_HUB_URL`-derived host (the Moleculer address
@@ -21180,6 +21215,13 @@ method(StorageMigrationLeaseInputSchema, object({ paused: literal(true) }), {
21180
21215
  }), object({ success: literal(true) }), {
21181
21216
  kind: "mutation",
21182
21217
  auth: "admin"
21218
+ }), method(object({
21219
+ agentNodeId: string(),
21220
+ decodeBudgetMb: number().int().min(1024).max(65536).nullable().optional(),
21221
+ maxLiveDecodeWorkers: number().int().min(1).max(32).nullable().optional()
21222
+ }), object({ success: literal(true) }), {
21223
+ kind: "mutation",
21224
+ auth: "admin"
21183
21225
  }), method(object({
21184
21226
  agentNodeId: string(),
21185
21227
  reachableHost: string().nullable()
@@ -36284,6 +36326,12 @@ Object.freeze({
36284
36326
  addonId: null,
36285
36327
  access: "view"
36286
36328
  },
36329
+ "pipelineAnalytics.getSummary": {
36330
+ capName: "pipeline-analytics",
36331
+ capScope: "device",
36332
+ addonId: null,
36333
+ access: "view"
36334
+ },
36287
36335
  "pipelineAnalytics.getTrack": {
36288
36336
  capName: "pipeline-analytics",
36289
36337
  capScope: "device",
@@ -36362,6 +36410,12 @@ Object.freeze({
36362
36410
  addonId: null,
36363
36411
  access: "view"
36364
36412
  },
36413
+ "pipelineAnalytics.listSummaries": {
36414
+ capName: "pipeline-analytics",
36415
+ capScope: "device",
36416
+ addonId: null,
36417
+ access: "view"
36418
+ },
36365
36419
  "pipelineAnalytics.listTrackMedia": {
36366
36420
  capName: "pipeline-analytics",
36367
36421
  capScope: "device",
@@ -36920,6 +36974,12 @@ Object.freeze({
36920
36974
  addonId: null,
36921
36975
  access: "create"
36922
36976
  },
36977
+ "pipelineOrchestrator.setAgentDecodeLimits": {
36978
+ capName: "pipeline-orchestrator",
36979
+ capScope: "system",
36980
+ addonId: null,
36981
+ access: "create"
36982
+ },
36923
36983
  "pipelineOrchestrator.setAgentDetectWeight": {
36924
36984
  capName: "pipeline-orchestrator",
36925
36985
  capScope: "system",
@@ -40051,6 +40111,11 @@ Object.freeze({
40051
40111
  form: "array",
40052
40112
  optional: true
40053
40113
  }],
40114
+ "pipelineAnalytics.listSummaries": [{
40115
+ name: "deviceIds",
40116
+ form: "array",
40117
+ optional: false
40118
+ }],
40054
40119
  "pipelineAnalytics.listTrackMedia": [{
40055
40120
  name: "deviceId",
40056
40121
  form: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-terminal",
3
- "version": "0.1.72",
3
+ "version": "0.1.74",
4
4
  "description": "Interactive terminal sessions (pty + xterm) as a CamStack addon",
5
5
  "keywords": [
6
6
  "camstack",