@camstack/addon-provider-petkit 0.1.1 → 0.1.3

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
@@ -17839,7 +17839,17 @@ var AgentAddonConfigSchema = object({
17839
17839
  });
17840
17840
  var AgentPipelineSettingsSchema = object({
17841
17841
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
17842
- maxCameras: number().int().nonnegative().nullable().default(null)
17842
+ maxCameras: number().int().nonnegative().nullable().default(null),
17843
+ /** Per-node detection weight (relative share for the quota balancer). */
17844
+ detectWeight: number().positive().optional(),
17845
+ /** Node is eligible to run the detection pipeline (decode + inference). */
17846
+ detect: boolean().optional(),
17847
+ /** Node is eligible to host decoder sessions. */
17848
+ decode: boolean().optional(),
17849
+ /** Node is eligible to run audio-analyzer sessions. */
17850
+ audio: boolean().optional(),
17851
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
17852
+ ingest: boolean().optional()
17843
17853
  });
17844
17854
  var CameraPipelineForAgentSchema = object({
17845
17855
  steps: array(PipelineStepInputSchema).readonly(),
@@ -17914,7 +17924,10 @@ var AgentLoadSummarySchema = object({
17914
17924
  online: boolean(),
17915
17925
  load: RunnerLocalLoadSchema,
17916
17926
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
17917
- score: number()
17927
+ score: number(),
17928
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
17929
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
17930
+ decodeHwaccel: string().nullable()
17918
17931
  });
17919
17932
  /**
17920
17933
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -18142,6 +18155,21 @@ method(object({
18142
18155
  }), object({ success: literal(true) }), {
18143
18156
  kind: "mutation",
18144
18157
  auth: "admin"
18158
+ }), method(object({
18159
+ agentNodeId: string(),
18160
+ detectWeight: number().positive().nullable()
18161
+ }), object({ success: literal(true) }), {
18162
+ kind: "mutation",
18163
+ auth: "admin"
18164
+ }), method(object({
18165
+ agentNodeId: string(),
18166
+ detect: boolean().nullable().optional(),
18167
+ decode: boolean().nullable().optional(),
18168
+ audio: boolean().nullable().optional(),
18169
+ ingest: boolean().nullable().optional()
18170
+ }), object({ success: literal(true) }), {
18171
+ kind: "mutation",
18172
+ auth: "admin"
18145
18173
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
18146
18174
  deviceId: number(),
18147
18175
  addonId: string(),
@@ -20450,7 +20478,7 @@ var HardwareEncoderIdSchema = _enum([
20450
20478
  "libx264",
20451
20479
  "libx265"
20452
20480
  ]);
20453
- var HardwareEncodersSchema = object({
20481
+ object({
20454
20482
  encoders: array(object({
20455
20483
  encoder: HardwareEncoderIdSchema,
20456
20484
  codec: _enum(["H264", "H265"]),
@@ -20469,15 +20497,7 @@ var HardwareEncodersSchema = object({
20469
20497
  defaultH265: HardwareEncoderIdSchema,
20470
20498
  probedAt: number()
20471
20499
  });
20472
- /**
20473
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
20474
- * methods the configured ffmpeg binary actually supports (parsed from
20475
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
20476
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
20477
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
20478
- * software fallback — this only filters out wholly-unsupported backends.
20479
- */
20480
- var HardwareDecodeAccelsSchema = object({
20500
+ object({
20481
20501
  methods: array(string()).readonly(),
20482
20502
  probedAt: number()
20483
20503
  });
@@ -20540,13 +20560,7 @@ var ResolvedInferenceConfigSchema = object({
20540
20560
  format: ModelFormatSchema,
20541
20561
  reason: string()
20542
20562
  });
20543
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
20544
- kind: "mutation",
20545
- auth: "admin"
20546
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
20547
- kind: "mutation",
20548
- auth: "admin"
20549
- });
20563
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
20550
20564
  var PtzPresetSchema = object({
20551
20565
  id: string(),
20552
20566
  name: string()
@@ -24015,6 +24029,18 @@ Object.freeze({
24015
24029
  addonId: null,
24016
24030
  access: "create"
24017
24031
  },
24032
+ "pipelineOrchestrator.setAgentCapabilities": {
24033
+ capName: "pipeline-orchestrator",
24034
+ capScope: "system",
24035
+ addonId: null,
24036
+ access: "create"
24037
+ },
24038
+ "pipelineOrchestrator.setAgentDetectWeight": {
24039
+ capName: "pipeline-orchestrator",
24040
+ capScope: "system",
24041
+ addonId: null,
24042
+ access: "create"
24043
+ },
24018
24044
  "pipelineOrchestrator.setAgentMaxCameras": {
24019
24045
  capName: "pipeline-orchestrator",
24020
24046
  capScope: "system",
@@ -24171,30 +24197,6 @@ Object.freeze({
24171
24197
  addonId: null,
24172
24198
  access: "view"
24173
24199
  },
24174
- "platformProbe.getHardwareDecodeAccels": {
24175
- capName: "platform-probe",
24176
- capScope: "system",
24177
- addonId: null,
24178
- access: "view"
24179
- },
24180
- "platformProbe.getHardwareEncoders": {
24181
- capName: "platform-probe",
24182
- capScope: "system",
24183
- addonId: null,
24184
- access: "view"
24185
- },
24186
- "platformProbe.refreshHardwareDecodeAccels": {
24187
- capName: "platform-probe",
24188
- capScope: "system",
24189
- addonId: null,
24190
- access: "create"
24191
- },
24192
- "platformProbe.refreshHardwareEncoders": {
24193
- capName: "platform-probe",
24194
- capScope: "system",
24195
- addonId: null,
24196
- access: "create"
24197
- },
24198
24200
  "platformProbe.resolveHwAccel": {
24199
24201
  capName: "platform-probe",
24200
24202
  capScope: "system",
package/dist/addon.mjs CHANGED
@@ -17838,7 +17838,17 @@ var AgentAddonConfigSchema = object({
17838
17838
  });
17839
17839
  var AgentPipelineSettingsSchema = object({
17840
17840
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
17841
- maxCameras: number().int().nonnegative().nullable().default(null)
17841
+ maxCameras: number().int().nonnegative().nullable().default(null),
17842
+ /** Per-node detection weight (relative share for the quota balancer). */
17843
+ detectWeight: number().positive().optional(),
17844
+ /** Node is eligible to run the detection pipeline (decode + inference). */
17845
+ detect: boolean().optional(),
17846
+ /** Node is eligible to host decoder sessions. */
17847
+ decode: boolean().optional(),
17848
+ /** Node is eligible to run audio-analyzer sessions. */
17849
+ audio: boolean().optional(),
17850
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
17851
+ ingest: boolean().optional()
17842
17852
  });
17843
17853
  var CameraPipelineForAgentSchema = object({
17844
17854
  steps: array(PipelineStepInputSchema).readonly(),
@@ -17913,7 +17923,10 @@ var AgentLoadSummarySchema = object({
17913
17923
  online: boolean(),
17914
17924
  load: RunnerLocalLoadSchema,
17915
17925
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
17916
- score: number()
17926
+ score: number(),
17927
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
17928
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
17929
+ decodeHwaccel: string().nullable()
17917
17930
  });
17918
17931
  /**
17919
17932
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -18141,6 +18154,21 @@ method(object({
18141
18154
  }), object({ success: literal(true) }), {
18142
18155
  kind: "mutation",
18143
18156
  auth: "admin"
18157
+ }), method(object({
18158
+ agentNodeId: string(),
18159
+ detectWeight: number().positive().nullable()
18160
+ }), object({ success: literal(true) }), {
18161
+ kind: "mutation",
18162
+ auth: "admin"
18163
+ }), method(object({
18164
+ agentNodeId: string(),
18165
+ detect: boolean().nullable().optional(),
18166
+ decode: boolean().nullable().optional(),
18167
+ audio: boolean().nullable().optional(),
18168
+ ingest: boolean().nullable().optional()
18169
+ }), object({ success: literal(true) }), {
18170
+ kind: "mutation",
18171
+ auth: "admin"
18144
18172
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
18145
18173
  deviceId: number(),
18146
18174
  addonId: string(),
@@ -20449,7 +20477,7 @@ var HardwareEncoderIdSchema = _enum([
20449
20477
  "libx264",
20450
20478
  "libx265"
20451
20479
  ]);
20452
- var HardwareEncodersSchema = object({
20480
+ object({
20453
20481
  encoders: array(object({
20454
20482
  encoder: HardwareEncoderIdSchema,
20455
20483
  codec: _enum(["H264", "H265"]),
@@ -20468,15 +20496,7 @@ var HardwareEncodersSchema = object({
20468
20496
  defaultH265: HardwareEncoderIdSchema,
20469
20497
  probedAt: number()
20470
20498
  });
20471
- /**
20472
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
20473
- * methods the configured ffmpeg binary actually supports (parsed from
20474
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
20475
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
20476
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
20477
- * software fallback — this only filters out wholly-unsupported backends.
20478
- */
20479
- var HardwareDecodeAccelsSchema = object({
20499
+ object({
20480
20500
  methods: array(string()).readonly(),
20481
20501
  probedAt: number()
20482
20502
  });
@@ -20539,13 +20559,7 @@ var ResolvedInferenceConfigSchema = object({
20539
20559
  format: ModelFormatSchema,
20540
20560
  reason: string()
20541
20561
  });
20542
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
20543
- kind: "mutation",
20544
- auth: "admin"
20545
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
20546
- kind: "mutation",
20547
- auth: "admin"
20548
- });
20562
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
20549
20563
  var PtzPresetSchema = object({
20550
20564
  id: string(),
20551
20565
  name: string()
@@ -24014,6 +24028,18 @@ Object.freeze({
24014
24028
  addonId: null,
24015
24029
  access: "create"
24016
24030
  },
24031
+ "pipelineOrchestrator.setAgentCapabilities": {
24032
+ capName: "pipeline-orchestrator",
24033
+ capScope: "system",
24034
+ addonId: null,
24035
+ access: "create"
24036
+ },
24037
+ "pipelineOrchestrator.setAgentDetectWeight": {
24038
+ capName: "pipeline-orchestrator",
24039
+ capScope: "system",
24040
+ addonId: null,
24041
+ access: "create"
24042
+ },
24017
24043
  "pipelineOrchestrator.setAgentMaxCameras": {
24018
24044
  capName: "pipeline-orchestrator",
24019
24045
  capScope: "system",
@@ -24170,30 +24196,6 @@ Object.freeze({
24170
24196
  addonId: null,
24171
24197
  access: "view"
24172
24198
  },
24173
- "platformProbe.getHardwareDecodeAccels": {
24174
- capName: "platform-probe",
24175
- capScope: "system",
24176
- addonId: null,
24177
- access: "view"
24178
- },
24179
- "platformProbe.getHardwareEncoders": {
24180
- capName: "platform-probe",
24181
- capScope: "system",
24182
- addonId: null,
24183
- access: "view"
24184
- },
24185
- "platformProbe.refreshHardwareDecodeAccels": {
24186
- capName: "platform-probe",
24187
- capScope: "system",
24188
- addonId: null,
24189
- access: "create"
24190
- },
24191
- "platformProbe.refreshHardwareEncoders": {
24192
- capName: "platform-probe",
24193
- capScope: "system",
24194
- addonId: null,
24195
- access: "create"
24196
- },
24197
24199
  "platformProbe.resolveHwAccel": {
24198
24200
  capName: "platform-probe",
24199
24201
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-petkit",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "PetKit smart-feeder device-provider addon for CamStack — wraps the @apocaliss92/nodepetkit PetKit cloud client",
5
5
  "keywords": [
6
6
  "camstack",