@camstack/addon-post-analysis 1.2.335 → 1.2.337

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.
Files changed (16) hide show
  1. package/THIRD_PARTY_MODELS.md +2 -2
  2. package/dist/{clip-model-registry-D7e1kEqc.mjs → clip-model-registry-CD0UYoAb.mjs} +249 -92
  3. package/dist/{clip-model-registry-BxUHFGUg.js → clip-model-registry-CML1YOOa.js} +259 -90
  4. package/dist/embedding-encoder/index.js +2 -2
  5. package/dist/embedding-encoder/index.mjs +2 -2
  6. package/dist/pipeline-analytics/_stub.js +2 -2
  7. package/dist/pipeline-analytics/{_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-NmXf2bwM.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-DGaCYQ8R.mjs} +2 -2
  8. package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-D7NMYqUM.mjs +26 -0
  9. package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-bIOxWlPv.mjs +26 -0
  10. package/dist/pipeline-analytics/{hostInit-DM07J5TU.mjs → hostInit-Dlhtn22B.mjs} +2 -2
  11. package/dist/pipeline-analytics/index.js +148 -61
  12. package/dist/pipeline-analytics/index.mjs +148 -61
  13. package/dist/pipeline-analytics/remoteEntry.js +1 -1
  14. package/package.json +2 -2
  15. package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BMP6Hyub.mjs +0 -26
  16. package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-DxUsRAkr.mjs +0 -26
@@ -134,7 +134,7 @@ entry kept resolvable for a saved selection but no longer offered.
134
134
 
135
135
  | Catalog ids | Upstream | Code / weights | Training data | CamStack changes | Downloaded from |
136
136
  | --- | --- | --- | --- | --- | --- |
