@camstack/addon-pipeline-orchestrator 1.1.26 → 1.1.27

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.
@@ -18,7 +18,7 @@ var e = {
18
18
  },
19
19
  "@camstack/types": {
20
20
  name: "@camstack/types",
21
- version: "1.1.28",
21
+ version: "1.1.29",
22
22
  scope: ["default"],
23
23
  loaded: !1,
24
24
  from: "addon_pipeline_orchestrator_widgets",
@@ -33,7 +33,7 @@ var e = {
33
33
  },
34
34
  "@camstack/ui-library": {
35
35
  name: "@camstack/ui-library",
36
- version: "1.1.23",
36
+ version: "1.1.24",
37
37
  scope: ["default"],
38
38
  loaded: !1,
39
39
  from: "addon_pipeline_orchestrator_widgets",
@@ -36,7 +36,7 @@ async function r() {
36
36
  }
37
37
  },
38
38
  "@camstack/types": {
39
- version: "1.1.28",
39
+ version: "1.1.29",
40
40
  scope: "default",
41
41
  shareConfig: {
42
42
  singleton: !0,
@@ -99,7 +99,7 @@ async function r() {
99
99
  }
100
100
  },
101
101
  "@camstack/ui-library": {
102
- version: "1.1.23",
102
+ version: "1.1.24",
103
103
  scope: "default",
104
104
  shareConfig: {
105
105
  singleton: !0,
package/dist/index.js CHANGED
@@ -25006,7 +25006,6 @@ var OrchestratorDiagnosticsSchema = object({
25006
25006
  enabledAudioNodes: array(string()),
25007
25007
  clusterRoles: object({
25008
25008
  ingestNode: string(),
25009
- recordingNode: string(),
25010
25009
  audioNode: string()
25011
25010
  }),
25012
25011
  assignedDeviceCount: number().int().min(0),
@@ -25167,12 +25166,15 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
25167
25166
  /**
25168
25167
  * Cluster-wide singleton role assignments (placement-model §6). Each role
25169
25168
  * is the ONE node that serves it for every camera. Driven by the
25170
- * `ingestNode` / `recordingNode` / `audioNode` node-selects in the addon
25171
- * global schema; defaults to the hub for all three.
25169
+ * `ingestNode` / `audioNode` node-selects in the addon global schema;
25170
+ * defaults to the hub for both. NOTE: the recording node is NOT a role here
25171
+ * — the `recorder` addon owns it as the single source of truth (its
25172
+ * `recordingNodeId` global setting, obeyed by the recorder's gate). The
25173
+ * Pipeline placement board's "Recording" picker reads/writes that canonical
25174
+ * setting directly via `addonSettings`, not an orchestrator-owned duplicate.
25172
25175
  */
25173
25176
  clusterRoles = {
25174
25177
  ingestNode: "hub",
25175
- recordingNode: "hub",
25176
25178
  audioNode: "hub"
25177
25179
  };
25178
25180
  /**
@@ -28146,32 +28148,21 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
28146
28148
  title: "Cluster Roles",
28147
28149
  tab: "pipeline",
28148
28150
  description: "Cluster-wide singleton roles: the single node that serves each role for every camera. Per-node detection/decode/audio CAPABILITIES + weights + camera caps are edited in the per-node capability table (agent settings), not here.",
28149
- fields: [
28150
- {
28151
- key: "ingestNode",
28152
- type: "node-select",
28153
- label: "Ingest Node",
28154
- description: "The node that connects every camera and serves the compressed restream. Defaults to the hub. (Arbitrary ingest ≠ hub is a later phase; kept here so the role is modeled.)",
28155
- default: "hub",
28156
- showOffline: true
28157
- },
28158
- {
28159
- key: "recordingNode",
28160
- type: "node-select",
28161
- label: "Recording Node",
28162
- description: "The node that records every camera (passthrough copy to its storage location). Defaults to the hub.",
28163
- default: "hub",
28164
- showOffline: true
28165
- },
28166
- {
28167
- key: "audioNode",
28168
- type: "node-select",
28169
- label: "Audio Node",
28170
- description: "The node that runs all audio analysis. Defaults to the hub. Must be an audio-capable node.",
28171
- default: "hub",
28172
- showOffline: true
28173
- }
28174
- ]
28151
+ fields: [{
28152
+ key: "ingestNode",
28153
+ type: "node-select",
28154
+ label: "Ingest Node",
28155
+ description: "The node that connects every camera and serves the compressed restream. Defaults to the hub. (Arbitrary ingest ≠ hub is a later phase; kept here so the role is modeled.)",
28156
+ default: "hub",
28157
+ showOffline: true
28158
+ }, {
28159
+ key: "audioNode",
28160
+ type: "node-select",
28161
+ label: "Audio Node",
28162
+ description: "The node that runs all audio analysis. Defaults to the hub. Must be an audio-capable node.",
28163
+ default: "hub",
28164
+ showOffline: true
28165
+ }]
28175
28166
  },
28176
28167
  {
28177
28168
  id: "decoder",
@@ -28697,7 +28688,6 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
28697
28688
  };
28698
28689
  this.clusterRoles = {
28699
28690
  ingestNode: readRole("ingestNode"),
28700
- recordingNode: readRole("recordingNode"),
28701
28691
  audioNode: readRole("audioNode")
28702
28692
  };
28703
28693
  this.schedulePendingRetry();
package/dist/index.mjs CHANGED
@@ -25002,7 +25002,6 @@ var OrchestratorDiagnosticsSchema = object({
25002
25002
  enabledAudioNodes: array(string()),
25003
25003
  clusterRoles: object({
25004
25004
  ingestNode: string(),
25005
- recordingNode: string(),
25006
25005
  audioNode: string()
25007
25006
  }),
25008
25007
  assignedDeviceCount: number().int().min(0),
@@ -25163,12 +25162,15 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
25163
25162
  /**
25164
25163
  * Cluster-wide singleton role assignments (placement-model §6). Each role
25165
25164
  * is the ONE node that serves it for every camera. Driven by the
25166
- * `ingestNode` / `recordingNode` / `audioNode` node-selects in the addon
25167
- * global schema; defaults to the hub for all three.
25165
+ * `ingestNode` / `audioNode` node-selects in the addon global schema;
25166
+ * defaults to the hub for both. NOTE: the recording node is NOT a role here
25167
+ * — the `recorder` addon owns it as the single source of truth (its
25168
+ * `recordingNodeId` global setting, obeyed by the recorder's gate). The
25169
+ * Pipeline placement board's "Recording" picker reads/writes that canonical
25170
+ * setting directly via `addonSettings`, not an orchestrator-owned duplicate.
25168
25171
  */
25169
25172
  clusterRoles = {
25170
25173
  ingestNode: "hub",
25171
- recordingNode: "hub",
25172
25174
  audioNode: "hub"
25173
25175
  };
25174
25176
  /**
@@ -28142,32 +28144,21 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
28142
28144
  title: "Cluster Roles",
28143
28145
  tab: "pipeline",
28144
28146
  description: "Cluster-wide singleton roles: the single node that serves each role for every camera. Per-node detection/decode/audio CAPABILITIES + weights + camera caps are edited in the per-node capability table (agent settings), not here.",
28145
- fields: [
28146
- {
28147
- key: "ingestNode",
28148
- type: "node-select",
28149
- label: "Ingest Node",
28150
- description: "The node that connects every camera and serves the compressed restream. Defaults to the hub. (Arbitrary ingest ≠ hub is a later phase; kept here so the role is modeled.)",
28151
- default: "hub",
28152
- showOffline: true
28153
- },
28154
- {
28155
- key: "recordingNode",
28156
- type: "node-select",
28157
- label: "Recording Node",
28158
- description: "The node that records every camera (passthrough copy to its storage location). Defaults to the hub.",
28159
- default: "hub",
28160
- showOffline: true
28161
- },
28162
- {
28163
- key: "audioNode",
28164
- type: "node-select",
28165
- label: "Audio Node",
28166
- description: "The node that runs all audio analysis. Defaults to the hub. Must be an audio-capable node.",
28167
- default: "hub",
28168
- showOffline: true
28169
- }
28170
- ]
28147
+ fields: [{
28148
+ key: "ingestNode",
28149
+ type: "node-select",
28150
+ label: "Ingest Node",
28151
+ description: "The node that connects every camera and serves the compressed restream. Defaults to the hub. (Arbitrary ingest ≠ hub is a later phase; kept here so the role is modeled.)",
28152
+ default: "hub",
28153
+ showOffline: true
28154
+ }, {
28155
+ key: "audioNode",
28156
+ type: "node-select",
28157
+ label: "Audio Node",
28158
+ description: "The node that runs all audio analysis. Defaults to the hub. Must be an audio-capable node.",
28159
+ default: "hub",
28160
+ showOffline: true
28161
+ }]
28171
28162
  },
28172
28163
  {
28173
28164
  id: "decoder",
@@ -28693,7 +28684,6 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
28693
28684
  };
28694
28685
  this.clusterRoles = {
28695
28686
  ingestNode: readRole("ingestNode"),
28696
- recordingNode: readRole("recordingNode"),
28697
28687
  audioNode: readRole("audioNode")
28698
28688
  };
28699
28689
  this.schedulePendingRetry();
@@ -30,7 +30,7 @@ async function d(e) {
30
30
  }
31
31
  }
32
32
  async function f() {
33
- return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_orchestrator_widgets-0vYngRZJ.mjs")).catch((e) => {
33
+ return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_orchestrator_widgets-NVcZ0pFA.mjs")).catch((e) => {
34
34
  throw l = void 0, e;
35
35
  }), l;
36
36
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-pipeline-orchestrator",
3
- "version": "1.1.26",
3
+ "version": "1.1.27",
4
4
  "description": "Hub-side camera-to-agent load balancer — tracks runner capacity and dispatches attachCamera calls to the optimal pipeline-runner instance",
5
5
  "keywords": [
6
6
  "camstack",