@camstack/system 1.2.431 → 1.2.433
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/{tls-C5IYg3V5.js → agent-https-CHZTxK-q.js} +123 -759
- package/dist/{tls-CpcGkeJV.mjs → agent-https-DtRU9A7I.mjs} +89 -611
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
- package/dist/builtins/alerts/alerts.addon.js +1 -1
- package/dist/builtins/alerts/alerts.addon.mjs +1 -1
- package/dist/builtins/autotrack/index.js +1 -1
- package/dist/builtins/autotrack/index.mjs +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
- package/dist/builtins/calendars/calendars.addon.js +1 -1
- package/dist/builtins/calendars/calendars.addon.mjs +1 -1
- package/dist/builtins/camera-grid/index.js +1 -1
- package/dist/builtins/camera-grid/index.mjs +1 -1
- package/dist/builtins/composer/composer.addon.js +2 -2
- package/dist/builtins/composer/composer.addon.mjs +2 -2
- package/dist/builtins/console-logging/index.js +1 -1
- package/dist/builtins/console-logging/index.mjs +1 -1
- package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
- package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
- package/dist/builtins/device-manager/device-manager.addon.js +2 -2
- package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
- package/dist/builtins/hub-forwarder/index.js +1 -1
- package/dist/builtins/hub-forwarder/index.mjs +1 -1
- package/dist/builtins/keychain/index.js +3 -3
- package/dist/builtins/keychain/index.mjs +3 -3
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
- package/dist/builtins/local-auth/local-auth.addon.js +2 -2
- package/dist/builtins/local-auth/local-auth.addon.mjs +2 -2
- package/dist/builtins/local-network/agent-mdns.d.ts +51 -0
- package/dist/builtins/local-network/local-network.addon.js +20 -45
- package/dist/builtins/local-network/local-network.addon.mjs +2 -28
- package/dist/builtins/loki-logging/index.js +1 -1
- package/dist/builtins/loki-logging/index.mjs +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
- package/dist/builtins/platform-probe/index.js +1 -1
- package/dist/builtins/platform-probe/index.mjs +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
- package/dist/builtins/snapshot/index.js +1 -1
- package/dist/builtins/snapshot/index.mjs +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
- package/dist/builtins/sqlite-storage/index.js +1 -1
- package/dist/builtins/sqlite-storage/index.mjs +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +3 -3
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +3 -3
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
- package/dist/builtins/system-config/system-config.addon.js +1370 -28
- package/dist/builtins/system-config/system-config.addon.mjs +1344 -25
- package/dist/builtins/winston-logging/index.js +1 -1
- package/dist/builtins/winston-logging/index.mjs +1 -1
- package/dist/{composition-sources-Cw_TXEq9.mjs → composition-sources-8-cpAt1c.mjs} +1 -1
- package/dist/{composition-sources-o5MPSlk6.js → composition-sources-BgJWQMjr.js} +1 -1
- package/dist/{constants-BcNaVkvI.js → constants-Ah3T_KAW.js} +2 -2
- package/dist/{constants-CttE77VF.mjs → constants-Cg9ve13y.mjs} +2 -2
- package/dist/{device-ca-B-BTxeCj.mjs → device-ca-DUrcTW5h.mjs} +1 -1
- package/dist/{device-ca-CKiqh2Iu.js → device-ca-NNP4Jz0P.js} +1 -1
- package/dist/{dist-DxJdci75.js → dist-C6Yvfhpq.js} +360 -1
- package/dist/{dist-CXG6muCR.mjs → dist-DJnlnL7P.mjs} +349 -2
- package/dist/file-host-worker.js +1 -1
- package/dist/file-host-worker.mjs +1 -1
- package/dist/hub-mdns-ciao-8_Ed1Za5.mjs +648 -0
- package/dist/hub-mdns-ciao-B50jAU5C.js +821 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +176 -67
- package/dist/index.mjs +96 -13
- package/dist/kernel/index.d.ts +5 -4
- package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +12 -1
- package/dist/kernel/moleculer/agent-ui-unlock.d.ts +40 -0
- package/dist/kernel/moleculer/mesh-authenticator.d.ts +6 -0
- package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
- package/dist/kernel/moleculer/mesh-mtls/index.d.ts +3 -2
- package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +4 -0
- package/dist/kernel/moleculer/mesh-mtls/mesh-certificate-registry.d.ts +2 -2
- package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +3 -2
- package/dist/kernel/moleculer/mesh-mtls/mesh-peer-transport.d.ts +7 -0
- package/dist/kernel/moleculer/mesh-mtls/pairing/agent-pairing.d.ts +204 -0
- package/dist/kernel/moleculer/mesh-mtls/pairing/hub-pairing.d.ts +115 -0
- package/dist/kernel/moleculer/mesh-mtls/pairing/index.d.ts +3 -0
- package/dist/kernel/moleculer/mesh-mtls/pairing/pairing-protocol.d.ts +107 -0
- package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +18 -0
- package/dist/{restore-archive-D_wBL1OO.mjs → restore-archive-C3_rzOCx.mjs} +1 -1
- package/dist/{restore-archive-CQJNoqRK.js → restore-archive-DqPaRjjY.js} +1 -1
- package/dist/{retired-settings-keys-EmDe11cP.mjs → retired-settings-keys-CAWHWDwy.mjs} +1 -1
- package/dist/{retired-settings-keys-g1oifXxR.js → retired-settings-keys-DJBQkZok.js} +1 -1
- package/dist/tls/agent-https-names.d.ts +2 -0
- package/dist/{wal-maintenance-vhPZLYuA.mjs → wal-maintenance-Bc38yI3r.mjs} +0 -0
- package/dist/{wal-maintenance-BW1LIHi0.js → wal-maintenance-CPLvZbzA.js} +0 -0
- package/package.json +1 -1
- package/dist/agent-https-names-CpUSuP4w.js +0 -120
- package/dist/agent-https-names-uetr4OQl.mjs +0 -91
|
@@ -718,7 +718,7 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
718
718
|
return EventCategory;
|
|
719
719
|
}({});
|
|
720
720
|
//#endregion
|
|
721
|
-
//#region ../types/dist/sleep-
|
|
721
|
+
//#region ../types/dist/sleep--g-h2_c_.mjs
|
|
722
722
|
/**
|
|
723
723
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
724
724
|
* window to float samples (D455).
|
|
@@ -16213,6 +16213,241 @@ var keychainCapability = {
|
|
|
16213
16213
|
getState: method(z.object({}), KeychainStateSchema, { auth: "admin" })
|
|
16214
16214
|
}
|
|
16215
16215
|
};
|
|
16216
|
+
/**
|
|
16217
|
+
* device-history — the ONE mechanism for numeric history (D850).
|
|
16218
|
+
*
|
|
16219
|
+
* A device value is recorded because its capability says so (the `history`
|
|
16220
|
+
* block of a `*.cap.ts`, captured hub-side from `DeviceStateChanged`); any
|
|
16221
|
+
* other series is DECLARED by the addon that produces it and fed with points
|
|
16222
|
+
* (`record`) or closed five-minute buckets (`recordBuckets`). Rollups 5m / 1h /
|
|
16223
|
+
* 1d are computed here and nowhere else. Storage is `history.db` (D851).
|
|
16224
|
+
*
|
|
16225
|
+
* Who the PRODUCER is: `declareSeries`, `record` and `recordBuckets` are owner
|
|
16226
|
+
* checked against the `callerAddonId` the transport stamps into a call that
|
|
16227
|
+
* crossed a process (never in an input schema, so a session cannot supply it).
|
|
16228
|
+
* A call with no stamp is refused `not-owner`. The methods are `admin` so a
|
|
16229
|
+
* non-admin session never reaches them; an addon's `ctx.api` call bypasses the
|
|
16230
|
+
* tier by design.
|
|
16231
|
+
*/
|
|
16232
|
+
/** Whose history: a real device, or a cluster node (load, memory). */
|
|
16233
|
+
var DeviceHistorySubjectSchema = z.discriminatedUnion("kind", [z.object({
|
|
16234
|
+
kind: z.literal("device"),
|
|
16235
|
+
deviceId: z.number().int()
|
|
16236
|
+
}), z.object({
|
|
16237
|
+
kind: z.literal("node"),
|
|
16238
|
+
nodeId: z.string().min(1)
|
|
16239
|
+
})]);
|
|
16240
|
+
var DeviceHistoryKindSchema = z.enum([
|
|
16241
|
+
"gauge",
|
|
16242
|
+
"counter",
|
|
16243
|
+
"boolean"
|
|
16244
|
+
]);
|
|
16245
|
+
var DeviceHistoryResolutionSchema = z.enum([
|
|
16246
|
+
"raw",
|
|
16247
|
+
"5m",
|
|
16248
|
+
"1h",
|
|
16249
|
+
"1d"
|
|
16250
|
+
]);
|
|
16251
|
+
/** Why a producer's point or bucket was not stored. Counted, never silent (D391). */
|
|
16252
|
+
var DeviceHistoryRefusalReasonSchema = z.enum([
|
|
16253
|
+
"undeclared",
|
|
16254
|
+
"not-owner",
|
|
16255
|
+
"opted-out",
|
|
16256
|
+
"not-a-real-device",
|
|
16257
|
+
"rate",
|
|
16258
|
+
"ingest-mismatch",
|
|
16259
|
+
"out-of-range"
|
|
16260
|
+
]);
|
|
16261
|
+
var RefusalSchema = z.object({
|
|
16262
|
+
key: z.string(),
|
|
16263
|
+
reason: DeviceHistoryRefusalReasonSchema,
|
|
16264
|
+
count: z.number().int()
|
|
16265
|
+
});
|
|
16266
|
+
var IngestResultSchema = z.object({
|
|
16267
|
+
accepted: z.number().int(),
|
|
16268
|
+
refused: z.array(RefusalSchema).readonly()
|
|
16269
|
+
});
|
|
16270
|
+
var SeriesInfoSchema = z.object({
|
|
16271
|
+
key: z.string(),
|
|
16272
|
+
scope: z.string(),
|
|
16273
|
+
kind: DeviceHistoryKindSchema,
|
|
16274
|
+
/** `null` is unknown (a `unitFrom` series whose device does not state a unit right now), never a guess. */
|
|
16275
|
+
unit: z.string().nullable(),
|
|
16276
|
+
displayName: z.string(),
|
|
16277
|
+
source: z.enum(["cap", "addon"]),
|
|
16278
|
+
firstTs: z.number(),
|
|
16279
|
+
lastTs: z.number()
|
|
16280
|
+
});
|
|
16281
|
+
var QueryPointSchema = z.object({
|
|
16282
|
+
/** Raw: the point's time. Rollup: the bucket start. */
|
|
16283
|
+
t: z.number(),
|
|
16284
|
+
samples: z.number().int(),
|
|
16285
|
+
/** `sum / samples`. */
|
|
16286
|
+
mean: z.number().nullable(),
|
|
16287
|
+
/** Time-weighted mean (`tw_sum / tw_ms`); `null` for bucket-ingested series. For a boolean: the fraction of time true. */
|
|
16288
|
+
twMean: z.number().nullable(),
|
|
16289
|
+
min: z.number(),
|
|
16290
|
+
max: z.number(),
|
|
16291
|
+
/** `null` is unknown, never zero (D393). */
|
|
16292
|
+
last: z.number().nullable()
|
|
16293
|
+
});
|
|
16294
|
+
var QuerySeriesSchema = z.object({
|
|
16295
|
+
scope: z.string(),
|
|
16296
|
+
/** The last point STRICTLY BEFORE `from` in the chosen tier, so a step chart can start at the held value. */
|
|
16297
|
+
before: z.object({
|
|
16298
|
+
t: z.number(),
|
|
16299
|
+
value: z.number().nullable()
|
|
16300
|
+
}).nullable(),
|
|
16301
|
+
points: z.array(QueryPointSchema).readonly()
|
|
16302
|
+
});
|
|
16303
|
+
/** The window part of a query, shared by the device and node forms. */
|
|
16304
|
+
var QueryWindowShape = {
|
|
16305
|
+
key: z.string(),
|
|
16306
|
+
scope: z.string().optional(),
|
|
16307
|
+
from: z.number(),
|
|
16308
|
+
to: z.number(),
|
|
16309
|
+
resolution: z.union([DeviceHistoryResolutionSchema, z.literal("auto")]).default("auto"),
|
|
16310
|
+
maxPoints: z.number().int().positive().max(5e3).default(1e3)
|
|
16311
|
+
};
|
|
16312
|
+
var QueryResultSchema = z.object({
|
|
16313
|
+
resolution: DeviceHistoryResolutionSchema,
|
|
16314
|
+
series: z.array(QuerySeriesSchema).readonly(),
|
|
16315
|
+
truncated: z.boolean()
|
|
16316
|
+
});
|
|
16317
|
+
var TierStatusSchema = z.object({
|
|
16318
|
+
tier: DeviceHistoryResolutionSchema,
|
|
16319
|
+
/** `null` until the first background count answered. */
|
|
16320
|
+
rows: z.number().int().nullable(),
|
|
16321
|
+
/** `rows` times a fixed per-row estimate — approximate, labelled so. */
|
|
16322
|
+
approxBytes: z.number().nullable(),
|
|
16323
|
+
countedAt: z.number().nullable()
|
|
16324
|
+
});
|
|
16325
|
+
/** Operator/diagnostic view: rows per tier, last runs, refusals and drops since boot. */
|
|
16326
|
+
var DeviceHistoryStatusSchema = z.object({
|
|
16327
|
+
startedAt: z.number(),
|
|
16328
|
+
/** The store is declared, series loaded and the first reconcile has answered. */
|
|
16329
|
+
ready: z.boolean(),
|
|
16330
|
+
series: z.number().int(),
|
|
16331
|
+
metrics: z.number().int(),
|
|
16332
|
+
optedOutDevices: z.number().int(),
|
|
16333
|
+
tiers: z.array(TierStatusSchema).readonly(),
|
|
16334
|
+
capture: z.object({
|
|
16335
|
+
eventsSeen: z.number().int(),
|
|
16336
|
+
pointsEmitted: z.number().int(),
|
|
16337
|
+
pointsWritten: z.number().int(),
|
|
16338
|
+
pointsDropped: z.number().int(),
|
|
16339
|
+
bufferDepth: z.number().int(),
|
|
16340
|
+
trailingEmitted: z.number().int(),
|
|
16341
|
+
reconciledPoints: z.number().int(),
|
|
16342
|
+
reconcileRuns: z.number().int(),
|
|
16343
|
+
reconcileFailures: z.number().int(),
|
|
16344
|
+
lastReconcileAt: z.number().nullable(),
|
|
16345
|
+
lastFlushAt: z.number().nullable(),
|
|
16346
|
+
flushFailures: z.number().int(),
|
|
16347
|
+
skipped: z.record(z.string(), z.number().int())
|
|
16348
|
+
}),
|
|
16349
|
+
ingest: z.object({
|
|
16350
|
+
accepted: z.number().int(),
|
|
16351
|
+
refused: z.record(z.string(), z.number().int())
|
|
16352
|
+
}),
|
|
16353
|
+
rollup: z.object({
|
|
16354
|
+
last5mAt: z.number().nullable(),
|
|
16355
|
+
last1hAt: z.number().nullable(),
|
|
16356
|
+
last1dAt: z.number().nullable(),
|
|
16357
|
+
errors: z.number().int(),
|
|
16358
|
+
dirty5m: z.number().int(),
|
|
16359
|
+
dirty1h: z.number().int(),
|
|
16360
|
+
dirty1d: z.number().int()
|
|
16361
|
+
}),
|
|
16362
|
+
retention: z.object({
|
|
16363
|
+
lastRunAt: z.number().nullable(),
|
|
16364
|
+
deleted: z.record(z.string(), z.number().int()),
|
|
16365
|
+
purgedSeries: z.number().int()
|
|
16366
|
+
}),
|
|
16367
|
+
directory: z.object({
|
|
16368
|
+
devices: z.number().int(),
|
|
16369
|
+
lastRefreshAt: z.number().nullable()
|
|
16370
|
+
})
|
|
16371
|
+
});
|
|
16372
|
+
var deviceHistoryCapability = {
|
|
16373
|
+
name: "device-history",
|
|
16374
|
+
scope: "system",
|
|
16375
|
+
mode: "singleton",
|
|
16376
|
+
methods: {
|
|
16377
|
+
/**
|
|
16378
|
+
* The series a DEVICE has, and their span. `deviceId` is a flat top-level field
|
|
16379
|
+
* on purpose: the generated device selector (and so the scope gate) only sees
|
|
16380
|
+
* top-level ids, and a nested `subject.deviceId` would let a principal limited
|
|
16381
|
+
* to one device read another's history. Node series are the admin-only
|
|
16382
|
+
* `listNodeSeries` / `queryNode`.
|
|
16383
|
+
*/
|
|
16384
|
+
listSeries: method(z.object({ deviceId: z.number().int() }), z.array(SeriesInfoSchema).readonly()),
|
|
16385
|
+
listNodeSeries: method(z.object({ nodeId: z.string().min(1) }), z.array(SeriesInfoSchema).readonly(), { auth: "admin" }),
|
|
16386
|
+
/**
|
|
16387
|
+
* One series (or every scope of it) at one resolution. `auto` picks the
|
|
16388
|
+
* finest tier whose retention covers `from` and whose point count fits
|
|
16389
|
+
* `maxPoints`; when even the coarsest tier does not fit, the newest
|
|
16390
|
+
* `maxPoints` points are returned and `truncated` is true.
|
|
16391
|
+
*/
|
|
16392
|
+
query: method(z.object({
|
|
16393
|
+
deviceId: z.number().int(),
|
|
16394
|
+
...QueryWindowShape
|
|
16395
|
+
}), QueryResultSchema),
|
|
16396
|
+
queryNode: method(z.object({
|
|
16397
|
+
nodeId: z.string().min(1),
|
|
16398
|
+
...QueryWindowShape
|
|
16399
|
+
}), QueryResultSchema, { auth: "admin" }),
|
|
16400
|
+
/** Producer: declare (idempotent) a series key this addon owns: `addon:<callerAddonId>/<name>`. */
|
|
16401
|
+
declareSeries: method(z.object({
|
|
16402
|
+
name: z.string().regex(/^[a-z0-9-]+$/),
|
|
16403
|
+
subjectKind: z.enum(["device", "node"]),
|
|
16404
|
+
kind: DeviceHistoryKindSchema,
|
|
16405
|
+
unit: z.string().optional(),
|
|
16406
|
+
displayName: z.string().min(1),
|
|
16407
|
+
ingest: z.enum(["points", "buckets"])
|
|
16408
|
+
}), z.object({ key: z.string() }), {
|
|
16409
|
+
kind: "mutation",
|
|
16410
|
+
auth: "admin"
|
|
16411
|
+
}),
|
|
16412
|
+
/** Producer: points. Low rate: at most one per 10 s per series, sustained. */
|
|
16413
|
+
record: method(z.object({ points: z.array(z.object({
|
|
16414
|
+
key: z.string(),
|
|
16415
|
+
subject: DeviceHistorySubjectSchema,
|
|
16416
|
+
scope: z.string().default(""),
|
|
16417
|
+
ts: z.number(),
|
|
16418
|
+
value: z.number()
|
|
16419
|
+
})).max(5e3) }), IngestResultSchema, {
|
|
16420
|
+
kind: "mutation",
|
|
16421
|
+
auth: "admin"
|
|
16422
|
+
}),
|
|
16423
|
+
/** Producer: CLOSED five-minute buckets. Idempotent upsert keyed (series, bucketStart). */
|
|
16424
|
+
recordBuckets: method(z.object({ buckets: z.array(z.object({
|
|
16425
|
+
key: z.string(),
|
|
16426
|
+
subject: DeviceHistorySubjectSchema,
|
|
16427
|
+
scope: z.string().default(""),
|
|
16428
|
+
bucketStart: z.number(),
|
|
16429
|
+
samples: z.number().int().positive(),
|
|
16430
|
+
sum: z.number(),
|
|
16431
|
+
min: z.number(),
|
|
16432
|
+
max: z.number(),
|
|
16433
|
+
last: z.number().nullable(),
|
|
16434
|
+
lastTs: z.number().nullable()
|
|
16435
|
+
})).max(5e3) }), IngestResultSchema, {
|
|
16436
|
+
kind: "mutation",
|
|
16437
|
+
auth: "admin"
|
|
16438
|
+
}),
|
|
16439
|
+
/** Per-device opt-out. This addon IS the authority: the switch stores nothing elsewhere (D62). */
|
|
16440
|
+
getDeviceEnabled: method(z.object({ deviceId: z.number().int() }), z.object({ enabled: z.boolean() })),
|
|
16441
|
+
setDeviceEnabled: method(z.object({
|
|
16442
|
+
deviceId: z.number().int(),
|
|
16443
|
+
enabled: z.boolean()
|
|
16444
|
+
}), z.object({ enabled: z.boolean() }), {
|
|
16445
|
+
kind: "mutation",
|
|
16446
|
+
auth: "admin"
|
|
16447
|
+
}),
|
|
16448
|
+
getStatus: method(z.object({}), DeviceHistoryStatusSchema, { auth: "admin" })
|
|
16449
|
+
}
|
|
16450
|
+
};
|
|
16216
16451
|
var DeviceCaStatusSchema = z.discriminatedUnion("state", [
|
|
16217
16452
|
z.object({ state: z.literal("absent") }),
|
|
16218
16453
|
z.object({
|
|
@@ -16410,6 +16645,16 @@ var nodeCertificatesCapability = {
|
|
|
16410
16645
|
kind: "mutation",
|
|
16411
16646
|
auth: "admin"
|
|
16412
16647
|
}),
|
|
16648
|
+
/**
|
|
16649
|
+
* The hub unpairs this node (D857): it erases its mesh material, goes back to the
|
|
16650
|
+
* unpaired state and advertises itself again. The call is answered first; the wire
|
|
16651
|
+
* goes down right after, so the hub revokes the node's certificates BEFORE this
|
|
16652
|
+
* connection drops, never after.
|
|
16653
|
+
*/
|
|
16654
|
+
forgetHub: method(z.object({}), z.object({ ok: z.literal(true) }), {
|
|
16655
|
+
kind: "mutation",
|
|
16656
|
+
auth: "admin"
|
|
16657
|
+
}),
|
|
16413
16658
|
/** Install the hub-signed HTTPS leaf and hot-swap the serving context (no restart). */
|
|
16414
16659
|
installHttpsCertificate: method(z.object({
|
|
16415
16660
|
certPem: z.string().min(1),
|
|
@@ -39937,6 +40182,21 @@ var HUB_MDNS_TXT_KEYS = {
|
|
|
39937
40182
|
url: "url"
|
|
39938
40183
|
};
|
|
39939
40184
|
/**
|
|
40185
|
+
* How a hub finds agents to pair (D857): every agent publishes ONE mDNS service for its API
|
|
40186
|
+
* port, paired or not. The TXT record carries only public facts. Finding an agent grants
|
|
40187
|
+
* nothing: pairing still needs the six-digit code confirmed on both screens.
|
|
40188
|
+
*/
|
|
40189
|
+
var AGENT_MDNS_SERVICE_TYPE = "camstack-agent";
|
|
40190
|
+
/** The TXT keys of the agent advertisement. Every value is public. */
|
|
40191
|
+
var AGENT_MDNS_TXT_KEYS = {
|
|
40192
|
+
nodeId: "nodeId",
|
|
40193
|
+
version: "version",
|
|
40194
|
+
/** `unpaired` | `pending` | `paired`. */
|
|
40195
|
+
state: "state",
|
|
40196
|
+
/** First 16 hex chars of the SHA-256 of the agent's mesh leaf; present once paired. */
|
|
40197
|
+
keyFingerprint: "fp"
|
|
40198
|
+
};
|
|
40199
|
+
/**
|
|
39940
40200
|
* Transport bounds for AI capability methods.
|
|
39941
40201
|
*
|
|
39942
40202
|
* Its own module because `llm.cap.ts` and `llm-runtime.cap.ts` already import
|
|
@@ -74293,6 +74553,66 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
74293
74553
|
addonId: null,
|
|
74294
74554
|
access: "create"
|
|
74295
74555
|
},
|
|
74556
|
+
"deviceHistory.declareSeries": {
|
|
74557
|
+
capName: "device-history",
|
|
74558
|
+
capScope: "system",
|
|
74559
|
+
addonId: null,
|
|
74560
|
+
access: "create"
|
|
74561
|
+
},
|
|
74562
|
+
"deviceHistory.getDeviceEnabled": {
|
|
74563
|
+
capName: "device-history",
|
|
74564
|
+
capScope: "system",
|
|
74565
|
+
addonId: null,
|
|
74566
|
+
access: "view"
|
|
74567
|
+
},
|
|
74568
|
+
"deviceHistory.getStatus": {
|
|
74569
|
+
capName: "device-history",
|
|
74570
|
+
capScope: "system",
|
|
74571
|
+
addonId: null,
|
|
74572
|
+
access: "view"
|
|
74573
|
+
},
|
|
74574
|
+
"deviceHistory.listNodeSeries": {
|
|
74575
|
+
capName: "device-history",
|
|
74576
|
+
capScope: "system",
|
|
74577
|
+
addonId: null,
|
|
74578
|
+
access: "view"
|
|
74579
|
+
},
|
|
74580
|
+
"deviceHistory.listSeries": {
|
|
74581
|
+
capName: "device-history",
|
|
74582
|
+
capScope: "system",
|
|
74583
|
+
addonId: null,
|
|
74584
|
+
access: "view"
|
|
74585
|
+
},
|
|
74586
|
+
"deviceHistory.query": {
|
|
74587
|
+
capName: "device-history",
|
|
74588
|
+
capScope: "system",
|
|
74589
|
+
addonId: null,
|
|
74590
|
+
access: "view"
|
|
74591
|
+
},
|
|
74592
|
+
"deviceHistory.queryNode": {
|
|
74593
|
+
capName: "device-history",
|
|
74594
|
+
capScope: "system",
|
|
74595
|
+
addonId: null,
|
|
74596
|
+
access: "view"
|
|
74597
|
+
},
|
|
74598
|
+
"deviceHistory.record": {
|
|
74599
|
+
capName: "device-history",
|
|
74600
|
+
capScope: "system",
|
|
74601
|
+
addonId: null,
|
|
74602
|
+
access: "create"
|
|
74603
|
+
},
|
|
74604
|
+
"deviceHistory.recordBuckets": {
|
|
74605
|
+
capName: "device-history",
|
|
74606
|
+
capScope: "system",
|
|
74607
|
+
addonId: null,
|
|
74608
|
+
access: "create"
|
|
74609
|
+
},
|
|
74610
|
+
"deviceHistory.setDeviceEnabled": {
|
|
74611
|
+
capName: "device-history",
|
|
74612
|
+
capScope: "system",
|
|
74613
|
+
addonId: null,
|
|
74614
|
+
access: "create"
|
|
74615
|
+
},
|
|
74296
74616
|
"deviceManager.addLocation": {
|
|
74297
74617
|
capName: "device-manager",
|
|
74298
74618
|
capScope: "system",
|
|
@@ -76357,6 +76677,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
76357
76677
|
addonId: null,
|
|
76358
76678
|
access: "create"
|
|
76359
76679
|
},
|
|
76680
|
+
"nodeCertificates.forgetHub": {
|
|
76681
|
+
capName: "node-certificates",
|
|
76682
|
+
capScope: "system",
|
|
76683
|
+
addonId: null,
|
|
76684
|
+
access: "delete"
|
|
76685
|
+
},
|
|
76360
76686
|
"nodeCertificates.getCertificates": {
|
|
76361
76687
|
capName: "node-certificates",
|
|
76362
76688
|
capScope: "system",
|
|
@@ -80763,6 +81089,7 @@ var ALL_CAPABILITY_DEFINITIONS = [
|
|
|
80763
81089
|
deviceDiscoveryCapability,
|
|
80764
81090
|
deviceExportCapability,
|
|
80765
81091
|
deviceExtensionCapability,
|
|
81092
|
+
deviceHistoryCapability,
|
|
80766
81093
|
deviceManagerCapability,
|
|
80767
81094
|
deviceOpsCapability,
|
|
80768
81095
|
deviceProviderCapability,
|
|
@@ -81346,6 +81673,26 @@ Object.freeze({
|
|
|
81346
81673
|
form: "single",
|
|
81347
81674
|
optional: false
|
|
81348
81675
|
}],
|
|
81676
|
+
"deviceHistory.getDeviceEnabled": [{
|
|
81677
|
+
name: "deviceId",
|
|
81678
|
+
form: "single",
|
|
81679
|
+
optional: false
|
|
81680
|
+
}],
|
|
81681
|
+
"deviceHistory.listSeries": [{
|
|
81682
|
+
name: "deviceId",
|
|
81683
|
+
form: "single",
|
|
81684
|
+
optional: false
|
|
81685
|
+
}],
|
|
81686
|
+
"deviceHistory.query": [{
|
|
81687
|
+
name: "deviceId",
|
|
81688
|
+
form: "single",
|
|
81689
|
+
optional: false
|
|
81690
|
+
}],
|
|
81691
|
+
"deviceHistory.setDeviceEnabled": [{
|
|
81692
|
+
name: "deviceId",
|
|
81693
|
+
form: "single",
|
|
81694
|
+
optional: false
|
|
81695
|
+
}],
|
|
81349
81696
|
"deviceManager.adoptionRelease": [{
|
|
81350
81697
|
name: "camDeviceId",
|
|
81351
81698
|
form: "single",
|
|
@@ -85167,4 +85514,4 @@ function enumerateInferenceDevices(hw) {
|
|
|
85167
85514
|
return out;
|
|
85168
85515
|
}
|
|
85169
85516
|
//#endregion
|
|
85170
|
-
export {
|
|
85517
|
+
export { alertsCapability as $, vectorDimFromBase64 as $n, parseJsonUnknown as $r, kebabToCamel as $t, FieldClaimModeSchema as A, resolveCoreBlockEntry as An, asNumber as Ar, deviceManagerCapability as At, RECORDING_SOURCE_CAMSTACK_ADDON as B, settingsStoreCapability as Bn, expandCapMethods as Br, extractNestedAddonId as Bt, DEVICE_ENROLLMENT_TTL_MS as C, platformProbeCapability as Cn, REDACTED_SECRET as Cr, declarationOwnerNodeId as Ct, DeclaredDevices as D, replacedFieldKeys as Dn, SECRET_CLEAR as Dr, describeComposableCaps as Dt, DEVICE_SAN_USER_PREFIX as E, reducePoints as En, ReadinessTimeoutError as Er, deriveBatteryPresence as Et, LOG_LEVEL_RANK as F, resolveNotificationTapAddress as Fn, createEvent as Fr, enumerateSchemaFields as Ft, StorageCleanupJobSchema as G, storageOccupancyCapability as Gn, isKeychainStoredField as Gr, gbToBytes as Gt, STORAGE_ACCESS_FALLBACK as H, snapshotCapability as Hn, hydrateSchema as Hr, foldSnapshotByFunction as Ht, LegacyStorageLocationDefaultSchema as I, runtimeStatePolicyFor as In, customAction as Ir, evaluateCompositionField as It, StorageMigrationJobSchema as J, streamQualityLabel as Jn, isSecretMarkerLike as Jr, isCollectionArrayMethod as Jt, StorageLocationModeSchema as K, storageProviderCapability as Kn, isSecretClear as Kr, isAppLinkBase as Kt, METHOD_ACCESS_MAP as L, scopesAllowAddon as Ln, defineCustomActions as Lr, evictionPolicyOfLocation as Lt, HUB_MDNS_SERVICE_TYPE as M, resolveHubAddressRoles as Mn, buildSecretRef as Mr, deviceStatusCapability as Mt, HUB_MDNS_TXT_KEYS as N, resolveLocationMode as Nn, collectSecretConfigKeys as Nr, enumerateInferenceDevices as Nt, DeviceStatusSchema as O, resolveAppConnections as On, WELL_KNOWN_TAB_MAP as Or, deviceCredentialsCapability as Ot, KEYCHAIN_RESET_TRIGGER_ACTOR as P, resolveMethodAuth as Pn, collectZodSecretPaths as Pr, enumerateItemArrayFields as Pt, addonWidgetsCapability as Q, validateCustomAddress as Qn, parseJsonObject as Qr, isVoidInput as Qt, MINUTES_PER_DAY as R, scopesAllowDeviceCap as Rn, emitDownForOwnedCaps as Rr, expandContainer as Rt, DERIVED_CAMERA_SILENCED_CAP_NAMES as S, planComposition as Sn, DEVICE_STATUS_METHOD as Sr, databaseSnapshotCapability as St, DEVICE_SAN_CREDENTIAL_PREFIX as T, ptzAutotrackCapability as Tn, ReadinessRegistry as Tr, defineExtensionSlotProvider as Tt, STREAM_PROFILE_META as U, storageCapability as Un, isDeviceConfigCap as Ur, formatDeviceRevoker as Ut, RecordingStatusSchema as V, siteZoneKey as Vn, formatSecretScope as Vr, filesystemBrowseCapability as Vt, ScopedTokenSchema as W, storageMigrationCapability as Wn, isEvent as Wr, formatMinutes as Wt, addonPagesCapability as X, userManagementCapability as Xn, nodePin as Xr, isLocationEnabled as Xt, UserRecordSchema as Y, supportedRuntimes as Yn, makeSecretMarker as Yr, isDefaultAppConnectionEndpoint as Yt, addonSettingsCapability as Z, validateComposition as Zn, normalizeSecretOwner as Zr, isObjectInput as Zt, DATABASE_SNAPSHOT_PARTIAL_SUFFIX as _, normalizeUnit as _n, DeviceType as _r, coreBlockIdFromAddonId as _t, ApiKeyRecordSchema as a, secretTreeFromPaths as ai, localNetworkCapability as an, cloneStatefulExpressionMemory as ar, buildDeviceEnrollmentLink as at, DATA_STORE_DATABASES as b, parseStreamParamsFormPatch as bn, DATAPLANE_SECRET_HEADER as br, createDeviceExtensionProvider as bt, CAMERA_SWITCH_ORDER as c, toNodeId as ci, logLevelAtMost as cn, compositionFeatureEnabled as cr, calendarsCapability as ct, COMPOSED_ITEM_FIXED_FIELDS as d, EventCategory as di, mayWriteToLocation as dn, compositionSourceKey as dr, checkRoleAddress as dt, parseSecretRef as ei, keychainAdminCapability as en, vectorIndexDimConflictError as er, authProviderCapability as et, COMPOSER_RUNNER_ID as f, memoizePinnedFfmpeg as fn, createStatefulExpressionMemory as fr, composerCapability as ft, CoreBlockSchema as g, normalizeCoreBlockWrite as gn, DeviceRole as gr, coreBlockComposition as gt, CalendarPreferencesSchema as h, motionCapability as hn, DeviceFeature as hr, coreBlockAddonId as ht, AlertSchema as i, scopeKey as ii, lifecycleJobSchema as in, buildFfmpegArgs as ir, buildCapabilityLookup as it, FieldClaimSchema as j, resolveCoreBlockFiles as jn, asString$1 as jr, deviceStateCapability as jt, FIRST_LEVEL_MACRO_CLASSES as k, resolveBucketMs as kn, asJsonObject as kr, deviceExtensionCapability as kt, CAMSTACK_APP_LINK_ORIGIN as l, toSecretFieldView as li, looseSchema as ln, compositionItemFieldPath as lr, cameraGridLayoutCapability as lt, CORE_BLOCK_ADDON_PREFIX as m, modeMayWrite as mn, toExpressionValue as mr, compositionSourceRefs as mt, AGENT_MDNS_TXT_KEYS as n, resolveCapMount as ni, legacyAutoLinkIds as nn, withLocationMode as nr, bareAddonId as nt, BaseDevice as o, secretTreeFromSchema as oi, locationIconKey as on, composedDeviceRef as or, buildDeviceSignatureMessage as ot, CORE_BLOCKS_ADDON_ID as p, metricsProviderCapability as pn, disarmRoseMemory as pr, compositionFieldKey as pt, StorageLocationTypeSchema as q, streamCatalogCapability as qn, isSecretMarker as qr, isArrayOutputSchema as qt, ALL_CAPABILITY_DEFINITIONS as r, resolveSecretMarkers as ri, legacyModeOf as rn, COMPOSER_ADDON_ID as rr, batteryCapability as rt, BatteryStatusSchema as s, sleep as si, logDestinationCapability as sn, composedDeviceStableId as sr, buildStreamParamsConfigSchema as st, AGENT_MDNS_SERVICE_TYPE as t, readinessKey as ti, keychainCapability as tn, vectorStoreCapability as tr, backupCapability as tt, CAP_NAMES_WITH_STATUS as u, transformSecretWrite as ui, mayReadLocation as un, compositionSliceKey as ur, canonicalIconKey as ut, DATABASE_SNAPSHOT_SUFFIX as v, objectInputDeclaresAddonId as vn, errMsg as vr, coreBlockSourceKind as vt, DEVICE_NONCE_TTL_MS as w, procedureAuthKey as wn, RUNTIME_DEFAULTS as wr, decodeVectorBase64 as wt, DAY_NAMES as x, pickAppLinkHub as xn, DEVICE_SETTINGS_CONTRIBUTION_METHODS as xr, dataStoreProviderCapability as xt, DATABASE_SNAPSHOT_TIMEOUT_MS as y, objectInputDeclaresRequiredDeviceId as yn, BaseAddon as yr, coreBlocksCapability as yt, MOTION_CLOSE_AFTER_MS as z, scoreRuntimes as zn, emitReadiness as zr, expressionContainsBuiltinCall as zt };
|
package/dist/file-host-worker.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
require("./chunk-Cek0wNdY.js");
|
|
2
|
-
const require_wal_maintenance = require("./wal-maintenance-
|
|
2
|
+
const require_wal_maintenance = require("./wal-maintenance-CPLvZbzA.js");
|
|
3
3
|
let node_worker_threads = require("node:worker_threads");
|
|
4
4
|
//#region src/builtins/sqlite-storage/file-host-worker.ts
|
|
5
5
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as callControl, E as controlTargetOf, T as callVector, _ as collectTransferables, a as WalMaintenance, b as isFileHostWorkerData, c as SqliteSettingsBackend, h as serializeError, o as createVectorIndex, s as vectorProviderOf, w as callData, x as trustInput, y as isFileHostRequest } from "./wal-maintenance-
|
|
1
|
+
import { C as callControl, E as controlTargetOf, T as callVector, _ as collectTransferables, a as WalMaintenance, b as isFileHostWorkerData, c as SqliteSettingsBackend, h as serializeError, o as createVectorIndex, s as vectorProviderOf, w as callData, x as trustInput, y as isFileHostRequest } from "./wal-maintenance-Bc38yI3r.mjs";
|
|
2
2
|
import { parentPort, threadId, workerData } from "node:worker_threads";
|
|
3
3
|
//#region src/builtins/sqlite-storage/file-host-worker.ts
|
|
4
4
|
/**
|