137
- | `yunet-2023mar` (default) | [OpenCV Zoo YuNet](https://github.com/opencv/opencv_zoo/tree/main/models/face_detection_yunet) | BSD-3-Clause (`BSD-3-Clause.txt`) / MIT (`MIT-yunet-reference.txt`) | WIDER FACE: research-oriented terms; images CC BY-NC-ND | input contract baked into the graph (the pool RGB /255 becomes the upstream BGR 0..255: Mul(255) plus a channel Gather); internal tensor names cleared in the OpenVINO IR; ONNX fp32, OpenVINO IR fp32, CoreML fp16 (scripts/build-yunet-model.py) | mirror `faceDetection/yunet` |
137
+ | `yunet-2023mar` (default) | [OpenCV Zoo YuNet](https://github.com/opencv/opencv_zoo/tree/main/models/face_detection_yunet) | BSD-3-Clause (`BSD-3-Clause.txt`) / MIT (`MIT-yunet-reference.txt`) | WIDER FACE: research-oriented terms; images CC BY-NC-ND | input contract baked into the graph (the pool RGB /255 becomes the upstream BGR 0..255: Mul(255) plus a channel Gather); internal tensor names cleared in the OpenVINO IR; ONNX fp32, OpenVINO IR fp32, CoreML fp16 (scripts/build-yunet-model.py); Edge TPU build: the bake folded into the first Conv, full-integer int8 post-training quantisation calibrated on CamStack person crops, compiled with edgetpu_compiler 14 (scripts/build-yunet-edgetpu.py) | mirror `faceDetection/yunet` |
138
138
 
139
139
  ### Face recognition
140
140
 
@@ -146,7 +146,7 @@ entry kept resolvable for a saved selection but no longer offered.
146
146
 
147
147
  | Catalog ids | Upstream | Code / weights | Training data | CamStack changes | Downloaded from |
148
148
  | --- | --- | --- | --- | --- | --- |
149
- | `yolox-tiny-plate` (default) | [open-lpr models (faisalthaheem/open-lpr-models), YOLOX-tiny](https://huggingface.co/faisalthaheem/open-lpr-models) | Apache-2.0 / Apache-2.0 (`Apache-2.0.txt`) | Simanno annotated plate corpus plus community-contributed photographs, pseudo-labelled by a teacher model (not published; the upstream NOTICE says the photographs were uploaded without consent obtained): UNKNOWN | input contract baked into the graph (static 1x3x640x640 RGB /255 becomes the upstream BGR 0..255: Mul(255) plus a channel Gather) and the output reshaped to the YOLOv8 layout (cx, cy, w, h, obj*cls); ONNX fp32, OpenVINO IR fp16, CoreML fp16 (scripts/build-yolox-plate-model.py) | mirror `plateDetection/yolox-tiny-plate` |
149
+ | `yolox-tiny-plate` (default) | [open-lpr models (faisalthaheem/open-lpr-models), YOLOX-tiny](https://huggingface.co/faisalthaheem/open-lpr-models) | Apache-2.0 / Apache-2.0 (`Apache-2.0.txt`) | Simanno annotated plate corpus plus community-contributed photographs, pseudo-labelled by a teacher model (not published; the upstream NOTICE says the photographs were uploaded without consent obtained): UNKNOWN | input contract baked into the graph (static 1x3x640x640 RGB /255 becomes the upstream BGR 0..255: Mul(255) plus a channel Gather) and the output reshaped to the YOLOv8 layout (cx, cy, w, h, obj*cls); ONNX fp32, OpenVINO IR fp16, CoreML fp16 (scripts/build-yolox-plate-model.py); Edge TPU build: the Focus stem rewritten as the equivalent 6x6 stride-2 Conv with the input bake folded into it, the graph cut before the grid decode (raw per-stride head), full-integer int8 post-training quantisation calibrated on CamStack vehicle crops, compiled with edgetpu_compiler 14 (scripts/build-yolox-plate-edgetpu.py) | mirror `plateDetection/yolox-tiny-plate` |
150
150
 
151
151
  ### Licence plate reading
152
152
 
@@ -11529,89 +11529,51 @@ function resolveClipSearchMinScore(meta, request) {
11529
11529
  const factor = CLIP_STRICTNESS_FACTOR[request.strictness ?? "loose"];
11530
11530
  return Math.min(1, Math.round(meta.searchMinScore * factor * 1e3) / 1e3);
11531
11531
  }
11532
- /**
11533
- * The class names a per-class COUNT can ever be keyed on — the macro ids, and
11534
- * only those.
11535
- *
11536
- * `preserveOriginal: false` below is the whole reason this set exists: the
11537
- * executor maps each raw COCO label onto its macro and DROPS everything else,
11538
- * so a tracked detection's `className` is always one of {@link MACRO_LABELS}.
11539
- * Any surface that indexes counts by class name — the ZoneAnalytics occupancy
11540
- * snapshot's `byClass`, and therefore every occupancy rule — can match nothing
11541
- * else. Derived from the catalog, never hand-listed, so a new macro joins it by
11542
- * being declared once.
11543
- *
11544
- * Cost of not having it, 2026-08-12: the notification rule editor offered the
11545
- * full taxonomy for an occupancy class (occupancy is the one condition that
11546
- * does not go through the engine's macro-expanding `expandClassSelector`), two
11547
- * live rules were authored on `car`, and both counters read 0 forever.
11548
- */
11549
- var DETECTION_MACRO_CLASSES = new Set([
11550
- {
11551
- id: "person",
11552
- name: "Person"
11553
- },
11554
- {
11555
- id: "vehicle",
11556
- name: "Vehicle"
11557
- },
11558
- {
11559
- id: "animal",
11560
- name: "Animal"
11561
- },
11562
- {
11563
- id: "package",
11564
- name: "Package"
11565
- }
11566
- ].map((l) => l.id));
11567
- /** True when `className` is a macro the detector can actually emit (and hence a
11568
- * class a count can be keyed on) — see {@link DETECTION_MACRO_CLASSES}. */
11569
- function isDetectionMacroClass(className) {
11570
- return DETECTION_MACRO_CLASSES.has(className.trim().toLowerCase());
11571
- }
11572
- var COCO_TO_MACRO = {
11573
- mapping: {
11574
- person: "person",
11575
- bicycle: "vehicle",
11576
- car: "vehicle",
11577
- motorcycle: "vehicle",
11578
- airplane: "vehicle",
11579
- bus: "vehicle",
11580
- train: "vehicle",
11581
- truck: "vehicle",
11582
- boat: "vehicle",
11583
- bird: "animal",
11584
- cat: "animal",
11585
- dog: "animal",
11586
- horse: "animal",
11587
- sheep: "animal",
11588
- cow: "animal",
11589
- elephant: "animal",
11590
- bear: "animal",
11591
- zebra: "animal",
11592
- giraffe: "animal",
11593
- suitcase: "package",
11594
- backpack: "package",
11595
- handbag: "package"
11596
- },
11597
- preserveOriginal: false
11598
- };
11599
- /** Steps a root detector may declare it fills. */
11600
- var FILLABLE_STEP_IDS = [
11532
+ /** Steps whose effect a root label can BE. */
11533
+ var LABEL_SUPPLY_STEP_IDS = [
11601
11534
  "animal-classifier",
11602
11535
  "vehicle-classifier",
11603
11536
  "package-detection"
11604
11537
  ];
11605
- /** Narrow a step id to a fillable one — type guard, not a cast. */
11606
- function isFillableStepId(value) {
11607
- return FILLABLE_STEP_IDS.some((id) => id === value);
11608
- }
11538
+ /** Steps whose box a root detection can BE. */
11539
+ var CROP_SUPPLY_STEP_IDS = ["plate-detection", "face-detection"];
11540
+ /** Every step a root model can supply. */
11541
+ var ROOT_SUPPLIABLE_STEP_IDS = [...LABEL_SUPPLY_STEP_IDS, ...CROP_SUPPLY_STEP_IDS];
11542
+ /** Narrow a step id to a suppliable one — type guard, not a cast. */
11543
+ function isRootSuppliableStepId(value) {
11544
+ return ROOT_SUPPLIABLE_STEP_IDS.some((id) => id === value);
11545
+ }
11546
+ /** Narrow a step id to a label-kind one. */
11547
+ function isLabelSupplyStepId(value) {
11548
+ return LABEL_SUPPLY_STEP_IDS.some((id) => id === value);
11549
+ }
11550
+ var CROP_SUPPLY_SOURCES = {
11551
+ "plate-detection": {
11552
+ rootLabels: ["license_plate"],
11553
+ parentMacro: "vehicle",
11554
+ childClass: "plate",
11555
+ servedChildSteps: ["plate-ocr"],
11556
+ use: "as-output"
11557
+ },
11558
+ "face-detection": {
11559
+ rootLabels: ["face"],
11560
+ parentMacro: "person",
11561
+ childClass: "face",
11562
+ servedChildSteps: ["face-embedding"],
11563
+ use: "refine",
11564
+ minRootInputPx: 640
11565
+ }
11566
+ };
11609
11567
  /** The step a linked label stands in for, or `undefined` for any other attribution. */
11610
11568
  function linkedStepOf(attributionStepId) {
11611
11569
  if (attributionStepId === void 0) return void 0;
11612
11570
  if (!attributionStepId.startsWith("detector-link:")) return void 0;
11613
11571
  const stepId = attributionStepId.slice(14);
11614
- return isFillableStepId(stepId) ? stepId : void 0;
11572
+ return isLabelSupplyStepId(stepId) ? stepId : void 0;
11573
+ }
11574
+ /** The child steps of a crop-kind step that still run on the root's box. */
11575
+ function rootSupplyServes(stepId) {
11576
+ return CROP_SUPPLY_SOURCES[stepId].servedChildSteps;
11615
11577
  }
11616
11578
  var MODEL_FORMATS = [
11617
11579
  "onnx",
@@ -11745,12 +11707,35 @@ var ModelLicenseSchema = preprocess((value) => typeof value === "string" ? { wei
11745
11707
  /** True when the weights or their data forbid commercial use. */
11746
11708
  nonCommercial: boolean().optional()
11747
11709
  }));
11748
- /** One `fillsClassifierEffects` entry — see `ModelCatalogEntry.fillsClassifierEffects`. */
11749
- var FillsClassifierEffectSchema = object({
11750
- stepId: _enum(FILLABLE_STEP_IDS),
11710
+ /**
11711
+ * One step a ROOT detector can supply from its own output (D730) — see
11712
+ * `ModelCatalogEntry.suppliesSteps`.
11713
+ *
11714
+ * - `label`: the root's raw class IS the step's answer. `labelToEffect` maps
11715
+ * the root's label to the step's vocabulary; `uncovered` is the vocabulary
11716
+ * the root cannot produce (shown as unavailable, never a blocker).
11717
+ * - `crop`: the root draws the box the step would have found (`license_plate`
11718
+ * for plate-detection, `face` for face-detection). The box becomes a detail
11719
+ * child of the `parentMacro` detection that contains it — never a track.
11720
+ */
11721
+ var RootStepSupplySchema = discriminatedUnion("kind", [object({
11722
+ kind: literal("label"),
11723
+ stepId: _enum(LABEL_SUPPLY_STEP_IDS),
11751
11724
  labelToEffect: record(string(), string()),
11752
11725
  uncovered: array(string()).readonly()
11753
- });
11726
+ }), object({
11727
+ kind: literal("crop"),
11728
+ stepId: _enum(CROP_SUPPLY_STEP_IDS),
11729
+ rootLabels: array(string()).readonly(),
11730
+ parentMacro: _enum(["vehicle", "person"]),
11731
+ childClass: _enum(["plate", "face"]),
11732
+ /**
11733
+ * The root's smaller input side, stamped on read by `rootSuppliesOf` from
11734
+ * the model entry — what a step's `minRootInputPx` gate judges. Never
11735
+ * stored by an import.
11736
+ */
11737
+ rootInputPx: number().int().positive().optional()
11738
+ })]);
11754
11739
  var ModelCatalogEntrySchema = object({
11755
11740
  id: string(),
11756
11741
  name: string(),
@@ -11877,15 +11862,15 @@ var ModelCatalogEntrySchema = object({
11877
11862
  */
11878
11863
  classMap: DetectionCatalogClassMapSchema.optional(),
11879
11864
  /**
11880
- * The pipeline steps this ROOT detector already does the work of (D715):
11881
- * its labels name the effect the step exists to produce (`deer` for
11882
- * `animal-classifier`, `package` for `package-detection`). Derived from the
11883
- * labelmap by `deriveClassifierFills`, never hand-written; a COCO model
11884
- * declares none. Whether a declaration is honoured is the step's own
11885
- * `labelLink` policy (`resolveLabelLink`). `labelToEffect` values are in
11886
- * `FILLABLE_STEP_VOCABULARIES` (guard `check-label-link-vocabulary`).
11865
+ * The pipeline steps this ROOT detector can supply from its own output
11866
+ * (D730): its labels name a step's effect (`deer` for `animal-classifier`)
11867
+ * or draw a step's box (`license_plate` for `plate-detection`). Computed at
11868
+ * import from THIS model's labelmap by `deriveRootSupplies`, never written
11869
+ * by hand and never assumed per family; a row without it is derived on read
11870
+ * (`rootSuppliesOf`). Whether a camera uses it is the step's own
11871
+ * `useRootModel` flag (`resolveRootSupply`).
11887
11872
  */
11888
- fillsClassifierEffects: array(FillsClassifierEffectSchema).readonly().optional(),
11873
+ suppliesSteps: array(RootStepSupplySchema).readonly().optional(),
11889
11874
  /**
11890
11875
  * The model's CLIP feature-space contract (text encoder, dimension, vector
11891
11876
  * index, token window, search floor) — see `clip-model.ts`. Present ONLY on a
@@ -21529,6 +21514,73 @@ var notificationOutputCapability = {
21529
21514
  })
21530
21515
  }
21531
21516
  };
21517
+ /**
21518
+ * The class names a per-class COUNT can ever be keyed on — the macro ids, and
21519
+ * only those.
21520
+ *
21521
+ * `preserveOriginal: false` below is the whole reason this set exists: the
21522
+ * executor maps each raw COCO label onto its macro and DROPS everything else,
21523
+ * so a tracked detection's `className` is always one of {@link MACRO_LABELS}.
21524
+ * Any surface that indexes counts by class name — the ZoneAnalytics occupancy
21525
+ * snapshot's `byClass`, and therefore every occupancy rule — can match nothing
21526
+ * else. Derived from the catalog, never hand-listed, so a new macro joins it by
21527
+ * being declared once.
21528
+ *
21529
+ * Cost of not having it, 2026-08-12: the notification rule editor offered the
21530
+ * full taxonomy for an occupancy class (occupancy is the one condition that
21531
+ * does not go through the engine's macro-expanding `expandClassSelector`), two
21532
+ * live rules were authored on `car`, and both counters read 0 forever.
21533
+ */
21534
+ var DETECTION_MACRO_CLASSES = new Set([
21535
+ {
21536
+ id: "person",
21537
+ name: "Person"
21538
+ },
21539
+ {
21540
+ id: "vehicle",
21541
+ name: "Vehicle"
21542
+ },
21543
+ {
21544
+ id: "animal",
21545
+ name: "Animal"
21546
+ },
21547
+ {
21548
+ id: "package",
21549
+ name: "Package"
21550
+ }
21551
+ ].map((l) => l.id));
21552
+ /** True when `className` is a macro the detector can actually emit (and hence a
21553
+ * class a count can be keyed on) — see {@link DETECTION_MACRO_CLASSES}. */
21554
+ function isDetectionMacroClass(className) {
21555
+ return DETECTION_MACRO_CLASSES.has(className.trim().toLowerCase());
21556
+ }
21557
+ var COCO_TO_MACRO = {
21558
+ mapping: {
21559
+ person: "person",
21560
+ bicycle: "vehicle",
21561
+ car: "vehicle",
21562
+ motorcycle: "vehicle",
21563
+ airplane: "vehicle",
21564
+ bus: "vehicle",
21565
+ train: "vehicle",
21566
+ truck: "vehicle",
21567
+ boat: "vehicle",
21568
+ bird: "animal",
21569
+ cat: "animal",
21570
+ dog: "animal",
21571
+ horse: "animal",
21572
+ sheep: "animal",
21573
+ cow: "animal",
21574
+ elephant: "animal",
21575
+ bear: "animal",
21576
+ zebra: "animal",
21577
+ giraffe: "animal",
21578
+ suitcase: "package",
21579
+ backpack: "package",
21580
+ handbag: "package"
21581
+ },
21582
+ preserveOriginal: false
21583
+ };
21532
21584
  var AUDIO_MACRO_LABELS = [
21533
21585
  {
21534
21586
  id: "speech",
@@ -24078,7 +24130,7 @@ var NC_CONDITION_CATALOG = [
24078
24130
  operator: "in",
24079
24131
  appliesTo: ["immediate", "track-end"],
24080
24132
  phase: "P1",
24081
- description: "Only recognised people. Selecting NOBODY means every identity in the face gallery; selecting some narrows to those. Matched on the gallery id, so renaming a person does not break the rule. On Immediate delivery the name must already be known when an event is written — choose Immediate, grouped to wait for it (D692)."
24133
+ description: "Only recognised people. Selecting NOBODY means every identity in the face gallery; selecting some narrows to those. Matched on the gallery id, so renaming a person does not break the rule. On Immediate delivery the name must already be known when an event is written — choose Immediate, grouped to wait for it."
24082
24134
  },
24083
24135
  {
24084
24136
  id: "plates",
@@ -28499,6 +28551,34 @@ var pipelineAnalyticsCapability = {
28499
28551
  }
28500
28552
  };
28501
28553
  /**
28554
+ * A root model's boxes standing in for one crop-kind step's own inference
28555
+ * (D730) — see `runPipeline.suppliedRoot`.
28556
+ */
28557
+ var SuppliedRootOutputSchema = object({
28558
+ stepId: string(),
28559
+ /** The root model that drew the boxes — stamped on the result. */
28560
+ modelId: string(),
28561
+ detections: array(object({
28562
+ /** `[x1, y1, x2, y2]` in the pixels of the call's image. */
28563
+ bbox: tuple([
28564
+ number(),
28565
+ number(),
28566
+ number(),
28567
+ number()
28568
+ ]),
28569
+ score: number(),
28570
+ /**
28571
+ * Five facial landmarks in the same pixels — a face the step's own
28572
+ * detector already re-found inside a root face box (D730), so its
28573
+ * embedder child aligns it exactly as it aligns any detected face.
28574
+ */
28575
+ landmarks: array(object({
28576
+ x: number(),
28577
+ y: number()
28578
+ })).optional()
28579
+ })).min(1)
28580
+ });
28581
+ /**
28502
28582
  * Reference to the frame's retained NATIVE surface + the parent crop's placement
28503
28583
  * within the frame, so the executor can re-cut a leaf child ROI at native
28504
28584
  * resolution on the detail plane. See the `runPipeline` `nativeCropRef` field.
@@ -28629,7 +28709,7 @@ var PipelineModelOptionSchema = object({
28629
28709
  legacy: boolean().optional(),
28630
28710
  provider: ModelProviderIdSchema.optional(),
28631
28711
  defaultConfidence: number().optional(),
28632
- fillsClassifierEffects: array(FillsClassifierEffectSchema).readonly().optional()
28712
+ suppliesSteps: array(RootStepSupplySchema).readonly().optional()
28633
28713
  });
28634
28714
  var ConfigFieldBridge = custom();
28635
28715
  var PipelineAddonSchemaSchema = object({
@@ -29033,7 +29113,16 @@ var pipelineExecutorCapability = {
29033
29113
  * `device-not-servable`), and nothing reaches the camera's live
29034
29114
  * trace stream. Absent ⇒ unchanged behaviour.
29035
29115
  */
29036
- replay: literal(true).optional()
29116
+ replay: literal(true).optional(),
29117
+ /**
29118
+ * Root-supplied detections for the tree's ROOT step (D730). Set by
29119
+ * `runDetailSubtree` when the camera's root model supplies a crop-kind
29120
+ * step (a Frigate+ `license_plate` for `plate-detection`): the step is
29121
+ * NOT inferred, these boxes are its output, and its children (the plate
29122
+ * reader) run on them through their own crop policy. Boxes are in the
29123
+ * PIXELS of the image this call carries. Absent ⇒ the root step runs.
29124
+ */
29125
+ suppliedRoot: SuppliedRootOutputSchema.optional()
29037
29126
  }), PipelineRunResultBridge, { kind: "mutation" }),
29038
29127
  /**
29039
29128
  * Batched run — N raw frames packed into one cap call. The provider
@@ -30346,7 +30435,22 @@ var pipelineRunnerCapability = {
30346
30435
  */
30347
30436
  cropJpeg: string().optional(),
30348
30437
  parent: DetailParentSchema,
30349
- steps: array(string()).optional()
30438
+ steps: array(string()).optional(),
30439
+ /**
30440
+ * The camera's root model already drew this step's boxes (D730): a
30441
+ * `license_plate` inside the parent vehicle. The named step is NOT
30442
+ * inferred — these FRAME-space boxes are its output — and its
30443
+ * requested children (the plate reader) run on them. Absent ⇒ every
30444
+ * requested step infers as before.
30445
+ */
30446
+ supplied: object({
30447
+ stepId: string(),
30448
+ modelId: string(),
30449
+ boxes: array(object({
30450
+ bbox: NativeCropBboxSchema,
30451
+ score: number()
30452
+ })).min(1)
30453
+ }).optional()
30350
30454
  }), object({ details: array(DetailResultSchema) }).nullable(), { kind: "mutation" }),
30351
30455
  /**
30352
30456
  * Run ONE enrichment step against caller-supplied pixels, with NO camera
@@ -39344,6 +39448,27 @@ var ViewerEndpointsSchema = object({
39344
39448
  /** What the ranking currently resolves to (may be empty if nothing is up). */
39345
39449
  resolved: array(string()).readonly()
39346
39450
  });
39451
+ /**
39452
+ * One audience's hub address (see `hub-address.ts`): the operator's stored
39453
+ * override, the address in use, and where it came from.
39454
+ */
39455
+ var HubAddressSnapshotSchema = object({
39456
+ /** The operator's override, or null for automatic. */
39457
+ override: string().nullable(),
39458
+ /** The address in use, or null when nothing qualifies (never loopback). */
39459
+ resolved: string().nullable(),
39460
+ source: _enum([
39461
+ "override",
39462
+ "auto",
39463
+ "none"
39464
+ ])
39465
+ });
39466
+ var HubAddressesSchema = object({
39467
+ /** "Hub address for agents" — agents' bundle/model pulls, LAN devices. */
39468
+ cluster: HubAddressSnapshotSchema,
39469
+ /** "Public address for sign-in links" — e-mail links, OIDC, WebAuthn, OAuth2. */
39470
+ browser: HubAddressSnapshotSchema
39471
+ });
39347
39472
  var AllowedAddressesSchema = object({
39348
39473
  /**
39349
39474
  * Allowlist of interface addresses operators have explicitly opted
@@ -39476,6 +39601,26 @@ var localNetworkCapability = {
39476
39601
  */
39477
39602
  setViewerEndpoints: method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }),
39478
39603
  /**
39604
+ * The hub's address for each audience — agents (`cluster`) and sign-in
39605
+ * links (`browser`) — as every consumer must read it: the operator's
39606
+ * override when set, else the automatic pick from this cap's palette,
39607
+ * never loopback. The ONE answer to "at which address is this hub
39608
+ * reached?"; there is no environment variable for it.
39609
+ */
39610
+ getHubAddresses: method(_void(), HubAddressesSchema),
39611
+ /**
39612
+ * Set or clear (`baseUrl: null`) one audience's override. Validated: an
39613
+ * http(s) origin with a host, no credentials, no path, never loopback —
39614
+ * an invalid value is refused with the reason, nothing is stored.
39615
+ */
39616
+ setHubAddress: method(object({
39617
+ audience: _enum(["cluster", "browser"]),
39618
+ baseUrl: string().nullable()
39619
+ }), HubAddressesSchema, {
39620
+ kind: "mutation",
39621
+ auth: "admin"
39622
+ }),
39623
+ /**
39479
39624
  * Read the operator's allowlist. Empty = "auto" (no filter). Used
39480
39625
  * by the admin UI's address selector to seed its checkbox state.
39481
39626
  */
@@ -51506,6 +51651,12 @@ Object.freeze({
51506
51651
  addonId: null,
51507
51652
  access: "view"
51508
51653
  },
51654
+ "localNetwork.getHubAddresses": {
51655
+ capName: "local-network",
51656
+ capScope: "system",
51657
+ addonId: null,
51658
+ access: "view"
51659
+ },
51509
51660
  "localNetwork.getNotificationEndpoint": {
51510
51661
  capName: "local-network",
51511
51662
  capScope: "system",
@@ -51560,6 +51711,12 @@ Object.freeze({
51560
51711
  addonId: null,
51561
51712
  access: "create"
51562
51713
  },
51714
+ "localNetwork.setHubAddress": {
51715
+ capName: "local-network",
51716
+ capScope: "system",
51717
+ addonId: null,
51718
+ access: "create"
51719
+ },
51563
51720
  "localNetwork.setNotificationEndpoint": {
51564
51721
  capName: "local-network",
51565
51722
  capScope: "system",
@@ -61290,7 +61447,7 @@ var STATE_SUMMARY_VARS = [
61290
61447
  {
61291
61448
  name: "summarySection",
61292
61449
  label: "Summary: this section",
61293
- description: "The section a per-section summary row is about (D698); on a summary sent as one message, every section it reports, comma-separated.",
61450
+ description: "The section a per-section summary row is about; on a summary sent as one message, every section it reports, comma-separated.",
61294
61451
  example: "Batterie scariche",
61295
61452
  group: "system",
61296
61453
  families: ["rule"],
@@ -63812,4 +63969,4 @@ function buildClipModelRegistry(entries) {
63812
63969
  /** The built-in catalog's registry. */
63813
63970
  var BUILTIN_CLIP_MODELS = buildClipModelRegistry(CLIP_IMAGE_MODELS);
63814
63971
  //#endregion
63815
- export { NC_ALARM_DEFAULT_TRIGGERED_DURATION_SEC as $, encodeVectorBase64 as $n, systemEventFilterApplies as $r, RECORDING_SOURCE_CAMSTACK_ADDON as $t, EMBEDDING_MODEL_FAILED as A, number as Ai, applyModeDelaysEdits as An, readDeviceStateFrom as Ar, NcLegacyRuleActionSequenceSchema as At, LabelAttributionSchema as B, EventCategory as Bi, coreBlockIdFromAddonId as Bn, ruleBelongsToAlarm as Br, NcSnoozeInputSchema as Bt, CoverStateSchema as C, ZodObject as Ci, TrackSideSchema as Cn, mayWriteToLocation as Cr, NcAlarmConfigSchema as Ct, DETECTION_PIPELINE_CAP_NAME as D, discriminatedUnion as Di, alarmDeviceSecureOnArm as Dn, parseProcStatus as Dr, NcAlarmSettingsPatchSchema as Dt, DETECTION_MACRO_CLASSES as E, boolean as Ei, addonWidgetsSourceCapability as En, occupancyScope as Er, NcAlarmSensorsSchema as Et, EVENT_OWNER_TYPES as F, string as Fi, audioModeOf as Fn, resolveLocationMode as Fr, NcRuleSchema as Ft, MAX_BIRTH_DECISION_RECORDS as G, deriveRecordingMode as Gn, secureActuationFor as Gr, NcTaxonomySchema as Gt, ListTrackRelationsResultSchema as H, createAlarmProfile as Hn, ruleGroupingApplies as Hr, NcSnoozeSuppressedSchema as Ht, EXPORT_DENSE_MAX_RANGES as I, templateLiteral as Ii, buildEventKindDescriptor as In, resolveModeDelays as Ir, NcRuleTargetSchema as It, MAX_TRACK_RELATIONS as J, embeddingEncoderCapability as Jn, storageOccupancyCapability as Jr, NcTemplateVarDescriptorSchema as Jt, MAX_BIRTH_LATENCY_PROXY_MS as K, describeSystemEventDeliveryProblem as Kn, sensorRaisedOf as Kr, NcTemplatePreviewInputSchema as Kt, FIRST_LEVEL_MACRO_CLASSES as L, tuple as Li, buildViewerLink as Ln, resolveModeNotifyPolicy as Lr, NcRuleUpdateInputSchema as Lt, EMBEDDING_REQUIREMENTS_UNAVAILABLE as M, partialRecord as Mi, applySecureOnArmEdit as Mn, readTimelapseGeneratedAt as Mr, NcRuleActionsSchema as Mt, EVENT_DENSITY_BATCH_MAX as N, record as Ni, assertTimelapseCadences as Nn, renameAlarmProfile as Nr, NcRuleInputSchema as Nt, DeclaredDevices as O, literal as Oi, alarmPanelCapability as On, pipelineAnalyticsCapability as Or, NcConditionDescriptorSchema as Ot, EVENT_KIND_BY_CAP as P, strictObject as Pi, audioMetricsCapability as Pn, resolveClipSearchMinScore as Pr, NcRulePatchSchema as Pt, NC_ALARM_DEFAULT_PROFILE_ID as Q, embeddingRequirementsUnavailableError as Qn, systemEventFamilyProblems as Qr, RECORDING_EXPORT_MAX_READ_BYTES as Qt, FULL_IMAGE_BBOX as R, union as Ri, cloneAlarmSettings as Rn, resolvePoolMemoryPolicy as Rr, NcScheduleSchema as Rt, ClearTrackRelationResultSchema as S, sleep as Si, TrackRelationSchema as Sn, linkedStepOf as Sr, NC_TEMPLATE_VARS as St, DEFAULT_TIMELAPSE_PREVIEW_TEXT as T, array as Ti, activateAlarmProfile as Tn, notificationRulesCapability as Tr, NcAlarmSensorsInputSchema as Tt, LockStateSchema as U, deleteAlarmProfile as Un, ruleKindOf as Ur, NcStateSummarySectionIdSchema as Ut, ListTrackRelationsInputSchema as V, cosineSimilarity as Vn, ruleDeviceCompatCapQueries as Vr, NcSnoozeSchema as Vt, MAX_ARCHIVED_DEBUG_NOTES as W, derivePostTriggeredAction as Wn, sceneMonitorCapability as Wr, NcSystemEventKindSchema as Wt, MediaFileKindEnum as X, embeddingRefusalOf as Xn, syncActiveAlarmProfileSettings as Xr, OpsLogEntrySchema as Xt, MOTION_CLOSE_AFTER_MS as Y, embeddingModelFailedError as Yn, subKindsOf as Yr, OPS_LOG_DEFAULT_LIMIT as Yt, MotionTriggeredBySchema as Z, embeddingRequirementsFailedError as Zn, systemEventDeliveryProblems as Zr, PoolMemoryWatchdog as Zt, BIRTH_DECISION_DEFAULT_LIMIT as _, defineCustomActions as _i, TimelapseRuleInputSchema as _n, isScheduleActive as _r, NC_SENSOR_TRANSITION_KINDS as _t, CLIP_EMBEDDING_STEP_ID as a, viewerLinkBaseOf as ai, SCENE_DEFAULT_CHECK_INTERVAL_SEC as an, gifDeriveSpeed as ar, NC_AUDIO_CONFIRM_HITS_DEFAULT as at, COCO_TO_MACRO as b, nodePin as bi, TrackPuritySchema as bn, isVectorIndexDimConflict as br, NC_TANK_SYSTEM_EVENT_KINDS as bt, resolveClusterModelPin as c, canonicalHash as ci, SCENE_DEFAULT_UNCOVERED_POLICY as cn, isAppLinkBase as cr, NC_CLIP_PRE_ROLL_DEFAULT_SEC as ct, APPEARANCE_BLOCKS as d, DeviceType as di, SceneMonitorSchema as dn, isDetectionMacroClass as dr, NC_CONSUMABLE_LOW_PERCENT_DEFAULT as dt, systemEventSummaryScheduleOf as ei, RebuildObjectEmbeddingsRefusalSchema as en, ensureAlarmProfiles as er, NC_ALARM_DELAY_FIELDS as et, APPEARANCE_RESOLVES_AMBIGUITY_DEFAULT as f, errMsg as fi, SetTrackPurityInputSchema as fn, isEventKindLabelKey as fr, NC_CONSUMABLE_SYSTEM_EVENT_KINDS as ft, ArchivedDebugNoteSchema as g, customAction as gi, TRACK_RELATIONS_DEFAULT_LIMIT as gn, isRetiredClearKey as gr, NC_GROUPING_MIN_SEC as gt, AlarmArmModeSchema as h, createEvent as hi, TIMELAPSE_DENSE_FLOOR_SEC as hn, isMediaOwnerType as hr, NC_GROUPING_MAX_SEC as ht, CLIP_TEXT_MODELS as i, vectorDimFromBase64 as ii, SCENE_DEFAULT_ANCHOR_THRESHOLD as in, failureContributionCapability as ir, NC_ALARM_TRIGGERED_MAX_SEC as it, EMBEDDING_REQUIREMENTS_FAILED as j, object as ji, applyNonBlockingEdit as jn, readMotionTriggeredBy as jr, NcRuleActionSchema as jt, DetectionSourceSchema as k, looseObject as ki, applyBlockingEdit as kn, plateGalleryCapability as kr, NcConditionsSchema as kt, ALL_CAPABILITY_DEFINITIONS as l, evaluateSensorEdge as li, SCENE_DIVERGED as ln, isAudioClassName as lr, NC_CLIP_RETENTION_MAX_SEC as lt, AUDIO_MACRO_LABELS as m, CamProfileSchema as mi, SetTrackRelationInputSchema as mn, isKnownTemplateVar as mr, NC_GROUPING_DEFAULT_SEC as mt, DEFAULT_CLIP_MODEL as n, templateCarriesSummary as ni, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX as nn, evictionPolicyOfLocation as nr, NC_ALARM_NOTIFY_FIELDS as nt, FACE_EMBEDDING_STEP_ID as o, zoneAnalyticsCapability as oi, SCENE_DEFAULT_OBSERVATION_SPACING_SEC as on, gifFromMp4Args as or, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT as ot, ARCHIVED_DEBUG_NOTES_DEFAULT_LIMIT as p, BaseAddon as pi, SetTrackPurityResultSchema as pn, isEventOwnerType as pr, NC_DEFAULT_SNOOZE_MINUTES as pt, MAX_TRACK_PURITIES as q, describeSystemEventFamilyProblem as qn, servedTemplateVars as qr, NcTemplatePreviewSchema as qt, CLIP_IMAGE_MODELS as r, templateVarsFor as ri, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS as rn, faceGalleryCapability as rr, NC_ALARM_SYSTEM_EVENT_KINDS as rt, readClusterModelPinStrict as s, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as si, SCENE_DEFAULT_QUIET_SECONDS as sn, isAlarmControllableCap as sr, NC_CLIP_POST_ROLL_DEFAULT_SEC as st, BUILTIN_CLIP_MODELS as t, systemEventSummarySplitOf as ti, RetrainStatusSchema as tn, eventKindLabel as tr, NC_ALARM_DELAY_MAX_SEC as tt, APPEARANCE_BIN_COUNT as u, isSourceCap as ui, SCENE_RESET_RECAPTURES as un, isDefaultAlarmProfileId as ur, NC_CONDITION_CATALOG as ut, BaseDevice as v, hydrateSchema as vi, TimelapseRulePatchSchema as vn, isSystemDelivery as vr, NC_SNOOZE_MAX_MINUTES as vt, DEFAULT_EVENT_COLOR as w, _enum as wi, TrackSourceSchema as wn, memoizePinnedFfmpeg as wr, NcAlarmPostTriggeredActionSchema as wt, ClearTrackRelationInputSchema as x, normalizeNodeId as xi, TrackRelationKindSchema as xn, kebabToCamel as xr, NC_TAXONOMY as xt, BirthDecisionRecordSchema as y, isDeviceScopedCap as yi, TimelapseRuleSchema as yn, isSystemEventSummaryRule as yr, NC_SYSTEM_EVENT_KIND_GROUP_SPECS as yt, FailureCounters as z, unknown as zi, consumableLowPercentOf as zn, ruleAutoTriggersAlarm as zr, NcSharedSequenceSchema as zt };
63972
+ export { NC_ALARM_DEFAULT_TRIGGERED_DURATION_SEC as $, encodeVectorBase64 as $n, systemEventDeliveryProblems as $r, RECORDING_SOURCE_CAMSTACK_ADDON as $t, EMBEDDING_MODEL_FAILED as A, literal as Ai, applyModeDelaysEdits as An, plateGalleryCapability as Ar, NcLegacyRuleActionSequenceSchema as At, LabelAttributionSchema as B, union as Bi, coreBlockIdFromAddonId as Bn, rootSupplyServes as Br, NcSnoozeInputSchema as Bt, CoverStateSchema as C, normalizeNodeId as Ci, TrackSideSchema as Cn, linkedStepOf as Cr, NcAlarmConfigSchema as Ct, DETECTION_PIPELINE_CAP_NAME as D, array as Di, alarmDeviceSecureOnArm as Dn, occupancyScope as Dr, NcAlarmSettingsPatchSchema as Dt, DETECTION_MACRO_CLASSES as E, _enum as Ei, addonWidgetsSourceCapability as En, notificationRulesCapability as Er, NcAlarmSensorsSchema as Et, EVENT_OWNER_TYPES as F, record as Fi, audioModeOf as Fn, resolveClipSearchMinScore as Fr, NcRuleSchema as Ft, MAX_BIRTH_DECISION_RECORDS as G, deriveRecordingMode as Gn, ruleKindOf as Gr, NcTaxonomySchema as Gt, ListTrackRelationsResultSchema as H, EventCategory as Hi, createAlarmProfile as Hn, ruleBelongsToAlarm as Hr, NcSnoozeSuppressedSchema as Ht, EXPORT_DENSE_MAX_RANGES as I, strictObject as Ii, buildEventKindDescriptor as In, resolveLocationMode as Ir, NcRuleTargetSchema as It, MAX_TRACK_RELATIONS as J, embeddingEncoderCapability as Jn, sensorRaisedOf as Jr, NcTemplateVarDescriptorSchema as Jt, MAX_BIRTH_LATENCY_PROXY_MS as K, describeSystemEventDeliveryProblem as Kn, sceneMonitorCapability as Kr, NcTemplatePreviewInputSchema as Kt, FIRST_LEVEL_MACRO_CLASSES as L, string as Li, buildViewerLink as Ln, resolveModeDelays as Lr, NcRuleUpdateInputSchema as Lt, EMBEDDING_REQUIREMENTS_UNAVAILABLE as M, number as Mi, applySecureOnArmEdit as Mn, readMotionTriggeredBy as Mr, NcRuleActionsSchema as Mt, EVENT_DENSITY_BATCH_MAX as N, object as Ni, assertTimelapseCadences as Nn, readTimelapseGeneratedAt as Nr, NcRuleInputSchema as Nt, DeclaredDevices as O, boolean as Oi, alarmPanelCapability as On, parseProcStatus as Or, NcConditionDescriptorSchema as Ot, EVENT_KIND_BY_CAP as P, partialRecord as Pi, audioMetricsCapability as Pn, renameAlarmProfile as Pr, NcRulePatchSchema as Pt, NC_ALARM_DEFAULT_PROFILE_ID as Q, embeddingRequirementsUnavailableError as Qn, syncActiveAlarmProfileSettings as Qr, RECORDING_EXPORT_MAX_READ_BYTES as Qt, FULL_IMAGE_BBOX as R, templateLiteral as Ri, cloneAlarmSettings as Rn, resolveModeNotifyPolicy as Rr, NcScheduleSchema as Rt, ClearTrackRelationResultSchema as S, nodePin as Si, TrackRelationSchema as Sn, kebabToCamel as Sr, NC_TEMPLATE_VARS as St, DEFAULT_TIMELAPSE_PREVIEW_TEXT as T, ZodObject as Ti, activateAlarmProfile as Tn, memoizePinnedFfmpeg as Tr, NcAlarmSensorsInputSchema as Tt, LockStateSchema as U, deleteAlarmProfile as Un, ruleDeviceCompatCapQueries as Ur, NcStateSummarySectionIdSchema as Ut, ListTrackRelationsInputSchema as V, unknown as Vi, cosineSimilarity as Vn, ruleAutoTriggersAlarm as Vr, NcSnoozeSchema as Vt, MAX_ARCHIVED_DEBUG_NOTES as W, derivePostTriggeredAction as Wn, ruleGroupingApplies as Wr, NcSystemEventKindSchema as Wt, MediaFileKindEnum as X, embeddingRefusalOf as Xn, storageOccupancyCapability as Xr, OpsLogEntrySchema as Xt, MOTION_CLOSE_AFTER_MS as Y, embeddingModelFailedError as Yn, servedTemplateVars as Yr, OPS_LOG_DEFAULT_LIMIT as Yt, MotionTriggeredBySchema as Z, embeddingRequirementsFailedError as Zn, subKindsOf as Zr, PoolMemoryWatchdog as Zt, BIRTH_DECISION_DEFAULT_LIMIT as _, createEvent as _i, TimelapseRuleInputSchema as _n, isRootSuppliableStepId as _r, NC_SENSOR_TRANSITION_KINDS as _t, CLIP_EMBEDDING_STEP_ID as a, templateVarsFor as ai, SCENE_DEFAULT_CHECK_INTERVAL_SEC as an, gifDeriveSpeed as ar, NC_AUDIO_CONFIRM_HITS_DEFAULT as at, COCO_TO_MACRO as b, hydrateSchema as bi, TrackPuritySchema as bn, isSystemEventSummaryRule as br, NC_TANK_SYSTEM_EVENT_KINDS as bt, resolveClusterModelPin as c, zoneAnalyticsCapability as ci, SCENE_DEFAULT_UNCOVERED_POLICY as cn, isAppLinkBase as cr, NC_CLIP_PRE_ROLL_DEFAULT_SEC as ct, APPEARANCE_BLOCKS as d, evaluateSensorEdge as di, SceneMonitorSchema as dn, isDetectionMacroClass as dr, NC_CONSUMABLE_LOW_PERCENT_DEFAULT as dt, systemEventFamilyProblems as ei, RebuildObjectEmbeddingsRefusalSchema as en, ensureAlarmProfiles as er, NC_ALARM_DELAY_FIELDS as et, APPEARANCE_RESOLVES_AMBIGUITY_DEFAULT as f, isSourceCap as fi, SetTrackPurityInputSchema as fn, isEventKindLabelKey as fr, NC_CONSUMABLE_SYSTEM_EVENT_KINDS as ft, ArchivedDebugNoteSchema as g, CamProfileSchema as gi, TRACK_RELATIONS_DEFAULT_LIMIT as gn, isRetiredClearKey as gr, NC_GROUPING_MIN_SEC as gt, AlarmArmModeSchema as h, BaseAddon as hi, TIMELAPSE_DENSE_FLOOR_SEC as hn, isMediaOwnerType as hr, NC_GROUPING_MAX_SEC as ht, CLIP_TEXT_MODELS as i, templateCarriesSummary as ii, SCENE_DEFAULT_ANCHOR_THRESHOLD as in, failureContributionCapability as ir, NC_ALARM_TRIGGERED_MAX_SEC as it, EMBEDDING_REQUIREMENTS_FAILED as j, looseObject as ji, applyNonBlockingEdit as jn, readDeviceStateFrom as jr, NcRuleActionSchema as jt, DetectionSourceSchema as k, discriminatedUnion as ki, applyBlockingEdit as kn, pipelineAnalyticsCapability as kr, NcConditionsSchema as kt, ALL_CAPABILITY_DEFINITIONS as l, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as li, SCENE_DIVERGED as ln, isAudioClassName as lr, NC_CLIP_RETENTION_MAX_SEC as lt, AUDIO_MACRO_LABELS as m, errMsg as mi, SetTrackRelationInputSchema as mn, isKnownTemplateVar as mr, NC_GROUPING_DEFAULT_SEC as mt, DEFAULT_CLIP_MODEL as n, systemEventSummaryScheduleOf as ni, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX as nn, evictionPolicyOfLocation as nr, NC_ALARM_NOTIFY_FIELDS as nt, FACE_EMBEDDING_STEP_ID as o, vectorDimFromBase64 as oi, SCENE_DEFAULT_OBSERVATION_SPACING_SEC as on, gifFromMp4Args as or, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT as ot, ARCHIVED_DEBUG_NOTES_DEFAULT_LIMIT as p, DeviceType as pi, SetTrackPurityResultSchema as pn, isEventOwnerType as pr, NC_DEFAULT_SNOOZE_MINUTES as pt, MAX_TRACK_PURITIES as q, describeSystemEventFamilyProblem as qn, secureActuationFor as qr, NcTemplatePreviewSchema as qt, CLIP_IMAGE_MODELS as r, systemEventSummarySplitOf as ri, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS as rn, faceGalleryCapability as rr, NC_ALARM_SYSTEM_EVENT_KINDS as rt, readClusterModelPinStrict as s, viewerLinkBaseOf as si, SCENE_DEFAULT_QUIET_SECONDS as sn, isAlarmControllableCap as sr, NC_CLIP_POST_ROLL_DEFAULT_SEC as st, BUILTIN_CLIP_MODELS as t, systemEventFilterApplies as ti, RetrainStatusSchema as tn, eventKindLabel as tr, NC_ALARM_DELAY_MAX_SEC as tt, APPEARANCE_BIN_COUNT as u, canonicalHash as ui, SCENE_RESET_RECAPTURES as un, isDefaultAlarmProfileId as ur, NC_CONDITION_CATALOG as ut, BaseDevice as v, customAction as vi, TimelapseRulePatchSchema as vn, isScheduleActive as vr, NC_SNOOZE_MAX_MINUTES as vt, DEFAULT_EVENT_COLOR as w, sleep as wi, TrackSourceSchema as wn, mayWriteToLocation as wr, NcAlarmPostTriggeredActionSchema as wt, ClearTrackRelationInputSchema as x, isDeviceScopedCap as xi, TrackRelationKindSchema as xn, isVectorIndexDimConflict as xr, NC_TAXONOMY as xt, BirthDecisionRecordSchema as y, defineCustomActions as yi, TimelapseRuleSchema as yn, isSystemDelivery as yr, NC_SYSTEM_EVENT_KIND_GROUP_SPECS as yt, FailureCounters as z, tuple as zi, consumableLowPercentOf as zn, resolvePoolMemoryPolicy as zr, NcSharedSequenceSchema as zt };