@camstack/types 1.2.365 → 1.2.367
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/addon.js +1 -1
- package/dist/addon.mjs +1 -1
- package/dist/capabilities/air-quality-sensor.cap.d.ts +32 -0
- package/dist/capabilities/alarm-panel.cap.d.ts +4 -0
- package/dist/capabilities/ambient-light-sensor.cap.d.ts +13 -0
- package/dist/capabilities/audio-metrics.cap.d.ts +4 -0
- package/dist/capabilities/automation-control.cap.d.ts +4 -0
- package/dist/capabilities/battery.cap.d.ts +11 -0
- package/dist/capabilities/binary.cap.d.ts +10 -0
- package/dist/capabilities/brightness.cap.d.ts +12 -0
- package/dist/capabilities/camera-streams.cap.d.ts +4 -0
- package/dist/capabilities/capability-definition.d.ts +70 -0
- package/dist/capabilities/carbon-monoxide.cap.d.ts +10 -0
- package/dist/capabilities/climate-control.cap.d.ts +32 -0
- package/dist/capabilities/color.cap.d.ts +4 -0
- package/dist/capabilities/connectivity.cap.d.ts +4 -0
- package/dist/capabilities/consumables.cap.d.ts +4 -0
- package/dist/capabilities/contact.cap.d.ts +10 -0
- package/dist/capabilities/control.cap.d.ts +4 -0
- package/dist/capabilities/cover.cap.d.ts +12 -0
- package/dist/capabilities/day-night.cap.d.ts +4 -0
- package/dist/capabilities/device-discovery.cap.d.ts +4 -0
- package/dist/capabilities/device-status.cap.d.ts +10 -0
- package/dist/capabilities/doorbell.cap.d.ts +4 -0
- package/dist/capabilities/enum-sensor.cap.d.ts +4 -0
- package/dist/capabilities/event-emitter.cap.d.ts +4 -0
- package/dist/capabilities/fan-control.cap.d.ts +15 -0
- package/dist/capabilities/feature-probe.cap.d.ts +4 -0
- package/dist/capabilities/flood.cap.d.ts +10 -0
- package/dist/capabilities/gas.cap.d.ts +10 -0
- package/dist/capabilities/humidifier.cap.d.ts +15 -0
- package/dist/capabilities/humidity-sensor.cap.d.ts +12 -0
- package/dist/capabilities/image-settings.cap.d.ts +4 -0
- package/dist/capabilities/image.cap.d.ts +4 -0
- package/dist/capabilities/index.d.ts +2 -2
- package/dist/capabilities/intercom.cap.d.ts +4 -0
- package/dist/capabilities/lawn-mower-control.cap.d.ts +12 -0
- package/dist/capabilities/lock-control.cap.d.ts +4 -0
- package/dist/capabilities/media-player.cap.d.ts +4 -0
- package/dist/capabilities/motion-trigger.cap.d.ts +4 -0
- package/dist/capabilities/motion-zones.cap.d.ts +4 -0
- package/dist/capabilities/motion.cap.d.ts +11 -0
- package/dist/capabilities/native-object-detection.cap.d.ts +4 -0
- package/dist/capabilities/navigation.cap.d.ts +4 -0
- package/dist/capabilities/network-link.cap.d.ts +19 -0
- package/dist/capabilities/notifier.cap.d.ts +4 -0
- package/dist/capabilities/numeric-sensor.cap.d.ts +12 -0
- package/dist/capabilities/pet-feeder.cap.d.ts +25 -0
- package/dist/capabilities/power-meter.cap.d.ts +43 -0
- package/dist/capabilities/presence.cap.d.ts +12 -0
- package/dist/capabilities/pressure-sensor.cap.d.ts +12 -0
- package/dist/capabilities/privacy-mask.cap.d.ts +4 -0
- package/dist/capabilities/ptz-autotrack.cap.d.ts +4 -0
- package/dist/capabilities/recording-onboard.cap.d.ts +4 -0
- package/dist/capabilities/recording-signal.cap.d.ts +4 -0
- package/dist/capabilities/scene-monitor.cap.d.ts +4 -0
- package/dist/capabilities/script-runner.cap.d.ts +4 -0
- package/dist/capabilities/smoke.cap.d.ts +10 -0
- package/dist/capabilities/stream-catalog.cap.d.ts +4 -0
- package/dist/capabilities/stream-params.cap.d.ts +4 -0
- package/dist/capabilities/stream-signals.cap.d.ts +4 -0
- package/dist/capabilities/switch.cap.d.ts +10 -0
- package/dist/capabilities/tamper.cap.d.ts +10 -0
- package/dist/capabilities/temperature-sensor.cap.d.ts +12 -0
- package/dist/capabilities/update.cap.d.ts +4 -0
- package/dist/capabilities/vacuum-control.cap.d.ts +32 -0
- package/dist/capabilities/valve.cap.d.ts +12 -0
- package/dist/capabilities/vibration.cap.d.ts +10 -0
- package/dist/capabilities/water-heater.cap.d.ts +17 -0
- package/dist/capabilities/weather.cap.d.ts +27 -0
- package/dist/capabilities/zone-analytics.cap.d.ts +4 -0
- package/dist/capabilities/zone-rules.cap.d.ts +4 -0
- package/dist/capabilities/zones.cap.d.ts +4 -0
- package/dist/generated/history-catalog.d.ts +11 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +868 -34
- package/dist/index.mjs +864 -35
- package/dist/{sleep-BBF1iXUi.mjs → sleep-DxJdzHni.mjs} +26 -1
- package/dist/{sleep-BBXNq778.js → sleep-NZlEFYGX.js} +37 -0
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sleep = require("./sleep-
|
|
2
|
+
const require_sleep = require("./sleep-NZlEFYGX.js");
|
|
3
3
|
const require_event_category = require("./event-category-T43rdQWR.js");
|
|
4
4
|
const require_err_msg = require("./err-msg-Dx2Kor0g.js");
|
|
5
5
|
//#region src/generated/cap-input-defaults.ts
|
package/dist/addon.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { A as viewerUiCapability, At as createSecretsAccess, Bt as PEER_BYTES_STALL_MS, C as isZodSecret, Cn as isSecretClear, Dn as makeSecretMarker, E as HF_REPO, En as isSecretMarkerLike, Ft as registerKnownSecret, Gt as DisposerChain, I as adminUiCapability, It as scrubKnownSecrets, Kt as BaseAddon, Lt as shortSecretRefHash, Mt as clearKnownSecrets, Nt as forgetKnownSecret, On as toSecretFieldView, Ot as resolveSecretViewsIn, P as describeCustomActions, Pt as knownSecretCount, Q as readNodePin, Rt as PEER_BYTES_CHUNK_BYTES, S as collectZodSecretPaths, Sn as classifySecretWrite, Tn as isSecretMarker, Ut as DATAPLANE_SECRET_HEADER, Vt as PEER_BYTES_TICKET_TTL_MS, W as expandCapMethods, Z as nodePin, _ as createEventBusSliceSource, an as formatSecretScope, at as scopeKey, c as asString, cn as normalizeSecretOwner, d as parseJsonUnknown, et as MODEL_FORMATS, f as hfModelUrl, fn as createEvent, g as createDeviceProxy, h as isDeviceScopedCap, in as buildSecretRef, j as DEVICE_CHILDREN_BATCH_MAX, jt as MIN_SCRUBBED_LENGTH, k as deviceOpsCapability, kt as REVALIDATE_AFTER_MS, ln as parseSecretRef, m as DEVICE_SCOPED_CAPS, nn as SECRET_REF_SCHEME, nt as ReadinessTimeoutError, o as asJsonObject, on as globalSecretScope, p as BOOT_RECOVERY_BACKOFF_MS, pn as emitReadiness, qt as normalizeAddonInitResult, r as maskUrlCredentials, rn as arrayItemFieldPath, sn as isSecretRef, t as sleep, tt as ReadinessRegistry, wn as isSecretFieldView, xn as SECRET_CLEAR, zt as PEER_BYTES_MAX_OUTSTANDING } from "./sleep-DxJdzHni.mjs";
|
|
2
2
|
import { t as EventCategory } from "./event-category-C4hVnRo8.mjs";
|
|
3
3
|
import { a as DeviceType, t as errMsg } from "./err-msg-DX6i_MY4.mjs";
|
|
4
4
|
//#region src/generated/cap-input-defaults.ts
|
|
@@ -58,6 +58,38 @@ export declare const airQualitySensorCapability: {
|
|
|
58
58
|
* `scripts/check-runtime-state-durability.ts`.
|
|
59
59
|
*/
|
|
60
60
|
readonly durability: 'restored';
|
|
61
|
+
/**
|
|
62
|
+
* History (D850): recorded series.
|
|
63
|
+
*/
|
|
64
|
+
readonly history: {
|
|
65
|
+
readonly fields: {
|
|
66
|
+
readonly co2Ppm: {
|
|
67
|
+
readonly kind: 'gauge';
|
|
68
|
+
readonly unit: 'ppm';
|
|
69
|
+
readonly deadband: 5;
|
|
70
|
+
};
|
|
71
|
+
readonly vocPpb: {
|
|
72
|
+
readonly kind: 'gauge';
|
|
73
|
+
readonly unit: 'ppb';
|
|
74
|
+
readonly deadband: 5;
|
|
75
|
+
};
|
|
76
|
+
readonly pm25: {
|
|
77
|
+
readonly kind: 'gauge';
|
|
78
|
+
readonly unit: 'ug/m3';
|
|
79
|
+
readonly deadband: 1;
|
|
80
|
+
};
|
|
81
|
+
readonly pm10: {
|
|
82
|
+
readonly kind: 'gauge';
|
|
83
|
+
readonly unit: 'ug/m3';
|
|
84
|
+
readonly deadband: 1;
|
|
85
|
+
};
|
|
86
|
+
readonly aqi: {
|
|
87
|
+
readonly kind: 'gauge';
|
|
88
|
+
readonly unit: 'count';
|
|
89
|
+
readonly deadband: 1;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
};
|
|
61
93
|
/** Clock fields: written, but excluded from the compare that decides
|
|
62
94
|
* whether persisting is worth a SQLite commit. */
|
|
63
95
|
readonly volatileStateFields: readonly ["lastFetchedAt"];
|
|
@@ -177,6 +177,10 @@ export declare const alarmPanelCapability: {
|
|
|
177
177
|
* `scripts/check-runtime-state-durability.ts`.
|
|
178
178
|
*/
|
|
179
179
|
readonly durability: 'restored';
|
|
180
|
+
/**
|
|
181
|
+
* History (D850): none — enum state; arm/disarm history belongs in the events ledger.
|
|
182
|
+
*/
|
|
183
|
+
readonly history: 'none';
|
|
180
184
|
/** Clock fields: written, but excluded from the compare that decides
|
|
181
185
|
* whether persisting is worth a SQLite commit. */
|
|
182
186
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -41,6 +41,19 @@ export declare const ambientLightSensorCapability: {
|
|
|
41
41
|
* `scripts/check-runtime-state-durability.ts`.
|
|
42
42
|
*/
|
|
43
43
|
readonly durability: 'restored';
|
|
44
|
+
/**
|
|
45
|
+
* History (D850): recorded series. Wide range, so a RELATIVE deadband (10 %).
|
|
46
|
+
*/
|
|
47
|
+
readonly history: {
|
|
48
|
+
readonly fields: {
|
|
49
|
+
readonly lux: {
|
|
50
|
+
readonly kind: 'gauge';
|
|
51
|
+
readonly unit: 'lx';
|
|
52
|
+
readonly deadbandPct: 10;
|
|
53
|
+
readonly minIntervalMs: 60000;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
};
|
|
44
57
|
/** Clock fields: written, but excluded from the compare that decides
|
|
45
58
|
* whether persisting is worth a SQLite commit. */
|
|
46
59
|
readonly volatileStateFields: readonly ["lastFetchedAt"];
|
|
@@ -175,6 +175,10 @@ export declare const audioMetricsCapability: {
|
|
|
175
175
|
* `scripts/check-runtime-state-durability.ts`.
|
|
176
176
|
*/
|
|
177
177
|
readonly durability: 'session';
|
|
178
|
+
/**
|
|
179
|
+
* History (D850): none — the level is the addon series `pipeline-analytics/audio-level` (producer `record`); the other numbers move every inference window and duplicate it.
|
|
180
|
+
*/
|
|
181
|
+
readonly history: 'none';
|
|
178
182
|
};
|
|
179
183
|
export type IAudioMetricsProvider = InferProvider<typeof audioMetricsCapability>;
|
|
180
184
|
export { AudioMetricsSnapshotSchema, AudioClassSummarySchema, AudioMetricsHistoryPointSchema, AudioMetricsHistorySchema, };
|
|
@@ -67,5 +67,9 @@ export declare const automationControlCapability: {
|
|
|
67
67
|
* `scripts/check-runtime-state-durability.ts`.
|
|
68
68
|
*/
|
|
69
69
|
readonly durability: 'session';
|
|
70
|
+
/**
|
|
71
|
+
* History (D850): none — configuration and transient run state.
|
|
72
|
+
*/
|
|
73
|
+
readonly history: 'none';
|
|
70
74
|
};
|
|
71
75
|
export type IAutomationControlProvider = InferProvider<typeof automationControlCapability>;
|
|
@@ -149,6 +149,17 @@ export declare const batteryCapability: {
|
|
|
149
149
|
* `scripts/check-runtime-state-durability.ts`.
|
|
150
150
|
*/
|
|
151
151
|
readonly durability: 'restored';
|
|
152
|
+
/**
|
|
153
|
+
* History (D850): recorded series. The generic capture replaces the `battery` series of `pipeline-analytics:stats-5m`.
|
|
154
|
+
*/
|
|
155
|
+
readonly history: {
|
|
156
|
+
readonly fields: {
|
|
157
|
+
readonly percentage: {
|
|
158
|
+
readonly kind: 'gauge';
|
|
159
|
+
readonly unit: '%';
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
};
|
|
152
163
|
/** Clock fields: written, but excluded from the compare that decides
|
|
153
164
|
* whether persisting is worth a SQLite commit. */
|
|
154
165
|
readonly volatileStateFields: readonly ["lastUpdated"];
|
|
@@ -42,6 +42,16 @@ export declare const binaryCapability: {
|
|
|
42
42
|
* `scripts/check-runtime-state-durability.ts`.
|
|
43
43
|
*/
|
|
44
44
|
readonly durability: 'restored';
|
|
45
|
+
/**
|
|
46
|
+
* History (D850): recorded series.
|
|
47
|
+
*/
|
|
48
|
+
readonly history: {
|
|
49
|
+
readonly fields: {
|
|
50
|
+
readonly on: {
|
|
51
|
+
readonly kind: 'boolean';
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
};
|
|
45
55
|
/** Clock fields: written, but excluded from the compare that decides
|
|
46
56
|
* whether persisting is worth a SQLite commit. */
|
|
47
57
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -67,5 +67,17 @@ export declare const brightnessCapability: {
|
|
|
67
67
|
* `scripts/check-runtime-state-durability.ts`.
|
|
68
68
|
*/
|
|
69
69
|
readonly durability: 'session';
|
|
70
|
+
/**
|
|
71
|
+
* History (D850): recorded series. Actuator tier: level keeps every change.
|
|
72
|
+
*/
|
|
73
|
+
readonly history: {
|
|
74
|
+
readonly fields: {
|
|
75
|
+
readonly percentage: {
|
|
76
|
+
readonly kind: 'gauge';
|
|
77
|
+
readonly unit: '%';
|
|
78
|
+
readonly minIntervalMs: 0;
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
};
|
|
70
82
|
};
|
|
71
83
|
export type IBrightnessProvider = InferProvider<typeof brightnessCapability>;
|
|
@@ -403,5 +403,9 @@ export declare const cameraStreamsCapability: {
|
|
|
403
403
|
* `scripts/check-runtime-state-durability.ts`.
|
|
404
404
|
*/
|
|
405
405
|
readonly durability: 'session';
|
|
406
|
+
/**
|
|
407
|
+
* History (D850): none — `online` duplicates device-status.online (one authority); slot data is nested enum/string.
|
|
408
|
+
*/
|
|
409
|
+
readonly history: 'none';
|
|
406
410
|
};
|
|
407
411
|
export type ICameraStreamsProvider = InferProvider<typeof cameraStreamsCapability>;
|
|
@@ -378,6 +378,68 @@ export interface DeviceConfigSpec {
|
|
|
378
378
|
export type RuntimeStateDurability = 'session' | 'restored';
|
|
379
379
|
/** The default applied to a `runtimeState` cap that declares no `durability`. */
|
|
380
380
|
export declare const DEFAULT_RUNTIME_STATE_DURABILITY: RuntimeStateDurability;
|
|
381
|
+
/**
|
|
382
|
+
* Unit of a recorded history series. A closed set: the History tab formats by
|
|
383
|
+
* it. `'ug/m3'` is the ASCII-safe id of micrograms per cubic metre — render it
|
|
384
|
+
* through {@link HISTORY_UNIT_LABELS}. A series whose unit is a per-device fact
|
|
385
|
+
* names a sibling field with {@link CapabilityHistoryField.unitFrom} instead.
|
|
386
|
+
*/
|
|
387
|
+
export type HistoryUnit = '%' | 'dBFS' | 'dBm' | '°C' | 'W' | 'kWh' | 'V' | 'A' | 'VA' | 'lx' | 'ppm' | 'ppb' | 'ug/m3' | 'hPa' | 'count' | 'ratio' | 'ms' | 's' | 'days' | 'bytes';
|
|
388
|
+
/** Display label per {@link HistoryUnit} (only `'ug/m3'` differs from its id). */
|
|
389
|
+
export declare const HISTORY_UNIT_LABELS: Readonly<Record<HistoryUnit, string>>;
|
|
390
|
+
/** One `runtimeState` field recorded as a history series. */
|
|
391
|
+
export interface CapabilityHistoryField {
|
|
392
|
+
/**
|
|
393
|
+
* `gauge` — a level, averaged in a rollup. `counter` — a MONOTONIC hardware
|
|
394
|
+
* meter only (`kwhTotal`); a drop is a reset, never a negative reading. A
|
|
395
|
+
* counter that restarts with the addon (`pressCountSinceStart`) is not one.
|
|
396
|
+
* `boolean` — stored 0/1; a rollup gives the fraction of time true.
|
|
397
|
+
*/
|
|
398
|
+
readonly kind: 'gauge' | 'counter' | 'boolean';
|
|
399
|
+
/** Fixed unit of the series. Mutually exclusive with {@link unitFrom}. */
|
|
400
|
+
readonly unit?: HistoryUnit;
|
|
401
|
+
/**
|
|
402
|
+
* Path of a SIBLING `runtimeState` field (a string or enum) that carries this
|
|
403
|
+
* device's unit — `weather.temperature` takes it from `temperatureUnit`. The
|
|
404
|
+
* catalog records the path; the reader resolves it per device. Mutually
|
|
405
|
+
* exclusive with {@link unit}.
|
|
406
|
+
*/
|
|
407
|
+
readonly unitFrom?: string;
|
|
408
|
+
readonly displayName?: string;
|
|
409
|
+
/** Drop a change smaller than this (ABSOLUTE) — anti-jitter for noisy gauges. */
|
|
410
|
+
readonly deadband?: number;
|
|
411
|
+
/**
|
|
412
|
+
* Drop a change smaller than this percentage of the last recorded value
|
|
413
|
+
* (RELATIVE) — for a wide-range gauge such as lux. Applied together with
|
|
414
|
+
* {@link deadband} when both are set: a change must clear both.
|
|
415
|
+
*/
|
|
416
|
+
readonly deadbandPct?: number;
|
|
417
|
+
/**
|
|
418
|
+
* At most one raw point per this many ms per series. Absent means the capture
|
|
419
|
+
* floor of the kind: 10 000 for `gauge` and `counter`, none for `boolean`
|
|
420
|
+
* (change-only). Set it ABOVE the floor to be sparser; the floor is not
|
|
421
|
+
* lowered by a smaller value except `0`, which a field may state to opt out
|
|
422
|
+
* of the floor (a flapping state that must not lose an edge).
|
|
423
|
+
*/
|
|
424
|
+
readonly minIntervalMs?: number;
|
|
425
|
+
/**
|
|
426
|
+
* Device types for which this field is NOT captured. `motion.detected` is a
|
|
427
|
+
* series for a PIR sensor and not for a camera, whose motion is already an
|
|
428
|
+
* addon series and a ledger.
|
|
429
|
+
*/
|
|
430
|
+
readonly excludeDeviceTypes?: readonly DeviceType[];
|
|
431
|
+
}
|
|
432
|
+
/**
|
|
433
|
+
* The `history` block of a cap with `runtimeState`: `'none'` is an explicit
|
|
434
|
+
* answer; otherwise `fields` maps TOP-LEVEL or fixed-object (`a.b`) paths of
|
|
435
|
+
* `runtimeState` to a series. A path never goes into an array or a record keyed
|
|
436
|
+
* by runtime ids. Enforced by `scripts/check-cap-history-declared.ts`.
|
|
437
|
+
*/
|
|
438
|
+
export type CapabilityHistory = 'none' | {
|
|
439
|
+
readonly fields: Readonly<Record<string, CapabilityHistoryField>>;
|
|
440
|
+
};
|
|
441
|
+
/** Capture floor (ms) applied to `gauge` / `counter` series when a field states none. */
|
|
442
|
+
export declare const HISTORY_DEFAULT_MIN_INTERVAL_MS = 10000;
|
|
381
443
|
/**
|
|
382
444
|
* How a COMPOSED provider answers a method it cannot forward yet (D663). A
|
|
383
445
|
* composition that ADDS a cap to a device serves this cap's methods from here
|
|
@@ -516,6 +578,14 @@ export interface CapabilityDefinition<TName extends string = string, TMethods ex
|
|
|
516
578
|
* trick with `ts` for the two hot caps; this is the same idea, declared.
|
|
517
579
|
*/
|
|
518
580
|
readonly volatileStateFields?: readonly string[];
|
|
581
|
+
/**
|
|
582
|
+
* Which `runtimeState` fields are recorded as long-term history series
|
|
583
|
+
* (D850), or `'none'`. Mandatory for every cap declaring `runtimeState` —
|
|
584
|
+
* `scripts/check-cap-history-declared.ts` fails the build otherwise. See
|
|
585
|
+
* {@link CapabilityHistory}; `npm run codegen` projects it into
|
|
586
|
+
* `generated/history-catalog.ts`.
|
|
587
|
+
*/
|
|
588
|
+
readonly history?: CapabilityHistory;
|
|
519
589
|
/**
|
|
520
590
|
* Declarative settings spec. When present, the device-manager's
|
|
521
591
|
* settings aggregator auto-derives the ConfigUISchema and routes
|
|
@@ -35,6 +35,16 @@ export declare const carbonMonoxideCapability: {
|
|
|
35
35
|
* `scripts/check-runtime-state-durability.ts`.
|
|
36
36
|
*/
|
|
37
37
|
readonly durability: 'restored';
|
|
38
|
+
/**
|
|
39
|
+
* History (D850): recorded series.
|
|
40
|
+
*/
|
|
41
|
+
readonly history: {
|
|
42
|
+
readonly fields: {
|
|
43
|
+
readonly detected: {
|
|
44
|
+
readonly kind: 'boolean';
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
};
|
|
38
48
|
/** Clock fields: written, but excluded from the compare that decides
|
|
39
49
|
* whether persisting is worth a SQLite commit. */
|
|
40
50
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -206,5 +206,37 @@ export declare const climateControlCapability: {
|
|
|
206
206
|
* `scripts/check-runtime-state-durability.ts`.
|
|
207
207
|
*/
|
|
208
208
|
readonly durability: 'session';
|
|
209
|
+
/**
|
|
210
|
+
* History (D850): recorded series. Celsius by contract; setpoints keep every change (`minIntervalMs: 0`).
|
|
211
|
+
*/
|
|
212
|
+
readonly history: {
|
|
213
|
+
readonly fields: {
|
|
214
|
+
readonly currentTemp: {
|
|
215
|
+
readonly kind: 'gauge';
|
|
216
|
+
readonly unit: '°C';
|
|
217
|
+
readonly deadband: 0.1;
|
|
218
|
+
};
|
|
219
|
+
readonly currentHumidity: {
|
|
220
|
+
readonly kind: 'gauge';
|
|
221
|
+
readonly unit: '%';
|
|
222
|
+
readonly deadband: 0.5;
|
|
223
|
+
};
|
|
224
|
+
readonly target: {
|
|
225
|
+
readonly kind: 'gauge';
|
|
226
|
+
readonly unit: '°C';
|
|
227
|
+
readonly minIntervalMs: 0;
|
|
228
|
+
};
|
|
229
|
+
readonly targetHigh: {
|
|
230
|
+
readonly kind: 'gauge';
|
|
231
|
+
readonly unit: '°C';
|
|
232
|
+
readonly minIntervalMs: 0;
|
|
233
|
+
};
|
|
234
|
+
readonly targetLow: {
|
|
235
|
+
readonly kind: 'gauge';
|
|
236
|
+
readonly unit: '°C';
|
|
237
|
+
readonly minIntervalMs: 0;
|
|
238
|
+
};
|
|
239
|
+
};
|
|
240
|
+
};
|
|
209
241
|
};
|
|
210
242
|
export type IClimateControlProvider = InferProvider<typeof climateControlCapability>;
|
|
@@ -187,6 +187,10 @@ export declare const colorCapability: {
|
|
|
187
187
|
* `scripts/check-runtime-state-durability.ts`.
|
|
188
188
|
*/
|
|
189
189
|
readonly durability: 'session';
|
|
190
|
+
/**
|
|
191
|
+
* History (D850): none — nested and cosmetic.
|
|
192
|
+
*/
|
|
193
|
+
readonly history: 'none';
|
|
190
194
|
};
|
|
191
195
|
export type IColorProvider = InferProvider<typeof colorCapability>;
|
|
192
196
|
export {};
|
|
@@ -39,6 +39,10 @@ export declare const connectivityCapability: {
|
|
|
39
39
|
* `scripts/check-runtime-state-durability.ts`.
|
|
40
40
|
*/
|
|
41
41
|
readonly durability: 'restored';
|
|
42
|
+
/**
|
|
43
|
+
* History (D850): none — duplicates device-status.online (one authority for availability).
|
|
44
|
+
*/
|
|
45
|
+
readonly history: 'none';
|
|
42
46
|
/** Clock fields: written, but excluded from the compare that decides
|
|
43
47
|
* whether persisting is worth a SQLite commit. */
|
|
44
48
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -227,6 +227,10 @@ export declare const consumablesCapability: {
|
|
|
227
227
|
* `scripts/check-runtime-state-durability.ts`.
|
|
228
228
|
*/
|
|
229
229
|
readonly durability: 'restored';
|
|
230
|
+
/**
|
|
231
|
+
* History (D850): none — `items` is an array keyed by runtime ids; a history path never enters it.
|
|
232
|
+
*/
|
|
233
|
+
readonly history: 'none';
|
|
230
234
|
/** Clocks, not content: a re-read that changed no item costs no commit. */
|
|
231
235
|
readonly volatileStateFields: readonly ["lastChangedAt", "lastFetchedAt"];
|
|
232
236
|
};
|
|
@@ -43,6 +43,16 @@ export declare const contactCapability: {
|
|
|
43
43
|
* `scripts/check-runtime-state-durability.ts`.
|
|
44
44
|
*/
|
|
45
45
|
readonly durability: 'restored';
|
|
46
|
+
/**
|
|
47
|
+
* History (D850): recorded series.
|
|
48
|
+
*/
|
|
49
|
+
readonly history: {
|
|
50
|
+
readonly fields: {
|
|
51
|
+
readonly entryOpen: {
|
|
52
|
+
readonly kind: 'boolean';
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
};
|
|
46
56
|
/** Clock fields: written, but excluded from the compare that decides
|
|
47
57
|
* whether persisting is worth a SQLite commit. */
|
|
48
58
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -168,6 +168,10 @@ export declare const controlCapability: {
|
|
|
168
168
|
* `scripts/check-runtime-state-durability.ts`.
|
|
169
169
|
*/
|
|
170
170
|
readonly durability: 'session';
|
|
171
|
+
/**
|
|
172
|
+
* History (D850): none — `value` is a number/string union; configuration entity.
|
|
173
|
+
*/
|
|
174
|
+
readonly history: 'none';
|
|
171
175
|
};
|
|
172
176
|
export type IControlProvider = InferProvider<typeof controlCapability>;
|
|
173
177
|
export {};
|
|
@@ -106,6 +106,18 @@ export declare const coverCapability: {
|
|
|
106
106
|
* `scripts/check-runtime-state-durability.ts`.
|
|
107
107
|
*/
|
|
108
108
|
readonly durability: 'restored';
|
|
109
|
+
/**
|
|
110
|
+
* History (D850): recorded series. Actuator tier: position keeps every tick of a movement.
|
|
111
|
+
*/
|
|
112
|
+
readonly history: {
|
|
113
|
+
readonly fields: {
|
|
114
|
+
readonly position: {
|
|
115
|
+
readonly kind: 'gauge';
|
|
116
|
+
readonly unit: '%';
|
|
117
|
+
readonly minIntervalMs: 0;
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
};
|
|
109
121
|
/** Clock fields: written, but excluded from the compare that decides
|
|
110
122
|
* whether persisting is worth a SQLite commit. */
|
|
111
123
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -165,6 +165,10 @@ export declare const dayNightCapability: {
|
|
|
165
165
|
* `scripts/check-runtime-state-durability.ts`.
|
|
166
166
|
*/
|
|
167
167
|
readonly durability: 'restored';
|
|
168
|
+
/**
|
|
169
|
+
* History (D850): none — firmware configuration, not a measurement.
|
|
170
|
+
*/
|
|
171
|
+
readonly history: 'none';
|
|
168
172
|
/** Clock fields: written, but excluded from the compare that decides
|
|
169
173
|
* whether persisting is worth a SQLite commit. */
|
|
170
174
|
readonly volatileStateFields: readonly ["lastFetchedAt"];
|
|
@@ -106,6 +106,10 @@ export declare const deviceDiscoveryCapability: {
|
|
|
106
106
|
* `scripts/check-runtime-state-durability.ts`.
|
|
107
107
|
*/
|
|
108
108
|
readonly durability: 'session';
|
|
109
|
+
/**
|
|
110
|
+
* History (D850): none — inventory.
|
|
111
|
+
*/
|
|
112
|
+
readonly history: 'none';
|
|
109
113
|
readonly methods: {
|
|
110
114
|
/**
|
|
111
115
|
* Snapshot of the current `discovered` list. Returns the
|
|
@@ -57,6 +57,16 @@ export declare const deviceStatusCapability: {
|
|
|
57
57
|
* `scripts/check-runtime-state-durability.ts`.
|
|
58
58
|
*/
|
|
59
59
|
readonly durability: 'restored';
|
|
60
|
+
/**
|
|
61
|
+
* History (D850): recorded series. The ONE availability series.
|
|
62
|
+
*/
|
|
63
|
+
readonly history: {
|
|
64
|
+
readonly fields: {
|
|
65
|
+
readonly online: {
|
|
66
|
+
readonly kind: 'boolean';
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
};
|
|
60
70
|
/** Clock fields: written, but excluded from the compare that decides
|
|
61
71
|
* whether persisting is worth a SQLite commit. */
|
|
62
72
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -74,5 +74,9 @@ export declare const doorbellCapability: {
|
|
|
74
74
|
* `scripts/check-runtime-state-durability.ts`.
|
|
75
75
|
*/
|
|
76
76
|
readonly durability: 'restored';
|
|
77
|
+
/**
|
|
78
|
+
* History (D850): none — `pressCountSinceStart` resets with the addon, so it is not a monotonic meter; presses live in the events ledger.
|
|
79
|
+
*/
|
|
80
|
+
readonly history: 'none';
|
|
77
81
|
};
|
|
78
82
|
export type IDoorbellProvider = InferProvider<typeof doorbellCapability>;
|
|
@@ -62,6 +62,10 @@ export declare const enumSensorCapability: {
|
|
|
62
62
|
* `scripts/check-runtime-state-durability.ts`.
|
|
63
63
|
*/
|
|
64
64
|
readonly durability: 'restored';
|
|
65
|
+
/**
|
|
66
|
+
* History (D850): none — text/enum state has no history (non-goal).
|
|
67
|
+
*/
|
|
68
|
+
readonly history: 'none';
|
|
65
69
|
/** Clock fields: written, but excluded from the compare that decides
|
|
66
70
|
* whether persisting is worth a SQLite commit. */
|
|
67
71
|
readonly volatileStateFields: readonly ["lastFetchedAt"];
|
|
@@ -81,5 +81,9 @@ export declare const eventEmitterCapability: {
|
|
|
81
81
|
* `scripts/check-runtime-state-durability.ts`.
|
|
82
82
|
*/
|
|
83
83
|
readonly durability: 'session';
|
|
84
|
+
/**
|
|
85
|
+
* History (D850): none — `eventCountSinceStart` resets with the addon; events live in ledgers.
|
|
86
|
+
*/
|
|
87
|
+
readonly history: 'none';
|
|
84
88
|
};
|
|
85
89
|
export type IEventEmitterProvider = InferProvider<typeof eventEmitterCapability>;
|
|
@@ -102,5 +102,20 @@ export declare const fanControlCapability: {
|
|
|
102
102
|
* `scripts/check-runtime-state-durability.ts`.
|
|
103
103
|
*/
|
|
104
104
|
readonly durability: 'session';
|
|
105
|
+
/**
|
|
106
|
+
* History (D850): recorded series. Actuator tier: speed keeps every change.
|
|
107
|
+
*/
|
|
108
|
+
readonly history: {
|
|
109
|
+
readonly fields: {
|
|
110
|
+
readonly percentage: {
|
|
111
|
+
readonly kind: 'gauge';
|
|
112
|
+
readonly unit: '%';
|
|
113
|
+
readonly minIntervalMs: 0;
|
|
114
|
+
};
|
|
115
|
+
readonly oscillating: {
|
|
116
|
+
readonly kind: 'boolean';
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
};
|
|
105
120
|
};
|
|
106
121
|
export type IFanControlProvider = InferProvider<typeof fanControlCapability>;
|
|
@@ -82,5 +82,9 @@ export declare const featureProbeCapability: {
|
|
|
82
82
|
* `scripts/check-runtime-state-durability.ts`.
|
|
83
83
|
*/
|
|
84
84
|
readonly durability: 'session';
|
|
85
|
+
/**
|
|
86
|
+
* History (D850): none — static identity and capability probe.
|
|
87
|
+
*/
|
|
88
|
+
readonly history: 'none';
|
|
85
89
|
};
|
|
86
90
|
export type IFeatureProbeProvider = InferProvider<typeof featureProbeCapability>;
|
|
@@ -39,6 +39,16 @@ export declare const floodCapability: {
|
|
|
39
39
|
* `scripts/check-runtime-state-durability.ts`.
|
|
40
40
|
*/
|
|
41
41
|
readonly durability: 'restored';
|
|
42
|
+
/**
|
|
43
|
+
* History (D850): recorded series.
|
|
44
|
+
*/
|
|
45
|
+
readonly history: {
|
|
46
|
+
readonly fields: {
|
|
47
|
+
readonly flooded: {
|
|
48
|
+
readonly kind: 'boolean';
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
};
|
|
42
52
|
/** Clock fields: written, but excluded from the compare that decides
|
|
43
53
|
* whether persisting is worth a SQLite commit. */
|
|
44
54
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -36,6 +36,16 @@ export declare const gasCapability: {
|
|
|
36
36
|
* `scripts/check-runtime-state-durability.ts`.
|
|
37
37
|
*/
|
|
38
38
|
readonly durability: 'restored';
|
|
39
|
+
/**
|
|
40
|
+
* History (D850): recorded series.
|
|
41
|
+
*/
|
|
42
|
+
readonly history: {
|
|
43
|
+
readonly fields: {
|
|
44
|
+
readonly detected: {
|
|
45
|
+
readonly kind: 'boolean';
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
};
|
|
39
49
|
/** Clock fields: written, but excluded from the compare that decides
|
|
40
50
|
* whether persisting is worth a SQLite commit. */
|
|
41
51
|
readonly volatileStateFields: readonly ["lastChangedAt"];
|
|
@@ -84,5 +84,20 @@ export declare const humidifierCapability: {
|
|
|
84
84
|
* `scripts/check-runtime-state-durability.ts`.
|
|
85
85
|
*/
|
|
86
86
|
readonly durability: 'session';
|
|
87
|
+
/**
|
|
88
|
+
* History (D850): recorded series.
|
|
89
|
+
*/
|
|
90
|
+
readonly history: {
|
|
91
|
+
readonly fields: {
|
|
92
|
+
readonly currentHumidity: {
|
|
93
|
+
readonly kind: 'gauge';
|
|
94
|
+
readonly unit: '%';
|
|
95
|
+
readonly deadband: 0.5;
|
|
96
|
+
};
|
|
97
|
+
readonly on: {
|
|
98
|
+
readonly kind: 'boolean';
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
};
|
|
87
102
|
};
|
|
88
103
|
export type IHumidifierProvider = InferProvider<typeof humidifierCapability>;
|
|
@@ -45,6 +45,18 @@ export declare const humiditySensorCapability: {
|
|
|
45
45
|
* `scripts/check-runtime-state-durability.ts`.
|
|
46
46
|
*/
|
|
47
47
|
readonly durability: 'restored';
|
|
48
|
+
/**
|
|
49
|
+
* History (D850): recorded series.
|
|
50
|
+
*/
|
|
51
|
+
readonly history: {
|
|
52
|
+
readonly fields: {
|
|
53
|
+
readonly percent: {
|
|
54
|
+
readonly kind: 'gauge';
|
|
55
|
+
readonly unit: '%';
|
|
56
|
+
readonly deadband: 0.5;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
};
|
|
48
60
|
/** Clock fields: written, but excluded from the compare that decides
|
|
49
61
|
* whether persisting is worth a SQLite commit. */
|
|
50
62
|
readonly volatileStateFields: readonly ["lastFetchedAt"];
|
|
@@ -360,6 +360,10 @@ export declare const imageSettingsCapability: {
|
|
|
360
360
|
* `scripts/check-runtime-state-durability.ts`.
|
|
361
361
|
*/
|
|
362
362
|
readonly durability: 'restored';
|
|
363
|
+
/**
|
|
364
|
+
* History (D850): none — camera image configuration (operator intent), not a trend.
|
|
365
|
+
*/
|
|
366
|
+
readonly history: 'none';
|
|
363
367
|
/** Clock fields: written, but excluded from the compare that decides
|
|
364
368
|
* whether persisting is worth a SQLite commit. */
|
|
365
369
|
readonly volatileStateFields: readonly ["lastFetchedAt"];
|
|
@@ -49,5 +49,9 @@ export declare const imageCapability: {
|
|
|
49
49
|
* `scripts/check-runtime-state-durability.ts`.
|
|
50
50
|
*/
|
|
51
51
|
readonly durability: 'session';
|
|
52
|
+
/**
|
|
53
|
+
* History (D850): none — not numeric.
|
|
54
|
+
*/
|
|
55
|
+
readonly history: 'none';
|
|
52
56
|
};
|
|
53
57
|
export type IImageProvider = InferProvider<typeof imageCapability>;
|
|
@@ -36,8 +36,8 @@ export { BrokerAddInputSchema, BrokerGetStateInputSchema, type BrokerInfo, type
|
|
|
36
36
|
export { cameraPipelineConfigCapability, type ICameraPipelineConfigProvider, } from './camera-pipeline-config.cap.js';
|
|
37
37
|
export { cameraStreamsCapability, type ICameraStreamsProvider, type PickedCamStream, PickedCamStreamSchema, type PickStreamPreferences, PickStreamPreferencesSchema, type PickStreamRequirements, PickStreamRequirementsSchema, type StreamCodec, StreamCodecSchema, } from './camera-streams.cap.js';
|
|
38
38
|
export { emitsCollectionSelector, extractNestedAddonId, isArrayOutputSchema, isCollectionArrayMethod, isObjectInput, isVoidInput, kebabToCamel, looseSchema, objectInputDeclaresAddonId, objectInputDeclaresRequiredDeviceId, procedureAuthKey, resolveMethodAuth, } from './cap-router-predicates.js';
|
|
39
|
-
export type { CapabilityDefinition, CapabilityEventSchema, CapabilityMethodAuth, CapabilityMethodCaller, CapabilityMethodKind, CapabilityMethodOptions, CapabilityMethodSchema, CapabilityMountHint, CapabilityMountKind, CapabilityStatusItemArray, CapabilityStatusKind, CapabilityStatusSchema, CapCaller, DeviceConfigDerivedFormUi, DeviceConfigSpec, DeviceConfigUiSpec, DeviceConfigWidgetUi, DeviceSettingsContribution, InferDeviceProxyCap, InferEvents, InferName, InferNativeProvider, InferProvider, InferRuntimeState, ProviderKind, RuntimeStateDurability, UiContribution, UiContributionKind, UiContributionRemote, } from './capability-definition.js';
|
|
40
|
-
export { DEFAULT_RUNTIME_STATE_DURABILITY, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATUS_METHOD, event, expandCapMethods, isDeviceConfigCap, method, optionalMethod, PROVIDER_PIN_FIELD, resolveCapMount, } from './capability-definition.js';
|
|
39
|
+
export type { CapabilityDefinition, CapabilityEventSchema, CapabilityMethodAuth, CapabilityMethodCaller, CapabilityMethodKind, CapabilityMethodOptions, CapabilityMethodSchema, CapabilityMountHint, CapabilityMountKind, CapabilityStatusItemArray, CapabilityStatusKind, CapabilityStatusSchema, CapCaller, DeviceConfigDerivedFormUi, DeviceConfigSpec, DeviceConfigUiSpec, DeviceConfigWidgetUi, DeviceSettingsContribution, InferDeviceProxyCap, InferEvents, InferName, InferNativeProvider, InferProvider, InferRuntimeState, CapabilityHistory, CapabilityHistoryField, HistoryUnit, ProviderKind, RuntimeStateDurability, UiContribution, UiContributionKind, UiContributionRemote, } from './capability-definition.js';
|
|
40
|
+
export { DEFAULT_RUNTIME_STATE_DURABILITY, HISTORY_DEFAULT_MIN_INTERVAL_MS, HISTORY_UNIT_LABELS, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATUS_METHOD, event, expandCapMethods, isDeviceConfigCap, method, optionalMethod, PROVIDER_PIN_FIELD, resolveCapMount, } from './capability-definition.js';
|
|
41
41
|
export { COMPOSER_RUNNER_ID, type ComposerApplyInput, ComposerApplyInputSchema, type ComposerApplyResult, ComposerApplyResultSchema, type ComposerBlock, ComposerBlockSchema, type ComposerBlockVerdict, ComposerBlockVerdictSchema, type ComposerUnreadableBlock, ComposerUnreadableBlockSchema, composerCapability, type IComposerProvider, } from './composer.cap.js';
|
|
42
42
|
export { CORE_BLOCK_ADDON_PREFIX, CORE_BLOCKS_ADDON_ID, type CompositionBlockInput, CompositionBlockInputSchema, type CompositionBlockPatch, type CompositionCustomizationRead, CompositionCustomizationReadSchema, type CompositionGetRead, CompositionGetReadSchema, type CompositionListRead, CompositionListReadSchema, type CompositionStateRead, CompositionStateReadSchema, type CompositionView, CompositionViewSchema, type CoreBlock, type CoreBlockCompileInput, CoreBlockCompileInputSchema, type CoreBlockCompileResult, CoreBlockCompileResultSchema, type CoreBlockFiles, CoreBlockFilesSchema, type CoreBlockInput, CoreBlockInputFieldsSchema, CoreBlockInputSchema, type CoreBlockPlacement, CoreBlockPlacementSchema, CoreBlockSchema, type CoreBlockSource, type CoreBlockSourceKind, CoreBlockSourceSchema, type CoreBlockStatus, CoreBlockStatusSchema, coreBlockAddonId, coreBlockComposition, coreBlockIdFromAddonId, coreBlockSourceKind, coreBlocksCapability, DEFAULT_CORE_BLOCK_ENTRY, type ICoreBlocksProvider, normalizeCoreBlockWrite, resolveCoreBlockEntry, resolveCoreBlockFiles, } from './core-blocks.cap.js';
|
|
43
43
|
export * from './custom-actions.js';
|