@camstack/addon-pipeline 1.2.338 → 1.2.340
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/audio-analyzer/index.js +22 -30
- package/dist/audio-analyzer/index.mjs +23 -31
- package/dist/{custom-model-catalog-CN6WPGB8.mjs → custom-model-catalog-BOnN63HU.mjs} +5 -1448
- package/dist/{custom-model-catalog-BYJyfhgj.js → custom-model-catalog-Cjbll1Sf.js} +18 -1461
- package/dist/detection-pipeline/index.js +208 -17
- package/dist/detection-pipeline/index.mjs +232 -41
- package/dist/{dist-WIL4yeyi.js → dist-BWigCRRN.js} +324 -51
- package/dist/{dist-CdmlJu1J.mjs → dist-CsA6fY6I.mjs} +311 -50
- package/dist/model-catalogs-BFBf8sHb.js +1522 -0
- package/dist/model-catalogs-D7JXV0_i.mjs +1445 -0
- package/dist/motion-wasm/index.js +1 -1
- package/dist/motion-wasm/index.mjs +1 -1
- package/dist/{node-CEtew1DU.mjs → node-BZ29vHq2.mjs} +1 -1
- package/dist/{node-DCFClFJ1.js → node-D52HHrVZ.js} +1 -1
- package/dist/pipeline-runner/index.js +3 -3
- package/dist/pipeline-runner/index.mjs +3 -3
- package/dist/{process-memory-Bsj_b---.js → process-memory-C9U6dKxS.js} +1 -1
- package/dist/{process-memory-maZfOnev.mjs → process-memory-DOEeg2pL.mjs} +1 -1
- package/dist/recorder/index.js +6 -2
- package/dist/recorder/index.mjs +6 -2
- package/dist/{segment-demux-js-CXmBf_nf.js → segment-demux-js-CMZSmwMp.js} +1 -1
- package/dist/{segment-demux-js-DnPcYYbc.mjs → segment-demux-js-DDgwrz-e.mjs} +1 -1
- package/dist/stream-broker/_stub.js +2 -2
- package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-BdsJXZcP.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-6JIjr_ur.mjs} +2 -2
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js--yC-aoPc.mjs +26 -0
- package/dist/stream-broker/{_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Bt8aa0wk.mjs → _virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-B-hhg2sP.mjs} +1 -1
- package/dist/stream-broker/demux-worker-child.js +1 -1
- package/dist/stream-broker/demux-worker-child.mjs +1 -1
- package/dist/stream-broker/{hostInit-BU5SBy0i.mjs → hostInit-Ck1wQfKk.mjs} +2 -2
- package/dist/stream-broker/index.js +3 -3
- package/dist/stream-broker/index.mjs +3 -3
- package/dist/stream-broker/remoteEntry.js +1 -1
- package/package.json +1 -1
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-1Y-WK-Zy.mjs +0 -26
|
@@ -12930,16 +12930,53 @@ var ModelFormatEntrySchema = object({
|
|
|
12930
12930
|
/** Runtime(s) that can use this format. If omitted, inferred from ModelFormat key */
|
|
12931
12931
|
runtimes: array(_enum(["python"])).readonly().optional(),
|
|
12932
12932
|
/**
|
|
12933
|
-
* Content revision of the
|
|
12934
|
-
*
|
|
12935
|
-
*
|
|
12933
|
+
* Content revision of the artefact, for one hosted OFF the CamStack mirror.
|
|
12934
|
+
* A format on the mirror leaves it unset: its revision (the sha256 of its
|
|
12935
|
+
* weight file) comes from the downloader's generated table, kept in step
|
|
12936
|
+
* with the mirror by `scripts/check-hosted-model-revisions.ts` (D744). A
|
|
12937
|
+
* node records the revision it downloaded next to the file
|
|
12936
12938
|
* (`<file>.revision`); a copy with no record or a different one is stale
|
|
12937
|
-
*
|
|
12938
|
-
*
|
|
12939
|
+
* unless its weight file hashes to the revision, and a stale copy is
|
|
12940
|
+
* downloaded again, the old one serving until the new one is complete. No
|
|
12941
|
+
* revision at all ⇒ a file on disk is current, whatever it holds (D743).
|
|
12939
12942
|
*/
|
|
12940
12943
|
revision: string().min(1).optional()
|
|
12941
12944
|
});
|
|
12942
12945
|
/**
|
|
12946
|
+
* What a node holds for one (model, format) (D746). `current` is a complete
|
|
12947
|
+
* copy at its catalog revision — exactly what `downloaded: true` means.
|
|
12948
|
+
* `stale` is bytes on disk that are not (yet) proven current under D743/D744:
|
|
12949
|
+
* no or a different revision record, or a missing sibling. `missing` is no
|
|
12950
|
+
* copy. `downloaded` alone folds `stale` into "not downloaded", which hid
|
|
12951
|
+
* reclaimable bytes and a copy about to be replaced.
|
|
12952
|
+
*/
|
|
12953
|
+
var ModelOnDiskStateSchema = _enum([
|
|
12954
|
+
"current",
|
|
12955
|
+
"stale",
|
|
12956
|
+
"missing"
|
|
12957
|
+
]);
|
|
12958
|
+
/**
|
|
12959
|
+
* The numeric precision of one format's BUILD (D746) — reported only when the
|
|
12960
|
+
* build states it (file-name token, an INT8 variant, an EdgeTPU compile, a
|
|
12961
|
+
* CamStack Core ML export). Absent means "not stated", never "fp32".
|
|
12962
|
+
*/
|
|
12963
|
+
var ModelFormatPrecisionSchema = _enum([
|
|
12964
|
+
"fp32",
|
|
12965
|
+
"fp16",
|
|
12966
|
+
"int8"
|
|
12967
|
+
]);
|
|
12968
|
+
/**
|
|
12969
|
+
* One format of one model as a node's `pipelineExecutor.getSchema` reports it.
|
|
12970
|
+
* `onDisk` / `precision` are optional for version skew: a runner that predates
|
|
12971
|
+
* them omits them, and a reader falls back to `downloaded`.
|
|
12972
|
+
*/
|
|
12973
|
+
var PipelineModelFormatStatusSchema = object({
|
|
12974
|
+
downloaded: boolean(),
|
|
12975
|
+
sizeMB: number(),
|
|
12976
|
+
onDisk: ModelOnDiskStateSchema.optional(),
|
|
12977
|
+
precision: ModelFormatPrecisionSchema.optional()
|
|
12978
|
+
});
|
|
12979
|
+
/**
|
|
12943
12980
|
* Extra file that must be downloaded alongside the model (e.g., labels JSON, dict.txt).
|
|
12944
12981
|
* The downloader fetches from `url` and saves to `{modelsDir}/{filename}`.
|
|
12945
12982
|
*/
|
|
@@ -26536,7 +26573,7 @@ var FrameRefSchema = object({
|
|
|
26536
26573
|
timestamp: number(),
|
|
26537
26574
|
capturedAt: number().optional()
|
|
26538
26575
|
});
|
|
26539
|
-
var ModelFormatSchema$
|
|
26576
|
+
var ModelFormatSchema$2 = _enum([
|
|
26540
26577
|
"onnx",
|
|
26541
26578
|
"coreml",
|
|
26542
26579
|
"openvino",
|
|
@@ -26554,7 +26591,7 @@ var PipelineSlotSchema = _enum([
|
|
|
26554
26591
|
var PipelineEngineChoiceSchema = object({
|
|
26555
26592
|
runtime: literal("python"),
|
|
26556
26593
|
backend: string(),
|
|
26557
|
-
format: ModelFormatSchema$
|
|
26594
|
+
format: ModelFormatSchema$2,
|
|
26558
26595
|
device: string().optional()
|
|
26559
26596
|
});
|
|
26560
26597
|
/**
|
|
@@ -26611,10 +26648,7 @@ var PipelineTemplateSchema$1 = object({
|
|
|
26611
26648
|
var PipelineModelOptionSchema = object({
|
|
26612
26649
|
id: string(),
|
|
26613
26650
|
name: string(),
|
|
26614
|
-
formats: record(string(),
|
|
26615
|
-
downloaded: boolean(),
|
|
26616
|
-
sizeMB: number()
|
|
26617
|
-
})),
|
|
26651
|
+
formats: record(string(), PipelineModelFormatStatusSchema),
|
|
26618
26652
|
group: ModelVariantGroupSchema.optional(),
|
|
26619
26653
|
legacy: boolean().optional(),
|
|
26620
26654
|
provider: ModelProviderIdSchema.optional(),
|
|
@@ -26829,6 +26863,32 @@ var pipelineExecutorCapability = {
|
|
|
26829
26863
|
auth: "admin"
|
|
26830
26864
|
}),
|
|
26831
26865
|
/**
|
|
26866
|
+
* Best settings (D745): the MODEL-BOUND thresholds (`bindsToModel` keys of
|
|
26867
|
+
* the object-detection root, and their binding keys) stored in THIS node's
|
|
26868
|
+
* per-camera detector settings — and, unless `dryRun`, remove them so the
|
|
26869
|
+
* running model's own defaults apply. Every other key of a camera's store
|
|
26870
|
+
* is kept. `nodeId` is the ROUTING key. `deviceIds` absent ⇒ every camera
|
|
26871
|
+
* with a store. A camera whose store could not be read is `refused`, never
|
|
26872
|
+
* reported as clean.
|
|
26873
|
+
*/
|
|
26874
|
+
clearModelBoundDeviceOverrides: method(object({
|
|
26875
|
+
nodeId: string(),
|
|
26876
|
+
deviceIds: array(number()).readonly().optional(),
|
|
26877
|
+
dryRun: boolean()
|
|
26878
|
+
}), object({
|
|
26879
|
+
entries: array(object({
|
|
26880
|
+
deviceId: number(),
|
|
26881
|
+
keys: array(string()).readonly()
|
|
26882
|
+
})).readonly(),
|
|
26883
|
+
refused: array(object({
|
|
26884
|
+
deviceId: number(),
|
|
26885
|
+
reason: string()
|
|
26886
|
+
})).readonly()
|
|
26887
|
+
}), {
|
|
26888
|
+
kind: "mutation",
|
|
26889
|
+
auth: "admin"
|
|
26890
|
+
}),
|
|
26891
|
+
/**
|
|
26832
26892
|
* Which of THIS node's inference devices the executor currently refuses,
|
|
26833
26893
|
* and why. `nodeId` is the ROUTING key (stripped by the generated router).
|
|
26834
26894
|
*
|
|
@@ -26923,12 +26983,12 @@ var pipelineExecutorCapability = {
|
|
|
26923
26983
|
downloadModel: method(object({
|
|
26924
26984
|
addonId: string(),
|
|
26925
26985
|
modelId: string(),
|
|
26926
|
-
format: ModelFormatSchema$
|
|
26986
|
+
format: ModelFormatSchema$2
|
|
26927
26987
|
}), DownloadModelResultSchema, { kind: "mutation" }),
|
|
26928
26988
|
deleteModel: method(object({
|
|
26929
26989
|
addonId: string(),
|
|
26930
26990
|
modelId: string(),
|
|
26931
|
-
format: ModelFormatSchema$
|
|
26991
|
+
format: ModelFormatSchema$2
|
|
26932
26992
|
}), object({ success: literal(true) }), { kind: "mutation" }),
|
|
26933
26993
|
/**
|
|
26934
26994
|
* Stateless single-frame execution. Callers (runner, benchmark) pass
|
|
@@ -27174,6 +27234,204 @@ var pipelineExecutorCapability = {
|
|
|
27174
27234
|
getDetectionConfigSchema: method(_void(), ConfigUISchemaNullableBridge)
|
|
27175
27235
|
}
|
|
27176
27236
|
};
|
|
27237
|
+
/**
|
|
27238
|
+
* The wire shapes of the Best settings plan and apply (D745), used by the
|
|
27239
|
+
* `pipeline-orchestrator` cap. The recommender's own types
|
|
27240
|
+
* (`recommend.ts`, `demand.ts`) are the TS face of the same data; these
|
|
27241
|
+
* schemas are what crosses the cap boundary.
|
|
27242
|
+
*/
|
|
27243
|
+
var ModelFormatSchema$1 = _enum(MODEL_FORMATS);
|
|
27244
|
+
var HardwareClassIdSchema = _enum([
|
|
27245
|
+
"intel-core-ultra",
|
|
27246
|
+
"intel-n-series",
|
|
27247
|
+
"apple-m-base",
|
|
27248
|
+
"apple-m-pro",
|
|
27249
|
+
"unknown"
|
|
27250
|
+
]);
|
|
27251
|
+
var AcceleratorKindSchema = _enum([
|
|
27252
|
+
"intel-npu",
|
|
27253
|
+
"intel-igpu",
|
|
27254
|
+
"x86-cpu",
|
|
27255
|
+
"arm-cpu",
|
|
27256
|
+
"apple-ane",
|
|
27257
|
+
"coral"
|
|
27258
|
+
]);
|
|
27259
|
+
var RecommendationReasonSchema = discriminatedUnion("kind", [
|
|
27260
|
+
object({
|
|
27261
|
+
kind: literal("fits"),
|
|
27262
|
+
utilisation: number()
|
|
27263
|
+
}),
|
|
27264
|
+
object({
|
|
27265
|
+
kind: literal("tie-faster"),
|
|
27266
|
+
over: string(),
|
|
27267
|
+
recallDelta: number()
|
|
27268
|
+
}),
|
|
27269
|
+
object({
|
|
27270
|
+
kind: literal("stepped-down"),
|
|
27271
|
+
from: string(),
|
|
27272
|
+
to: string(),
|
|
27273
|
+
limitedBy: string()
|
|
27274
|
+
}),
|
|
27275
|
+
object({
|
|
27276
|
+
kind: literal("no-fit-lightest"),
|
|
27277
|
+
utilisation: number()
|
|
27278
|
+
}),
|
|
27279
|
+
object({
|
|
27280
|
+
kind: literal("derived-latency"),
|
|
27281
|
+
modelId: string()
|
|
27282
|
+
}),
|
|
27283
|
+
object({
|
|
27284
|
+
kind: literal("estimated-load"),
|
|
27285
|
+
observedForMs: number().nullable()
|
|
27286
|
+
}),
|
|
27287
|
+
object({ kind: literal("cpu-device") }),
|
|
27288
|
+
object({ kind: literal("coral-untouched") }),
|
|
27289
|
+
object({ kind: literal("device-disabled") }),
|
|
27290
|
+
object({ kind: literal("device-unavailable") }),
|
|
27291
|
+
object({ kind: literal("node-offline") }),
|
|
27292
|
+
object({ kind: literal("no-hardware-facts") }),
|
|
27293
|
+
object({
|
|
27294
|
+
kind: literal("no-measured-data"),
|
|
27295
|
+
hardwareClass: HardwareClassIdSchema
|
|
27296
|
+
}),
|
|
27297
|
+
object({
|
|
27298
|
+
kind: literal("no-family-build"),
|
|
27299
|
+
format: ModelFormatSchema$1
|
|
27300
|
+
})
|
|
27301
|
+
]);
|
|
27302
|
+
var DeviceDemandSchema = object({
|
|
27303
|
+
nodeId: string(),
|
|
27304
|
+
deviceKey: string(),
|
|
27305
|
+
demandFps: number(),
|
|
27306
|
+
maxCameraFps: number(),
|
|
27307
|
+
alwaysOnCameras: number(),
|
|
27308
|
+
onMotionSessions: number(),
|
|
27309
|
+
onMotionSource: _enum([
|
|
27310
|
+
"observed-24h",
|
|
27311
|
+
"estimate",
|
|
27312
|
+
"none"
|
|
27313
|
+
]),
|
|
27314
|
+
observedForMs: number().nullable()
|
|
27315
|
+
});
|
|
27316
|
+
var DeviceModelChoiceSchema = object({
|
|
27317
|
+
modelId: string(),
|
|
27318
|
+
p50Ms: number(),
|
|
27319
|
+
fps: number(),
|
|
27320
|
+
measured: boolean(),
|
|
27321
|
+
utilisation: number(),
|
|
27322
|
+
personRecall: number()
|
|
27323
|
+
});
|
|
27324
|
+
var DeviceRecommendationSchema = object({
|
|
27325
|
+
deviceKey: string(),
|
|
27326
|
+
accelerator: AcceleratorKindSchema.nullable(),
|
|
27327
|
+
enabled: boolean(),
|
|
27328
|
+
available: boolean(),
|
|
27329
|
+
demand: DeviceDemandSchema.nullable(),
|
|
27330
|
+
chosen: DeviceModelChoiceSchema.nullable(),
|
|
27331
|
+
reasons: array(RecommendationReasonSchema).readonly()
|
|
27332
|
+
});
|
|
27333
|
+
var NodeRecommendationSchema = object({
|
|
27334
|
+
nodeId: string(),
|
|
27335
|
+
reachable: boolean(),
|
|
27336
|
+
hardwareClass: HardwareClassIdSchema.nullable(),
|
|
27337
|
+
cpuModel: string().nullable(),
|
|
27338
|
+
skipped: boolean(),
|
|
27339
|
+
acceleratorModelId: string().nullable(),
|
|
27340
|
+
devices: array(DeviceRecommendationSchema).readonly(),
|
|
27341
|
+
reasons: array(RecommendationReasonSchema).readonly()
|
|
27342
|
+
});
|
|
27343
|
+
var ModelPinChangeSchema = object({
|
|
27344
|
+
stepId: string(),
|
|
27345
|
+
before: string().nullable(),
|
|
27346
|
+
after: string().nullable()
|
|
27347
|
+
});
|
|
27348
|
+
var NodeDeviceChangeSchema = object({
|
|
27349
|
+
nodeId: string(),
|
|
27350
|
+
deviceKey: string(),
|
|
27351
|
+
madeExplicit: boolean(),
|
|
27352
|
+
modelPins: array(ModelPinChangeSchema).readonly(),
|
|
27353
|
+
thresholds: array(object({
|
|
27354
|
+
stepId: string(),
|
|
27355
|
+
keys: array(string()).readonly()
|
|
27356
|
+
})).readonly()
|
|
27357
|
+
});
|
|
27358
|
+
var CameraOverrideClearSchema = object({
|
|
27359
|
+
deviceId: number(),
|
|
27360
|
+
source: _enum(["step-override", "wholesale"]),
|
|
27361
|
+
nodeId: string(),
|
|
27362
|
+
deviceKey: string().nullable(),
|
|
27363
|
+
stepId: string(),
|
|
27364
|
+
modelIdBefore: string().nullable(),
|
|
27365
|
+
keys: array(string()).readonly()
|
|
27366
|
+
});
|
|
27367
|
+
var DetectorStoreClearSchema = object({
|
|
27368
|
+
deviceId: number(),
|
|
27369
|
+
keys: array(string()).readonly()
|
|
27370
|
+
});
|
|
27371
|
+
var BestSettingsWarningSchema = discriminatedUnion("kind", [
|
|
27372
|
+
object({
|
|
27373
|
+
kind: literal("detector-store-cluster-wide"),
|
|
27374
|
+
skippedNodes: array(string()).readonly()
|
|
27375
|
+
}),
|
|
27376
|
+
object({
|
|
27377
|
+
kind: literal("detector-store-unreadable"),
|
|
27378
|
+
error: string()
|
|
27379
|
+
}),
|
|
27380
|
+
object({
|
|
27381
|
+
kind: literal("coral-enabled"),
|
|
27382
|
+
nodeId: string(),
|
|
27383
|
+
deviceKey: string()
|
|
27384
|
+
})
|
|
27385
|
+
]);
|
|
27386
|
+
var BestSettingsOptionsSchema = object({
|
|
27387
|
+
/** Share of each accelerator's throughput kept free (0.3–0.5). */
|
|
27388
|
+
headroom: number().min(.3).max(.5).default(.4) });
|
|
27389
|
+
var BestSettingsPlanSchema = object({
|
|
27390
|
+
/** Hash of everything the apply will write — the apply refuses a different one. */
|
|
27391
|
+
planHash: string(),
|
|
27392
|
+
family: literal("yolov9"),
|
|
27393
|
+
headroom: number(),
|
|
27394
|
+
generatedAt: number(),
|
|
27395
|
+
nodes: array(NodeRecommendationSchema).readonly(),
|
|
27396
|
+
nodeChanges: array(NodeDeviceChangeSchema).readonly(),
|
|
27397
|
+
cameraClears: array(CameraOverrideClearSchema).readonly(),
|
|
27398
|
+
detectorStoreClears: array(DetectorStoreClearSchema).readonly(),
|
|
27399
|
+
warnings: array(BestSettingsWarningSchema).readonly()
|
|
27400
|
+
});
|
|
27401
|
+
var BestSettingsApplyInputSchema = object({
|
|
27402
|
+
planHash: string(),
|
|
27403
|
+
headroom: number().min(.3).max(.5).default(.4)
|
|
27404
|
+
});
|
|
27405
|
+
var BestSettingsPhaseResultSchema = object({
|
|
27406
|
+
phase: _enum([
|
|
27407
|
+
"download",
|
|
27408
|
+
"camera-overrides",
|
|
27409
|
+
"detector-thresholds",
|
|
27410
|
+
"node-models",
|
|
27411
|
+
"redispatch"
|
|
27412
|
+
]),
|
|
27413
|
+
ok: boolean(),
|
|
27414
|
+
detail: string()
|
|
27415
|
+
});
|
|
27416
|
+
var BestSettingsApplyResultSchema = discriminatedUnion("kind", [
|
|
27417
|
+
object({
|
|
27418
|
+
kind: literal("applied"),
|
|
27419
|
+
planHash: string(),
|
|
27420
|
+
phases: array(BestSettingsPhaseResultSchema).readonly()
|
|
27421
|
+
}),
|
|
27422
|
+
object({
|
|
27423
|
+
kind: literal("aborted"),
|
|
27424
|
+
phases: array(BestSettingsPhaseResultSchema).readonly()
|
|
27425
|
+
}),
|
|
27426
|
+
object({
|
|
27427
|
+
kind: literal("stale"),
|
|
27428
|
+
plan: BestSettingsPlanSchema
|
|
27429
|
+
}),
|
|
27430
|
+
object({
|
|
27431
|
+
kind: literal("refused"),
|
|
27432
|
+
reason: _enum(["apply-in-progress"])
|
|
27433
|
+
})
|
|
27434
|
+
]);
|
|
27177
27435
|
object({
|
|
27178
27436
|
activeCameras: number(),
|
|
27179
27437
|
throttledCameras: number(),
|
|
@@ -29092,6 +29350,9 @@ method(object({
|
|
|
29092
29350
|
}), {
|
|
29093
29351
|
kind: "mutation",
|
|
29094
29352
|
auth: "admin"
|
|
29353
|
+
}), method(BestSettingsOptionsSchema, BestSettingsPlanSchema, { auth: "admin" }), method(BestSettingsApplyInputSchema, BestSettingsApplyResultSchema, {
|
|
29354
|
+
kind: "mutation",
|
|
29355
|
+
auth: "admin"
|
|
29095
29356
|
}), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
|
|
29096
29357
|
deviceId: number(),
|
|
29097
29358
|
addonId: string(),
|
|
@@ -41165,7 +41426,8 @@ Object.freeze({
|
|
|
41165
41426
|
vehicle: .65,
|
|
41166
41427
|
animal: .65
|
|
41167
41428
|
});
|
|
41168
|
-
var
|
|
41429
|
+
var HF_REPO = "camstack/camstack-models";
|
|
41430
|
+
`${HF_REPO}`;
|
|
41169
41431
|
/**
|
|
41170
41432
|
* Accessory device helpers — shared across drivers.
|
|
41171
41433
|
*
|
|
@@ -45702,6 +45964,12 @@ Object.freeze({
|
|
|
45702
45964
|
addonId: null,
|
|
45703
45965
|
access: "delete"
|
|
45704
45966
|
},
|
|
45967
|
+
"pipelineExecutor.clearModelBoundDeviceOverrides": {
|
|
45968
|
+
capName: "pipeline-executor",
|
|
45969
|
+
capScope: "system",
|
|
45970
|
+
addonId: null,
|
|
45971
|
+
access: "delete"
|
|
45972
|
+
},
|
|
45705
45973
|
"pipelineExecutor.deleteModel": {
|
|
45706
45974
|
capName: "pipeline-executor",
|
|
45707
45975
|
capScope: "system",
|
|
@@ -45918,6 +46186,12 @@ Object.freeze({
|
|
|
45918
46186
|
addonId: null,
|
|
45919
46187
|
access: "view"
|
|
45920
46188
|
},
|
|
46189
|
+
"pipelineOrchestrator.applyBestSettings": {
|
|
46190
|
+
capName: "pipeline-orchestrator",
|
|
46191
|
+
capScope: "system",
|
|
46192
|
+
addonId: null,
|
|
46193
|
+
access: "create"
|
|
46194
|
+
},
|
|
45921
46195
|
"pipelineOrchestrator.applyDeviceSettingsPatch": {
|
|
45922
46196
|
capName: "pipeline-orchestrator",
|
|
45923
46197
|
capScope: "system",
|
|
@@ -46092,6 +46366,12 @@ Object.freeze({
|
|
|
46092
46366
|
addonId: null,
|
|
46093
46367
|
access: "create"
|
|
46094
46368
|
},
|
|
46369
|
+
"pipelineOrchestrator.planBestSettings": {
|
|
46370
|
+
capName: "pipeline-orchestrator",
|
|
46371
|
+
capScope: "system",
|
|
46372
|
+
addonId: null,
|
|
46373
|
+
access: "view"
|
|
46374
|
+
},
|
|
46095
46375
|
"pipelineOrchestrator.rebalance": {
|
|
46096
46376
|
capName: "pipeline-orchestrator",
|
|
46097
46377
|
capScope: "system",
|
|
@@ -51514,6 +51794,11 @@ Object.freeze({
|
|
|
51514
51794
|
form: "single",
|
|
51515
51795
|
optional: false
|
|
51516
51796
|
}],
|
|
51797
|
+
"pipelineExecutor.clearModelBoundDeviceOverrides": [{
|
|
51798
|
+
name: "deviceIds",
|
|
51799
|
+
form: "array",
|
|
51800
|
+
optional: true
|
|
51801
|
+
}],
|
|
51517
51802
|
"pipelineExecutor.runPipeline": [{
|
|
51518
51803
|
name: "deviceId",
|
|
51519
51804
|
form: "single",
|
|
@@ -53420,41 +53705,6 @@ function stepModelRunsOnFormat(models, modelId, format) {
|
|
|
53420
53705
|
}
|
|
53421
53706
|
return models.some((m) => m.legacy !== true && hasBuild(m, format));
|
|
53422
53707
|
}
|
|
53423
|
-
/**
|
|
53424
|
-
* Model-bound step settings (D738): an operator value that is only meaningful
|
|
53425
|
-
* for ONE model, stored together with that model's id.
|
|
53426
|
-
*
|
|
53427
|
-
* The per-class confidence floors are the case it exists for. A score is a
|
|
53428
|
-
* property of one detector's output scale — on this hub the median score of a
|
|
53429
|
-
* correct person was 0.78 on `yolov9m-320-int8`, 0.68 on `yolo26s-320-int8`,
|
|
53430
|
-
* 0.40 on `yolo26n-320-int8` and 0.89 on `yolo26s` (640) — so a floor tuned on
|
|
53431
|
-
* one model is wrong on the next. The DEFAULT of such a field belongs to the
|
|
53432
|
-
* model (the catalog entry); an operator OVERRIDE belongs to the model it was
|
|
53433
|
-
* made for.
|
|
53434
|
-
*
|
|
53435
|
-
* The binding is checked at READ time against the model that RUNS, never
|
|
53436
|
-
* enforced by a write on the model-change path: a model can change without any
|
|
53437
|
-
* operator write at all (an unpinned root follows the elected device's
|
|
53438
|
-
* hardware-aware default, D736), and an event-driven reset could be dropped
|
|
53439
|
-
* (events are telemetry, D8/D11). So:
|
|
53440
|
-
*
|
|
53441
|
-
* effective = override when the stored binding names the running model
|
|
53442
|
-
* | override when no binding is stored (a legacy / programmatic
|
|
53443
|
-
* value — it applies to whatever runs, as before D738)
|
|
53444
|
-
* | the running model's default, when it declares one
|
|
53445
|
-
* | the field's global default.
|
|
53446
|
-
*
|
|
53447
|
-
* Storage shape: the value stays a plain number under its own key (every
|
|
53448
|
-
* reader of the raw settings bag keeps working), and the binding is a SIBLING
|
|
53449
|
-
* key, {@link modelBindingKey}. Both are flat so the shallow per-key merges of
|
|
53450
|
-
* the settings layers (node fold, camera override) carry a value and its
|
|
53451
|
-
* binding together whenever one layer writes both — which every writer here
|
|
53452
|
-
* does.
|
|
53453
|
-
*
|
|
53454
|
-
* Lives in the bare `@camstack/types` entry, which every addon bundles, so the
|
|
53455
|
-
* runner (`addon-pipeline`) and the editors (`ui-library`, `addon-admin-ui`)
|
|
53456
|
-
* apply the same rule.
|
|
53457
|
-
*/
|
|
53458
53708
|
/** Suffix of the sibling key that names the model a stored value was made for. */
|
|
53459
53709
|
var MODEL_BINDING_SUFFIX = "ModelId";
|
|
53460
53710
|
/** `minConfidencePerson` → `minConfidencePersonModelId`. */
|
|
@@ -53514,6 +53764,17 @@ function applyModelBoundSettings(settings, boundKeys, runningModelId) {
|
|
|
53514
53764
|
}
|
|
53515
53765
|
return out;
|
|
53516
53766
|
}
|
|
53767
|
+
/**
|
|
53768
|
+
* The keys of every `bindsToModel` field of a step's config schema, groups
|
|
53769
|
+
* flattened (D738). One definition for the runner (which applies the binding)
|
|
53770
|
+
* and the orchestrator's Best settings (which clears those overrides, D745).
|
|
53771
|
+
*/
|
|
53772
|
+
function collectModelBoundKeys(fields) {
|
|
53773
|
+
return fields.flatMap((field) => {
|
|
53774
|
+
if (field.type === "group") return collectModelBoundKeys(field.fields);
|
|
53775
|
+
return "key" in field && "bindsToModel" in field && field.bindsToModel === true ? [field.key] : [];
|
|
53776
|
+
});
|
|
53777
|
+
}
|
|
53517
53778
|
/** Side of the square, as a multiple of the face box's longer side. */
|
|
53518
53779
|
var ROOT_FACE_REFINE_SCALE = 1.6;
|
|
53519
53780
|
/**
|
|
@@ -54732,4 +54993,4 @@ function enumerateInferenceDevices(hw) {
|
|
|
54732
54993
|
return out;
|
|
54733
54994
|
}
|
|
54734
54995
|
//#endregion
|
|
54735
|
-
export { cameraOwnsMotionViaSensor as $,
|
|
54996
|
+
export { cameraOwnsMotionViaSensor as $, object as $n, recordingSignalCapability as $t, NativeLeaseAdmissionSchema as A, CAM_PROFILE_ORDER as An, linkedStepOf as At, RecordingConfigSchema as B, makeSourceBrokerId as Bn, modelBindingKey as Bt, EncodeProfileSchema as C, invocationFromEncodeProfile as Cn, gbToBytes as Ct, HF_REPO as D, errMsg as Dn, inferModelProvider as Dt, G711_SCALE_CORRECTION_DB as E, DeviceType as En, hfModelUrl as Et, RATE_CONTROL_TIGHT as F, defineCustomActions as Fn, mayReadLocation as Ft, YAMNET_TO_MACRO as G, sleep as Gn, pickDetailCropConvention as Gt, RingBuffer as H, parseJsonUnknown as Hn, overlayClusterStepSettings as Ht, RECORDING_EXPORT_MAX_READ_BYTES as I, expandAudioChunkToF32le as In, mayWriteToLocation as It, applyModelBoundSettings as J, boolean as Jn, pipelineRunnerCapability as Jt, addonWidgetsSourceCapability as K, _enum as Kn, pickNativeLeaseOverride as Kt, RECORDING_SOURCE_CAMSTACK as L, hydrateSchema as Ln, memoizePinnedFfmpeg as Lt, OpsLogEntrySchema as M, audioChunkBytesPerSample as Mn, logChannelsCapability as Mt, PoolMemoryWatchdog as N, createEvent as Nn, mapAudioLabelToMacro as Nt, LABEL_SUPPLY_MACRO as O, BOOT_RECOVERY_BACKOFF_MS as On, isFirstLevelMacroClass as Ot, RATE_CONTROL_RELAXED as P, customAction as Pn, maskUrlCredentials as Pt, batteryCapability as Q, number as Qn, recordingExportCapability as Qt, RECORDING_SOURCE_CAMSTACK_ADDON as R, isEvent as Rn, migrateLegacyDeviceSignalConfig as Rt, EVENT_PAD_MS as S, evaluateSensorEdge as Sn, ffmpegRate as St, FailureCounters as T, DeviceFeature as Tn, gifFromMp4Args as Tt, VIDEOCLIPS_MAX_OFFER_BYTES as U, parseProfileBrokerId as Un, parseProcStatus as Ut, RecordingSignalStatusSchema as V, nodePin as Vn, motionDetectionCapability as Vt, VISIT_MERGE_GAP_MS as W, selectAssignedProfileSlots as Wn, pickClusterStepSettings as Wt, audioAnalyzerCapability as X, lazy as Xn, recordingArchiveCapability as Xt, audioAnalysisCapability as Y, discriminatedUnion as Yn, rankStreams as Yt, audioKindId as Z, literal as Zn, recordingCapability as Zt, DEFAULT_DETAIL_CROP_CONVENTION as _, webrtcSessionCapability as _n, evaluateZoneRules as _t, BackgroundRunRegistry as a, resolvePoolMemoryPolicy as an, createHwAccelCache as at, DEVICE_BACKEND_TO_FORMAT as b, Fmp4BoxSplitter as bn, exportSubjectOf as bt, CLIP_STILL_REASON_CODE_HEADER as c, rootSuppliesOf as cn, defaultDeviceFor as ct, CLUSTER_MODEL_SCOPED_STEPS as d, storageEvictableCapability as dn, deriveRecordingMode as dt, resolveClusterStepModelId as en, preprocess as er, cameraStreamsCapability as et, COCO_80_LABELS as f, storageOccupancyCapability as fn, deriveRootFaceRefineRect as ft, DEFAULT_CLUSTER_STEP_SETTINGS as g, videoclipsCapability as gn, enumerateInferenceDevices as gt, DEFAULT_AUDIO_ANALYZER_CONFIG as h, supportedRuntimes as hn, egressTransportFromRequest as ht, AUDIO_MACRO_LABELS as i, resolveModelBoundSetting as in, EventCategory as ir, containingParentIndex as it, NativeLeaseSettingsSchema as j, CamProfileSchema as jn, loadContributionCapability as jt, LABEL_SUPPLY_VOCABULARIES as k, BaseAddon as kn, linkedLabelStepId as kt, CLIP_STILL_REASON_HEADER as l, runtimeDevices as ln, deriveBatteryPresence as lt, CROP_SUPPLY_SOURCES as m, stripRetiredBandPreBufferSec as mn, egressTranscodeSharingKey as mt, APPLE_SA_TO_MACRO as n, resolveEgressDecodeHwAccel as nn, string as nr, clipExportFailureOf as nt, BatteryStatusSchema as o, resolveRecordingProfiles as on, createLogChannelsProvider as ot, COCO_TO_MACRO as p, streamBrokerCapability as pn, detectionPipelineCapability as pt, allowedSuppliedEffect as q, array as qn, pipelineExecutorCapability as qt, AUDIO_BACKEND_CHOICES as r, resolveLocationMode as rn, union as rr, collectModelBoundKeys as rt, CLIP_BROKER_PACED_RATES as s, resolveRootSupply as sn, declareLogChannel as st, APPEARANCE_BLOCKS as t, resolveCreateExportSubject as tn, record as tr, clipExportFailure as tt, CLIP_STREAM_TRANSPORT_HEADER as u, stepModelRunsOnFormat as un, deriveDetailCropRect as ut, DEFAULT_EVENTS_BAND_BUFFER_SEC as v, AUDIO_PRESETS as vn, evictionPolicyForMode as vt, ExportRecordSchema as w, isSoftwareDecode as wn, gifDeriveSpeed as wt, EVENT_OWNER_TYPES as x, buildFfmpegArgs as xn, failureContributionCapability as xt, DEFAULT_NATIVE_LEASE_SETTINGS as y, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as yn, evictionPolicyOfLocation as yt, ROOT_SUPPLIABLE_STEP_IDS as z, makeProfileBrokerId as zn, modeMayWrite as zt };
|