@camstack/types 1.2.442 → 1.2.444
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/CHANGELOG.md +25 -0
- package/dist/addon.d.ts +5 -1
- package/dist/addon.js +21 -5
- package/dist/addon.mjs +17 -6
- package/dist/automation/export-entities.d.ts +98 -0
- package/dist/capabilities/capability-definition.d.ts +1 -1
- package/dist/capabilities/composer.cap.d.ts +34 -0
- package/dist/capabilities/consumables.cap.d.ts +4 -5
- package/dist/capabilities/core-blocks.cap.d.ts +244 -0
- package/dist/capabilities/device-export.cap.d.ts +111 -1
- package/dist/capabilities/index.d.ts +8 -3
- package/dist/capabilities/metrics-provider.cap.d.ts +16 -16
- package/dist/capabilities/node-removal-hook.cap.d.ts +67 -0
- package/dist/capabilities/nodes.cap.d.ts +2 -2
- package/dist/capabilities/pet-fountain.cap.d.ts +138 -0
- package/dist/capabilities/pipeline-executor.cap.d.ts +6 -22
- package/dist/capabilities/pipeline-orchestrator.cap.d.ts +3 -4
- package/dist/capabilities/pipeline-runner.cap.d.ts +2 -2
- package/dist/capabilities/pipeline-step-input.d.ts +33 -0
- package/dist/client.js +817 -798
- package/dist/client.mjs +817 -798
- package/dist/composition/composition-items.d.ts +3 -3
- package/dist/composition/composition-report.d.ts +17 -0
- package/dist/composition/composition.d.ts +68 -1
- package/dist/composition/index.d.ts +2 -0
- package/dist/composition/presets/pet-fountain.d.ts +36 -0
- package/dist/composition/validate-forward.d.ts +31 -0
- package/dist/{composition-C0dlyG9U.js → composition-CO6Sak-s.js} +49 -5
- package/dist/{composition-bIBW5_13.mjs → composition-kSuOifuG.mjs} +32 -6
- package/dist/device/cap-vocabulary/entries/appliances.d.ts +1 -1
- package/dist/device/device-control-resolution.d.ts +1 -1
- package/dist/device/device-type.d.ts +4 -0
- package/dist/{err-msg-BCdlR2Li.mjs → err-msg-DWXWc0Di.mjs} +4 -0
- package/dist/{err-msg-COHgq7Mb.js → err-msg-EJhsFHqa.js} +4 -0
- package/dist/generated/addon-api.d.ts +149 -32
- package/dist/generated/addon-cap-facts.d.ts +1 -1
- package/dist/generated/cap-status-types.d.ts +3 -1
- package/dist/generated/capability-router-map.d.ts +10 -4
- package/dist/generated/collection-array-methods.d.ts +2 -2
- package/dist/generated/customize-catalog.d.ts +1 -1
- package/dist/generated/device-local-state.d.ts +3 -0
- package/dist/generated/device-proxy.d.ts +3 -0
- package/dist/generated/device-scoped-caps.d.ts +1 -1
- package/dist/generated/history-catalog.d.ts +1 -1
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/generated/method-device-selectors.d.ts +1 -1
- package/dist/generated/runtime-state-durability.d.ts +1 -1
- package/dist/generated/system-proxy.d.ts +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1616 -607
- package/dist/index.mjs +1581 -596
- package/dist/interfaces/agent.d.ts +6 -2
- package/dist/interfaces/event-bus.d.ts +1 -1
- package/dist/node.js +2 -2
- package/dist/node.mjs +2 -2
- package/dist/{sleep-DJws6ho7.mjs → sleep-6eG9C8Xl.mjs} +224 -72
- package/dist/{sleep-BpwNJ1Su.js → sleep-UXDHn-oJ.js} +247 -71
- package/dist/types/agent-pipeline-settings.d.ts +2 -2
- package/dist/utils/oauth-landing.d.ts +1 -1
- package/dist/vendor-login-proxy/flow-trace.d.ts +29 -0
- package/package.json +1 -1
|
@@ -57,6 +57,63 @@ declare const ExposeInputSchema: z.ZodObject<{
|
|
|
57
57
|
declare const UnexposeInputSchema: z.ZodObject<{
|
|
58
58
|
deviceId: z.ZodString;
|
|
59
59
|
}, z.core.$strip>;
|
|
60
|
+
/**
|
|
61
|
+
* What an exporter may expose besides devices (D968). An action and a
|
|
62
|
+
* notification target are LIST ENTRIES, never devices (D954): they enter an
|
|
63
|
+
* exporter's own selection, not the device registry.
|
|
64
|
+
*/
|
|
65
|
+
declare const ExportEntityKindSchema: z.ZodEnum<{
|
|
66
|
+
action: "action";
|
|
67
|
+
device: "device";
|
|
68
|
+
notifier: "notifier";
|
|
69
|
+
}>;
|
|
70
|
+
declare const ExportEntityRefSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
71
|
+
kind: z.ZodLiteral<"device">;
|
|
72
|
+
deviceId: z.ZodString;
|
|
73
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
74
|
+
kind: z.ZodLiteral<"action">;
|
|
75
|
+
actionId: z.ZodString;
|
|
76
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
77
|
+
kind: z.ZodLiteral<"notifier">;
|
|
78
|
+
targetId: z.ZodString;
|
|
79
|
+
}, z.core.$strip>], "kind">;
|
|
80
|
+
declare const ExposedEntitySchema: z.ZodObject<{
|
|
81
|
+
entity: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
82
|
+
kind: z.ZodLiteral<"device">;
|
|
83
|
+
deviceId: z.ZodString;
|
|
84
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
85
|
+
kind: z.ZodLiteral<"action">;
|
|
86
|
+
actionId: z.ZodString;
|
|
87
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
88
|
+
kind: z.ZodLiteral<"notifier">;
|
|
89
|
+
targetId: z.ZodString;
|
|
90
|
+
}, z.core.$strip>], "kind">;
|
|
91
|
+
exposedAs: z.ZodOptional<z.ZodString>;
|
|
92
|
+
}, z.core.$strip>;
|
|
93
|
+
declare const ExposeEntityInputSchema: z.ZodObject<{
|
|
94
|
+
entity: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
95
|
+
kind: z.ZodLiteral<"device">;
|
|
96
|
+
deviceId: z.ZodString;
|
|
97
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
98
|
+
kind: z.ZodLiteral<"action">;
|
|
99
|
+
actionId: z.ZodString;
|
|
100
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
101
|
+
kind: z.ZodLiteral<"notifier">;
|
|
102
|
+
targetId: z.ZodString;
|
|
103
|
+
}, z.core.$strip>], "kind">;
|
|
104
|
+
}, z.core.$strip>;
|
|
105
|
+
declare const UnexposeEntityInputSchema: z.ZodObject<{
|
|
106
|
+
entity: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
107
|
+
kind: z.ZodLiteral<"device">;
|
|
108
|
+
deviceId: z.ZodString;
|
|
109
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
110
|
+
kind: z.ZodLiteral<"action">;
|
|
111
|
+
actionId: z.ZodString;
|
|
112
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
113
|
+
kind: z.ZodLiteral<"notifier">;
|
|
114
|
+
targetId: z.ZodString;
|
|
115
|
+
}, z.core.$strip>], "kind">;
|
|
116
|
+
}, z.core.$strip>;
|
|
60
117
|
export declare const deviceExportCapability: {
|
|
61
118
|
readonly name: 'device-export';
|
|
62
119
|
readonly scope: 'system';
|
|
@@ -124,7 +181,60 @@ export declare const deviceExportCapability: {
|
|
|
124
181
|
readonly unexposeDevice: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
125
182
|
deviceId: z.ZodString;
|
|
126
183
|
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
184
|
+
readonly listSupportedEntityKinds: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodArray<z.ZodEnum<{
|
|
185
|
+
action: "action";
|
|
186
|
+
device: "device";
|
|
187
|
+
notifier: "notifier";
|
|
188
|
+
}>>, import("./capability-definition.js").CapabilityMethodKind> & {
|
|
189
|
+
readonly providerOptional: true;
|
|
190
|
+
};
|
|
191
|
+
readonly listExposedEntities: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodArray<z.ZodObject<{
|
|
192
|
+
entity: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
193
|
+
kind: z.ZodLiteral<"device">;
|
|
194
|
+
deviceId: z.ZodString;
|
|
195
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
196
|
+
kind: z.ZodLiteral<"action">;
|
|
197
|
+
actionId: z.ZodString;
|
|
198
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
199
|
+
kind: z.ZodLiteral<"notifier">;
|
|
200
|
+
targetId: z.ZodString;
|
|
201
|
+
}, z.core.$strip>], "kind">;
|
|
202
|
+
exposedAs: z.ZodOptional<z.ZodString>;
|
|
203
|
+
}, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind> & {
|
|
204
|
+
readonly providerOptional: true;
|
|
205
|
+
};
|
|
206
|
+
readonly exposeEntity: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
207
|
+
entity: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
208
|
+
kind: z.ZodLiteral<"device">;
|
|
209
|
+
deviceId: z.ZodString;
|
|
210
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
211
|
+
kind: z.ZodLiteral<"action">;
|
|
212
|
+
actionId: z.ZodString;
|
|
213
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
214
|
+
kind: z.ZodLiteral<"notifier">;
|
|
215
|
+
targetId: z.ZodString;
|
|
216
|
+
}, z.core.$strip>], "kind">;
|
|
217
|
+
}, z.core.$strip>, z.ZodVoid, "mutation"> & {
|
|
218
|
+
readonly providerOptional: true;
|
|
219
|
+
};
|
|
220
|
+
readonly unexposeEntity: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
221
|
+
entity: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
222
|
+
kind: z.ZodLiteral<"device">;
|
|
223
|
+
deviceId: z.ZodString;
|
|
224
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
225
|
+
kind: z.ZodLiteral<"action">;
|
|
226
|
+
actionId: z.ZodString;
|
|
227
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
228
|
+
kind: z.ZodLiteral<"notifier">;
|
|
229
|
+
targetId: z.ZodString;
|
|
230
|
+
}, z.core.$strip>], "kind">;
|
|
231
|
+
}, z.core.$strip>, z.ZodVoid, "mutation"> & {
|
|
232
|
+
readonly providerOptional: true;
|
|
233
|
+
};
|
|
127
234
|
};
|
|
128
235
|
};
|
|
129
236
|
export type IDeviceExportProvider = InferProvider<typeof deviceExportCapability>;
|
|
130
|
-
export { DeviceExportStatusSchema, ExportSetupSchema, ExportSetupFieldSchema, ExposedDeviceSchema, ExposeInputSchema, UnexposeInputSchema, };
|
|
237
|
+
export { DeviceExportStatusSchema, ExportSetupSchema, ExportSetupFieldSchema, ExposedDeviceSchema, ExposeInputSchema, UnexposeInputSchema, ExportEntityKindSchema, ExportEntityRefSchema, ExposedEntitySchema, ExposeEntityInputSchema, UnexposeEntityInputSchema, };
|
|
238
|
+
export type ExportEntityKind = z.infer<typeof ExportEntityKindSchema>;
|
|
239
|
+
export type ExportEntityRef = z.infer<typeof ExportEntityRefSchema>;
|
|
240
|
+
export type ExposedEntity = z.infer<typeof ExposedEntitySchema>;
|
|
@@ -60,8 +60,8 @@ export { detectionPipelineCapability, type IDetectionPipelineProvider, } from '.
|
|
|
60
60
|
export { type AdminLinkTarget, AdminLinkTargetEnum, type DeviceAdminLink, DeviceAdminLinkSchema, deviceAdminLinkCapability, type IDeviceAdminLinkProvider, } from './device-admin-link.cap.js';
|
|
61
61
|
export { buildDeviceAdminUrl, type DeviceAdminBase, type DeviceAdminBaseRefusal, type DeviceAdminBaseResult, type DeviceAdminScheme, type DeviceAdminUrlParts, type DeviceAdminUrlRefusal, type DeviceAdminUrlResult, parseAdminBase, } from './device-admin-link-url.js';
|
|
62
62
|
export { AdoptInputSchema as AdoptionAdoptInputSchema, type AdoptionFilter, AdoptionFilterSchema, type AdoptionStatus, AdoptionStatusSchema, AdoptResultSchema as AdoptionAdoptResultSchema, CandidateQueryFilterSchema, deviceAdoptionCapability, GetCandidateInputSchema as AdoptionGetCandidateInputSchema, type IDeviceAdoptionProvider, ListCandidatesInputSchema as AdoptionListCandidatesInputSchema, ListCandidatesOutputSchema as AdoptionListCandidatesOutputSchema, ReleaseInputSchema as AdoptionReleaseInputSchema, } from './device-adoption.cap.js';
|
|
63
|
-
export type { IDeviceExportProvider } from './device-export.cap.js';
|
|
64
|
-
export { DeviceExportStatusSchema, deviceExportCapability, ExportSetupFieldSchema, ExportSetupSchema, ExposedDeviceSchema, ExposeInputSchema as DeviceExportExposeInputSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, } from './device-export.cap.js';
|
|
63
|
+
export type { ExportEntityKind, ExportEntityRef, ExposedEntity, IDeviceExportProvider, } from './device-export.cap.js';
|
|
64
|
+
export { DeviceExportStatusSchema, deviceExportCapability, ExportEntityKindSchema, ExportEntityRefSchema, ExposedEntitySchema, ExposeEntityInputSchema, UnexposeEntityInputSchema, ExportSetupFieldSchema, ExportSetupSchema, ExposedDeviceSchema, ExposeInputSchema as DeviceExportExposeInputSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, } from './device-export.cap.js';
|
|
65
65
|
export type { ExtensionCandidate, ExtensionCandidates, ExtensionSetResult, ExtensionSetSlotInput, ExtensionSlotActivation, ExtensionSlotRefInput, ExtensionSlotRow, ExtensionSlotSource, ExtensionSlotState, ExtensionSlotUnreachable, ExtensionSource, ExtensionSourceAvailability, ExtensionSourceHealth, IDeviceExtensionProvider, } from './device-extension.cap.js';
|
|
66
66
|
export { deviceExtensionCapability, EXTENSION_SLOT_LISTING_METHOD, EXTENSION_SLOT_REF_SEPARATOR, ExtensionCandidateSchema, ExtensionCandidatesSchema, ExtensionSetResultSchema, ExtensionSetSlotInputSchema, ExtensionSlotActivationSchema, ExtensionSlotRefInputSchema, ExtensionSlotRowSchema, ExtensionSlotSourceSchema, ExtensionSlotStateSchema, ExtensionSlotUnreachableSchema, ExtensionSourceAvailabilitySchema, ExtensionSourceHealthSchema, ExtensionSourceSchema, unreachableExtensionSlotRow, } from './device-extension.cap.js';
|
|
67
67
|
export type { CleanupDeletedDevicesResult, DeviceInfo, DeviceManagerApplyInitialMetaInput, DeviceTombstone, OrphanDeviceData, } from './device-manager.cap.js';
|
|
@@ -70,6 +70,8 @@ export { DiscoveredDeviceSchema, deviceProviderCapability, ProviderStatusSchema,
|
|
|
70
70
|
export { type ClaimOutcome, ClaimOutcomeSchema, type ClaimsListing, ClaimsListingSchema, deviceStateCapability, type FieldClaim, type FieldClaimMode, FieldClaimModeSchema, FieldClaimSchema, } from './device-state.cap.js';
|
|
71
71
|
export type { EmbeddingFailedModel, EmbeddingFailedRequirement, EmbeddingModelFailure, EmbeddingRefusal, EmbeddingRefusalCode, EmbeddingTower, IEmbeddingEncoderProvider, } from './embedding-encoder.cap.js';
|
|
72
72
|
export { EMBEDDING_MODEL_FAILED, EMBEDDING_REQUIREMENTS_FAILED, EMBEDDING_REQUIREMENTS_UNAVAILABLE, EmbeddingFailedModelSchema, EmbeddingFailedRequirementSchema, EmbeddingInfoSchema, EmbeddingRefusalCodeSchema, EmbeddingResultSchema, EmbeddingTowerSchema, embeddingEncoderCapability, embeddingModelFailedError, embeddingModelFailedOf, embeddingRefusalOf, embeddingRequirementsFailedError, embeddingRequirementsUnavailableError, isEmbeddingModelFailed, } from './embedding-encoder.cap.js';
|
|
73
|
+
export type { INodeRemovalHookProvider, NodeRemovedInput, NodeRemovedResult, } from './node-removal-hook.cap.js';
|
|
74
|
+
export { NodeRemovedInputSchema, NodeRemovedResultSchema, nodeRemovalHookCapability, } from './node-removal-hook.cap.js';
|
|
73
75
|
export type { DeviceDataEntry, DeviceRemovedInput, DeviceRemovedResult, IDeviceRemovalHookProvider, } from './device-removal-hook.cap.js';
|
|
74
76
|
export { DeviceDataEntrySchema, DeviceRemovedInputSchema, DeviceRemovedResultSchema, deviceRemovalHookCapability, } from './device-removal-hook.cap.js';
|
|
75
77
|
export type { FailureContribution, IFailureContributionProvider, } from './failure-contribution.cap.js';
|
|
@@ -220,6 +222,7 @@ export { type INumericSensorProvider, type NumericSensorStatus, NumericSensorSta
|
|
|
220
222
|
export { type IOsdProvider, type OsdOverlay, type OsdOverlayKind, OsdOverlayKindEnum, OsdOverlayPatchSchema, OsdOverlaySchema, type OsdPosition, OsdPositionEnum, type OsdStatus, OsdStatusSchema, osdCapability, } from './osd.cap.js';
|
|
221
223
|
export { type IOsdManagerProvider, type OsdNamedTemplate, OsdNamedTemplateSchema, type OsdRenderOutcome, OsdRenderOutcomeEnum, type OsdRenderResult, OsdRenderResultSchema, type OsdSlotBinding, OsdSlotBindingSchema, type OsdSlotView, OsdSlotViewSchema, type OsdSource, type OsdSourceOption, OsdSourceOptionSchema, OsdSourceSchema, type OsdSourceValueType, OsdSourceValueTypeEnum, type OsdTemplateBinding, OsdTemplateBindingSchema, type OsdTemplateFormat, OsdTemplateFormatSchema, type OsdTemplatePick, OsdTemplatePickSchema, type OsdTemplateTokenKind, OsdTemplateTokenKindSchema, osdManagerCapability, } from './osd-manager.cap.js';
|
|
222
224
|
export { type IPetFeederProvider, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, type PetFeederStatus, PetFeederStatusSchema, petFeederCapability, } from './pet-feeder.cap.js';
|
|
225
|
+
export { type IPetFountainProvider, type PetFountainStatus, PetFountainStatusSchema, petFountainCapability, } from './pet-fountain.cap.js';
|
|
223
226
|
export { type IPlateGalleryProvider, type PlateInfo, plateGalleryCapability, type Vehicle, type VehicleSampleInfo, } from './plate-gallery.cap.js';
|
|
224
227
|
export { type AcceleratorRescan, type HardwareDecodeAccels, type HardwareEncoderId, type HardwareEncoderProbe, type HardwareEncoders, type IPlatformProbeProvider, platformProbeCapability, } from './platform-probe.cap.js';
|
|
225
228
|
export { type IPowerMeterProvider, type PowerMeterStatus, PowerMeterStatusSchema, powerMeterCapability, } from './power-meter.cap.js';
|
|
@@ -338,6 +341,7 @@ import type { deviceProviderCapability } from './device-provider.cap.js';
|
|
|
338
341
|
import type { deviceStateCapability } from './device-state.cap.js';
|
|
339
342
|
import type { deviceStatusCapability } from './device-status.cap.js';
|
|
340
343
|
import type { deviceRemovalHookCapability } from './device-removal-hook.cap.js';
|
|
344
|
+
import type { nodeRemovalHookCapability } from './node-removal-hook.cap.js';
|
|
341
345
|
import type { dishwasherCapability } from './dishwasher.cap.js';
|
|
342
346
|
import type { doorbellCapability } from './doorbell.cap.js';
|
|
343
347
|
import type { embeddingEncoderCapability } from './embedding-encoder.cap.js';
|
|
@@ -395,6 +399,7 @@ import type { oidcConnectionsCapability } from './oidc-connections.cap.js';
|
|
|
395
399
|
import type { osdCapability } from './osd.cap.js';
|
|
396
400
|
import type { osdManagerCapability } from './osd-manager.cap.js';
|
|
397
401
|
import type { petFeederCapability } from './pet-feeder.cap.js';
|
|
402
|
+
import type { petFountainCapability } from './pet-fountain.cap.js';
|
|
398
403
|
import type { pipelineAnalyticsCapability } from './pipeline-analytics.cap.js';
|
|
399
404
|
import type { pipelineExecutorCapability } from './pipeline-executor.cap.js';
|
|
400
405
|
import type { pipelineOrchestratorCapability } from './pipeline-orchestrator.cap.js';
|
|
@@ -455,6 +460,6 @@ import type { trainingProviderCapability } from './training-provider.cap.js';
|
|
|
455
460
|
import type { zoneAnalyticsCapability } from './zone-analytics.cap.js';
|
|
456
461
|
import type { zoneRulesCapability } from './zone-rules.cap.js';
|
|
457
462
|
import type { zonesCapability } from './zones.cap.js';
|
|
458
|
-
type AnyCapability = typeof streamSignalsCapability | typeof addonSettingsCapability | typeof alertsCapability | typeof storageCapability | typeof storageMigrationCapability | typeof storageProviderCapability | typeof storageEvictableCapability | typeof storageOccupancyCapability | typeof filesystemBrowseCapability | typeof backupCapability | typeof terminalSessionCapability | typeof settingsStoreCapability | typeof dataStoreProviderCapability | typeof databaseSnapshotCapability | typeof storageAdminCapability | typeof recordsCapability | typeof recordEntriesCapability | typeof deviceHistoryCapability | typeof keychainCapability | typeof keychainAdminCapability | typeof deviceCredentialsCapability | typeof nodeCertificatesCapability | typeof logChannelsCapability | typeof logDestinationCapability | typeof loadContributionCapability | typeof failureContributionCapability | typeof deviceRemovalHookCapability | typeof adminUiCapability | typeof viewerUiCapability | typeof ssoBridgeCapability | typeof userPasskeysCapability | typeof smtpProviderCapability | typeof mqttBrokerCapability | typeof brokerCapability | typeof deviceAdoptionCapability | typeof deviceAdminLinkCapability | typeof deviceExportCapability | typeof addonPagesCapability | typeof addonPagesSourceCapability | typeof addonWidgetsCapability | typeof addonWidgetsSourceCapability | typeof customModelRegistryCapability | typeof modelDistributorCapability | typeof modelConvertCapability | typeof addonRoutesCapability | typeof streamBrokerCapability | typeof decoderCapability | typeof webrtcSessionCapability | typeof cameraStreamsCapability | typeof calendarSourceCapability | typeof calendarsCapability | typeof motionDetectionCapability | typeof pipelineExecutorCapability | typeof detectionPipelineCapability | typeof cameraPipelineConfigCapability | typeof pipelineRunnerCapability | typeof pipelineOrchestratorCapability | typeof audioAnalyzerCapability | typeof audioAnalysisCapability | typeof audioCodecCapability | typeof embeddingEncoderCapability | typeof vectorStoreCapability | typeof deviceProviderCapability | typeof deviceManagerCapability | typeof deviceStateCapability | typeof authProviderCapability | typeof loginMethodCapability | typeof networkAccessCapability | typeof turnProviderCapability | typeof snapshotCapability | typeof llmCapability | typeof llmRuntimeCapability | typeof notificationOutputCapability | typeof composerCapability | typeof coreBlocksCapability | typeof notificationRulesCapability | typeof pipelineAnalyticsCapability | typeof metricsProviderCapability | typeof ptzCapability | typeof ptzAutotrackCapability | typeof navigationCapability | typeof consumablesCapability | typeof connectionTestCapability | typeof runningStateCapability | typeof rebootCapability | typeof deviceDiscoveryCapability | typeof brightnessCapability | typeof colorCapability | typeof climateControlCapability | typeof coverCapability | typeof valveCapability | typeof humidifierCapability | typeof waterHeaterCapability | typeof weatherCapability | typeof imageCapability | typeof lockControlCapability | typeof vacuumControlCapability | typeof petFeederCapability | typeof lawnMowerControlCapability | typeof fanControlCapability | typeof controlCapability | typeof notifierCapability | typeof mediaPlayerCapability | typeof meterCapability | typeof alarmPanelCapability | typeof presenceCapability | typeof scriptRunnerCapability | typeof actionSourceCapability | typeof actionsCapability | typeof automationControlCapability | typeof motionTriggerCapability | typeof zonesCapability | typeof zoneRulesCapability | typeof trainingCapability | typeof trainingProviderCapability | typeof zoneAnalyticsCapability | typeof audioMetricsCapability | typeof motionCapability | typeof contactCapability | typeof floodCapability | typeof smokeCapability | typeof carbonMonoxideCapability | typeof gasCapability | typeof groupActiveCapability | typeof groupCommandsCapability | typeof groupStatusCapability | typeof tamperCapability | typeof vibrationCapability | typeof connectivityCapability | typeof binaryCapability | typeof temperatureSensorCapability | typeof heatingValveCapability | typeof humiditySensorCapability | typeof ambientLightSensorCapability | typeof pressureSensorCapability | typeof powerMeterCapability | typeof airQualitySensorCapability | typeof numericSensorCapability | typeof enumSensorCapability | typeof recordingCapability | typeof recordingArchiveCapability | typeof recordingExportCapability | typeof recordingSignalCapability | typeof deviceOpsCapability | typeof displayPaletteCapability | typeof platformProbeCapability | typeof localNetworkCapability | typeof meshNetworkCapability | typeof userManagementCapability | typeof systemCapability | typeof networkQualityCapability | typeof toastCapability | typeof nodesCapability | typeof serverManagementCapability | typeof integrationsCapability | typeof addonsCapability | typeof oauthIntegrationCapability | typeof oidcConnectionsCapability | typeof streamParamsCapability | typeof streamCatalogCapability | typeof motionZonesCapability | typeof cameraGridLayoutCapability | typeof sceneMonitorCapability | typeof privacyMaskCapability | typeof dayNightCapability | typeof recordingOnboardCapability | typeof imageSettingsCapability | typeof osdCapability | typeof osdManagerCapability | typeof accessoriesCapability | typeof batteryCapability | typeof networkLinkCapability | typeof buttonCapability | typeof irTransmitterCapability | typeof remoteCapability | typeof templateCapability | typeof cameraCredentialsCapability | typeof deviceStatusCapability | typeof doorbellCapability | typeof eventEmitterCapability | typeof faceGalleryCapability | typeof featureProbeCapability | typeof intercomCapability | typeof nativeObjectDetectionCapability | typeof plateGalleryCapability | typeof switchCapability | typeof updateCapability | typeof videoclipsCapability | typeof deviceExtensionCapability | typeof dishwasherCapability;
|
|
463
|
+
type AnyCapability = typeof streamSignalsCapability | typeof addonSettingsCapability | typeof alertsCapability | typeof storageCapability | typeof storageMigrationCapability | typeof storageProviderCapability | typeof storageEvictableCapability | typeof storageOccupancyCapability | typeof filesystemBrowseCapability | typeof backupCapability | typeof terminalSessionCapability | typeof settingsStoreCapability | typeof dataStoreProviderCapability | typeof databaseSnapshotCapability | typeof storageAdminCapability | typeof recordsCapability | typeof recordEntriesCapability | typeof deviceHistoryCapability | typeof keychainCapability | typeof keychainAdminCapability | typeof deviceCredentialsCapability | typeof nodeCertificatesCapability | typeof logChannelsCapability | typeof logDestinationCapability | typeof loadContributionCapability | typeof failureContributionCapability | typeof deviceRemovalHookCapability | typeof nodeRemovalHookCapability | typeof adminUiCapability | typeof viewerUiCapability | typeof ssoBridgeCapability | typeof userPasskeysCapability | typeof smtpProviderCapability | typeof mqttBrokerCapability | typeof brokerCapability | typeof deviceAdoptionCapability | typeof deviceAdminLinkCapability | typeof deviceExportCapability | typeof addonPagesCapability | typeof addonPagesSourceCapability | typeof addonWidgetsCapability | typeof addonWidgetsSourceCapability | typeof customModelRegistryCapability | typeof modelDistributorCapability | typeof modelConvertCapability | typeof addonRoutesCapability | typeof streamBrokerCapability | typeof decoderCapability | typeof webrtcSessionCapability | typeof cameraStreamsCapability | typeof calendarSourceCapability | typeof calendarsCapability | typeof motionDetectionCapability | typeof pipelineExecutorCapability | typeof detectionPipelineCapability | typeof cameraPipelineConfigCapability | typeof pipelineRunnerCapability | typeof pipelineOrchestratorCapability | typeof audioAnalyzerCapability | typeof audioAnalysisCapability | typeof audioCodecCapability | typeof embeddingEncoderCapability | typeof vectorStoreCapability | typeof deviceProviderCapability | typeof deviceManagerCapability | typeof deviceStateCapability | typeof authProviderCapability | typeof loginMethodCapability | typeof networkAccessCapability | typeof turnProviderCapability | typeof snapshotCapability | typeof llmCapability | typeof llmRuntimeCapability | typeof notificationOutputCapability | typeof composerCapability | typeof coreBlocksCapability | typeof notificationRulesCapability | typeof pipelineAnalyticsCapability | typeof metricsProviderCapability | typeof ptzCapability | typeof ptzAutotrackCapability | typeof navigationCapability | typeof consumablesCapability | typeof connectionTestCapability | typeof runningStateCapability | typeof rebootCapability | typeof deviceDiscoveryCapability | typeof brightnessCapability | typeof colorCapability | typeof climateControlCapability | typeof coverCapability | typeof valveCapability | typeof humidifierCapability | typeof waterHeaterCapability | typeof weatherCapability | typeof imageCapability | typeof lockControlCapability | typeof vacuumControlCapability | typeof petFeederCapability | typeof petFountainCapability | typeof lawnMowerControlCapability | typeof fanControlCapability | typeof controlCapability | typeof notifierCapability | typeof mediaPlayerCapability | typeof meterCapability | typeof alarmPanelCapability | typeof presenceCapability | typeof scriptRunnerCapability | typeof actionSourceCapability | typeof actionsCapability | typeof automationControlCapability | typeof motionTriggerCapability | typeof zonesCapability | typeof zoneRulesCapability | typeof trainingCapability | typeof trainingProviderCapability | typeof zoneAnalyticsCapability | typeof audioMetricsCapability | typeof motionCapability | typeof contactCapability | typeof floodCapability | typeof smokeCapability | typeof carbonMonoxideCapability | typeof gasCapability | typeof groupActiveCapability | typeof groupCommandsCapability | typeof groupStatusCapability | typeof tamperCapability | typeof vibrationCapability | typeof connectivityCapability | typeof binaryCapability | typeof temperatureSensorCapability | typeof heatingValveCapability | typeof humiditySensorCapability | typeof ambientLightSensorCapability | typeof pressureSensorCapability | typeof powerMeterCapability | typeof airQualitySensorCapability | typeof numericSensorCapability | typeof enumSensorCapability | typeof recordingCapability | typeof recordingArchiveCapability | typeof recordingExportCapability | typeof recordingSignalCapability | typeof deviceOpsCapability | typeof displayPaletteCapability | typeof platformProbeCapability | typeof localNetworkCapability | typeof meshNetworkCapability | typeof userManagementCapability | typeof systemCapability | typeof networkQualityCapability | typeof toastCapability | typeof nodesCapability | typeof serverManagementCapability | typeof integrationsCapability | typeof addonsCapability | typeof oauthIntegrationCapability | typeof oidcConnectionsCapability | typeof streamParamsCapability | typeof streamCatalogCapability | typeof motionZonesCapability | typeof cameraGridLayoutCapability | typeof sceneMonitorCapability | typeof privacyMaskCapability | typeof dayNightCapability | typeof recordingOnboardCapability | typeof imageSettingsCapability | typeof osdCapability | typeof osdManagerCapability | typeof accessoriesCapability | typeof batteryCapability | typeof networkLinkCapability | typeof buttonCapability | typeof irTransmitterCapability | typeof remoteCapability | typeof templateCapability | typeof cameraCredentialsCapability | typeof deviceStatusCapability | typeof doorbellCapability | typeof eventEmitterCapability | typeof faceGalleryCapability | typeof featureProbeCapability | typeof intercomCapability | typeof nativeObjectDetectionCapability | typeof plateGalleryCapability | typeof switchCapability | typeof updateCapability | typeof videoclipsCapability | typeof deviceExtensionCapability | typeof dishwasherCapability;
|
|
459
464
|
export type CapabilityName = AnyCapability['name'];
|
|
460
465
|
export type ITypedReadinessRegistry = IReadinessRegistry<CapabilityName>;
|
|
@@ -10,10 +10,10 @@ declare const CpuBreakdownSchema: z.ZodObject<{
|
|
|
10
10
|
cores: z.ZodNumber;
|
|
11
11
|
}, z.core.$strip>;
|
|
12
12
|
declare const MemoryInfoSchema: z.ZodObject<{
|
|
13
|
-
percent: z.ZodNumber
|
|
13
|
+
percent: z.ZodNullable<z.ZodNumber>;
|
|
14
14
|
totalBytes: z.ZodNumber;
|
|
15
|
-
usedBytes: z.ZodNumber
|
|
16
|
-
availableBytes: z.ZodNumber
|
|
15
|
+
usedBytes: z.ZodNullable<z.ZodNumber>;
|
|
16
|
+
availableBytes: z.ZodNullable<z.ZodNumber>;
|
|
17
17
|
swapUsedBytes: z.ZodNumber;
|
|
18
18
|
swapTotalBytes: z.ZodNumber;
|
|
19
19
|
}, z.core.$strip>;
|
|
@@ -69,10 +69,10 @@ declare const SystemResourceSnapshotSchema: z.ZodObject<{
|
|
|
69
69
|
cores: z.ZodNumber;
|
|
70
70
|
}, z.core.$strip>;
|
|
71
71
|
memory: z.ZodObject<{
|
|
72
|
-
percent: z.ZodNumber
|
|
72
|
+
percent: z.ZodNullable<z.ZodNumber>;
|
|
73
73
|
totalBytes: z.ZodNumber;
|
|
74
|
-
usedBytes: z.ZodNumber
|
|
75
|
-
availableBytes: z.ZodNumber
|
|
74
|
+
usedBytes: z.ZodNullable<z.ZodNumber>;
|
|
75
|
+
availableBytes: z.ZodNullable<z.ZodNumber>;
|
|
76
76
|
swapUsedBytes: z.ZodNumber;
|
|
77
77
|
swapTotalBytes: z.ZodNumber;
|
|
78
78
|
}, z.core.$strip>;
|
|
@@ -337,8 +337,8 @@ declare const GetLoadSeriesInputSchema: z.ZodObject<{
|
|
|
337
337
|
}, z.core.$strip>;
|
|
338
338
|
declare const SystemMetricsSchema: z.ZodObject<{
|
|
339
339
|
cpuPercent: z.ZodNumber;
|
|
340
|
-
memoryPercent: z.ZodNumber
|
|
341
|
-
memoryUsedMB: z.ZodNumber
|
|
340
|
+
memoryPercent: z.ZodNullable<z.ZodNumber>;
|
|
341
|
+
memoryUsedMB: z.ZodNullable<z.ZodNumber>;
|
|
342
342
|
memoryTotalMB: z.ZodNumber;
|
|
343
343
|
diskPercent: z.ZodOptional<z.ZodNumber>;
|
|
344
344
|
temperature: z.ZodOptional<z.ZodNumber>;
|
|
@@ -362,10 +362,10 @@ export declare const metricsProviderCapability: {
|
|
|
362
362
|
cores: z.ZodNumber;
|
|
363
363
|
}, z.core.$strip>;
|
|
364
364
|
memory: z.ZodObject<{
|
|
365
|
-
percent: z.ZodNumber
|
|
365
|
+
percent: z.ZodNullable<z.ZodNumber>;
|
|
366
366
|
totalBytes: z.ZodNumber;
|
|
367
|
-
usedBytes: z.ZodNumber
|
|
368
|
-
availableBytes: z.ZodNumber
|
|
367
|
+
usedBytes: z.ZodNullable<z.ZodNumber>;
|
|
368
|
+
availableBytes: z.ZodNullable<z.ZodNumber>;
|
|
369
369
|
swapUsedBytes: z.ZodNumber;
|
|
370
370
|
swapTotalBytes: z.ZodNumber;
|
|
371
371
|
}, z.core.$strip>;
|
|
@@ -451,10 +451,10 @@ export declare const metricsProviderCapability: {
|
|
|
451
451
|
cores: z.ZodNumber;
|
|
452
452
|
}, z.core.$strip>;
|
|
453
453
|
memory: z.ZodObject<{
|
|
454
|
-
percent: z.ZodNumber
|
|
454
|
+
percent: z.ZodNullable<z.ZodNumber>;
|
|
455
455
|
totalBytes: z.ZodNumber;
|
|
456
|
-
usedBytes: z.ZodNumber
|
|
457
|
-
availableBytes: z.ZodNumber
|
|
456
|
+
usedBytes: z.ZodNullable<z.ZodNumber>;
|
|
457
|
+
availableBytes: z.ZodNullable<z.ZodNumber>;
|
|
458
458
|
swapUsedBytes: z.ZodNumber;
|
|
459
459
|
swapTotalBytes: z.ZodNumber;
|
|
460
460
|
}, z.core.$strip>;
|
|
@@ -531,8 +531,8 @@ export declare const metricsProviderCapability: {
|
|
|
531
531
|
/** Light-weight cached summary for heartbeats and list views. */
|
|
532
532
|
readonly getCurrent: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodObject<{
|
|
533
533
|
cpuPercent: z.ZodNumber;
|
|
534
|
-
memoryPercent: z.ZodNumber
|
|
535
|
-
memoryUsedMB: z.ZodNumber
|
|
534
|
+
memoryPercent: z.ZodNullable<z.ZodNumber>;
|
|
535
|
+
memoryUsedMB: z.ZodNullable<z.ZodNumber>;
|
|
536
536
|
memoryTotalMB: z.ZodNumber;
|
|
537
537
|
diskPercent: z.ZodOptional<z.ZodNumber>;
|
|
538
538
|
temperature: z.ZodOptional<z.ZodNumber>;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `node-removal-hook` — the reliable way an addon learns a cluster node was
|
|
3
|
+
* FORGOTTEN, so it can remove or re-point what it keeps for that node. The
|
|
4
|
+
* node-scoped twin of `device-removal-hook` (D865); same shape, same rules.
|
|
5
|
+
*
|
|
6
|
+
* ## Why not "the node is absent"
|
|
7
|
+
*
|
|
8
|
+
* A node missing from topology is offline, restarting or not yet re-registered —
|
|
9
|
+
* it is not forgotten. Deleting node-scoped data from absence destroys a live
|
|
10
|
+
* node's configuration on any failed or partial read (D49). So the hook is
|
|
11
|
+
* driven by a TOMBSTONE the hub records when the operator forgets a node
|
|
12
|
+
* (`AgentRegistryService.forgetClusterNode`); nothing else produces one.
|
|
13
|
+
*
|
|
14
|
+
* ## The pieces
|
|
15
|
+
*
|
|
16
|
+
* 1. The hub records a tombstone `{ nodeId, removedAt, pending }` before it calls
|
|
17
|
+
* anyone. `pending` is the set of implementers that have not yet acknowledged.
|
|
18
|
+
* 2. The hub calls `onNodeRemoved` on EVERY provider of this collection, one by
|
|
19
|
+
* one, with bounded retries, logged; an acknowledgement removes the
|
|
20
|
+
* implementer from `pending`.
|
|
21
|
+
* 3. The hub re-drives still-pending tombstones at boot, so an implementer that
|
|
22
|
+
* was down at forget time is told when it is back.
|
|
23
|
+
*
|
|
24
|
+
* ## Contract for an implementer
|
|
25
|
+
*
|
|
26
|
+
* - **Idempotent.** Called again by a retry and by the boot re-drive. A node with
|
|
27
|
+
* nothing left answers zero counts.
|
|
28
|
+
* - **One key per store** in `counts`, rows changed per store, so the log line
|
|
29
|
+
* can say where the data was.
|
|
30
|
+
* - **Re-point or remove, never guess.** A row that merely MENTIONS the node as
|
|
31
|
+
* a preference is re-pointed to "unset"; a row that only means something on
|
|
32
|
+
* that node (a runtime bound to it) is removed.
|
|
33
|
+
* - A provider that cannot tell is allowed to throw; the caller retries it.
|
|
34
|
+
*/
|
|
35
|
+
import { z } from 'zod';
|
|
36
|
+
import { type InferProvider } from './capability-definition.js';
|
|
37
|
+
/** What a hook is told about the removal. */
|
|
38
|
+
export declare const NodeRemovedInputSchema: z.ZodObject<{
|
|
39
|
+
nodeId: z.ZodString;
|
|
40
|
+
removedAt: z.ZodNumber;
|
|
41
|
+
}, z.core.$strip>;
|
|
42
|
+
export type NodeRemovedInput = z.infer<typeof NodeRemovedInputSchema>;
|
|
43
|
+
/** Rows changed (removed or re-pointed), per store this implementer owns. */
|
|
44
|
+
export declare const NodeRemovedResultSchema: z.ZodObject<{
|
|
45
|
+
counts: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
46
|
+
}, z.core.$strip>;
|
|
47
|
+
export type NodeRemovedResult = z.infer<typeof NodeRemovedResultSchema>;
|
|
48
|
+
export declare const nodeRemovalHookCapability: {
|
|
49
|
+
readonly name: 'node-removal-hook';
|
|
50
|
+
readonly scope: 'system';
|
|
51
|
+
readonly mode: 'collection';
|
|
52
|
+
readonly internal: true;
|
|
53
|
+
readonly methods: {
|
|
54
|
+
/** Remove or re-point everything this addon keeps for the forgotten node. Idempotent. */
|
|
55
|
+
readonly onNodeRemoved: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
56
|
+
nodeId: z.ZodString;
|
|
57
|
+
removedAt: z.ZodNumber;
|
|
58
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
59
|
+
counts: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
60
|
+
}, z.core.$strip>, "mutation">;
|
|
61
|
+
};
|
|
62
|
+
/** In-process only — enumerated through `addons.listCapabilityProviders`. */
|
|
63
|
+
readonly mount: {
|
|
64
|
+
readonly kind: 'skip';
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
export type INodeRemovalHookProvider = InferProvider<typeof nodeRemovalHookCapability>;
|
|
@@ -55,7 +55,7 @@ declare const TopologyNodeSchema: z.ZodObject<{
|
|
|
55
55
|
isHub: z.ZodBoolean;
|
|
56
56
|
isOnline: z.ZodBoolean;
|
|
57
57
|
cpuPercent: z.ZodNumber;
|
|
58
|
-
memoryPercent: z.ZodNumber
|
|
58
|
+
memoryPercent: z.ZodNullable<z.ZodNumber>;
|
|
59
59
|
uptime: z.ZodNumber;
|
|
60
60
|
lastSeen: z.ZodString;
|
|
61
61
|
localIps: z.ZodReadonly<z.ZodArray<z.ZodString>>;
|
|
@@ -189,7 +189,7 @@ export declare const nodesCapability: {
|
|
|
189
189
|
isHub: z.ZodBoolean;
|
|
190
190
|
isOnline: z.ZodBoolean;
|
|
191
191
|
cpuPercent: z.ZodNumber;
|
|
192
|
-
memoryPercent: z.ZodNumber
|
|
192
|
+
memoryPercent: z.ZodNullable<z.ZodNumber>;
|
|
193
193
|
uptime: z.ZodNumber;
|
|
194
194
|
lastSeen: z.ZodString;
|
|
195
195
|
localIps: z.ZodReadonly<z.ZodArray<z.ZodString>>;
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { DeviceType } from '../device/device-type.js';
|
|
3
|
+
import { type InferProvider } from './capability-definition.js';
|
|
4
|
+
/**
|
|
5
|
+
* Pet water-fountain cap. Models the telemetry and the control surface of a
|
|
6
|
+
* circulating drinking fountain: how much water is in the tank, how much the
|
|
7
|
+
* pet drank, whether the pump runs and on what duty cycle.
|
|
8
|
+
*
|
|
9
|
+
* It has no native vendor provider of its own: a fountain reaches CamStack as
|
|
10
|
+
* a container of loose entities (a pump switch, two number boxes, a "filter
|
|
11
|
+
* changed" button), and an operator BUILDS the device from them — a composed
|
|
12
|
+
* device of this type (D659, D967). Every method is therefore a forward to ONE
|
|
13
|
+
* method of ONE source entity, and every reading is a field derived from a
|
|
14
|
+
* source entity; the provider-shaped interface below exists so the composed
|
|
15
|
+
* device and any future native provider answer the same contract.
|
|
16
|
+
*
|
|
17
|
+
* Quantities are stored in the base unit of their kind (D944): volumes in
|
|
18
|
+
* LITRES, durations in SECONDS, the tank level in percent. A source that
|
|
19
|
+
* reports millilitres or minutes is converted in the composition's expression,
|
|
20
|
+
* never here. Every reading may be `null`: a source that is offline or does
|
|
21
|
+
* not report is unknown, never zero.
|
|
22
|
+
*
|
|
23
|
+
* The filter is not a field of this cap: it is an item of the `consumables`
|
|
24
|
+
* cap on the same device (kind `wear`), reset by the same forward mechanism.
|
|
25
|
+
*/
|
|
26
|
+
export declare const PetFountainStatusSchema: z.ZodObject<{
|
|
27
|
+
waterLevel: z.ZodNullable<z.ZodNumber>;
|
|
28
|
+
waterVolume: z.ZodNullable<z.ZodNumber>;
|
|
29
|
+
empty: z.ZodNullable<z.ZodBoolean>;
|
|
30
|
+
pumpRunning: z.ZodNullable<z.ZodBoolean>;
|
|
31
|
+
pumpIntervalEnabled: z.ZodNullable<z.ZodBoolean>;
|
|
32
|
+
pumpOnTime: z.ZodNullable<z.ZodNumber>;
|
|
33
|
+
pumpOffTime: z.ZodNullable<z.ZodNumber>;
|
|
34
|
+
lastDrink: z.ZodNullable<z.ZodNumber>;
|
|
35
|
+
currentHourDrink: z.ZodNullable<z.ZodNumber>;
|
|
36
|
+
last24hDrink: z.ZodNullable<z.ZodNumber>;
|
|
37
|
+
todayDrink: z.ZodNullable<z.ZodNumber>;
|
|
38
|
+
error: z.ZodNullable<z.ZodString>;
|
|
39
|
+
lastFetchedAt: z.ZodNumber;
|
|
40
|
+
}, z.core.$strip>;
|
|
41
|
+
export type PetFountainStatus = z.infer<typeof PetFountainStatusSchema>;
|
|
42
|
+
export declare const petFountainCapability: {
|
|
43
|
+
readonly name: 'pet-fountain';
|
|
44
|
+
readonly scope: 'device';
|
|
45
|
+
readonly deviceNative: true;
|
|
46
|
+
readonly mode: 'singleton';
|
|
47
|
+
readonly deviceTypes: readonly [DeviceType.PetFountain];
|
|
48
|
+
readonly methods: {
|
|
49
|
+
/** Start or stop the pump. */
|
|
50
|
+
readonly setPump: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
51
|
+
deviceId: z.ZodNumber;
|
|
52
|
+
on: z.ZodBoolean;
|
|
53
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
54
|
+
/** Switch the on/off duty cycle on or off (off = the pump runs continuously). */
|
|
55
|
+
readonly setPumpInterval: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
56
|
+
deviceId: z.ZodNumber;
|
|
57
|
+
on: z.ZodBoolean;
|
|
58
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
59
|
+
/** Set how many minutes the pump runs per cycle. */
|
|
60
|
+
readonly setPumpOnMinutes: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
61
|
+
deviceId: z.ZodNumber;
|
|
62
|
+
minutes: z.ZodNumber;
|
|
63
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
64
|
+
/** Set how many minutes the pump rests per cycle. */
|
|
65
|
+
readonly setPumpOffMinutes: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
66
|
+
deviceId: z.ZodNumber;
|
|
67
|
+
minutes: z.ZodNumber;
|
|
68
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
69
|
+
/** Clear the rolling daily consumption counters on the device. */
|
|
70
|
+
readonly resetDailyConsumption: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
71
|
+
deviceId: z.ZodNumber;
|
|
72
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
73
|
+
};
|
|
74
|
+
readonly status: {
|
|
75
|
+
readonly schema: z.ZodObject<{
|
|
76
|
+
waterLevel: z.ZodNullable<z.ZodNumber>;
|
|
77
|
+
waterVolume: z.ZodNullable<z.ZodNumber>;
|
|
78
|
+
empty: z.ZodNullable<z.ZodBoolean>;
|
|
79
|
+
pumpRunning: z.ZodNullable<z.ZodBoolean>;
|
|
80
|
+
pumpIntervalEnabled: z.ZodNullable<z.ZodBoolean>;
|
|
81
|
+
pumpOnTime: z.ZodNullable<z.ZodNumber>;
|
|
82
|
+
pumpOffTime: z.ZodNullable<z.ZodNumber>;
|
|
83
|
+
lastDrink: z.ZodNullable<z.ZodNumber>;
|
|
84
|
+
currentHourDrink: z.ZodNullable<z.ZodNumber>;
|
|
85
|
+
last24hDrink: z.ZodNullable<z.ZodNumber>;
|
|
86
|
+
todayDrink: z.ZodNullable<z.ZodNumber>;
|
|
87
|
+
error: z.ZodNullable<z.ZodString>;
|
|
88
|
+
lastFetchedAt: z.ZodNumber;
|
|
89
|
+
}, z.core.$strip>;
|
|
90
|
+
readonly kind: 'push';
|
|
91
|
+
};
|
|
92
|
+
/** Runtime-state slice — mirrored by the kernel; the hero card reads it whole. */
|
|
93
|
+
readonly runtimeState: z.ZodObject<{
|
|
94
|
+
waterLevel: z.ZodNullable<z.ZodNumber>;
|
|
95
|
+
waterVolume: z.ZodNullable<z.ZodNumber>;
|
|
96
|
+
empty: z.ZodNullable<z.ZodBoolean>;
|
|
97
|
+
pumpRunning: z.ZodNullable<z.ZodBoolean>;
|
|
98
|
+
pumpIntervalEnabled: z.ZodNullable<z.ZodBoolean>;
|
|
99
|
+
pumpOnTime: z.ZodNullable<z.ZodNumber>;
|
|
100
|
+
pumpOffTime: z.ZodNullable<z.ZodNumber>;
|
|
101
|
+
lastDrink: z.ZodNullable<z.ZodNumber>;
|
|
102
|
+
currentHourDrink: z.ZodNullable<z.ZodNumber>;
|
|
103
|
+
last24hDrink: z.ZodNullable<z.ZodNumber>;
|
|
104
|
+
todayDrink: z.ZodNullable<z.ZodNumber>;
|
|
105
|
+
error: z.ZodNullable<z.ZodString>;
|
|
106
|
+
lastFetchedAt: z.ZodNumber;
|
|
107
|
+
}, z.core.$strip>;
|
|
108
|
+
/**
|
|
109
|
+
* Runtime-state durability: **session** — live appliance state re-published on connect.
|
|
110
|
+
*
|
|
111
|
+
* See `RuntimeStateDurability`. Enforced by
|
|
112
|
+
* `scripts/check-runtime-state-durability.ts`.
|
|
113
|
+
*/
|
|
114
|
+
readonly durability: 'session';
|
|
115
|
+
/** History (D850): recorded series. */
|
|
116
|
+
readonly history: {
|
|
117
|
+
readonly fields: {
|
|
118
|
+
readonly waterLevel: {
|
|
119
|
+
readonly kind: 'gauge';
|
|
120
|
+
readonly unit: '%';
|
|
121
|
+
readonly deadband: 1;
|
|
122
|
+
};
|
|
123
|
+
readonly waterVolume: {
|
|
124
|
+
readonly kind: 'gauge';
|
|
125
|
+
readonly unit: 'L';
|
|
126
|
+
};
|
|
127
|
+
readonly todayDrink: {
|
|
128
|
+
readonly kind: 'gauge';
|
|
129
|
+
readonly unit: 'L';
|
|
130
|
+
};
|
|
131
|
+
readonly last24hDrink: {
|
|
132
|
+
readonly kind: 'gauge';
|
|
133
|
+
readonly unit: 'L';
|
|
134
|
+
};
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
};
|
|
138
|
+
export type IPetFountainProvider = InferProvider<typeof petFountainCapability>;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import type { ConfigField, ConfigUISchema } from '../interfaces/config-ui.js';
|
|
3
3
|
import type { InferenceCapabilities, ModelAvailability } from '../interfaces/inference-capabilities.js';
|
|
4
|
-
import type { AudioResult
|
|
4
|
+
import type { AudioResult } from '../types/detection.js';
|
|
5
|
+
import { PipelineRunResultBridge, PipelineStepInputSchema, type PipelineStepInputOutput } from './pipeline-step-input.js';
|
|
6
|
+
export { PipelineRunResultBridge, PipelineStepInputSchema };
|
|
7
|
+
export type { PipelineStepInputOutput };
|
|
5
8
|
import { type InferProvider } from './capability-definition.js';
|
|
6
9
|
/**
|
|
7
10
|
* A root model's boxes standing in for one crop-kind step's own inference
|
|
@@ -615,24 +618,6 @@ declare const EngineProvisioningSchema: z.ZodObject<{
|
|
|
615
618
|
configIssues: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
616
619
|
}, z.core.$strip>;
|
|
617
620
|
export type EngineProvisioning = z.infer<typeof EngineProvisioningSchema>;
|
|
618
|
-
export type PipelineStepInputOutput = {
|
|
619
|
-
readonly addonId: string;
|
|
620
|
-
readonly modelId?: string;
|
|
621
|
-
readonly enabled: boolean;
|
|
622
|
-
readonly children?: readonly PipelineStepInputOutput[];
|
|
623
|
-
readonly settings?: Readonly<Record<string, unknown>>;
|
|
624
|
-
/**
|
|
625
|
-
* Step-tree device jump (same-node, phase 1). Operator manual override
|
|
626
|
-
* carried from the per-(node,device) BASE
|
|
627
|
-
* (`inferenceDevices[node][deviceKey].steps[step].jumpDeviceKey`): run THIS
|
|
628
|
-
* enrichment step (and its inherited children) on a DIFFERENT enabled device
|
|
629
|
-
* of the SAME node — `<backend>:<device>` (e.g. `openvino:npu`). Absent ⇒ the
|
|
630
|
-
* runner AUTO-jumps only when the effective device's format cannot run the
|
|
631
|
-
* step's model, else the step inherits the effective device. Same-node only.
|
|
632
|
-
*/
|
|
633
|
-
readonly jumpDeviceKey?: string;
|
|
634
|
-
};
|
|
635
|
-
export declare const PipelineStepInputSchema: z.ZodType<PipelineStepInputOutput>;
|
|
636
621
|
declare const ModelSubstitutionSchema: z.ZodObject<{
|
|
637
622
|
addonId: z.ZodString;
|
|
638
623
|
chosen: z.ZodString;
|
|
@@ -669,7 +654,6 @@ declare const PipelineValidationResultSchema: z.ZodObject<{
|
|
|
669
654
|
}, z.core.$strip>;
|
|
670
655
|
export type PipelineValidationResult = z.infer<typeof PipelineValidationResultSchema>;
|
|
671
656
|
export type PipelineValidationIssue = z.infer<typeof PipelineValidationIssueSchema>;
|
|
672
|
-
export declare const PipelineRunResultBridge: z.ZodCustom<FrameResult, FrameResult>;
|
|
673
657
|
/**
|
|
674
658
|
* Pipeline executor — detection engine + configuration + inference API.
|
|
675
659
|
*
|
|
@@ -1150,7 +1134,7 @@ export declare const pipelineExecutorCapability: {
|
|
|
1150
1134
|
}, z.core.$strip>>>;
|
|
1151
1135
|
}, z.core.$strip>>;
|
|
1152
1136
|
}, z.core.$strip>>;
|
|
1153
|
-
}, z.core.$strip>, z.ZodCustom<FrameResult, FrameResult>, "mutation">;
|
|
1137
|
+
}, z.core.$strip>, z.ZodCustom<import("../index.js").FrameResult, import("../index.js").FrameResult>, "mutation">;
|
|
1154
1138
|
/**
|
|
1155
1139
|
* Batched run — N raw frames packed into one cap call. The provider
|
|
1156
1140
|
* routes the batch through `SharedInferencePool.inferBatch`
|
|
@@ -1182,7 +1166,7 @@ export declare const pipelineExecutorCapability: {
|
|
|
1182
1166
|
frameId: z.ZodOptional<z.ZodNumber>;
|
|
1183
1167
|
deviceKey: z.ZodOptional<z.ZodString>;
|
|
1184
1168
|
}, z.core.$strip>, z.ZodObject<{
|
|
1185
|
-
results: z.ZodReadonly<z.ZodArray<z.ZodCustom<FrameResult, FrameResult>>>;
|
|
1169
|
+
results: z.ZodReadonly<z.ZodArray<z.ZodCustom<import("../index.js").FrameResult, import("../index.js").FrameResult>>>;
|
|
1186
1170
|
}, z.core.$strip>, "mutation">;
|
|
1187
1171
|
/**
|
|
1188
1172
|
* Cache a raw frame inside the Python inference pool's memory.
|
|
@@ -15,7 +15,7 @@ declare const CameraPipelineConfigSchema: z.ZodObject<{
|
|
|
15
15
|
}>;
|
|
16
16
|
device: z.ZodOptional<z.ZodString>;
|
|
17
17
|
}, z.core.$strip>>;
|
|
18
|
-
steps: z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-
|
|
18
|
+
steps: z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown, z.core.$ZodTypeInternals<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown>>>>;
|
|
19
19
|
audio: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
20
20
|
engine: z.ZodOptional<z.ZodObject<{
|
|
21
21
|
runtime: z.ZodLiteral<"python">;
|
|
@@ -1164,8 +1164,7 @@ export declare const pipelineOrchestratorCapability: {
|
|
|
1164
1164
|
* replaced the four flat orchestrator lists (`enabledNodes`,
|
|
1165
1165
|
* `enabledDecoderNodes`, `enabledAudioNodes`, `remoteSourcingNodes`).
|
|
1166
1166
|
* Each flag is optional in the patch: omit a flag to leave it unchanged,
|
|
1167
|
-
* pass `null` to reset it to the
|
|
1168
|
-
* other node → not). Detection/audio eligibility is derived from these
|
|
1167
|
+
* pass `null` to reset it to the default (ON for every node). Detection/audio eligibility is derived from these
|
|
1169
1168
|
* flags across the cluster; changing them re-derives the enabled sets
|
|
1170
1169
|
* and reconciles dispatch immediately. There is NO separate decode flag:
|
|
1171
1170
|
* decode is always co-located with its frame consumer, so decode
|
|
@@ -2395,7 +2394,7 @@ export declare const pipelineOrchestratorCapability: {
|
|
|
2395
2394
|
}>;
|
|
2396
2395
|
device: z.ZodOptional<z.ZodString>;
|
|
2397
2396
|
}, z.core.$strip>>;
|
|
2398
|
-
steps: z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-
|
|
2397
|
+
steps: z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown, z.core.$ZodTypeInternals<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown>>>>;
|
|
2399
2398
|
audio: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
2400
2399
|
engine: z.ZodOptional<z.ZodObject<{
|
|
2401
2400
|
runtime: z.ZodLiteral<"python">;
|
|
@@ -416,7 +416,7 @@ declare const RunnerCameraConfigSchema: z.ZodObject<{
|
|
|
416
416
|
pipeline: "pipeline";
|
|
417
417
|
}>>>>;
|
|
418
418
|
pipelineEnabled: z.ZodDefault<z.ZodBoolean>;
|
|
419
|
-
steps: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-
|
|
419
|
+
steps: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown, z.core.$ZodTypeInternals<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown>>>>>;
|
|
420
420
|
audio: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
421
421
|
modelId: z.ZodOptional<z.ZodString>;
|
|
422
422
|
enabled: z.ZodBoolean;
|
|
@@ -718,7 +718,7 @@ export declare const pipelineRunnerCapability: {
|
|
|
718
718
|
pipeline: "pipeline";
|
|
719
719
|
}>>>>;
|
|
720
720
|
pipelineEnabled: z.ZodDefault<z.ZodBoolean>;
|
|
721
|
-
steps: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-
|
|
721
|
+
steps: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodType<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown, z.core.$ZodTypeInternals<import("./pipeline-step-input.js").PipelineStepInputOutput, unknown>>>>>;
|
|
722
722
|
audio: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
723
723
|
modelId: z.ZodOptional<z.ZodString>;
|
|
724
724
|
enabled: z.ZodBoolean;
|