@camstack/addon-pipeline-orchestrator 1.2.0 → 1.2.2

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/_stub.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "./_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-BiLBDmU5.mjs";
2
- import { n as t, r as n, t as r } from "./_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CXJRD44-.mjs";
2
+ import { n as t, r as n, t as r } from "./_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-Cyg3CeHQ.mjs";
3
3
  import { a as i, c as a, i as o, n as s, o as c, r as l, s as u, t as d } from "./_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare__react__loadShare__.js-a8tvh93M.mjs";
4
4
  import { C as f, S as p, _ as m, a as h, b as g, c as _, d as v, f as y, g as b, h as x, i as S, l as C, m as w, n as T, o as E, p as D, r as O, s as k, t as A, u as j, v as M, w as N, x as P, y as F } from "./_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-QenARazS.mjs";
5
5
  import { n as I, r as L, t as R } from "./_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-yD-rMaFX.mjs";
@@ -3,7 +3,7 @@ import "./dist-CYZr2fwk.mjs";
3
3
  var e = {
4
4
  "@camstack/sdk": {
5
5
  name: "@camstack/sdk",
6
- version: "1.2.0",
6
+ version: "1.2.2",
7
7
  scope: ["default"],
8
8
  loaded: !1,
9
9
  from: "addon_pipeline_orchestrator_widgets",
@@ -18,7 +18,7 @@ var e = {
18
18
  },
19
19
  "@camstack/types": {
20
20
  name: "@camstack/types",
21
- version: "1.2.0",
21
+ version: "1.2.2",
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.2.0",
36
+ version: "1.2.2",
37
37
  scope: ["default"],
38
38
  loaded: !1,
39
39
  from: "addon_pipeline_orchestrator_widgets",
@@ -0,0 +1,26 @@
1
+ //#region \0virtual:mf:__mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js
2
+ var e = "__mf_init__virtual:mf:__mfe_internal__addon_pipeline_orchestrator_widgets__mf_v__runtimeInit__mf_v__.js__", t = globalThis[e];
3
+ if (!t) {
4
+ let n, r, i = new Promise((e, t) => {
5
+ n = e, r = t;
6
+ });
7
+ t = globalThis[e] = {
8
+ initPromise: i,
9
+ initResolve: n,
10
+ initReject: r
11
+ };
12
+ }
13
+ var n = t.initPromise, r = "__mf_module_cache__";
14
+ globalThis[r] ||= {
15
+ share: {},
16
+ remote: {}
17
+ }, globalThis[r].share ||= {}, globalThis[r].remote ||= {};
18
+ var i = globalThis[r], a, o, s, c = (e) => {
19
+ e.ACCESSORY_LABEL, e.ALL_CAPABILITY_DEFINITIONS, e.APPLE_SA_TO_MACRO, e.AUDIO_BACKEND_CHOICES, e.AUDIO_MACRO_LABELS, e.AccessoriesStatusSchema, e.AccessoryKind, e.AddBrokerInputSchema, e.AddonAutoUpdateSchema, e.AddonListItemSchema, e.AddonPageDeclarationSchema, e.AddonPageInfoSchema, e.AdoptionAdoptInputSchema, e.AdoptionAdoptResultSchema, e.AdoptionFilterSchema, e.AdoptionGetCandidateInputSchema, e.AdoptionListCandidatesInputSchema, e.AdoptionListCandidatesOutputSchema, e.AdoptionReleaseInputSchema, e.AdoptionStatusSchema, e.AgentLoadSummarySchema, e.AirQualitySensorStatusSchema, e.AlarmArmModeSchema, e.AlarmPanelStatusSchema, e.AlarmStateSchema, e.AlertSchema, e.AlertSeveritySchema, e.AlertSourceSchema, e.AlertStatusSchema, e.AmbientLightSensorStatusSchema, e.ApiKeyRecordSchema, e.ApiKeySummarySchema, e.ArchiveEntrySchema, e.ArchiveManifestSchema, e.AttachmentMediaTypeSchema, e.AttachmentSchema, e.AudioAnalysisResultSchema, e.AudioAnalysisSettingsSchema, e.AudioChunkInputSchema, e.AudioClassSummarySchema, e.AudioClassificationLabelSchema, e.AudioClassificationResultSchema, e.AudioCodecInfoSchema, e.AudioDecodeSessionConfigSchema, e.AudioEncodeSchema, e.AudioEncodeSessionConfigSchema, e.AudioEncodedChunkSchema, e.AudioEventSchema, e.AudioLevelSchema, e.AudioMetricsHistoryPointSchema, e.AudioMetricsHistorySchema, e.AudioMetricsSnapshotSchema, e.AudioPcmChunkSchema, e.AuthResultSchema, e.AutoUpdateSettingsSchema, e.AutomationControlStatusSchema, e.AvailableIntegrationTypeSchema, e.BACKEND_TO_FORMAT, e.BATTERY_DEVICE_PROFILE, e.BacklightModeSchema, e.BackupDestinationInfoSchema, e.BackupEntrySchema, e.BaseAddon, e.BaseDevice, e.BaseDeviceProvider, e.BatteryStatusSchema, e.BinaryStatusSchema, e.BoundingBoxSchema, e.BrightnessStatusSchema, e.BrokerAddInputSchema, e.BrokerAudioClientSchema, e.BrokerClientsSchema, e.BrokerConnectionDetailsSchema, e.BrokerConsumerAttributionSchema, e.BrokerConsumerKindSchema, e.BrokerDecodedClientSchema, e.BrokerEncodedClientSchema, e.BrokerGetStateInputSchema, e.BrokerInfoSchema, e.BrokerProviderInfoSchema, e.BrokerPublishInputSchema, e.BrokerRegistryStatusSchema, e.BrokerRtspClientSchema, e.BrokerStatsSchema, e.BrokerStatusEnum, e.BrokerStatusSchema, e.BrokerSubscribeInputSchema, e.BrokerSubscribeResultSchema, e.BrokerTestConnectionResultSchema, e.BrokerUnsubscribeInputSchema, e.CAM_PROFILE_ORDER, e.CAPABILITY_NAMES, e.CAPABILITY_ROUTER_KEYS, e.CAP_NAMES_WITH_STATUS, e.CAP_NODE_PIN_CONTEXT_KEY, e.CAP_PROVIDER_KIND_MAP, e.COCO_80_LABELS, e.COCO_TO_MACRO, e.CamProfileSchema, e.CamStreamDescriptorSchema, e.CamStreamKindSchema, e.CamStreamResolutionSchema, e.CameraAssignmentStatusSchema, e.CameraAudioStatusSchema, e.CameraBrokerProfileSchema, e.CameraBrokerStatusSchema, e.CameraCredentialsSchema, e.CameraCredentialsStatusSchema, e.CameraDecoderShmSchema, e.CameraDecoderStatusSchema, e.CameraDetectionPhaseSchema, e.CameraDetectionProvisioningSchema, e.CameraDetectionProvisioningStateSchema, e.CameraDetectionStatusSchema, e.CameraMetricsSchema, e.CameraMetricsWithDeviceIdSchema, e.CameraMotionStatusSchema, e.CameraRecordingModeSchema, e.CameraRecordingStatusSchema, e.CameraSourceStatusSchema, e.CameraSourceStreamSchema, e.CameraStatusSchema, e.CameraStreamSchema, e.CandidateQueryFilterSchema, e.CapScopeSchema, e.CapabilityBindingsSchema, e.CarbonMonoxideStatusSchema, e.ChargingStatus, e.ClientNetworkStatsSchema, e.ClimateControlStatusSchema, e.ClipPlaybackSchema, e.ClipSchema, e.ClusterAddonNodeDeploymentSchema, e.ClusterAddonStatusEntrySchema, e.CollectionColumnSchema, e.CollectionIndexSchema, e.ColorStatusSchema, e.ConfigEntrySchema, e.ConfigSectionWithValuesSchema, e.ConfigTabDeclarationSchema, e.ConnectivityStatusSchema, e.ConsumableItemSchema, e.ConsumablesStatusSchema, e.ContactStatusSchema, e.ControlKindSchema, e.ControlStatusSchema, e.ConvertArtifactSchema, e.ConvertResultSchema, e.ConvertTargetSchema, e.CoverStateSchema, e.CoverStatusSchema, e.CreateApiKeyInputSchema, e.CreateApiKeyResultSchema, e.CreateIntegrationInputSchema, e.CreateScopedTokenInputSchema, e.CreateScopedTokenResultSchema, e.CreateUserInputSchema, e.CustomActionInputSchema, e.CustomModelDescriptorSchema, e.DATAPLANE_SECRET_HEADER, e.DEFAULT_ADDON_PLACEMENT, e.DEFAULT_AUDIO_ANALYZER_CONFIG, e.DEFAULT_DECODER_HWACCEL_CONFIG, e.DEFAULT_EVENT_COLOR, e.DEFAULT_FEATURES, e.DEFAULT_RETENTION, e.DEFAULT_SCRUB_THUMBNAIL_PRESET, e.DEVICE_BACKEND_TO_FORMAT, e.DEVICE_CAP_NAMES, e.DEVICE_PROFILES, e.DEVICE_SETTINGS_CONTRIBUTION_METHODS, e.DEVICE_STATUS_METHOD, e.DEVICE_TYPE_CONTROL_KIND, e.DEVICE_TYPE_INFO, e.DayNightModeSchema, e.DayNightOptionsSchema, e.DayNightSettingsPatchSchema, e.DayNightStatusSchema, e.DecodedAudioChunkSchema, e.DecodedFrameSchema, e.DecoderSessionConfigSchema, e.DecoderStatsSchema, e.DeleteIntegrationResultSchema, e.DetectionSourceSchema, e.DeviceCodeSeveritySchema, e.DeviceConfig, e.DeviceDiscoveryStatusSchema, e.DeviceExportExposeInputSchema, e.DeviceExportStatusSchema, e.DeviceExportUnexposeInputSchema, e.DeviceFeature, e.DeviceInfoSchema, e.DeviceLinkModeSchema, e.DeviceNetworkStatsSchema, e.DeviceRole, e.DeviceRuntimeState, e.DeviceStatusSchema, e.DeviceType, e.DiscoveredChildDeviceSchema, e.DiscoveredChildStatusSchema, e.DiscoveredDeviceSchema, e.DiscoveredTargetSchema, e.DisposerChain, e.DoorbellPressEventSchema, e.DoorbellStatusSchema, e.EVENTFUL_CAP_NAMES, e.EVENT_KIND_BY_CAP, e.EVENT_PAD_MS, e.EVENT_TAXONOMY, e.EXPRESSION_BUILTINS, e.EXPRESSION_BUILTIN_NAMES, e.EXPRESSION_COMPILE_CACHE_CAPACITY, e.EXPRESSION_IDENTIFIER_RE, e.EXPRESSION_INJECTED_NOW, e.ElementConfigStore, e.EmbeddingInfoSchema, e.EmbeddingResultSchema, e.EncodeProfileSchema, e.EncodedPacketSchema, e.EnrichedWidgetMetadataSchema, e.EnumSensorDateTimeFormatSchema, e.EnumSensorStatusSchema, e.EventCategory, e.EventEmitterStatusSchema, e.EventFireSchema, e.EventItemSchema, e.EventKindCategorySchema, e.EventKindDescriptorSchema, e.EventKindIconSchema, e.EventKindSchema, e.EventSourceType, e.ExportDownloadSchema, e.ExportOptionsSchema, e.ExportRecordSchema, e.ExportSetupFieldSchema, e.ExportSetupSchema, e.ExportSpeedSchema, e.ExportStateSchema, e.ExportTimelapseSchema, e.ExposedDeviceSchema, e.ExposureModeSchema, e.ExpressionEvalError, e.ExpressionParseError, e.FanControlStatusSchema, e.FanDirectionSchema, e.FeatureManifestSchema, e.FeatureProbeStatusSchema, e.FloodStatusSchema, e.FrameHandleFormatSchema, e.FrameHandleSchema, e.FrameInputSchema, e.GasStatusSchema, e.GetStreamWithCodecInputSchema, e.GlobalMetricsSchema, e.HF_BASE_URL, e.HF_REPO, e.HWACCEL_OPTIONS, e.HealthStatusSchema, e.HistoryPointSchema, e.HistoryResolutionEnum, e.HumidifierStatusSchema, e.HumiditySensorStatusSchema, e.HvacModeSchema, e.ImageRotateSchema, e.ImageSettingsOptionsSchema, e.ImageSettingsPatchSchema, e.ImageSettingsStatusSchema, e.ImageStatusSchema, e.IngestOwnerSchema, e.InstalledPackageSchema, e.IntegrationLiteSchema, e.IntegrationWithStateSchema, e.IntercomAbilitySchema, e.IntercomStatusSchema, e.KNOWN_CAP_NAMES, e.KeyEventSchema, e.LabelDefinitionSchema, e.LawnMowerActivitySchema, e.LawnMowerControlStatusSchema, e.LinkedDeviceSchema, e.LlmDefaultSchema, e.LlmDefaultSelectorSchema, e.LlmErrorCodeSchema, e.LlmGenerateBaseInputSchema, e.LlmGenerateErrSchema, e.LlmGenerateOkSchema, e.LlmGenerateResultSchema, e.LlmImageSchema, e.LlmNodeModelSchema, e.LlmProfileKindDescriptorSchema, e.LlmProfileKindSchema, e.LlmProfileSchema, e.LlmRuntimeCompleteInputSchema, e.LlmRuntimeDiskUsageSchema, e.LlmRuntimeNodeSchema, e.LlmRuntimeStatusSchema, e.LlmUsageRollupSchema, e.LlmUsageSchema, e.LocateSegmentResultSchema, e.LocationStatSchema, e.LockControlStatusSchema, e.LockStateSchema, e.LogEntrySchema, e.LogLevelSchema, e.LogStreamEntrySchema, e.LoginMethodContributionSchema, e.LoginStageEnum, a = e.MACRO_LABELS, e.MAX_EXPRESSION_AST_NODES, e.MAX_EXPRESSION_BINDINGS, e.MAX_EXPRESSION_CALL_ARGS, e.MAX_EXPRESSION_EVAL_STEPS, e.MAX_EXPRESSION_SOURCE_LENGTH, e.METHOD_ACCESS_MAP, e.MODEL_FORMATS, e.MOTION_TRIGGER_FEATURE, e.ManagedModelCatalogEntrySchema, e.ManagedModelRefSchema, e.ManagedRuntimeConfigSchema, e.MaskGridDimsSchema, e.MaskGridShapeSchema, e.MaskLineShapeSchema, e.MaskPointSchema, e.MaskPolygonShapeSchema, e.MaskPolygonVerticesSchema, e.MaskRectShapeSchema, e.MaskShapeKindSchema, e.MaskShapeSchema, e.MediaFileSchema, e.MediaPlayerRepeatSchema, e.MediaPlayerStateSchema, e.MediaPlayerStatusSchema, e.MeshPeerSchema, e.MeshStatusSchema, e.MethodAccessSchema, e.ModelCatalogEntrySchema, e.ModelConvertInputSchema, e.ModelConvertMetadataSchema, e.ModelDistributeInputSchema, e.ModelDistributeResultSchema, e.ModelExtraFileSchema, e.ModelFormatEntrySchema, e.ModelFormatsSchema, e.ModelSubstitutionSchema, e.ModelVariantGroupSchema, e.MotionAnalysisResultSchema, e.MotionEventSchema, e.MotionOnMotionChangedDataSchema, e.MotionRegionSchema, e.MotionSourceEnum, e.MotionSourcesSchema, e.MotionStatusSchema, e.MotionTriggerRuntimeStateSchema, e.MotionTriggerStatusSchema, e.MotionZoneOptionsSchema, e.MotionZonePatchSchema, e.MotionZoneRegionSchema, e.MotionZoneStatusSchema, e.MqttBrokerStatusSchema, e.NativeCropBboxSchema, e.NativeCropResultSchema, e.NativeDetectionSchema, e.NativeObjectClassEnum, e.NativeObjectDetectionRuntimeStateSchema, e.NativeObjectDetectionStatusSchema, e.NetworkAccessStatusSchema, e.NetworkAddressSchema, e.NetworkEndpointSchema, e.NotificationActionSchema, e.NotificationFormatSchema, e.NotificationHistoryEntrySchema, e.NotificationRuleSchema, e.NotificationSchema, e.NotifierStatusSchema, e.NumericSensorStatusSchema, e.OPS_LOG_DEFAULT_LIMIT, e.OPS_LOG_RING_DEFAULT_MAX, e.OauthIntegrationDescriptorSchema, e.ObjectEventSchema, e.OpsLogDomainSchema, e.OpsLogEntrySchema, e.OpsLogOpSchema, e.OpsLogQueryInputSchema, e.OpsLogReasonSchema, e.OrchestratorMetricsSchema, e.OsdOverlayKindEnum, e.OsdOverlayPatchSchema, e.OsdOverlaySchema, e.OsdPositionEnum, e.OsdStatusSchema, e.PET_FEEDER_MANUAL_FEED_MAX, e.PET_FEEDER_MANUAL_FEED_MIN, e.PIPELINE_FLOW_CAPABILITY_NAMES, e.PIPELINE_OWNER_CAPABILITY_NAMES, e.PROVIDER_KIND_CAP_NAMES, e.PYTHON_SCRIPT, e.PackageUpdateSchema, e.PackageVersionInfoSchema, e.PasskeyLoginMethodSchema, e.PasskeySummarySchema, e.PcmSampleFormatSchema, e.PerScopeBreakdownSchema, e.PetFeederStatusSchema, e.PickStreamPreferencesSchema, e.PickStreamRequirementsSchema, e.PickedCamStreamSchema, e.PipelineAssignmentSchema, e.PipelineDefaultStepSchema, e.PipelineEngineChoiceSchema, e.PipelineRunResultBridge, e.PipelineStepInputSchema, e.PipelineValidationIssueSchema, e.PipelineValidationResultSchema, e.PlaceholderReasonSchema, e.PolygonPointSchema, e.PowerMeterStatusSchema, e.PresenceStatusSchema, e.PressureSensorStatusSchema, e.PrivacyMaskOptionsSchema, e.PrivacyMaskPatchSchema, e.PrivacyMaskRegionSchema, e.PrivacyMaskShapeSchema, e.PrivacyMaskStatusSchema, e.ProfileRtspEntrySchema, e.ProfileSlotSchema, e.ProfileSlotStatusSchema, e.ProviderStatusSchema, e.PtzAutotrackRuntimeStateSchema, e.PtzAutotrackSettingsSchema, e.PtzAutotrackStatusSchema, e.PtzAutotrackTargetOptionSchema, e.PtzMoveCommandSchema, e.PtzPositionSchema, e.PtzPresetSchema, e.PtzStatusSchema, e.QueryFilterSchema, e.REACHABILITY_FAILURES_TO_OFFLINE, e.REACHABILITY_POLL_INTERVAL_MS, e.REACHABILITY_PROBE_TIMEOUT_MS, e.RECOGNITION_TYPES, e.RESERVED_BINDING_NAMES, e.RUNTIME_DEFAULTS, e.RUNTIME_TO_FORMAT, e.RawStateResultSchema, e.ReadSegmentBytesResultSchema, e.ReadinessRegistry, e.ReadinessTimeoutError, e.RecentTracksPageSchema, e.RecentTracksQueryInput, e.RecordingAvailabilitySchema, e.RecordingBandModeSchema, e.RecordingBandSchema, e.RecordingBandTriggersSchema, e.RecordingConfigSchema, e.RecordingDaysSchema, e.RecordingDeviceUsageSchema, e.RecordingLocationUsageSchema, e.RecordingManifestSchema, e.RecordingModeSchema, e.RecordingRangeSchema, e.RecordingRetentionSchema, e.RecordingRuleSchema, e.RecordingScheduleSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RenderedAsSchema, e.ReportMotionInputSchema, e.RingBuffer, e.RtpSourceSchema, e.RtspRestreamEntrySchema, e.RunnerCameraConfigSchema, e.RunnerCameraDeviceUIFields, e.RunnerFrameSourceSchema, e.RunnerInferenceDeviceSchema, e.RunnerLocalLoadSchema, e.RunnerLocalMetricsSchema, e.SCOPE_PRESETS, e.SCRUB_THUMBNAIL_PRESETS, e.SCRUB_THUMBNAIL_PRESET_LABELS, e.SCRUB_THUMBNAIL_PRESET_ORDER, e.SENSOR_FEATURES, e.SENSOR_MAP, e.SOURCE_INFO_METADATA_KEY, e.STREAM_PROFILE_META, e.STREAM_QUALITY_LABELS, e.SUB_DETECTION_TYPES, e.SYSTEM_CAP_NAMES, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.ScopedTokenSchema, e.ScopedTokenSummarySchema, e.ScoredObjectEventSchema, e.ScriptRunnerStatusSchema, e.ScrubThumbnailPresetSchema, e.SearchResultSchema, e.SendEmailInputSchema, e.SendEmailResultSchema, e.SendResultSchema, e.SensorEventSchema, e.ServerBootModeSchema, e.ServerPackageStatusSchema, e.ServerRollbackInfoSchema, e.ServerUpdateActionResultSchema, e.ServerUpdateCheckResultSchema, e.ServerUpdateStateSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SmokeStatusSchema, e.SmtpStatusSchema, e.SnapshotImageSchema, e.SourceInfoSchema, e.SpatialDetectionSchema, e.SsoBridgeClaimsSchema, e.StartEmbeddedInputSchema, e.StationaryObjectSchema, e.StorageAbortUploadInputSchema, e.StorageBeginDownloadInputSchema, e.StorageBeginDownloadResultSchema, e.StorageBeginUploadInputSchema, e.StorageBeginUploadResultSchema, e.StorageEndDownloadInputSchema, e.StorageFinalizeUploadInputSchema, e.StorageLocationDeclarationSchema, e.StorageLocationRefSchema, e.StorageLocationSchema, e.StorageLocationTypeSchema, e.StorageProviderInfoSchema, e.StorageReadChunkInputSchema, e.StorageTestLocationResultSchema, e.StorageWriteChunkInputSchema, e.StreamCodecSchema, e.StreamFormatSchema, e.StreamNetworkStatsSchema, e.StreamParamsOptionsSchema, e.StreamParamsStatusSchema, e.StreamProfileConfigSchema, e.StreamProfileOptionsSchema, e.StreamProfilePatchSchema, e.StreamProfileSchema, e.StreamSourceEntrySchema, e.StreamSourceSchema, e.SubscribeAudioChunksInputSchema, e.SubscribeAudioChunksResultSchema, e.SubscribeFramesInputSchema, e.SubscribeFramesResultSchema, e.SwitchStatusSchema, e.SystemMetricsSchema, e.SystemMirror, e.TAXONOMY_COLORS, e.TIMEZONES, e.TamperStatusSchema, e.TankStatusSchema, e.TargetKindCapsSchema, e.TargetKindLevelSchema, e.TargetKindSchema, e.TargetSchema, e.TemperatureSensorStatusSchema, e.TestConnectionResultSchema, e.TestResultSchema, e.ToastSchema, e.TokenScopeSchema, e.TopologyNodeSchema, e.TopologyProcessSchema, e.TopologyServiceSchema, e.TrackCascadeCountsSchema, e.TrackEnvelopeSchema, e.TrackProjectionSchema, e.TrackSchema, e.TrackStateSchema, e.TrackZoneFilterSchema, e.TrackedDetectionSchema, e.TurnServerSchema, e.UNIT_TABLE, e.UnifiedBrokerInfoSchema, e.UnitConversionError, e.UpdateIntegrationInputSchema, e.UpdateStatusSchema, e.UpdateUserInputSchema, e.UserRecordSchema, e.UserSummarySchema, e.VacuumControlStatusSchema, e.VacuumStateSchema, e.ValveStateSchema, e.ValveStatusSchema, e.VibrationStatusSchema, e.VideoEncodeSchema, e.WELL_KNOWN_TABS, e.WELL_KNOWN_TAB_MAP, e.WaterHeaterStatusSchema, e.WeatherStatusSchema, e.WebrtcStreamChoiceSchema, e.WebrtcStreamTargetSchema, e.WhiteBalanceModeSchema, e.WidgetHostEnum, e.WidgetLoginMethodSchema, e.WidgetMetadataSchema, e.WidgetRemoteSchema, e.WidgetSizeEnum, e.YAMNET_TO_MACRO, e.ZoneKindEnum, e.ZoneRuleModeEnum, e.ZoneRuleSchema, o = e.ZoneRuleStageEnum, e.ZoneRulesArraySchema, e.ZoneSchema, e.ZoneScopeBreakdownSchema, e.accessoriesCapability, e.accessoryStableId, e.addonPagesCapability, e.addonPagesSourceCapability, e.addonRoutesCapability, e.addonSettingsCapability, e.addonWidgetsCapability, e.addonWidgetsSourceCapability, e.addonsCapability, e.adminUiCapability, e.advancedNotifierCapability, e.airQualitySensorCapability, e.alarmPanelCapability, e.alertsCapability, e.ambientLightSensorCapability, e.applyTransform, e.asBoolean, e.asJsonArray, e.asJsonObject, e.asNumber, e.asString, e.audioAnalysisCapability, e.audioAnalyzerCapability, e.audioCodecCapability, e.audioMetricsCapability, e.authProviderCapability, e.autoAssignProfiles, e.automationControlCapability, e.backupCapability, e.batteryCapability, e.bestLocationMatch, e.binaryCapability, e.bindAddonActions, e.brightnessCapability, e.brokerCapability, e.buildAddonRouteProvider, e.buildEventKindDescriptor, e.buildModelVariantGroups, e.buildStreamParamsConfigSchema, e.buttonCapability, e.cameraCredentialsCapability, e.cameraPipelineConfigCapability, e.cameraStreamsCapability, e.canConvertUnit, e.carbonMonoxideCapability, e.cellsToRects, e.classifyStream, e.classifyStreams, e.climateControlCapability, e.collectHydratedFieldEntries, e.collectHydratedFieldValues, e.colorCapability, e.colorForKind, e.compileExpression, e.compileExpressionSafe, e.connectivityCapability, e.consumablesCapability, e.contactCapability, e.controlCapability, e.convertUnit, e.cosineSimilarity, e.coverCapability, e.createDeviceProxy, e.createDurableState, e.createEvent, e.createExpressionScope, e.createLazyTrpcSource, e.createMirrorSource, e.createRuntimeStateBridge, e.createSliceHandle, e.createSystemProxy, e.customAction, e.customModelRegistryCapability, e.dayNightCapability, e.decoderCapability, e.defaultDeviceFor, e.defineCustomActions, e.describeModelVariant, e.detectionPipelineCapability, e.deviceAdoptionCapability, e.deviceBackendToFormat, e.deviceCustomAction, e.deviceDiscoveryCapability, e.deviceExportCapability, e.deviceManagerCapability, e.deviceMatchesProfile, e.deviceOpsCapability, e.deviceProviderCapability, e.deviceStateCapability, e.deviceStatusCapability, e.doorbellCapability, e.embeddingEncoderCapability, e.emitDownForOwnedCaps, e.emitReadiness, e.encodeProfileFromStreamShape, e.enumSensorCapability, e.enumerateInferenceDevices, e.enumerateItemArrayFields, e.enumerateSchemaFields, e.errMsg, e.evaluateAst, e.evaluateLinkExpression, e.evaluateZoneRules, e.event, e.eventEmitterCapability, e.eventsCapability, e.expandCapMethods, e.extractNestedAddonId, e.extractSourceInfoFromMetadata, e.faceGalleryCapability, e.fanControlCapability, e.featureProbeCapability, e.filesystemBrowseCapability, e.findTimezone, e.floodCapability, e.formatForBackend, e.formatForRuntime, e.gasCapability, e.getAudioMacroClassIds, e.getByPath, e.getCapsByProviderKind, e.getTaxonomyEntry, e.hasMotionTrigger, e.hfModelUrl, e.htmlToText, e.humidifierCapability, e.humiditySensorCapability, e.hydrateSchema, e.imageCapability, e.imageSettingsCapability, e.integrationsCapability, e.intercomCapability, e.isAgentOnlyPlacement, e.isArrayOutputSchema, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDeviceConfigCap, e.isEvent, e.isNode, e.isObjectInput, e.isVoidInput, e.jobKindSchema, e.kebabToCamel, e.lawnMowerControlCapability, e.lifecycleJobSchema, e.lifecycleJobScopeSchema, e.lifecycleJobStateSchema, e.lifecycleTaskSchema, e.llmCapability, e.llmRuntimeCapability, e.localNetworkCapability, e.locationSimilarity, e.lockControlCapability, e.logDestinationCapability, e.loginMethodCapability, e.looseSchema, e.makeProfileBrokerId, e.makeSourceBrokerId, e.mapAudioLabelToMacro, e.markdownToHtmlLite, e.markdownToText, e.maskUrlCredentials, e.mediaPlayerCapability, e.mergeSourceInfo, e.meshNetworkCapability, e.method, e.metricsProviderCapability, e.migrateConfigToBands, e.modelConvertCapability, e.modelDistributorCapability, e.modelFormatForRuntime, e.motionCapability, e.motionDetectionCapability, e.motionTriggerCapability, e.motionZonesCapability, e.mqttBrokerCapability, e.nativeObjectDetectionCapability, e.networkAccessCapability, e.networkQualityCapability, e.nodePin, e.nodesCapability, e.normalizeAddonInitResult, e.normalizeUnit, e.notificationOutputCapability, e.notifierCapability, e.numericSensorCapability, e.oauthIntegrationCapability, e.objectInputDeclaresAddonId, e.osdCapability, e.parseCameraStreamConfig, e.parseExpression, e.parseJsonArray, e.parseJsonObject, e.parseJsonUnknown, e.parseProfileBrokerId, e.parseStreamParamsFormPatch, e.petFeederCapability, e.pickAccessoryControl, e.pickPreferredRtspEntry, e.pipelineAnalyticsCapability, e.pipelineExecutorCapability, e.pipelineOrchestratorCapability, e.pipelineRunnerCapability, e.plateGalleryCapability, e.platformProbeCapability, e.powerMeterCapability, e.prepareNotification, e.presenceCapability, e.pressureSensorCapability, e.privacyMaskCapability, e.procedureAuthKey, e.ptzAutotrackCapability, e.ptzCapability, e.pythonScriptForBackend, e.readNodePin, e.readinessKey, e.rebootCapability, e.recordingCapability, e.recordingExportCapability, e.rectsToCells, e.requiresPython, e.resolveAddonExecution, e.resolveAddonGroup, e.resolveAddonPlacement, e.resolveAddonRuntime, e.resolveCapMount, e.resolveDetectionRuntime, e.resolveDeviceControlKind, e.resolveDeviceProfile, e.resolveFormat, s = e.resolveHydratedFieldValue, e.resolveModelFormat, e.resolveMutate, e.resolveRunnerId, e.resolveScrubThumbnailGeometry, e.resolveVariantModelId, e.runInferenceStep, e.runtimeDevices, e.sceneMonitorCapability, e.scopeKey, e.scoreRuntimes, e.scriptRunnerCapability, e.selectAssignedProfileSlots, e.serverManagementCapability, e.setByPath, e.settingsStoreCapability, e.sleep, e.sleepCancellable, e.smokeCapability, e.smtpProviderCapability, e.snapshotCapability, e.ssoBridgeCapability, e.startReachabilityPoll, e.storageCapability, e.storageEvictableCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.subKindsOf, e.supportedRuntimes, e.switchCapability, e.synthesizeSourceInfo, e.systemCapability, e.tamperCapability, e.taskLogEntrySchema, e.taskPhaseSchema, e.taskTargetSchema, e.temperatureSensorCapability, e.textToHtml, e.toDeviceSummary, e.toExpressionValue, e.toStreamSourceEntry, e.toastCapability, e.tokenize, e.transcodeBody, e.tryConvertUnit, e.turnProviderCapability, e.unitDimension, e.unitsForDimension, e.updateCapability, e.userManagementCapability, e.userPasskeysCapability, e.vacuumControlCapability, e.validateExpressionSource, e.valveCapability, e.vibrationCapability, e.videoclipsCapability, e.viewerUiCapability, e.waterHeaterCapability, e.weatherCapability, e.webrtcClientHintsSchema, e.webrtcSessionCapability, e.wiringAddonHealthSchema, e.wiringHealthSnapshotSchema, e.wiringNodeHealthSchema, e.wiringProbeKindSchema, e.wiringProbeResultSchema, e.zodEntriesToConfigUI, e.zoneAnalyticsCapability, e.zoneRulesCapability, e.zonesCapability, e.default;
20
+ }, l = i.share["default:@camstack/types"];
21
+ l === void 0 ? n.then(() => {
22
+ if (l = i.share["default:@camstack/types"], l === void 0) throw Error("[Module Federation] Shared module @camstack/types was imported before federation bootstrap finished.");
23
+ c(l);
24
+ }) : c(l);
25
+ //#endregion
26
+ export { o as n, s as r, a as t };
@@ -36,7 +36,7 @@ async function r() {
36
36
  }
37
37
  },
38
38
  "@camstack/types": {
39
- version: "1.2.0",
39
+ version: "1.2.2",
40
40
  scope: "default",
41
41
  shareConfig: {
42
42
  singleton: !0,
@@ -45,7 +45,7 @@ async function r() {
45
45
  }
46
46
  },
47
47
  "@camstack/sdk": {
48
- version: "1.2.0",
48
+ version: "1.2.2",
49
49
  scope: "default",
50
50
  shareConfig: {
51
51
  singleton: !0,
@@ -99,7 +99,7 @@ async function r() {
99
99
  }
100
100
  },
101
101
  "@camstack/ui-library": {
102
- version: "1.2.0",
102
+ version: "1.2.2",
103
103
  scope: "default",
104
104
  shareConfig: {
105
105
  singleton: !0,
package/dist/index.js CHANGED
@@ -11609,7 +11609,8 @@ var PipelineStepInputSchema = lazy(() => object({
11609
11609
  modelId: string().optional(),
11610
11610
  enabled: boolean().default(true),
11611
11611
  children: array(PipelineStepInputSchema).optional(),
11612
- settings: record(string(), unknown()).optional()
11612
+ settings: record(string(), unknown()).optional(),
11613
+ jumpDeviceKey: string().optional()
11613
11614
  }));
11614
11615
  var ModelSubstitutionSchema = object({
11615
11616
  addonId: string(),
@@ -12100,10 +12101,40 @@ var NativeCropBboxSchema = object({
12100
12101
  });
12101
12102
  /** Result of a best-effort native-resolution crop (`getNativeCrop`). */
12102
12103
  var NativeCropResultSchema = object({
12103
- /** Packed rgb (24-bit) pixels of the crop. */
12104
- bytes: _instanceof(Uint8Array),
12104
+ /**
12105
+ * Packed rgb (24-bit) pixels of the crop. Present on the DEFAULT (raw) path —
12106
+ * same-node (in-process / UDS) callers get zero-copy RGB and encode locally.
12107
+ * OMITTED when the caller requested `encodeJpeg` (the cross-node compressed
12108
+ * path below), where shipping raw RGB is both an invariant violation and, for
12109
+ * a native full frame (~26 MB at 4K), larger than Moleculer's 10 MB
12110
+ * `maxPacketSize` → the packet is dropped and the call 60s-times-out. That is
12111
+ * the cross-node native-media miss: `bytes` is replaced by `jpeg`.
12112
+ */
12113
+ bytes: _instanceof(Uint8Array).optional(),
12114
+ /**
12115
+ * Base64 JPEG of the crop — the COMPRESSED cross-node payload. The OWNING node
12116
+ * (which holds the native surface) encodes it in-process, so a native 4K frame
12117
+ * ships as ~0.5–2 MB (well under `maxPacketSize`) and NO raw pixels ever cross
12118
+ * a process boundary (CLAUDE.md invariant #21). Present ONLY when the request
12119
+ * set `encodeJpeg: true`; `bytes` is then absent.
12120
+ */
12121
+ jpeg: string().optional(),
12105
12122
  width: number().int().positive(),
12106
- height: number().int().positive()
12123
+ height: number().int().positive(),
12124
+ /**
12125
+ * Which source served this crop, so a quality-sensitive consumer (the native
12126
+ * `keyFrame`) can reject a degraded fallback:
12127
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
12128
+ * quality path).
12129
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
12130
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
12131
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
12132
+ *
12133
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
12134
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
12135
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
12136
+ */
12137
+ tier: _enum(["native", "ram-fullframe"]).optional()
12107
12138
  });
12108
12139
  /** Parent detection context passed to `runDetailSubtree` — the crop's
12109
12140
  * originating detection, in FRAME-space coordinates. Reuses
@@ -12233,6 +12264,20 @@ var RunnerFrameSourceSchema = discriminatedUnion("kind", [object({ kind: literal
12233
12264
  hubHostnameOverride: string().optional()
12234
12265
  })]).describe("Per-camera frame-source mode for the runner (P2c)");
12235
12266
  /**
12267
+ * One ENABLED inference device on the runner's node, as the step-tree
12268
+ * device-jump resolver sees it (phase 1). The orchestrator populates this
12269
+ * roster on the attach payload whenever the camera is elected onto a specific
12270
+ * `deviceKey` and the node has ≥2 enabled devices — it is the candidate set the
12271
+ * runner auto-jumps an enrichment step to when the elected device's format
12272
+ * cannot run that step's model. `weight`/`maxSessions` mirror the balancer's
12273
+ * per-device knobs so the auto choice is weighted-least-loaded.
12274
+ */
12275
+ var RunnerInferenceDeviceSchema = object({
12276
+ deviceKey: string(),
12277
+ weight: number().positive().default(1),
12278
+ maxSessions: number().int().positive().nullable().default(null)
12279
+ });
12280
+ /**
12236
12281
  * Camera assignment payload sent by `addon-pipeline-orchestrator` to a
12237
12282
  * specific runner instance via `attachCamera`. Carries everything the
12238
12283
  * runner needs to subscribe to the local broker and execute inference.
@@ -12350,7 +12395,16 @@ var RunnerCameraConfigSchema = object({
12350
12395
  * omitted ⇒ the runner's default device. The engine itself stays node-local —
12351
12396
  * this only selects WHICH device pool of that node runs the session.
12352
12397
  */
12353
- deviceKey: string().optional()
12398
+ deviceKey: string().optional(),
12399
+ /**
12400
+ * Step-tree device-jump roster (phase 1): the node's ENABLED inference
12401
+ * devices, populated by the orchestrator ONLY when `deviceKey` is set and the
12402
+ * node has ≥2 enabled devices. The runner uses it to AUTO-jump an enrichment
12403
+ * step whose model has no build for the elected device's format onto another
12404
+ * enabled device of the SAME node (weighted-least-loaded). Absent/single-entry
12405
+ * ⇒ no jump possible; the step runs on `deviceKey`.
12406
+ */
12407
+ inferenceDevices: array(RunnerInferenceDeviceSchema).readonly().optional()
12354
12408
  });
12355
12409
  /**
12356
12410
  * Per-device settings UI fields the runner cap owns. Co-located with
@@ -12530,7 +12584,18 @@ var RunnerLocalMetricsSchema = object({
12530
12584
  method(RunnerCameraConfigSchema, object({ success: literal(true) }), { kind: "mutation" }), method(object({ deviceId: number() }), object({ success: literal(true) }), { kind: "mutation" }), method(ReportMotionInputSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), RunnerLocalLoadSchema), method(_void(), RunnerLocalMetricsSchema), method(object({ deviceId: number() }), CameraMetricsSchema.nullable()), method(_void(), array(CameraMetricsWithDeviceIdSchema).readonly()), method(_void(), array(number()).readonly()), method(object({
12531
12585
  handle: FrameHandleSchema,
12532
12586
  bbox: NativeCropBboxSchema,
12533
- maxWidth: number().int().positive().optional()
12587
+ maxWidth: number().int().positive().optional(),
12588
+ /**
12589
+ * When `true`, the runner encodes the resolved crop to JPEG ON THE
12590
+ * OWNING NODE and returns it in `jpeg` (base64) INSTEAD of raw `bytes`.
12591
+ * Callers set this for CROSS-NODE fetches (`handle.nodeId` is a remote
12592
+ * agent) so the compressed payload fits Moleculer's `maxPacketSize` and
12593
+ * no raw pixels cross the process boundary. Same-node callers omit it
12594
+ * and keep the zero-copy raw `bytes` path. Additive + optional: a
12595
+ * pre-encode runner (version skew) ignores it and returns `bytes`, so
12596
+ * the caller falls back to encoding locally.
12597
+ */
12598
+ encodeJpeg: boolean().optional()
12534
12599
  }), NativeCropResultSchema.nullable()), method(object({
12535
12600
  deviceId: number(),
12536
12601
  frameHandle: FrameHandleSchema.optional(),
@@ -15672,7 +15737,8 @@ var LinkedDeviceSchema = object({
15672
15737
  deviceId: number(),
15673
15738
  name: string(),
15674
15739
  location: string().nullable(),
15675
- features: array(string())
15740
+ features: array(string()),
15741
+ producesTrackedEvents: boolean().optional()
15676
15742
  });
15677
15743
  var SavedDeviceRowSchema = object({
15678
15744
  /** Numeric id reserved at allocateDeviceId time. */
@@ -17302,6 +17368,7 @@ var TrackSchema = object({
17302
17368
  deviceId: number(),
17303
17369
  className: string(),
17304
17370
  label: string().optional(),
17371
+ producingDeviceName: string().optional(),
17305
17372
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
17306
17373
  source: TrackSourceSchema.optional(),
17307
17374
  firstSeen: number(),
@@ -17439,7 +17506,8 @@ var MediaFileKindEnum = _enum([
17439
17506
  "fullFrameBoxed",
17440
17507
  "faceCrop",
17441
17508
  "plateCrop",
17442
- "keyFrame"
17509
+ "keyFrame",
17510
+ "keyFrameSmall"
17443
17511
  ]);
17444
17512
  var MediaFileSchema = object({
17445
17513
  key: string(),
@@ -17770,7 +17838,16 @@ var PipelineTemplateSchema = object({
17770
17838
  });
17771
17839
  var DeviceStepConfigSchema = object({
17772
17840
  modelId: string().optional(),
17773
- settings: record(string(), unknown()).optional()
17841
+ settings: record(string(), unknown()).optional(),
17842
+ /**
17843
+ * Step-tree device jump (same-node, phase 1) — OPTIONAL manual override.
17844
+ * When set, this step runs on the named enabled device of the SAME node
17845
+ * (`<backend>:<device>`) instead of the camera's elected device, bypassing
17846
+ * the runtime AUTO-jump. The orchestrator rejects a `jumpDeviceKey` pointing
17847
+ * at a disabled/absent device on that node at save time. Absent ⇒ the runner
17848
+ * auto-jumps only when the effective device's format cannot run the step.
17849
+ */
17850
+ jumpDeviceKey: string().optional()
17774
17851
  });
17775
17852
  var AgentPipelineSettingsSchema = object({
17776
17853
  maxCameras: number().int().nonnegative().nullable().default(null),
@@ -26583,6 +26660,25 @@ function defaultModelIdForDevice(deviceKey) {
26583
26660
  return "yolo26n";
26584
26661
  }
26585
26662
  /**
26663
+ * Step-tree device jump (phase 1): validate every `steps[step].jumpDeviceKey`
26664
+ * manual override in a to-be-saved `inferenceDevices` map. A jump target MUST be
26665
+ * an enabled∧available device on the SAME node and DIFFERENT from the owning
26666
+ * device. `enabledAvailableKeys` is the effective enabled∧available set (from
26667
+ * `mergeInferenceDevices(probe, submitted)`) so an absent/unplugged/disabled
26668
+ * target is rejected honestly (an operator can't route a step onto a dead pool).
26669
+ * Returns the FIRST human-readable error, or `null` when every override is
26670
+ * valid. Pure + deterministic.
26671
+ */
26672
+ function validateJumpTargets(inferenceDevices, enabledAvailableKeys) {
26673
+ for (const [deviceKey, entry] of Object.entries(inferenceDevices)) for (const [stepId, step] of Object.entries(entry.steps ?? {})) {
26674
+ const target = step.jumpDeviceKey;
26675
+ if (target === void 0) continue;
26676
+ if (target === deviceKey) return `step "${stepId}" on "${deviceKey}" has a jumpDeviceKey pointing at its own device`;
26677
+ if (!enabledAvailableKeys.has(target)) return `step "${stepId}" on "${deviceKey}" has a jumpDeviceKey "${target}" that is not an enabled, available device on this node`;
26678
+ }
26679
+ return null;
26680
+ }
26681
+ /**
26586
26682
  * Merge a node's live-probed inference devices with its stored per-device map.
26587
26683
  *
26588
26684
  * The default is **AUTO = all discovered ACCELERATORS enabled** (spec C2,
@@ -26651,6 +26747,23 @@ function eligibleInferenceDeviceWeights(probed, stored) {
26651
26747
  for (const d of mergeInferenceDevices(probed, stored)) if (d.enabled && d.available) out[d.key] = d.weight;
26652
26748
  return out;
26653
26749
  }
26750
+ /**
26751
+ * Step-tree device jump (phase 1): the attach-payload roster of a node's
26752
+ * enabled∧available inference devices with the balancer knobs (`weight`,
26753
+ * `maxSessions`) the runner uses to AUTO-jump an enrichment step off a device
26754
+ * whose format can't run it. Built from the SAME `eligible` (deviceKey→weight)
26755
+ * and `caps` (deviceKey→maxSessions) the dispatcher already computes, so the
26756
+ * roster the runner sees exactly matches the balancer's candidate set. Sorted
26757
+ * by key for determinism. Populated onto `RunnerCameraConfig.inferenceDevices`
26758
+ * ONLY when a `deviceKey` is elected and there are ≥2 entries.
26759
+ */
26760
+ function buildInferenceDeviceRoster(eligible, caps) {
26761
+ return Object.entries(eligible).map(([deviceKey, weight]) => ({
26762
+ deviceKey,
26763
+ weight: weight > 0 ? weight : 1,
26764
+ maxSessions: caps[deviceKey] ?? null
26765
+ })).toSorted((a, b) => a.deviceKey < b.deviceKey ? -1 : a.deviceKey > b.deviceKey ? 1 : 0);
26766
+ }
26654
26767
  //#endregion
26655
26768
  //#region src/orchestrator-types.ts
26656
26769
  var PHASE_MODE_VALUES = new Set([
@@ -28812,7 +28925,12 @@ function buildRunnerConfig(base, overrides) {
28812
28925
  }
28813
28926
  //#endregion
28814
28927
  //#region src/apply-device-provisioning.ts
28815
- /** Merge base then override for one step. Override keys win; undefined = inherit. */
28928
+ /**
28929
+ * Merge base then override for one step. Override keys win; undefined = inherit.
28930
+ * `jumpDeviceKey` (step-tree device jump, phase 1) is a per-(node,device) BASE
28931
+ * concept ONLY — the per-camera override never carries it (spec: per-camera jump
28932
+ * is out of scope), so it is taken from `base` verbatim.
28933
+ */
28816
28934
  function resolveStep(base, override) {
28817
28935
  if (!base && !override) return void 0;
28818
28936
  const modelId = override?.modelId ?? base?.modelId;
@@ -28820,9 +28938,11 @@ function resolveStep(base, override) {
28820
28938
  ...base?.settings,
28821
28939
  ...override?.settings
28822
28940
  } : void 0;
28941
+ const jumpDeviceKey = base?.jumpDeviceKey;
28823
28942
  return {
28824
28943
  ...modelId !== void 0 ? { modelId } : {},
28825
- ...settings ? { settings } : {}
28944
+ ...settings ? { settings } : {},
28945
+ ...jumpDeviceKey !== void 0 ? { jumpDeviceKey } : {}
28826
28946
  };
28827
28947
  }
28828
28948
  /**
@@ -28840,6 +28960,7 @@ function applyDeviceProvisioning(steps, base, override) {
28840
28960
  ...step,
28841
28961
  ...cfg?.modelId !== void 0 ? { modelId: cfg.modelId } : {},
28842
28962
  ...cfg?.settings ? { settings: cfg.settings } : {},
28963
+ ...cfg?.jumpDeviceKey !== void 0 ? { jumpDeviceKey: cfg.jumpDeviceKey } : {},
28843
28964
  ...children !== void 0 ? { children } : {}
28844
28965
  };
28845
28966
  });
@@ -29824,17 +29945,21 @@ var PlacementService = class {
29824
29945
  dispatchScore = decision.score;
29825
29946
  }
29826
29947
  const targetLoad = loads.find((load) => load.nodeId === targetNodeId);
29948
+ const eligibleDevices = await this.deps.getEligibleInferenceDevices(targetNodeId);
29949
+ const deviceCaps = await this.deps.getInferenceDeviceCaps(targetNodeId);
29827
29950
  const deviceKey = pickInferenceDevice({
29828
- eligible: await this.deps.getEligibleInferenceDevices(targetNodeId),
29951
+ eligible: eligibleDevices,
29829
29952
  loads: targetLoad?.devices ?? [],
29830
- caps: await this.deps.getInferenceDeviceCaps(targetNodeId),
29953
+ caps: deviceCaps,
29831
29954
  pinnedDeviceKey: await this.deps.readPipelineDevicePin(runnerConfig.deviceId)
29832
29955
  }) ?? void 0;
29833
29956
  const deviceBase = deviceKey ? await this.deps.settingsStore.buildNodeInferenceDeviceSteps(targetNodeId, deviceKey) : {};
29834
29957
  const deviceOverride = deviceKey ? await this.deps.settingsStore.readCameraDeviceOverride(runnerConfig.deviceId, targetNodeId, deviceKey) : {};
29958
+ const inferenceDevices = deviceKey && Object.keys(eligibleDevices).length >= 2 ? buildInferenceDeviceRoster(eligibleDevices, deviceCaps) : void 0;
29835
29959
  const attachConfig = {
29836
29960
  ...runnerConfig,
29837
29961
  ...deviceKey ? { deviceKey } : {},
29962
+ ...inferenceDevices ? { inferenceDevices } : {},
29838
29963
  ...runnerConfig.steps ? { steps: applyDeviceProvisioning(runnerConfig.steps, deviceBase, deviceOverride) } : {}
29839
29964
  };
29840
29965
  const dispatchGuard = this.deps.ledger.markDispatching(runnerConfig.deviceId);
@@ -31816,7 +31941,8 @@ var StoredAgentAddonConfigSchema = object({
31816
31941
  });
31817
31942
  var StoredDeviceStepConfigSchema = object({
31818
31943
  modelId: string().optional(),
31819
- settings: record(string(), unknown()).readonly().optional()
31944
+ settings: record(string(), unknown()).readonly().optional(),
31945
+ jumpDeviceKey: string().optional()
31820
31946
  });
31821
31947
  var StoredAgentPipelineSettingsSchema = object({
31822
31948
  addonDefaults: record(string(), StoredAgentAddonConfigSchema).optional(),
@@ -33277,10 +33403,12 @@ var SessionDispatchController = class {
33277
33403
  const deviceBase = deviceKey ? await this.deps.settingsStore.buildNodeInferenceDeviceSteps(targetNodeId, deviceKey) : {};
33278
33404
  const deviceOverride = deviceKey ? await this.deps.settingsStore.readCameraDeviceOverride(deviceId, targetNodeId, deviceKey) : {};
33279
33405
  const steps = applyDeviceProvisioning(pipelineConfig.steps, deviceBase, deviceOverride);
33406
+ const inferenceDevices = deviceKey && Object.keys(enabledDevices).length >= 2 ? buildInferenceDeviceRoster(enabledDevices, deviceCaps) : void 0;
33280
33407
  const zones = await this.deps.listZones(deviceId);
33281
33408
  const sessionConfig = {
33282
33409
  deviceId,
33283
33410
  ...deviceKey ? { deviceKey } : {},
33411
+ ...inferenceDevices ? { inferenceDevices } : {},
33284
33412
  motionCooldownMs: config.motionCooldownMs,
33285
33413
  motionFps: config.motionFps,
33286
33414
  detectionFps: config.detectionFps,
@@ -35327,6 +35455,10 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
35327
35455
  * pending so a node newly given more capacity picks up stranded cameras.
35328
35456
  */
35329
35457
  async setAgentInferenceDevices(input) {
35458
+ const { probed } = await this.probeNodeInferenceDevices(input.agentNodeId);
35459
+ const enabledAvailableKeys = new Set(mergeInferenceDevices(probed, input.inferenceDevices).filter((d) => d.enabled && d.available).map((d) => d.key));
35460
+ const jumpError = validateJumpTargets(input.inferenceDevices, enabledAvailableKeys);
35461
+ if (jumpError) throw new Error(`setAgentInferenceDevices: ${jumpError}`);
35330
35462
  const existing = (await this.settingsStore.readAgentSettingsMap())[input.agentNodeId];
35331
35463
  const next = existing ? {
35332
35464
  ...existing,
package/dist/index.mjs CHANGED
@@ -11581,7 +11581,8 @@ var PipelineStepInputSchema = lazy(() => object({
11581
11581
  modelId: string().optional(),
11582
11582
  enabled: boolean().default(true),
11583
11583
  children: array(PipelineStepInputSchema).optional(),
11584
- settings: record(string(), unknown()).optional()
11584
+ settings: record(string(), unknown()).optional(),
11585
+ jumpDeviceKey: string().optional()
11585
11586
  }));
11586
11587
  var ModelSubstitutionSchema = object({
11587
11588
  addonId: string(),
@@ -12072,10 +12073,40 @@ var NativeCropBboxSchema = object({
12072
12073
  });
12073
12074
  /** Result of a best-effort native-resolution crop (`getNativeCrop`). */
12074
12075
  var NativeCropResultSchema = object({
12075
- /** Packed rgb (24-bit) pixels of the crop. */
12076
- bytes: _instanceof(Uint8Array),
12076
+ /**
12077
+ * Packed rgb (24-bit) pixels of the crop. Present on the DEFAULT (raw) path —
12078
+ * same-node (in-process / UDS) callers get zero-copy RGB and encode locally.
12079
+ * OMITTED when the caller requested `encodeJpeg` (the cross-node compressed
12080
+ * path below), where shipping raw RGB is both an invariant violation and, for
12081
+ * a native full frame (~26 MB at 4K), larger than Moleculer's 10 MB
12082
+ * `maxPacketSize` → the packet is dropped and the call 60s-times-out. That is
12083
+ * the cross-node native-media miss: `bytes` is replaced by `jpeg`.
12084
+ */
12085
+ bytes: _instanceof(Uint8Array).optional(),
12086
+ /**
12087
+ * Base64 JPEG of the crop — the COMPRESSED cross-node payload. The OWNING node
12088
+ * (which holds the native surface) encodes it in-process, so a native 4K frame
12089
+ * ships as ~0.5–2 MB (well under `maxPacketSize`) and NO raw pixels ever cross
12090
+ * a process boundary (CLAUDE.md invariant #21). Present ONLY when the request
12091
+ * set `encodeJpeg: true`; `bytes` is then absent.
12092
+ */
12093
+ jpeg: string().optional(),
12077
12094
  width: number().int().positive(),
12078
- height: number().int().positive()
12095
+ height: number().int().positive(),
12096
+ /**
12097
+ * Which source served this crop, so a quality-sensitive consumer (the native
12098
+ * `keyFrame`) can reject a degraded fallback:
12099
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
12100
+ * quality path).
12101
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
12102
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
12103
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
12104
+ *
12105
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
12106
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
12107
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
12108
+ */
12109
+ tier: _enum(["native", "ram-fullframe"]).optional()
12079
12110
  });
12080
12111
  /** Parent detection context passed to `runDetailSubtree` — the crop's
12081
12112
  * originating detection, in FRAME-space coordinates. Reuses
@@ -12205,6 +12236,20 @@ var RunnerFrameSourceSchema = discriminatedUnion("kind", [object({ kind: literal
12205
12236
  hubHostnameOverride: string().optional()
12206
12237
  })]).describe("Per-camera frame-source mode for the runner (P2c)");
12207
12238
  /**
12239
+ * One ENABLED inference device on the runner's node, as the step-tree
12240
+ * device-jump resolver sees it (phase 1). The orchestrator populates this
12241
+ * roster on the attach payload whenever the camera is elected onto a specific
12242
+ * `deviceKey` and the node has ≥2 enabled devices — it is the candidate set the
12243
+ * runner auto-jumps an enrichment step to when the elected device's format
12244
+ * cannot run that step's model. `weight`/`maxSessions` mirror the balancer's
12245
+ * per-device knobs so the auto choice is weighted-least-loaded.
12246
+ */
12247
+ var RunnerInferenceDeviceSchema = object({
12248
+ deviceKey: string(),
12249
+ weight: number().positive().default(1),
12250
+ maxSessions: number().int().positive().nullable().default(null)
12251
+ });
12252
+ /**
12208
12253
  * Camera assignment payload sent by `addon-pipeline-orchestrator` to a
12209
12254
  * specific runner instance via `attachCamera`. Carries everything the
12210
12255
  * runner needs to subscribe to the local broker and execute inference.
@@ -12322,7 +12367,16 @@ var RunnerCameraConfigSchema = object({
12322
12367
  * omitted ⇒ the runner's default device. The engine itself stays node-local —
12323
12368
  * this only selects WHICH device pool of that node runs the session.
12324
12369
  */
12325
- deviceKey: string().optional()
12370
+ deviceKey: string().optional(),
12371
+ /**
12372
+ * Step-tree device-jump roster (phase 1): the node's ENABLED inference
12373
+ * devices, populated by the orchestrator ONLY when `deviceKey` is set and the
12374
+ * node has ≥2 enabled devices. The runner uses it to AUTO-jump an enrichment
12375
+ * step whose model has no build for the elected device's format onto another
12376
+ * enabled device of the SAME node (weighted-least-loaded). Absent/single-entry
12377
+ * ⇒ no jump possible; the step runs on `deviceKey`.
12378
+ */
12379
+ inferenceDevices: array(RunnerInferenceDeviceSchema).readonly().optional()
12326
12380
  });
12327
12381
  /**
12328
12382
  * Per-device settings UI fields the runner cap owns. Co-located with
@@ -12502,7 +12556,18 @@ var RunnerLocalMetricsSchema = object({
12502
12556
  method(RunnerCameraConfigSchema, object({ success: literal(true) }), { kind: "mutation" }), method(object({ deviceId: number() }), object({ success: literal(true) }), { kind: "mutation" }), method(ReportMotionInputSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), RunnerLocalLoadSchema), method(_void(), RunnerLocalMetricsSchema), method(object({ deviceId: number() }), CameraMetricsSchema.nullable()), method(_void(), array(CameraMetricsWithDeviceIdSchema).readonly()), method(_void(), array(number()).readonly()), method(object({
12503
12557
  handle: FrameHandleSchema,
12504
12558
  bbox: NativeCropBboxSchema,
12505
- maxWidth: number().int().positive().optional()
12559
+ maxWidth: number().int().positive().optional(),
12560
+ /**
12561
+ * When `true`, the runner encodes the resolved crop to JPEG ON THE
12562
+ * OWNING NODE and returns it in `jpeg` (base64) INSTEAD of raw `bytes`.
12563
+ * Callers set this for CROSS-NODE fetches (`handle.nodeId` is a remote
12564
+ * agent) so the compressed payload fits Moleculer's `maxPacketSize` and
12565
+ * no raw pixels cross the process boundary. Same-node callers omit it
12566
+ * and keep the zero-copy raw `bytes` path. Additive + optional: a
12567
+ * pre-encode runner (version skew) ignores it and returns `bytes`, so
12568
+ * the caller falls back to encoding locally.
12569
+ */
12570
+ encodeJpeg: boolean().optional()
12506
12571
  }), NativeCropResultSchema.nullable()), method(object({
12507
12572
  deviceId: number(),
12508
12573
  frameHandle: FrameHandleSchema.optional(),
@@ -15644,7 +15709,8 @@ var LinkedDeviceSchema = object({
15644
15709
  deviceId: number(),
15645
15710
  name: string(),
15646
15711
  location: string().nullable(),
15647
- features: array(string())
15712
+ features: array(string()),
15713
+ producesTrackedEvents: boolean().optional()
15648
15714
  });
15649
15715
  var SavedDeviceRowSchema = object({
15650
15716
  /** Numeric id reserved at allocateDeviceId time. */
@@ -17274,6 +17340,7 @@ var TrackSchema = object({
17274
17340
  deviceId: number(),
17275
17341
  className: string(),
17276
17342
  label: string().optional(),
17343
+ producingDeviceName: string().optional(),
17277
17344
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
17278
17345
  source: TrackSourceSchema.optional(),
17279
17346
  firstSeen: number(),
@@ -17411,7 +17478,8 @@ var MediaFileKindEnum = _enum([
17411
17478
  "fullFrameBoxed",
17412
17479
  "faceCrop",
17413
17480
  "plateCrop",
17414
- "keyFrame"
17481
+ "keyFrame",
17482
+ "keyFrameSmall"
17415
17483
  ]);
17416
17484
  var MediaFileSchema = object({
17417
17485
  key: string(),
@@ -17742,7 +17810,16 @@ var PipelineTemplateSchema = object({
17742
17810
  });
17743
17811
  var DeviceStepConfigSchema = object({
17744
17812
  modelId: string().optional(),
17745
- settings: record(string(), unknown()).optional()
17813
+ settings: record(string(), unknown()).optional(),
17814
+ /**
17815
+ * Step-tree device jump (same-node, phase 1) — OPTIONAL manual override.
17816
+ * When set, this step runs on the named enabled device of the SAME node
17817
+ * (`<backend>:<device>`) instead of the camera's elected device, bypassing
17818
+ * the runtime AUTO-jump. The orchestrator rejects a `jumpDeviceKey` pointing
17819
+ * at a disabled/absent device on that node at save time. Absent ⇒ the runner
17820
+ * auto-jumps only when the effective device's format cannot run the step.
17821
+ */
17822
+ jumpDeviceKey: string().optional()
17746
17823
  });
17747
17824
  var AgentPipelineSettingsSchema = object({
17748
17825
  maxCameras: number().int().nonnegative().nullable().default(null),
@@ -26555,6 +26632,25 @@ function defaultModelIdForDevice(deviceKey) {
26555
26632
  return "yolo26n";
26556
26633
  }
26557
26634
  /**
26635
+ * Step-tree device jump (phase 1): validate every `steps[step].jumpDeviceKey`
26636
+ * manual override in a to-be-saved `inferenceDevices` map. A jump target MUST be
26637
+ * an enabled∧available device on the SAME node and DIFFERENT from the owning
26638
+ * device. `enabledAvailableKeys` is the effective enabled∧available set (from
26639
+ * `mergeInferenceDevices(probe, submitted)`) so an absent/unplugged/disabled
26640
+ * target is rejected honestly (an operator can't route a step onto a dead pool).
26641
+ * Returns the FIRST human-readable error, or `null` when every override is
26642
+ * valid. Pure + deterministic.
26643
+ */
26644
+ function validateJumpTargets(inferenceDevices, enabledAvailableKeys) {
26645
+ for (const [deviceKey, entry] of Object.entries(inferenceDevices)) for (const [stepId, step] of Object.entries(entry.steps ?? {})) {
26646
+ const target = step.jumpDeviceKey;
26647
+ if (target === void 0) continue;
26648
+ if (target === deviceKey) return `step "${stepId}" on "${deviceKey}" has a jumpDeviceKey pointing at its own device`;
26649
+ if (!enabledAvailableKeys.has(target)) return `step "${stepId}" on "${deviceKey}" has a jumpDeviceKey "${target}" that is not an enabled, available device on this node`;
26650
+ }
26651
+ return null;
26652
+ }
26653
+ /**
26558
26654
  * Merge a node's live-probed inference devices with its stored per-device map.
26559
26655
  *
26560
26656
  * The default is **AUTO = all discovered ACCELERATORS enabled** (spec C2,
@@ -26623,6 +26719,23 @@ function eligibleInferenceDeviceWeights(probed, stored) {
26623
26719
  for (const d of mergeInferenceDevices(probed, stored)) if (d.enabled && d.available) out[d.key] = d.weight;
26624
26720
  return out;
26625
26721
  }
26722
+ /**
26723
+ * Step-tree device jump (phase 1): the attach-payload roster of a node's
26724
+ * enabled∧available inference devices with the balancer knobs (`weight`,
26725
+ * `maxSessions`) the runner uses to AUTO-jump an enrichment step off a device
26726
+ * whose format can't run it. Built from the SAME `eligible` (deviceKey→weight)
26727
+ * and `caps` (deviceKey→maxSessions) the dispatcher already computes, so the
26728
+ * roster the runner sees exactly matches the balancer's candidate set. Sorted
26729
+ * by key for determinism. Populated onto `RunnerCameraConfig.inferenceDevices`
26730
+ * ONLY when a `deviceKey` is elected and there are ≥2 entries.
26731
+ */
26732
+ function buildInferenceDeviceRoster(eligible, caps) {
26733
+ return Object.entries(eligible).map(([deviceKey, weight]) => ({
26734
+ deviceKey,
26735
+ weight: weight > 0 ? weight : 1,
26736
+ maxSessions: caps[deviceKey] ?? null
26737
+ })).toSorted((a, b) => a.deviceKey < b.deviceKey ? -1 : a.deviceKey > b.deviceKey ? 1 : 0);
26738
+ }
26626
26739
  //#endregion
26627
26740
  //#region src/orchestrator-types.ts
26628
26741
  var PHASE_MODE_VALUES = new Set([
@@ -28784,7 +28897,12 @@ function buildRunnerConfig(base, overrides) {
28784
28897
  }
28785
28898
  //#endregion
28786
28899
  //#region src/apply-device-provisioning.ts
28787
- /** Merge base then override for one step. Override keys win; undefined = inherit. */
28900
+ /**
28901
+ * Merge base then override for one step. Override keys win; undefined = inherit.
28902
+ * `jumpDeviceKey` (step-tree device jump, phase 1) is a per-(node,device) BASE
28903
+ * concept ONLY — the per-camera override never carries it (spec: per-camera jump
28904
+ * is out of scope), so it is taken from `base` verbatim.
28905
+ */
28788
28906
  function resolveStep(base, override) {
28789
28907
  if (!base && !override) return void 0;
28790
28908
  const modelId = override?.modelId ?? base?.modelId;
@@ -28792,9 +28910,11 @@ function resolveStep(base, override) {
28792
28910
  ...base?.settings,
28793
28911
  ...override?.settings
28794
28912
  } : void 0;
28913
+ const jumpDeviceKey = base?.jumpDeviceKey;
28795
28914
  return {
28796
28915
  ...modelId !== void 0 ? { modelId } : {},
28797
- ...settings ? { settings } : {}
28916
+ ...settings ? { settings } : {},
28917
+ ...jumpDeviceKey !== void 0 ? { jumpDeviceKey } : {}
28798
28918
  };
28799
28919
  }
28800
28920
  /**
@@ -28812,6 +28932,7 @@ function applyDeviceProvisioning(steps, base, override) {
28812
28932
  ...step,
28813
28933
  ...cfg?.modelId !== void 0 ? { modelId: cfg.modelId } : {},
28814
28934
  ...cfg?.settings ? { settings: cfg.settings } : {},
28935
+ ...cfg?.jumpDeviceKey !== void 0 ? { jumpDeviceKey: cfg.jumpDeviceKey } : {},
28815
28936
  ...children !== void 0 ? { children } : {}
28816
28937
  };
28817
28938
  });
@@ -29796,17 +29917,21 @@ var PlacementService = class {
29796
29917
  dispatchScore = decision.score;
29797
29918
  }
29798
29919
  const targetLoad = loads.find((load) => load.nodeId === targetNodeId);
29920
+ const eligibleDevices = await this.deps.getEligibleInferenceDevices(targetNodeId);
29921
+ const deviceCaps = await this.deps.getInferenceDeviceCaps(targetNodeId);
29799
29922
  const deviceKey = pickInferenceDevice({
29800
- eligible: await this.deps.getEligibleInferenceDevices(targetNodeId),
29923
+ eligible: eligibleDevices,
29801
29924
  loads: targetLoad?.devices ?? [],
29802
- caps: await this.deps.getInferenceDeviceCaps(targetNodeId),
29925
+ caps: deviceCaps,
29803
29926
  pinnedDeviceKey: await this.deps.readPipelineDevicePin(runnerConfig.deviceId)
29804
29927
  }) ?? void 0;
29805
29928
  const deviceBase = deviceKey ? await this.deps.settingsStore.buildNodeInferenceDeviceSteps(targetNodeId, deviceKey) : {};
29806
29929
  const deviceOverride = deviceKey ? await this.deps.settingsStore.readCameraDeviceOverride(runnerConfig.deviceId, targetNodeId, deviceKey) : {};
29930
+ const inferenceDevices = deviceKey && Object.keys(eligibleDevices).length >= 2 ? buildInferenceDeviceRoster(eligibleDevices, deviceCaps) : void 0;
29807
29931
  const attachConfig = {
29808
29932
  ...runnerConfig,
29809
29933
  ...deviceKey ? { deviceKey } : {},
29934
+ ...inferenceDevices ? { inferenceDevices } : {},
29810
29935
  ...runnerConfig.steps ? { steps: applyDeviceProvisioning(runnerConfig.steps, deviceBase, deviceOverride) } : {}
29811
29936
  };
29812
29937
  const dispatchGuard = this.deps.ledger.markDispatching(runnerConfig.deviceId);
@@ -31788,7 +31913,8 @@ var StoredAgentAddonConfigSchema = object({
31788
31913
  });
31789
31914
  var StoredDeviceStepConfigSchema = object({
31790
31915
  modelId: string().optional(),
31791
- settings: record(string(), unknown()).readonly().optional()
31916
+ settings: record(string(), unknown()).readonly().optional(),
31917
+ jumpDeviceKey: string().optional()
31792
31918
  });
31793
31919
  var StoredAgentPipelineSettingsSchema = object({
31794
31920
  addonDefaults: record(string(), StoredAgentAddonConfigSchema).optional(),
@@ -33249,10 +33375,12 @@ var SessionDispatchController = class {
33249
33375
  const deviceBase = deviceKey ? await this.deps.settingsStore.buildNodeInferenceDeviceSteps(targetNodeId, deviceKey) : {};
33250
33376
  const deviceOverride = deviceKey ? await this.deps.settingsStore.readCameraDeviceOverride(deviceId, targetNodeId, deviceKey) : {};
33251
33377
  const steps = applyDeviceProvisioning(pipelineConfig.steps, deviceBase, deviceOverride);
33378
+ const inferenceDevices = deviceKey && Object.keys(enabledDevices).length >= 2 ? buildInferenceDeviceRoster(enabledDevices, deviceCaps) : void 0;
33252
33379
  const zones = await this.deps.listZones(deviceId);
33253
33380
  const sessionConfig = {
33254
33381
  deviceId,
33255
33382
  ...deviceKey ? { deviceKey } : {},
33383
+ ...inferenceDevices ? { inferenceDevices } : {},
33256
33384
  motionCooldownMs: config.motionCooldownMs,
33257
33385
  motionFps: config.motionFps,
33258
33386
  detectionFps: config.detectionFps,
@@ -35299,6 +35427,10 @@ var PipelineOrchestratorAddon = class PipelineOrchestratorAddon extends BaseAddo
35299
35427
  * pending so a node newly given more capacity picks up stranded cameras.
35300
35428
  */
35301
35429
  async setAgentInferenceDevices(input) {
35430
+ const { probed } = await this.probeNodeInferenceDevices(input.agentNodeId);
35431
+ const enabledAvailableKeys = new Set(mergeInferenceDevices(probed, input.inferenceDevices).filter((d) => d.enabled && d.available).map((d) => d.key));
35432
+ const jumpError = validateJumpTargets(input.inferenceDevices, enabledAvailableKeys);
35433
+ if (jumpError) throw new Error(`setAgentInferenceDevices: ${jumpError}`);
35302
35434
  const existing = (await this.settingsStore.readAgentSettingsMap())[input.agentNodeId];
35303
35435
  const next = existing ? {
35304
35436
  ...existing,
@@ -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-CD0yiDQw.mjs")).catch((e) => {
33
+ return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_orchestrator_widgets-C48YqQ5m.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.2.0",
3
+ "version": "1.2.2",
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",
@@ -1,26 +0,0 @@
1
- //#region \0virtual:mf:__mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js
2
- var e = "__mf_init__virtual:mf:__mfe_internal__addon_pipeline_orchestrator_widgets__mf_v__runtimeInit__mf_v__.js__", t = globalThis[e];
3
- if (!t) {
4
- let n, r, i = new Promise((e, t) => {
5
- n = e, r = t;
6
- });
7
- t = globalThis[e] = {
8
- initPromise: i,
9
- initResolve: n,
10
- initReject: r
11
- };
12
- }
13
- var n = t.initPromise, r = "__mf_module_cache__";
14
- globalThis[r] ||= {
15
- share: {},
16
- remote: {}
17
- }, globalThis[r].share ||= {}, globalThis[r].remote ||= {};
18
- var i = globalThis[r], a, o, s, c = (e) => {
19
- e.ACCESSORY_LABEL, e.ALL_CAPABILITY_DEFINITIONS, e.APPLE_SA_TO_MACRO, e.AUDIO_BACKEND_CHOICES, e.AUDIO_MACRO_LABELS, e.AccessoriesStatusSchema, e.AccessoryKind, e.AddBrokerInputSchema, e.AddonAutoUpdateSchema, e.AddonListItemSchema, e.AddonPageDeclarationSchema, e.AddonPageInfoSchema, e.AdoptionAdoptInputSchema, e.AdoptionAdoptResultSchema, e.AdoptionFilterSchema, e.AdoptionGetCandidateInputSchema, e.AdoptionListCandidatesInputSchema, e.AdoptionListCandidatesOutputSchema, e.AdoptionReleaseInputSchema, e.AdoptionStatusSchema, e.AgentLoadSummarySchema, e.AirQualitySensorStatusSchema, e.AlarmArmModeSchema, e.AlarmPanelStatusSchema, e.AlarmStateSchema, e.AlertSchema, e.AlertSeveritySchema, e.AlertSourceSchema, e.AlertStatusSchema, e.AmbientLightSensorStatusSchema, e.ApiKeyRecordSchema, e.ApiKeySummarySchema, e.ArchiveEntrySchema, e.ArchiveManifestSchema, e.AttachmentMediaTypeSchema, e.AttachmentSchema, e.AudioAnalysisResultSchema, e.AudioAnalysisSettingsSchema, e.AudioChunkInputSchema, e.AudioClassSummarySchema, e.AudioClassificationLabelSchema, e.AudioClassificationResultSchema, e.AudioCodecInfoSchema, e.AudioDecodeSessionConfigSchema, e.AudioEncodeSchema, e.AudioEncodeSessionConfigSchema, e.AudioEncodedChunkSchema, e.AudioEventSchema, e.AudioLevelSchema, e.AudioMetricsHistoryPointSchema, e.AudioMetricsHistorySchema, e.AudioMetricsSnapshotSchema, e.AudioPcmChunkSchema, e.AuthResultSchema, e.AutoUpdateSettingsSchema, e.AutomationControlStatusSchema, e.AvailableIntegrationTypeSchema, e.BACKEND_TO_FORMAT, e.BATTERY_DEVICE_PROFILE, e.BacklightModeSchema, e.BackupDestinationInfoSchema, e.BackupEntrySchema, e.BaseAddon, e.BaseDevice, e.BaseDeviceProvider, e.BatteryStatusSchema, e.BinaryStatusSchema, e.BoundingBoxSchema, e.BrightnessStatusSchema, e.BrokerAddInputSchema, e.BrokerAudioClientSchema, e.BrokerClientsSchema, e.BrokerConnectionDetailsSchema, e.BrokerConsumerAttributionSchema, e.BrokerConsumerKindSchema, e.BrokerDecodedClientSchema, e.BrokerEncodedClientSchema, e.BrokerGetStateInputSchema, e.BrokerInfoSchema, e.BrokerProviderInfoSchema, e.BrokerPublishInputSchema, e.BrokerRegistryStatusSchema, e.BrokerRtspClientSchema, e.BrokerStatsSchema, e.BrokerStatusEnum, e.BrokerStatusSchema, e.BrokerSubscribeInputSchema, e.BrokerSubscribeResultSchema, e.BrokerTestConnectionResultSchema, e.BrokerUnsubscribeInputSchema, e.CAM_PROFILE_ORDER, e.CAPABILITY_NAMES, e.CAPABILITY_ROUTER_KEYS, e.CAP_NAMES_WITH_STATUS, e.CAP_NODE_PIN_CONTEXT_KEY, e.CAP_PROVIDER_KIND_MAP, e.COCO_80_LABELS, e.COCO_TO_MACRO, e.CamProfileSchema, e.CamStreamDescriptorSchema, e.CamStreamKindSchema, e.CamStreamResolutionSchema, e.CameraAssignmentStatusSchema, e.CameraAudioStatusSchema, e.CameraBrokerProfileSchema, e.CameraBrokerStatusSchema, e.CameraCredentialsSchema, e.CameraCredentialsStatusSchema, e.CameraDecoderShmSchema, e.CameraDecoderStatusSchema, e.CameraDetectionPhaseSchema, e.CameraDetectionProvisioningSchema, e.CameraDetectionProvisioningStateSchema, e.CameraDetectionStatusSchema, e.CameraMetricsSchema, e.CameraMetricsWithDeviceIdSchema, e.CameraMotionStatusSchema, e.CameraRecordingModeSchema, e.CameraRecordingStatusSchema, e.CameraSourceStatusSchema, e.CameraSourceStreamSchema, e.CameraStatusSchema, e.CameraStreamSchema, e.CandidateQueryFilterSchema, e.CapScopeSchema, e.CapabilityBindingsSchema, e.CarbonMonoxideStatusSchema, e.ChargingStatus, e.ClientNetworkStatsSchema, e.ClimateControlStatusSchema, e.ClipPlaybackSchema, e.ClipSchema, e.ClusterAddonNodeDeploymentSchema, e.ClusterAddonStatusEntrySchema, e.CollectionColumnSchema, e.CollectionIndexSchema, e.ColorStatusSchema, e.ConfigEntrySchema, e.ConfigSectionWithValuesSchema, e.ConfigTabDeclarationSchema, e.ConnectivityStatusSchema, e.ConsumableItemSchema, e.ConsumablesStatusSchema, e.ContactStatusSchema, e.ControlKindSchema, e.ControlStatusSchema, e.ConvertArtifactSchema, e.ConvertResultSchema, e.ConvertTargetSchema, e.CoverStateSchema, e.CoverStatusSchema, e.CreateApiKeyInputSchema, e.CreateApiKeyResultSchema, e.CreateIntegrationInputSchema, e.CreateScopedTokenInputSchema, e.CreateScopedTokenResultSchema, e.CreateUserInputSchema, e.CustomActionInputSchema, e.CustomModelDescriptorSchema, e.DATAPLANE_SECRET_HEADER, e.DEFAULT_ADDON_PLACEMENT, e.DEFAULT_AUDIO_ANALYZER_CONFIG, e.DEFAULT_DECODER_HWACCEL_CONFIG, e.DEFAULT_EVENT_COLOR, e.DEFAULT_FEATURES, e.DEFAULT_RETENTION, e.DEFAULT_SCRUB_THUMBNAIL_PRESET, e.DEVICE_BACKEND_TO_FORMAT, e.DEVICE_CAP_NAMES, e.DEVICE_PROFILES, e.DEVICE_SETTINGS_CONTRIBUTION_METHODS, e.DEVICE_STATUS_METHOD, e.DEVICE_TYPE_CONTROL_KIND, e.DEVICE_TYPE_INFO, e.DayNightModeSchema, e.DayNightOptionsSchema, e.DayNightSettingsPatchSchema, e.DayNightStatusSchema, e.DecodedAudioChunkSchema, e.DecodedFrameSchema, e.DecoderSessionConfigSchema, e.DecoderStatsSchema, e.DeleteIntegrationResultSchema, e.DetectionSourceSchema, e.DeviceCodeSeveritySchema, e.DeviceConfig, e.DeviceDiscoveryStatusSchema, e.DeviceExportExposeInputSchema, e.DeviceExportStatusSchema, e.DeviceExportUnexposeInputSchema, e.DeviceFeature, e.DeviceInfoSchema, e.DeviceLinkModeSchema, e.DeviceNetworkStatsSchema, e.DeviceRole, e.DeviceRuntimeState, e.DeviceStatusSchema, e.DeviceType, e.DiscoveredChildDeviceSchema, e.DiscoveredChildStatusSchema, e.DiscoveredDeviceSchema, e.DiscoveredTargetSchema, e.DisposerChain, e.DoorbellPressEventSchema, e.DoorbellStatusSchema, e.EVENTFUL_CAP_NAMES, e.EVENT_KIND_BY_CAP, e.EVENT_PAD_MS, e.EVENT_TAXONOMY, e.EXPRESSION_BUILTINS, e.EXPRESSION_BUILTIN_NAMES, e.EXPRESSION_COMPILE_CACHE_CAPACITY, e.EXPRESSION_IDENTIFIER_RE, e.EXPRESSION_INJECTED_NOW, e.ElementConfigStore, e.EmbeddingInfoSchema, e.EmbeddingResultSchema, e.EncodeProfileSchema, e.EncodedPacketSchema, e.EnrichedWidgetMetadataSchema, e.EnumSensorDateTimeFormatSchema, e.EnumSensorStatusSchema, e.EventCategory, e.EventEmitterStatusSchema, e.EventFireSchema, e.EventItemSchema, e.EventKindCategorySchema, e.EventKindDescriptorSchema, e.EventKindIconSchema, e.EventKindSchema, e.EventSourceType, e.ExportDownloadSchema, e.ExportOptionsSchema, e.ExportRecordSchema, e.ExportSetupFieldSchema, e.ExportSetupSchema, e.ExportSpeedSchema, e.ExportStateSchema, e.ExportTimelapseSchema, e.ExposedDeviceSchema, e.ExposureModeSchema, e.ExpressionEvalError, e.ExpressionParseError, e.FanControlStatusSchema, e.FanDirectionSchema, e.FeatureManifestSchema, e.FeatureProbeStatusSchema, e.FloodStatusSchema, e.FrameHandleFormatSchema, e.FrameHandleSchema, e.FrameInputSchema, e.GasStatusSchema, e.GetStreamWithCodecInputSchema, e.GlobalMetricsSchema, e.HF_BASE_URL, e.HF_REPO, e.HWACCEL_OPTIONS, e.HealthStatusSchema, e.HistoryPointSchema, e.HistoryResolutionEnum, e.HumidifierStatusSchema, e.HumiditySensorStatusSchema, e.HvacModeSchema, e.ImageRotateSchema, e.ImageSettingsOptionsSchema, e.ImageSettingsPatchSchema, e.ImageSettingsStatusSchema, e.ImageStatusSchema, e.IngestOwnerSchema, e.InstalledPackageSchema, e.IntegrationLiteSchema, e.IntegrationWithStateSchema, e.IntercomAbilitySchema, e.IntercomStatusSchema, e.KNOWN_CAP_NAMES, e.KeyEventSchema, e.LabelDefinitionSchema, e.LawnMowerActivitySchema, e.LawnMowerControlStatusSchema, e.LinkedDeviceSchema, e.LlmDefaultSchema, e.LlmDefaultSelectorSchema, e.LlmErrorCodeSchema, e.LlmGenerateBaseInputSchema, e.LlmGenerateErrSchema, e.LlmGenerateOkSchema, e.LlmGenerateResultSchema, e.LlmImageSchema, e.LlmNodeModelSchema, e.LlmProfileKindDescriptorSchema, e.LlmProfileKindSchema, e.LlmProfileSchema, e.LlmRuntimeCompleteInputSchema, e.LlmRuntimeDiskUsageSchema, e.LlmRuntimeNodeSchema, e.LlmRuntimeStatusSchema, e.LlmUsageRollupSchema, e.LlmUsageSchema, e.LocateSegmentResultSchema, e.LocationStatSchema, e.LockControlStatusSchema, e.LockStateSchema, e.LogEntrySchema, e.LogLevelSchema, e.LogStreamEntrySchema, e.LoginMethodContributionSchema, e.LoginStageEnum, a = e.MACRO_LABELS, e.MAX_EXPRESSION_AST_NODES, e.MAX_EXPRESSION_BINDINGS, e.MAX_EXPRESSION_CALL_ARGS, e.MAX_EXPRESSION_EVAL_STEPS, e.MAX_EXPRESSION_SOURCE_LENGTH, e.METHOD_ACCESS_MAP, e.MODEL_FORMATS, e.MOTION_TRIGGER_FEATURE, e.ManagedModelCatalogEntrySchema, e.ManagedModelRefSchema, e.ManagedRuntimeConfigSchema, e.MaskGridDimsSchema, e.MaskGridShapeSchema, e.MaskLineShapeSchema, e.MaskPointSchema, e.MaskPolygonShapeSchema, e.MaskPolygonVerticesSchema, e.MaskRectShapeSchema, e.MaskShapeKindSchema, e.MaskShapeSchema, e.MediaFileSchema, e.MediaPlayerRepeatSchema, e.MediaPlayerStateSchema, e.MediaPlayerStatusSchema, e.MeshPeerSchema, e.MeshStatusSchema, e.MethodAccessSchema, e.ModelCatalogEntrySchema, e.ModelConvertInputSchema, e.ModelConvertMetadataSchema, e.ModelDistributeInputSchema, e.ModelDistributeResultSchema, e.ModelExtraFileSchema, e.ModelFormatEntrySchema, e.ModelFormatsSchema, e.ModelSubstitutionSchema, e.ModelVariantGroupSchema, e.MotionAnalysisResultSchema, e.MotionEventSchema, e.MotionOnMotionChangedDataSchema, e.MotionRegionSchema, e.MotionSourceEnum, e.MotionSourcesSchema, e.MotionStatusSchema, e.MotionTriggerRuntimeStateSchema, e.MotionTriggerStatusSchema, e.MotionZoneOptionsSchema, e.MotionZonePatchSchema, e.MotionZoneRegionSchema, e.MotionZoneStatusSchema, e.MqttBrokerStatusSchema, e.NativeDetectionSchema, e.NativeObjectClassEnum, e.NativeObjectDetectionRuntimeStateSchema, e.NativeObjectDetectionStatusSchema, e.NetworkAccessStatusSchema, e.NetworkAddressSchema, e.NetworkEndpointSchema, e.NotificationActionSchema, e.NotificationFormatSchema, e.NotificationHistoryEntrySchema, e.NotificationRuleSchema, e.NotificationSchema, e.NotifierStatusSchema, e.NumericSensorStatusSchema, e.OPS_LOG_DEFAULT_LIMIT, e.OPS_LOG_RING_DEFAULT_MAX, e.OauthIntegrationDescriptorSchema, e.ObjectEventSchema, e.OpsLogDomainSchema, e.OpsLogEntrySchema, e.OpsLogOpSchema, e.OpsLogQueryInputSchema, e.OpsLogReasonSchema, e.OrchestratorMetricsSchema, e.OsdOverlayKindEnum, e.OsdOverlayPatchSchema, e.OsdOverlaySchema, e.OsdPositionEnum, e.OsdStatusSchema, e.PET_FEEDER_MANUAL_FEED_MAX, e.PET_FEEDER_MANUAL_FEED_MIN, e.PIPELINE_FLOW_CAPABILITY_NAMES, e.PIPELINE_OWNER_CAPABILITY_NAMES, e.PROVIDER_KIND_CAP_NAMES, e.PYTHON_SCRIPT, e.PackageUpdateSchema, e.PackageVersionInfoSchema, e.PasskeyLoginMethodSchema, e.PasskeySummarySchema, e.PcmSampleFormatSchema, e.PerScopeBreakdownSchema, e.PetFeederStatusSchema, e.PickStreamPreferencesSchema, e.PickStreamRequirementsSchema, e.PickedCamStreamSchema, e.PipelineAssignmentSchema, e.PipelineDefaultStepSchema, e.PipelineEngineChoiceSchema, e.PipelineRunResultBridge, e.PipelineStepInputSchema, e.PipelineValidationIssueSchema, e.PipelineValidationResultSchema, e.PlaceholderReasonSchema, e.PolygonPointSchema, e.PowerMeterStatusSchema, e.PresenceStatusSchema, e.PressureSensorStatusSchema, e.PrivacyMaskOptionsSchema, e.PrivacyMaskPatchSchema, e.PrivacyMaskRegionSchema, e.PrivacyMaskShapeSchema, e.PrivacyMaskStatusSchema, e.ProfileRtspEntrySchema, e.ProfileSlotSchema, e.ProfileSlotStatusSchema, e.ProviderStatusSchema, e.PtzAutotrackRuntimeStateSchema, e.PtzAutotrackSettingsSchema, e.PtzAutotrackStatusSchema, e.PtzAutotrackTargetOptionSchema, e.PtzMoveCommandSchema, e.PtzPositionSchema, e.PtzPresetSchema, e.PtzStatusSchema, e.QueryFilterSchema, e.REACHABILITY_FAILURES_TO_OFFLINE, e.REACHABILITY_POLL_INTERVAL_MS, e.REACHABILITY_PROBE_TIMEOUT_MS, e.RECOGNITION_TYPES, e.RESERVED_BINDING_NAMES, e.RUNTIME_DEFAULTS, e.RUNTIME_TO_FORMAT, e.RawStateResultSchema, e.ReadSegmentBytesResultSchema, e.ReadinessRegistry, e.ReadinessTimeoutError, e.RecentTracksPageSchema, e.RecentTracksQueryInput, e.RecordingAvailabilitySchema, e.RecordingBandModeSchema, e.RecordingBandSchema, e.RecordingBandTriggersSchema, e.RecordingConfigSchema, e.RecordingDaysSchema, e.RecordingDeviceUsageSchema, e.RecordingLocationUsageSchema, e.RecordingManifestSchema, e.RecordingModeSchema, e.RecordingRangeSchema, e.RecordingRetentionSchema, e.RecordingRuleSchema, e.RecordingScheduleSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RenderedAsSchema, e.ReportMotionInputSchema, e.RingBuffer, e.RtpSourceSchema, e.RtspRestreamEntrySchema, e.RunnerCameraConfigSchema, e.RunnerCameraDeviceUIFields, e.RunnerFrameSourceSchema, e.RunnerLocalLoadSchema, e.RunnerLocalMetricsSchema, e.SCOPE_PRESETS, e.SCRUB_THUMBNAIL_PRESETS, e.SCRUB_THUMBNAIL_PRESET_LABELS, e.SCRUB_THUMBNAIL_PRESET_ORDER, e.SENSOR_FEATURES, e.SENSOR_MAP, e.SOURCE_INFO_METADATA_KEY, e.STREAM_PROFILE_META, e.STREAM_QUALITY_LABELS, e.SUB_DETECTION_TYPES, e.SYSTEM_CAP_NAMES, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.ScopedTokenSchema, e.ScopedTokenSummarySchema, e.ScoredObjectEventSchema, e.ScriptRunnerStatusSchema, e.ScrubThumbnailPresetSchema, e.SearchResultSchema, e.SendEmailInputSchema, e.SendEmailResultSchema, e.SendResultSchema, e.SensorEventSchema, e.ServerBootModeSchema, e.ServerPackageStatusSchema, e.ServerRollbackInfoSchema, e.ServerUpdateActionResultSchema, e.ServerUpdateCheckResultSchema, e.ServerUpdateStateSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SmokeStatusSchema, e.SmtpStatusSchema, e.SnapshotImageSchema, e.SourceInfoSchema, e.SpatialDetectionSchema, e.SsoBridgeClaimsSchema, e.StartEmbeddedInputSchema, e.StationaryObjectSchema, e.StorageAbortUploadInputSchema, e.StorageBeginDownloadInputSchema, e.StorageBeginDownloadResultSchema, e.StorageBeginUploadInputSchema, e.StorageBeginUploadResultSchema, e.StorageEndDownloadInputSchema, e.StorageFinalizeUploadInputSchema, e.StorageLocationDeclarationSchema, e.StorageLocationRefSchema, e.StorageLocationSchema, e.StorageLocationTypeSchema, e.StorageProviderInfoSchema, e.StorageReadChunkInputSchema, e.StorageTestLocationResultSchema, e.StorageWriteChunkInputSchema, e.StreamCodecSchema, e.StreamFormatSchema, e.StreamNetworkStatsSchema, e.StreamParamsOptionsSchema, e.StreamParamsStatusSchema, e.StreamProfileConfigSchema, e.StreamProfileOptionsSchema, e.StreamProfilePatchSchema, e.StreamProfileSchema, e.StreamSourceEntrySchema, e.StreamSourceSchema, e.SubscribeAudioChunksInputSchema, e.SubscribeAudioChunksResultSchema, e.SubscribeFramesInputSchema, e.SubscribeFramesResultSchema, e.SwitchStatusSchema, e.SystemMetricsSchema, e.SystemMirror, e.TAXONOMY_COLORS, e.TIMEZONES, e.TamperStatusSchema, e.TankStatusSchema, e.TargetKindCapsSchema, e.TargetKindLevelSchema, e.TargetKindSchema, e.TargetSchema, e.TemperatureSensorStatusSchema, e.TestConnectionResultSchema, e.TestResultSchema, e.ToastSchema, e.TokenScopeSchema, e.TopologyNodeSchema, e.TopologyProcessSchema, e.TopologyServiceSchema, e.TrackCascadeCountsSchema, e.TrackEnvelopeSchema, e.TrackProjectionSchema, e.TrackSchema, e.TrackStateSchema, e.TrackZoneFilterSchema, e.TrackedDetectionSchema, e.TurnServerSchema, e.UNIT_TABLE, e.UnifiedBrokerInfoSchema, e.UnitConversionError, e.UpdateIntegrationInputSchema, e.UpdateStatusSchema, e.UpdateUserInputSchema, e.UserRecordSchema, e.UserSummarySchema, e.VacuumControlStatusSchema, e.VacuumStateSchema, e.ValveStateSchema, e.ValveStatusSchema, e.VibrationStatusSchema, e.VideoEncodeSchema, e.WELL_KNOWN_TABS, e.WELL_KNOWN_TAB_MAP, e.WaterHeaterStatusSchema, e.WeatherStatusSchema, e.WebrtcStreamChoiceSchema, e.WebrtcStreamTargetSchema, e.WhiteBalanceModeSchema, e.WidgetHostEnum, e.WidgetLoginMethodSchema, e.WidgetMetadataSchema, e.WidgetRemoteSchema, e.WidgetSizeEnum, e.YAMNET_TO_MACRO, e.ZoneKindEnum, e.ZoneRuleModeEnum, e.ZoneRuleSchema, o = e.ZoneRuleStageEnum, e.ZoneRulesArraySchema, e.ZoneSchema, e.ZoneScopeBreakdownSchema, e.accessoriesCapability, e.accessoryStableId, e.addonPagesCapability, e.addonPagesSourceCapability, e.addonRoutesCapability, e.addonSettingsCapability, e.addonWidgetsCapability, e.addonWidgetsSourceCapability, e.addonsCapability, e.adminUiCapability, e.advancedNotifierCapability, e.airQualitySensorCapability, e.alarmPanelCapability, e.alertsCapability, e.ambientLightSensorCapability, e.applyTransform, e.asBoolean, e.asJsonArray, e.asJsonObject, e.asNumber, e.asString, e.audioAnalysisCapability, e.audioAnalyzerCapability, e.audioCodecCapability, e.audioMetricsCapability, e.authProviderCapability, e.autoAssignProfiles, e.automationControlCapability, e.backupCapability, e.batteryCapability, e.bestLocationMatch, e.binaryCapability, e.bindAddonActions, e.brightnessCapability, e.brokerCapability, e.buildAddonRouteProvider, e.buildEventKindDescriptor, e.buildModelVariantGroups, e.buildStreamParamsConfigSchema, e.buttonCapability, e.cameraCredentialsCapability, e.cameraPipelineConfigCapability, e.cameraStreamsCapability, e.canConvertUnit, e.carbonMonoxideCapability, e.cellsToRects, e.classifyStream, e.classifyStreams, e.climateControlCapability, e.collectHydratedFieldEntries, e.collectHydratedFieldValues, e.colorCapability, e.colorForKind, e.compileExpression, e.compileExpressionSafe, e.connectivityCapability, e.consumablesCapability, e.contactCapability, e.controlCapability, e.convertUnit, e.cosineSimilarity, e.coverCapability, e.createDeviceProxy, e.createDurableState, e.createEvent, e.createExpressionScope, e.createLazyTrpcSource, e.createMirrorSource, e.createRuntimeStateBridge, e.createSliceHandle, e.createSystemProxy, e.customAction, e.customModelRegistryCapability, e.dayNightCapability, e.decoderCapability, e.defaultDeviceFor, e.defineCustomActions, e.describeModelVariant, e.detectionPipelineCapability, e.deviceAdoptionCapability, e.deviceBackendToFormat, e.deviceCustomAction, e.deviceDiscoveryCapability, e.deviceExportCapability, e.deviceManagerCapability, e.deviceMatchesProfile, e.deviceOpsCapability, e.deviceProviderCapability, e.deviceStateCapability, e.deviceStatusCapability, e.doorbellCapability, e.embeddingEncoderCapability, e.emitDownForOwnedCaps, e.emitReadiness, e.encodeProfileFromStreamShape, e.enumSensorCapability, e.enumerateInferenceDevices, e.enumerateItemArrayFields, e.enumerateSchemaFields, e.errMsg, e.evaluateAst, e.evaluateLinkExpression, e.evaluateZoneRules, e.event, e.eventEmitterCapability, e.eventsCapability, e.expandCapMethods, e.extractNestedAddonId, e.extractSourceInfoFromMetadata, e.faceGalleryCapability, e.fanControlCapability, e.featureProbeCapability, e.filesystemBrowseCapability, e.findTimezone, e.floodCapability, e.formatForBackend, e.formatForRuntime, e.gasCapability, e.getAudioMacroClassIds, e.getByPath, e.getCapsByProviderKind, e.getTaxonomyEntry, e.hasMotionTrigger, e.hfModelUrl, e.htmlToText, e.humidifierCapability, e.humiditySensorCapability, e.hydrateSchema, e.imageCapability, e.imageSettingsCapability, e.integrationsCapability, e.intercomCapability, e.isAgentOnlyPlacement, e.isArrayOutputSchema, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDeviceConfigCap, e.isEvent, e.isNode, e.isObjectInput, e.isVoidInput, e.jobKindSchema, e.kebabToCamel, e.lawnMowerControlCapability, e.lifecycleJobSchema, e.lifecycleJobScopeSchema, e.lifecycleJobStateSchema, e.lifecycleTaskSchema, e.llmCapability, e.llmRuntimeCapability, e.localNetworkCapability, e.locationSimilarity, e.lockControlCapability, e.logDestinationCapability, e.loginMethodCapability, e.looseSchema, e.makeProfileBrokerId, e.makeSourceBrokerId, e.mapAudioLabelToMacro, e.markdownToHtmlLite, e.markdownToText, e.maskUrlCredentials, e.mediaPlayerCapability, e.mergeSourceInfo, e.meshNetworkCapability, e.method, e.metricsProviderCapability, e.migrateConfigToBands, e.modelConvertCapability, e.modelDistributorCapability, e.modelFormatForRuntime, e.motionCapability, e.motionDetectionCapability, e.motionTriggerCapability, e.motionZonesCapability, e.mqttBrokerCapability, e.nativeObjectDetectionCapability, e.networkAccessCapability, e.networkQualityCapability, e.nodePin, e.nodesCapability, e.normalizeAddonInitResult, e.normalizeUnit, e.notificationOutputCapability, e.notifierCapability, e.numericSensorCapability, e.oauthIntegrationCapability, e.objectInputDeclaresAddonId, e.osdCapability, e.parseCameraStreamConfig, e.parseExpression, e.parseJsonArray, e.parseJsonObject, e.parseJsonUnknown, e.parseProfileBrokerId, e.parseStreamParamsFormPatch, e.petFeederCapability, e.pickAccessoryControl, e.pickPreferredRtspEntry, e.pipelineAnalyticsCapability, e.pipelineExecutorCapability, e.pipelineOrchestratorCapability, e.pipelineRunnerCapability, e.plateGalleryCapability, e.platformProbeCapability, e.powerMeterCapability, e.prepareNotification, e.presenceCapability, e.pressureSensorCapability, e.privacyMaskCapability, e.procedureAuthKey, e.ptzAutotrackCapability, e.ptzCapability, e.pythonScriptForBackend, e.readNodePin, e.readinessKey, e.rebootCapability, e.recordingCapability, e.recordingExportCapability, e.rectsToCells, e.requiresPython, e.resolveAddonExecution, e.resolveAddonGroup, e.resolveAddonPlacement, e.resolveAddonRuntime, e.resolveCapMount, e.resolveDetectionRuntime, e.resolveDeviceControlKind, e.resolveDeviceProfile, e.resolveFormat, s = e.resolveHydratedFieldValue, e.resolveModelFormat, e.resolveMutate, e.resolveRunnerId, e.resolveScrubThumbnailGeometry, e.resolveVariantModelId, e.runInferenceStep, e.runtimeDevices, e.sceneMonitorCapability, e.scopeKey, e.scoreRuntimes, e.scriptRunnerCapability, e.selectAssignedProfileSlots, e.serverManagementCapability, e.setByPath, e.settingsStoreCapability, e.sleep, e.sleepCancellable, e.smokeCapability, e.smtpProviderCapability, e.snapshotCapability, e.ssoBridgeCapability, e.startReachabilityPoll, e.storageCapability, e.storageEvictableCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.subKindsOf, e.supportedRuntimes, e.switchCapability, e.synthesizeSourceInfo, e.systemCapability, e.tamperCapability, e.taskLogEntrySchema, e.taskPhaseSchema, e.taskTargetSchema, e.temperatureSensorCapability, e.textToHtml, e.toDeviceSummary, e.toExpressionValue, e.toStreamSourceEntry, e.toastCapability, e.tokenize, e.transcodeBody, e.tryConvertUnit, e.turnProviderCapability, e.unitDimension, e.unitsForDimension, e.updateCapability, e.userManagementCapability, e.userPasskeysCapability, e.vacuumControlCapability, e.validateExpressionSource, e.valveCapability, e.vibrationCapability, e.videoclipsCapability, e.viewerUiCapability, e.waterHeaterCapability, e.weatherCapability, e.webrtcClientHintsSchema, e.webrtcSessionCapability, e.wiringAddonHealthSchema, e.wiringHealthSnapshotSchema, e.wiringNodeHealthSchema, e.wiringProbeKindSchema, e.wiringProbeResultSchema, e.zodEntriesToConfigUI, e.zoneAnalyticsCapability, e.zoneRulesCapability, e.zonesCapability, e.default;
20
- }, l = i.share["default:@camstack/types"];
21
- l === void 0 ? n.then(() => {
22
- if (l = i.share["default:@camstack/types"], l === void 0) throw Error("[Module Federation] Shared module @camstack/types was imported before federation bootstrap finished.");
23
- c(l);
24
- }) : c(l);
25
- //#endregion
26
- export { o as n, s as r, a as t };