@norskvideo/ctl-product-template-schema 0.1.23 → 0.1.25

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/index.d.ts CHANGED
@@ -27,6 +27,9 @@ export declare const ProductTemplateAdvancedSchema: z.ZodObject<{
27
27
  sharedMemory: z.ZodOptional<z.ZodObject<{
28
28
  default: z.ZodOptional<z.ZodArray<z.ZodString>>;
29
29
  }, z.core.$strip>>;
30
+ domain: z.ZodOptional<z.ZodObject<{
31
+ default: z.ZodOptional<z.ZodString>;
32
+ }, z.core.$strip>>;
30
33
  openFileLimit: z.ZodOptional<z.ZodObject<{
31
34
  default: z.ZodOptional<z.ZodNumber>;
32
35
  }, z.core.$strip>>;
@@ -199,6 +202,9 @@ export declare const ProductTemplateManifestSchema: z.ZodObject<{
199
202
  sharedMemory: z.ZodOptional<z.ZodObject<{
200
203
  default: z.ZodOptional<z.ZodArray<z.ZodString>>;
201
204
  }, z.core.$strip>>;
205
+ domain: z.ZodOptional<z.ZodObject<{
206
+ default: z.ZodOptional<z.ZodString>;
207
+ }, z.core.$strip>>;
202
208
  openFileLimit: z.ZodOptional<z.ZodObject<{
203
209
  default: z.ZodOptional<z.ZodNumber>;
204
210
  }, z.core.$strip>>;
@@ -406,6 +412,9 @@ export declare const ProductTemplateMaterialsSchema: z.ZodObject<{
406
412
  sharedMemory: z.ZodOptional<z.ZodObject<{
407
413
  default: z.ZodOptional<z.ZodArray<z.ZodString>>;
408
414
  }, z.core.$strip>>;
415
+ domain: z.ZodOptional<z.ZodObject<{
416
+ default: z.ZodOptional<z.ZodString>;
417
+ }, z.core.$strip>>;
409
418
  openFileLimit: z.ZodOptional<z.ZodObject<{
410
419
  default: z.ZodOptional<z.ZodNumber>;
411
420
  }, z.core.$strip>>;
package/index.js CHANGED
@@ -127,6 +127,13 @@ export const ProductTemplateAdvancedSchema = z
127
127
  // override or decline at launch.
128
128
  shmSize: z.object({ default: z.string().optional() }).optional(),
129
129
  sharedMemory: z.object({ default: z.array(z.string()).optional() }).optional(),
130
+ // The Norsk Domain an instance joins: every member shares one norskd, so
131
+ // their engines exchange media zero-copy over the norsk-link. A product
132
+ // whose templates talk to each other (a capture instance feeding
133
+ // recorders) names one domain as their `default`, so they land together
134
+ // without the operator naming it; a launch can override, or decline with
135
+ // "" to run isolated.
136
+ domain: z.object({ default: z.string().optional() }).optional(),
130
137
  // Open file descriptors per container. The runner already states a ceiling
131
138
  // for every instance (unset, containers inherit the host daemon's limit,
132
139
  // which is how a media graph at ~1000 handles dies of EMFILE on some hosts
@@ -7,12 +7,17 @@
7
7
  // Transport: a WebSocket on the worker host, default port 6797, reached from
8
8
  // a container as `host.docker.internal`. Path `/instances/<jobId>/<role>`
9
9
  // where `role` is the instance KEY (unique per migration target), both
10
- // url-encoded. JSON text frames, each ≤ 64 KiB. `payload` is any JSON, opaque
10
+ // url-encoded. JSON text frames, each ≤ 1 MiB. `payload` is any JSON, opaque
11
11
  // to the worker; on the gRPC wire it becomes the UTF-8 bytes of its
12
12
  // JSON.stringify and comes back the same way.
13
13
  import { z } from "zod";
14
14
  export const JOB_SOCKET_DEFAULT_PORT = 6797;
15
- export const JOB_SOCKET_MAX_FRAME_BYTES = 64 * 1024;
15
+ // 1 MiB. It was 64 KiB, which a handover's `source-stopped-output` — the
16
+ // state of every participant, gathered after the source has stopped its
17
+ // output — could exceed with a few dozen nodes of 32 KiB each; the worker
18
+ // then closed the socket (4413) with the source already stopped. The SDK
19
+ // checks its own frames against this before sending (migration-client.ts).
20
+ export const JOB_SOCKET_MAX_FRAME_BYTES = 1024 * 1024;
16
21
  export const JOB_SOCKET_HELLO_TIMEOUT_MS = 5_000;
17
22
  /** The name a container reaches its own worker's host under. Injected as an
18
23
  * `extra_hosts` mapping on every service so it resolves on native Linux too. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norskvideo/ctl-product-template-schema",
3
- "version": "0.1.23",
3
+ "version": "0.1.25",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {