@camstack/system 1.2.441 → 1.2.443

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.
Files changed (91) hide show
  1. package/dist/addon-runner.js +72 -2
  2. package/dist/addon-runner.mjs +72 -2
  3. package/dist/addon-utils.js +1 -1
  4. package/dist/addon-utils.mjs +1 -1
  5. package/dist/auth/totp-manager.d.ts +46 -1
  6. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  7. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  8. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  9. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  10. package/dist/builtins/alerts/alerts.addon.d.ts +41 -1
  11. package/dist/builtins/alerts/alerts.addon.js +638 -26
  12. package/dist/builtins/alerts/alerts.addon.mjs +638 -26
  13. package/dist/builtins/alerts/critical-push.d.ts +86 -0
  14. package/dist/builtins/alerts/runner-alert.d.ts +71 -0
  15. package/dist/builtins/autotrack/index.js +1 -1
  16. package/dist/builtins/autotrack/index.mjs +1 -1
  17. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  18. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  19. package/dist/builtins/calendars/calendars.addon.js +1 -1
  20. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  21. package/dist/builtins/camera-grid/index.js +1 -1
  22. package/dist/builtins/camera-grid/index.mjs +1 -1
  23. package/dist/builtins/composer/composer.addon.js +2 -2
  24. package/dist/builtins/composer/composer.addon.mjs +2 -2
  25. package/dist/builtins/console-logging/index.js +1 -1
  26. package/dist/builtins/console-logging/index.mjs +1 -1
  27. package/dist/builtins/core-blocks/block-package.d.ts +4 -2
  28. package/dist/builtins/core-blocks/block-settings-store.d.ts +65 -19
  29. package/dist/builtins/core-blocks/core-blocks.addon.js +365 -38
  30. package/dist/builtins/core-blocks/core-blocks.addon.mjs +365 -38
  31. package/dist/builtins/device-manager/device-manager.addon.js +1 -1
  32. package/dist/builtins/device-manager/device-manager.addon.mjs +1 -1
  33. package/dist/builtins/hub-forwarder/index.js +1 -1
  34. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  35. package/dist/builtins/keychain/index.js +3 -3
  36. package/dist/builtins/keychain/index.mjs +3 -3
  37. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  38. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  39. package/dist/builtins/local-auth/auth-schema.d.ts +1 -1
  40. package/dist/builtins/local-auth/local-auth.addon.js +226 -17
  41. package/dist/builtins/local-auth/local-auth.addon.mjs +226 -17
  42. package/dist/builtins/local-network/local-network.addon.js +2 -2
  43. package/dist/builtins/local-network/local-network.addon.mjs +2 -2
  44. package/dist/builtins/loki-logging/index.js +1 -1
  45. package/dist/builtins/loki-logging/index.mjs +1 -1
  46. package/dist/builtins/native-metrics/native-metrics.addon.js +2 -2
  47. package/dist/builtins/native-metrics/native-metrics.addon.mjs +2 -2
  48. package/dist/builtins/platform-probe/index.js +2 -2
  49. package/dist/builtins/platform-probe/index.mjs +2 -2
  50. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  51. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  52. package/dist/builtins/snapshot/index.js +1 -1
  53. package/dist/builtins/snapshot/index.mjs +1 -1
  54. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  55. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  56. package/dist/builtins/sqlite-storage/index.js +1 -1
  57. package/dist/builtins/sqlite-storage/index.mjs +1 -1
  58. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +2 -2
  59. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +2 -2
  60. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  61. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  62. package/dist/builtins/system-config/system-config.addon.js +2 -2
  63. package/dist/builtins/system-config/system-config.addon.mjs +2 -2
  64. package/dist/builtins/winston-logging/index.js +1 -1
  65. package/dist/builtins/winston-logging/index.mjs +1 -1
  66. package/dist/{composition-sources-BG-W2U0d.js → composition-sources-BUXX1e8j.js} +1 -1
  67. package/dist/{composition-sources-ByNISOnW.mjs → composition-sources-C8tUG2uL.mjs} +1 -1
  68. package/dist/{constants-DJILnUSb.mjs → constants-CGwVaAV3.mjs} +1 -1
  69. package/dist/{constants-UojhAJcm.js → constants-DWmm7_of.js} +1 -1
  70. package/dist/{device-ca-D8Ri9TVz.mjs → device-ca-DBfiJ_SB.mjs} +1 -1
  71. package/dist/{device-ca-196DAEZT.js → device-ca-DGayRmC0.js} +1 -1
  72. package/dist/{dist-BWvkuc31.mjs → dist-Bxt_S-9a.mjs} +180 -13
  73. package/dist/{dist-BiTCcaf-.js → dist-D9qT3jHr.js} +203 -12
  74. package/dist/file-host-worker.js +1 -1
  75. package/dist/file-host-worker.mjs +1 -1
  76. package/dist/{hub-mdns-ciao-DOBTq8qr.js → hub-mdns-ciao-B-wk9nzx.js} +1 -1
  77. package/dist/{hub-mdns-ciao-Cnd0bTB9.mjs → hub-mdns-ciao-DpPcQDg-.mjs} +1 -1
  78. package/dist/index.js +145 -16
  79. package/dist/index.mjs +140 -17
  80. package/dist/kernel/addon-refused-error.d.ts +30 -0
  81. package/dist/kernel/index.d.ts +3 -0
  82. package/dist/kernel/legacy-blob-guard.d.ts +6 -1
  83. package/dist/kernel/moleculer/process-service.d.ts +16 -1
  84. package/dist/kernel/moleculer/runner-refusal.d.ts +27 -0
  85. package/dist/{restore-archive-4ziluTU3.mjs → restore-archive-9CGgeBzD.mjs} +1 -1
  86. package/dist/{restore-archive-CfSSjKnA.js → restore-archive-BMNXwWWD.js} +1 -1
  87. package/dist/{wal-maintenance-CgZTNWAz.js → wal-maintenance-cRHR4rUY.js} +0 -0
  88. package/dist/{wal-maintenance-B57SAp4a.mjs → wal-maintenance-sIB32ONp.mjs} +0 -0
  89. package/package.json +1 -1
  90. package/dist/{custom-action-registry-BKmoaqG0.js → custom-action-registry-COyb49zm.js} +1 -1
  91. package/dist/{custom-action-registry-CyUuhATc.mjs → custom-action-registry-stpC3Zy-.mjs} +1 -1
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import "node:crypto";
3
- //#region ../types/dist/event-category-C4hVnRo8.mjs
3
+ //#region ../types/dist/event-category-BvOFi6PY.mjs
4
4
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
5
5
  EventCategory["SystemBoot"] = "system.boot";
6
6
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -64,6 +64,24 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
64
64
  * consumes this category and maps it to the `addon-crash-loop` kind.
65
65
  */
66
66
  EventCategory["AddonRunnerFailed"] = "addon.runner-failed";
67
+ /**
68
+ * A runner whose addon refused to start with a typed reason (D877) - parked
69
+ * in `refused`, never counted by the crash breaker, retried on operator
70
+ * action. One event per refusal.
71
+ */
72
+ EventCategory["AddonRunnerRefused"] = "addon.runner-refused";
73
+ /**
74
+ * A runner settled on a state (D877): `running` (READY), `crashed`, `failed` or
75
+ * `refused`. In-process telemetry for the boot check (re-evaluate while any
76
+ * runner is still pending) and the alert centre (close a recovered runner).
77
+ */
78
+ EventCategory["ProcessStateChanged"] = "process.state-changed";
79
+ /**
80
+ * The node's one-shot runner boot check (D877): planned runners against the
81
+ * process service, `degraded` when any is failed, refused or missing. The
82
+ * alert centre turns it into one alert and a direct critical push.
83
+ */
84
+ EventCategory["SystemRunnerCheck"] = "system.runner-check";
67
85
  EventCategory["AddonError"] = "addon.error";
68
86
  EventCategory["AddonPageReady"] = "addon.page-ready";
69
87
  EventCategory["AddonWidgetReady"] = "addon.widget-ready";
@@ -718,7 +736,7 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
718
736
  return EventCategory;
719
737
  }({});
720
738
  //#endregion
721
- //#region ../types/dist/sleep-bwsTj221.mjs
739
+ //#region ../types/dist/sleep-D-Q2_Mcd.mjs
722
740
  /**
723
741
  * The audio chunk plane's byte format, and the ONE expansion from a coded
724
742
  * window to float samples (D455).
@@ -15458,6 +15476,41 @@ function describeComposableCaps(defs, deviceType) {
15458
15476
  }).toSorted((a, b) => a.cap.localeCompare(b.cap));
15459
15477
  }
15460
15478
  /**
15479
+ * The report of a one-shot "move this owner's plaintext secrets into the
15480
+ * keychain" run (D878). COUNTS only - never a value, never a ref.
15481
+ *
15482
+ * The owner runs it on its own rows, through its own write path; an operator
15483
+ * script (`scripts/hub/migrate-raw-secrets.ts`) calls the owner's cap method.
15484
+ * Dry run (`apply: false`) reports what WOULD move and changes nothing.
15485
+ */
15486
+ var RawSecretMigrationInputSchema = z.object({
15487
+ /** `false` (the default of the script) = report only. */
15488
+ apply: z.boolean() });
15489
+ var RawSecretMigrationReportSchema = z.object({
15490
+ apply: z.boolean(),
15491
+ /** Rows that can carry a secret (a profile, an enrolment). */
15492
+ rows: z.number().int(),
15493
+ /** Rows whose secret was plaintext when the run started. */
15494
+ raw: z.number().int(),
15495
+ /** Rows that already held a keychain marker when the run started. */
15496
+ markers: z.number().int(),
15497
+ /** Plaintext rows moved by THIS run (always 0 on a dry run). */
15498
+ migrated: z.number().int(),
15499
+ /** Plaintext rows left in place because the move or its read-back failed. */
15500
+ failed: z.number().int(),
15501
+ /** After the run: rows still holding plaintext. */
15502
+ remainingRaw: z.number().int(),
15503
+ /** After the run: markers the keychain could not resolve right now. */
15504
+ unresolvedMarkers: z.number().int(),
15505
+ /**
15506
+ * A second, redundant copy of the secrets' rows that the run found (and, on
15507
+ * `apply`, deleted after verifying the first). Owners with a single copy omit it.
15508
+ */
15509
+ redundantCopies: z.number().int().optional(),
15510
+ /** True when nothing is raw and every marker resolves. */
15511
+ verified: z.boolean()
15512
+ });
15513
+ /**
15461
15514
  * core-blocks — user-authored TypeScript, stored in the kernel and executed in
15462
15515
  * its own process.
15463
15516
  *
@@ -15821,14 +15874,16 @@ var coreBlocksCapability = {
15821
15874
  /**
15822
15875
  * Hydrated settings form for one block, or null until a `settingsSchema`
15823
15876
  * is known (extracted from the compiled entry's named export, or set on
15824
- * the block). Values live in the `core-blocks:settings` collection.
15877
+ * the block). Values live in the block addon's `addon-settings` rows (D880);
15878
+ * a password field answers as a "set" view, never the value.
15825
15879
  */
15826
15880
  getBlockSettings: method(z.object({ blockId: z.string() }), SettingsSchemaWithValuesSchema.nullable(), { auth: "admin" }),
15827
15881
  /**
15828
15882
  * Patch persisted preference values for one block. The schema is not
15829
- * rewritten here — only values. Scripts read the same blob via
15830
- * `ctx.settings.readAddonStore()` (mirrored into the block addon's
15831
- * `addon-settings` namespace on every patch).
15883
+ * rewritten here — only values. Scripts read the same rows via
15884
+ * `ctx.settings.readAddonStore()`. A field the schema declares `password` /
15885
+ * `secret: true` is stored in the keychain (owner = the block's addon id)
15886
+ * and the row holds a marker; a REDACTED or view value keeps the stored one.
15832
15887
  */
15833
15888
  updateBlockSettings: method(z.object({
15834
15889
  blockId: z.string(),
@@ -15838,6 +15893,16 @@ var coreBlocksCapability = {
15838
15893
  auth: "admin"
15839
15894
  }),
15840
15895
  /**
15896
+ * D880: move every plaintext password a block's `settingsSchema` declares
15897
+ * into the keychain and delete the legacy `core-blocks:settings` copy. Dry
15898
+ * run unless `apply`; idempotent; counts only. A secret is read back from
15899
+ * the keychain before its row is rewritten.
15900
+ */
15901
+ migrateRawSecrets: method(RawSecretMigrationInputSchema, RawSecretMigrationReportSchema, {
15902
+ kind: "mutation",
15903
+ auth: "admin"
15904
+ }),
15905
+ /**
15841
15906
  * The declaration files the editor type-checks against.
15842
15907
  *
15843
15908
  * Served rather than bundled: the graph is 3.4 MB across 344 files, and
@@ -41252,6 +41317,16 @@ var llmCapability = {
41252
41317
  kind: "mutation",
41253
41318
  auth: "admin"
41254
41319
  }),
41320
+ /**
41321
+ * D878: move every profile's plaintext `apiKey` into the keychain (owner
41322
+ * `ai`), leaving a marker in the row. Dry run unless `apply`; idempotent;
41323
+ * counts only. The plaintext is cleared only after the keychain read-back
41324
+ * matched.
41325
+ */
41326
+ migrateRawSecrets: method(RawSecretMigrationInputSchema, RawSecretMigrationReportSchema, {
41327
+ kind: "mutation",
41328
+ auth: "admin"
41329
+ }),
41255
41330
  deleteProfile: method(ProfileRefInputSchema, z.void(), {
41256
41331
  kind: "mutation",
41257
41332
  auth: "admin"
@@ -54032,6 +54107,41 @@ var ServerRollbackInfoSchema = z.object({
54032
54107
  atMs: z.number(),
54033
54108
  reason: z.string()
54034
54109
  });
54110
+ /**
54111
+ * The runner boot check (D877): the runners this node PLANNED (hub: one per
54112
+ * `resolveRunnerId` over its forked addons; agent: the runners its process
54113
+ * service holds, because only the hub plans) against the states the process
54114
+ * service reports. Kept in memory, recomputed by the same one-shot check after
54115
+ * every boot, served on `getServerPackageStatus`.
54116
+ *
54117
+ * `failed` is the D6 breaker's terminal state, `refused` a deterministic Init
54118
+ * refusal (an addon that said "I will not start, and here is why"), `missing` a
54119
+ * planned runner the process service has no entry for.
54120
+ */
54121
+ var RunnerRefusalSchema = z.object({
54122
+ runnerId: z.string(),
54123
+ addonIds: z.array(z.string()),
54124
+ reason: z.string()
54125
+ });
54126
+ var RunnerBootCheckSchema = z.object({
54127
+ checkedAtMs: z.number(),
54128
+ /** Runners planned for this node. */
54129
+ expected: z.number(),
54130
+ /** Planned runners whose process is `running`. */
54131
+ running: z.number(),
54132
+ failed: z.array(z.string()),
54133
+ refused: z.array(RunnerRefusalSchema),
54134
+ missing: z.array(z.string()),
54135
+ /**
54136
+ * Runners still on their way: `starting`, or `crashed` waiting on a backoff
54137
+ * respawn. The check is FINAL only when this is empty; until then nothing is
54138
+ * pushed and the verdict is re-evaluated on the next runner state change.
54139
+ * Optional for version skew (absent = settled).
54140
+ */
54141
+ pending: z.array(z.string()).optional(),
54142
+ /** True when the plan is the hub's (`missing` is then meaningful); false on an agent. */
54143
+ planKnown: z.boolean()
54144
+ });
54035
54145
  var ServerPackageStatusSchema = z.object({
54036
54146
  /** Root package name (`@camstack/server` on the hub). */
54037
54147
  packageName: z.string(),
@@ -54094,7 +54204,14 @@ var ServerPackageStatusSchema = z.object({
54094
54204
  * for version skew: an older provider's payload simply omits it, and an
54095
54205
  * absent wrapper is unknown — never `native`.
54096
54206
  */
54097
- wrapper: WrapperIdentitySchema.optional()
54207
+ wrapper: WrapperIdentitySchema.optional(),
54208
+ /**
54209
+ * What this node PLANNED to run against what its process service reports
54210
+ * (D877). Absent until the one-shot boot check has run (~60 s after boot) and
54211
+ * on a provider that predates it. Absent is "not checked yet", never "all
54212
+ * well": a consumer that needs the answer treats it as pending.
54213
+ */
54214
+ runners: RunnerBootCheckSchema.optional()
54098
54215
  });
54099
54216
  var ServerUpdateCheckResultSchema = z.object({
54100
54217
  packageName: z.string(),
@@ -54145,6 +54262,13 @@ var ServerUpdateOutcomeSchema = z.enum([
54145
54262
  "refused",
54146
54263
  "failed"
54147
54264
  ]);
54265
+ /** One addon the pre-flight found the target version would refuse (D877). */
54266
+ var UpdateBlockerSchema = z.object({
54267
+ addonId: z.string(),
54268
+ reason: z.string(),
54269
+ /** What the operator does about it. */
54270
+ remedy: z.string()
54271
+ });
54148
54272
  var ServerUpdateActionResultSchema = z.object({
54149
54273
  accepted: z.boolean(),
54150
54274
  targetVersion: z.string().nullable(),
@@ -54162,7 +54286,13 @@ var ServerUpdateActionResultSchema = z.object({
54162
54286
  * The failure itself, verbatim enough to act on (the npm output for a
54163
54287
  * staging install). Non-null only for `failed`.
54164
54288
  */
54165
- error: z.string().nullable().optional()
54289
+ error: z.string().nullable().optional(),
54290
+ /**
54291
+ * The addons the target version would refuse to start on this node's live
54292
+ * store (D877), present when the pre-flight refused the update
54293
+ * (`reason: 'addon-would-refuse'`). Optional for version skew.
54294
+ */
54295
+ blockers: z.array(UpdateBlockerSchema).optional()
54166
54296
  });
54167
54297
  var serverManagementCapability = {
54168
54298
  name: "server-management",
@@ -54174,9 +54304,16 @@ var serverManagementCapability = {
54174
54304
  kind: "mutation",
54175
54305
  auth: "admin"
54176
54306
  }),
54177
- applyServerUpdate: method(z.object({
54178
- /** Explicit target version; omitted = latest from the registry. */
54179
- version: z.string().optional() }), ServerUpdateActionResultSchema, {
54307
+ applyServerUpdate: method(z.object({
54308
+ /** Explicit target version; omitted = latest from the registry. */
54309
+ version: z.string().optional(),
54310
+ /**
54311
+ * Apply even though the pre-flight (D877) found addons the target would
54312
+ * refuse to start. Off by default: those addons stay down until the
54313
+ * remedy is run, which is the incident this gate exists to prevent.
54314
+ */
54315
+ acknowledgeRefusals: z.boolean().optional()
54316
+ }), ServerUpdateActionResultSchema, {
54180
54317
  kind: "mutation",
54181
54318
  auth: "admin",
54182
54319
  timeoutMs: 16 * 6e4
@@ -57498,7 +57635,9 @@ var ManifestShapeSchema = z.object({
57498
57635
  var AddonProcessSchema = z.object({
57499
57636
  pid: z.number().optional(),
57500
57637
  mode: z.string(),
57501
- state: z.string()
57638
+ state: z.string(),
57639
+ /** Why the runner is `refused` (an addon's own words), when it is (D877). */
57640
+ reason: z.string().optional()
57502
57641
  });
57503
57642
  /**
57504
57643
  * Per-addon health snapshot from the kernel's AddonHealthMonitor.
@@ -70104,6 +70243,16 @@ var userManagementCapability = {
70104
70243
  access: "delete"
70105
70244
  }),
70106
70245
  getTotpStatus: method(z.object({ userId: z.string() }), TotpStatusSchema, { auth: "admin" }),
70246
+ /**
70247
+ * D878: move every TOTP seed stored in plaintext into the keychain (owner
70248
+ * `system`), leaving a marker in the row. Dry run unless `apply`;
70249
+ * idempotent; counts only.
70250
+ */
70251
+ migrateRawSecrets: method(RawSecretMigrationInputSchema, RawSecretMigrationReportSchema, {
70252
+ kind: "mutation",
70253
+ auth: "admin",
70254
+ access: "create"
70255
+ }),
70107
70256
  verifyTotp: method(z.object({
70108
70257
  userId: z.string(),
70109
70258
  code: z.string()
@@ -74623,6 +74772,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
74623
74772
  addonId: null,
74624
74773
  access: "view"
74625
74774
  },
74775
+ "coreBlocks.migrateRawSecrets": {
74776
+ capName: "core-blocks",
74777
+ capScope: "system",
74778
+ addonId: null,
74779
+ access: "create"
74780
+ },
74626
74781
  "coreBlocks.restart": {
74627
74782
  capName: "core-blocks",
74628
74783
  capScope: "system",
@@ -76483,6 +76638,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
76483
76638
  addonId: null,
76484
76639
  access: "view"
76485
76640
  },
76641
+ "llm.migrateRawSecrets": {
76642
+ capName: "llm",
76643
+ capScope: "system",
76644
+ addonId: null,
76645
+ access: "create"
76646
+ },
76486
76647
  "llm.resolveModelRef": {
76487
76648
  capName: "llm",
76488
76649
  capScope: "system",
@@ -81025,6 +81186,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
81025
81186
  addonId: null,
81026
81187
  access: "view"
81027
81188
  },
81189
+ "userManagement.migrateRawSecrets": {
81190
+ capName: "user-management",
81191
+ capScope: "system",
81192
+ addonId: null,
81193
+ access: "create"
81194
+ },
81028
81195
  "userManagement.oauthExchangeCode": {
81029
81196
  capName: "user-management",
81030
81197
  capScope: "system",
@@ -86126,4 +86293,4 @@ function enumerateInferenceDevices(hw) {
86126
86293
  return out;
86127
86294
  }
86128
86295
  //#endregion
86129
- export { StorageCleanupJobSchema as $, splitTranslationRef as $n, formatSecretScope as $r, gbToBytes as $t, DeclaredDevices as A, pickAppLinkHub as An, errMsg as Ar, databaseSnapshotCapability as At, METHOD_ACCESS_MAP as B, resolveCoreBlockFiles as Bn, WELL_KNOWN_TAB_MAP as Br, deviceStatusCapability as Bt, DAY_NAMES as C, modeMayWrite as Cn, compositionSourceKey as Cr, coreBlockAddonId as Ct, DEVICE_SAN_CREDENTIAL_PREFIX as D, objectInputDeclaresAddonId as Dn, DeviceFeature as Dr, coreBlocksCapability as Dt, DEVICE_NONCE_TTL_MS as E, normalizeUnit as En, toExpressionValue as Er, coreBlockSourceKind as Et, HUB_MDNS_SERVICE_TYPE as F, reducePoints as Fn, REDACTED_SECRET as Fr, describeComposableCaps as Ft, RecordingStatusSchema as G, runtimeStatePolicyFor as Gn, collectSecretConfigKeys as Gr, evictionPolicyOfLocation as Gt, MOTION_CLOSE_AFTER_MS as H, resolveLocationMode as Hn, asNumber as Hr, enumerateItemArrayFields as Ht, HUB_MDNS_TXT_KEYS as I, replacedFieldKeys as In, RUNTIME_DEFAULTS as Ir, deviceCredentialsCapability as It, STORAGE_ADMIN_SCOPED_BASES as J, scoreRuntimes as Jn, customAction as Jr, extractNestedAddonId as Jt, STORAGE_ACCESS_FALLBACK as K, scopesAllowAddon as Kn, collectZodSecretPaths as Kr, expandContainer as Kt, KEYCHAIN_RESET_TRIGGER_ACTOR as L, resolveAppConnections as Ln, ReadinessRegistry as Lr, deviceExtensionCapability as Lt, FIRST_LEVEL_MACRO_CLASSES as M, platformProbeCapability as Mn, DATAPLANE_SECRET_HEADER as Mr, decodeVectorBase64 as Mt, FieldClaimModeSchema as N, procedureAuthKey as Nn, DEVICE_SETTINGS_CONTRIBUTION_METHODS as Nr, defineExtensionSlotProvider as Nt, DEVICE_SAN_USER_PREFIX as O, objectInputDeclaresRequiredDeviceId as On, DeviceRole as Or, createDeviceExtensionProvider as Ot, FieldClaimSchema as P, ptzAutotrackCapability as Pn, DEVICE_STATUS_METHOD as Pr, deriveBatteryPresence as Pt, SsoBridgeClaimsSchema as Q, snapshotCapability as Qn, expandCapMethods as Qr, formatMinutes as Qt, LOG_LEVEL_RANK as R, resolveBucketMs as Rn, ReadinessTimeoutError as Rr, deviceManagerCapability as Rt, DATA_STORE_DATABASES as S, EventCategory as Si, metricsProviderCapability as Sn, compositionSliceKey as Sr, compositionSourceRefs as St, DEVICE_ENROLLMENT_TTL_MS as T, normalizeCoreBlockWrite as Tn, disarmRoseMemory as Tr, coreBlockIdFromAddonId as Tt, NetworkTunnelStartedDataSchema as U, resolveMethodAuth as Un, asString$1 as Ur, enumerateSchemaFields as Ut, MINUTES_PER_DAY as V, resolveHubAddressRoles as Vn, asJsonObject as Vr, enumerateInferenceDevices as Vt, RECORDING_SOURCE_CAMSTACK_ADDON as W, resolveNotificationTapAddress as Wn, buildSecretRef as Wr, evaluateCompositionField as Wt, ScopedTokenSchema as X, shortHostname as Xn, emitDownForOwnedCaps as Xr, foldSnapshotByFunction as Xt, STREAM_PROFILE_META as Y, settingsStoreCapability as Yn, defineCustomActions as Yr, filesystemBrowseCapability as Yt, ServerNameSchema as Z, siteZoneKey as Zn, emitReadiness as Zr, formatDeviceRevoker as Zt, CatalogFileSchema as _, sleep as _i, logLevelAtMost as _n, cloneStatefulExpressionMemory as _r, cameraGridLayoutCapability as _t, ApiKeyRecordSchema as a, isSecretMarker as ai, isLocationEnabled as an, streamCatalogCapability as ar, addonSettingsCapability as at, DATABASE_SNAPSHOT_SUFFIX as b, transformSecretWrite as bi, mayWriteToLocation as bn, compositionFeatureEnabled as br, composerCapability as bt, CAMERA_SWITCH_ORDER as c, normalizeSecretOwner as ci, kebabToCamel as cn, userManagementCapability as cr, authProviderCapability as ct, CATALOG_LANGS as d, parseSecretRef as di, legacyAutoLinkIds as dn, vectorDimFromBase64 as dr, batteryCapability as dt, hydrateSchema as ei, interpolate as en, storageAdminCapability as er, StorageLocationModeSchema as et, COMPOSED_ITEM_FIXED_FIELDS as f, readinessKey as fi, legacyModeOf as fn, vectorIndexDimConflictError as fr, buildCapabilityLookup as ft, CalendarPreferencesSchema as g, secretTreeFromPaths as gi, logDestinationCapability as gn, buildFfmpegArgs as gr, calendarsCapability as gt, CORE_BLOCK_ADDON_PREFIX as h, scopeKey as hi, locationIconKey as hn, COMPOSER_ADDON_ID as hr, buildStreamParamsConfigSchema as ht, AlertSchema as i, isSecretClear as ii, isDefaultAppConnectionEndpoint as in, storageProviderCapability as ir, addonPagesCapability as it, DeviceStatusSchema as j, planComposition as jn, BaseAddon as jr, declarationOwnerNodeId as jt, DEVICE_TOMBSTONE_RETENTION_MS as k, parseStreamParamsFormPatch as kn, DeviceType as kr, dataStoreProviderCapability as kt, CAMSTACK_APP_LINK_ORIGIN as l, parseJsonObject as li, keychainAdminCapability as ln, validateComposition as lr, backupCapability as lt, CORE_BLOCKS_ADDON_ID as m, resolveSecretMarkers as mi, localNetworkCapability as mn, withLocationMode as mr, buildDeviceSignatureMessage as mt, AGENT_MDNS_TXT_KEYS as n, isEvent as ni, isArrayOutputSchema as nn, storageMigrationCapability as nr, StorageMigrationJobSchema as nt, BaseDevice as o, isSecretMarkerLike as oi, isObjectInput as on, streamQualityLabel as or, addonWidgetsCapability as ot, COMPOSER_RUNNER_ID as p, resolveCapMount as pi, lifecycleJobSchema as pn, vectorStoreCapability as pr, buildDeviceEnrollmentLink as pt, STORAGE_ADMIN_MOVED_COLLECTIONS as q, scopesAllowDeviceCap as qn, createEvent as qr, expressionContainsBuiltinCall as qt, ALL_CAPABILITY_DEFINITIONS as r, isKeychainStoredField as ri, isCollectionArrayMethod as rn, storageOccupancyCapability as rr, UserRecordSchema as rt, BatteryStatusSchema as s, nodePin as si, isVoidInput as sn, supportedRuntimes as sr, alertsCapability as st, AGENT_MDNS_SERVICE_TYPE as t, isDeviceConfigCap as ti, isAppLinkBase as tn, storageCapability as tr, StorageLocationTypeSchema as tt, CAP_NAMES_WITH_STATUS as u, parseJsonUnknown as ui, keychainCapability as un, validateCustomAddress as ur, bareAddonId as ut, CoreBlockSchema as v, toNodeId as vi, looseSchema as vn, composedDeviceRef as vr, canonicalIconKey as vt, DERIVED_CAMERA_SILENCED_CAP_NAMES as w, motionCapability as wn, createStatefulExpressionMemory as wr, coreBlockComposition as wt, DATABASE_SNAPSHOT_TIMEOUT_MS as x, userError as xi, memoizePinnedFfmpeg as xn, compositionItemFieldPath as xr, compositionFieldKey as xt, DATABASE_SNAPSHOT_PARTIAL_SUFFIX as y, toSecretFieldView as yi, mayReadLocation as yn, composedDeviceStableId as yr, checkRoleAddress as yt, LegacyStorageLocationDefaultSchema as z, resolveCoreBlockEntry as zn, SECRET_CLEAR as zr, deviceStateCapability as zt };
86296
+ export { StorageCleanupJobSchema as $, splitTranslationRef as $n, expandCapMethods as $r, gbToBytes as $t, DeclaredDevices as A, pickAppLinkHub as An, errMsg as Ar, databaseSnapshotCapability as At, METHOD_ACCESS_MAP as B, resolveCoreBlockFiles as Bn, WELL_KNOWN_TAB_MAP as Br, deviceStatusCapability as Bt, DAY_NAMES as C, toSecretFieldView as Ci, modeMayWrite as Cn, compositionSourceKey as Cr, coreBlockAddonId as Ct, DEVICE_SAN_CREDENTIAL_PREFIX as D, objectInputDeclaresAddonId as Dn, DeviceFeature as Dr, coreBlocksCapability as Dt, DEVICE_NONCE_TTL_MS as E, EventCategory as Ei, normalizeUnit as En, toExpressionValue as Er, coreBlockSourceKind as Et, HUB_MDNS_SERVICE_TYPE as F, reducePoints as Fn, REDACTED_SECRET as Fr, describeComposableCaps as Ft, RecordingStatusSchema as G, runtimeStatePolicyFor as Gn, collectSecretConfigKeys as Gr, evictionPolicyOfLocation as Gt, MOTION_CLOSE_AFTER_MS as H, resolveLocationMode as Hn, asNumber as Hr, enumerateItemArrayFields as Ht, HUB_MDNS_TXT_KEYS as I, replacedFieldKeys as In, RUNTIME_DEFAULTS as Ir, deviceCredentialsCapability as It, STORAGE_ADMIN_SCOPED_BASES as J, scoreRuntimes as Jn, createEvent as Jr, extractNestedAddonId as Jt, STORAGE_ACCESS_FALLBACK as K, scopesAllowAddon as Kn, collectSecretMarkerRefs as Kr, expandContainer as Kt, KEYCHAIN_RESET_TRIGGER_ACTOR as L, resolveAppConnections as Ln, ReadinessRegistry as Lr, deviceExtensionCapability as Lt, FIRST_LEVEL_MACRO_CLASSES as M, platformProbeCapability as Mn, DATAPLANE_SECRET_HEADER as Mr, decodeVectorBase64 as Mt, FieldClaimModeSchema as N, procedureAuthKey as Nn, DEVICE_SETTINGS_CONTRIBUTION_METHODS as Nr, defineExtensionSlotProvider as Nt, DEVICE_SAN_USER_PREFIX as O, objectInputDeclaresRequiredDeviceId as On, DeviceRole as Or, createDeviceExtensionProvider as Ot, FieldClaimSchema as P, ptzAutotrackCapability as Pn, DEVICE_STATUS_METHOD as Pr, deriveBatteryPresence as Pt, SsoBridgeClaimsSchema as Q, snapshotCapability as Qn, emitReadiness as Qr, formatMinutes as Qt, LOG_LEVEL_RANK as R, resolveBucketMs as Rn, ReadinessTimeoutError as Rr, deviceManagerCapability as Rt, DATA_STORE_DATABASES as S, toNodeId as Si, metricsProviderCapability as Sn, compositionSliceKey as Sr, compositionSourceRefs as St, DEVICE_ENROLLMENT_TTL_MS as T, userError as Ti, normalizeCoreBlockWrite as Tn, disarmRoseMemory as Tr, coreBlockIdFromAddonId as Tt, NetworkTunnelStartedDataSchema as U, resolveMethodAuth as Un, asString$1 as Ur, enumerateSchemaFields as Ut, MINUTES_PER_DAY as V, resolveHubAddressRoles as Vn, asJsonObject as Vr, enumerateInferenceDevices as Vt, RECORDING_SOURCE_CAMSTACK_ADDON as W, resolveNotificationTapAddress as Wn, buildSecretRef as Wr, evaluateCompositionField as Wt, ScopedTokenSchema as X, shortHostname as Xn, defineCustomActions as Xr, foldSnapshotByFunction as Xt, STREAM_PROFILE_META as Y, settingsStoreCapability as Yn, customAction as Yr, filesystemBrowseCapability as Yt, ServerNameSchema as Z, siteZoneKey as Zn, emitDownForOwnedCaps as Zr, formatDeviceRevoker as Zt, CatalogFileSchema as _, resolveSecretMarkers as _i, logLevelAtMost as _n, cloneStatefulExpressionMemory as _r, cameraGridLayoutCapability as _t, ApiKeyRecordSchema as a, isSecretClear as ai, isLocationEnabled as an, streamCatalogCapability as ar, addonSettingsCapability as at, DATABASE_SNAPSHOT_SUFFIX as b, secretTreeFromSchema as bi, mayWriteToLocation as bn, compositionFeatureEnabled as br, composerCapability as bt, CAMERA_SWITCH_ORDER as c, isSecretRefOwnedBy as ci, kebabToCamel as cn, userManagementCapability as cr, authProviderCapability as ct, CATALOG_LANGS as d, normalizeSecretOwner as di, legacyAutoLinkIds as dn, vectorDimFromBase64 as dr, batteryCapability as dt, formatSecretScope as ei, interpolate as en, storageAdminCapability as er, StorageLocationModeSchema as et, COMPOSED_ITEM_FIXED_FIELDS as f, parseJsonObject as fi, legacyModeOf as fn, vectorIndexDimConflictError as fr, buildCapabilityLookup as ft, CalendarPreferencesSchema as g, resolveCapMount as gi, logDestinationCapability as gn, buildFfmpegArgs as gr, calendarsCapability as gt, CORE_BLOCK_ADDON_PREFIX as h, readinessKey as hi, locationIconKey as hn, COMPOSER_ADDON_ID as hr, buildStreamParamsConfigSchema as ht, AlertSchema as i, isKeychainStoredField as ii, isDefaultAppConnectionEndpoint as in, storageProviderCapability as ir, addonPagesCapability as it, DeviceStatusSchema as j, planComposition as jn, BaseAddon as jr, declarationOwnerNodeId as jt, DEVICE_TOMBSTONE_RETENTION_MS as k, parseStreamParamsFormPatch as kn, DeviceType as kr, dataStoreProviderCapability as kt, CAMSTACK_APP_LINK_ORIGIN as l, makeSecretMarker as li, keychainAdminCapability as ln, validateComposition as lr, backupCapability as lt, CORE_BLOCKS_ADDON_ID as m, parseSecretRef as mi, localNetworkCapability as mn, withLocationMode as mr, buildDeviceSignatureMessage as mt, AGENT_MDNS_TXT_KEYS as n, isDeviceConfigCap as ni, isArrayOutputSchema as nn, storageMigrationCapability as nr, StorageMigrationJobSchema as nt, BaseDevice as o, isSecretMarker as oi, isObjectInput as on, streamQualityLabel as or, addonWidgetsCapability as ot, COMPOSER_RUNNER_ID as p, parseJsonUnknown as pi, lifecycleJobSchema as pn, vectorStoreCapability as pr, buildDeviceEnrollmentLink as pt, STORAGE_ADMIN_MOVED_COLLECTIONS as q, scopesAllowDeviceCap as qn, collectZodSecretPaths as qr, expressionContainsBuiltinCall as qt, ALL_CAPABILITY_DEFINITIONS as r, isEvent as ri, isCollectionArrayMethod as rn, storageOccupancyCapability as rr, UserRecordSchema as rt, BatteryStatusSchema as s, isSecretMarkerLike as si, isVoidInput as sn, supportedRuntimes as sr, alertsCapability as st, AGENT_MDNS_SERVICE_TYPE as t, hydrateSchema as ti, isAppLinkBase as tn, storageCapability as tr, StorageLocationTypeSchema as tt, CAP_NAMES_WITH_STATUS as u, nodePin as ui, keychainCapability as un, validateCustomAddress as ur, bareAddonId as ut, CoreBlockSchema as v, scopeKey as vi, looseSchema as vn, composedDeviceRef as vr, canonicalIconKey as vt, DERIVED_CAMERA_SILENCED_CAP_NAMES as w, transformSecretWrite as wi, motionCapability as wn, createStatefulExpressionMemory as wr, coreBlockComposition as wt, DATABASE_SNAPSHOT_TIMEOUT_MS as x, sleep as xi, memoizePinnedFfmpeg as xn, compositionItemFieldPath as xr, compositionFieldKey as xt, DATABASE_SNAPSHOT_PARTIAL_SUFFIX as y, secretTreeFromPaths as yi, mayReadLocation as yn, composedDeviceStableId as yr, checkRoleAddress as yt, LegacyStorageLocationDefaultSchema as z, resolveCoreBlockEntry as zn, SECRET_CLEAR as zr, deviceStateCapability as zt };