@camstack/system 1.2.458 → 1.2.459

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 (98) hide show
  1. package/dist/{agent-https-DOELEug8.js → agent-https-Dnr_nIVx.js} +3 -723
  2. package/dist/{agent-https-CQA3W-3e.mjs → agent-https-Iw3RSQup.mjs} +4 -616
  3. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  4. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  5. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  6. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  7. package/dist/builtins/alerts/alerts.addon.js +5 -7
  8. package/dist/builtins/alerts/alerts.addon.mjs +5 -7
  9. package/dist/builtins/alerts/record-kinds.d.ts +1 -1
  10. package/dist/builtins/autotrack/index.js +1 -1
  11. package/dist/builtins/autotrack/index.mjs +1 -1
  12. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +242 -4
  13. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +240 -2
  14. package/dist/builtins/calendars/calendars.addon.js +2 -10
  15. package/dist/builtins/calendars/calendars.addon.mjs +2 -3
  16. package/dist/builtins/calendars/record-kinds.d.ts +1 -1
  17. package/dist/builtins/camera-grid/index.js +1 -1
  18. package/dist/builtins/camera-grid/index.mjs +1 -1
  19. package/dist/builtins/composer/composer.addon.js +2 -2
  20. package/dist/builtins/composer/composer.addon.mjs +2 -2
  21. package/dist/builtins/console-logging/index.js +1 -1
  22. package/dist/builtins/console-logging/index.mjs +1 -1
  23. package/dist/builtins/core-blocks/core-blocks.addon.js +4 -6
  24. package/dist/builtins/core-blocks/core-blocks.addon.mjs +4 -6
  25. package/dist/builtins/device-history/device-history.addon.js +1 -1
  26. package/dist/builtins/device-history/device-history.addon.mjs +1 -1
  27. package/dist/builtins/device-manager/device-manager.addon.js +2 -4
  28. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -4
  29. package/dist/builtins/hub-forwarder/index.js +1 -1
  30. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  31. package/dist/builtins/keychain/index.js +41 -43
  32. package/dist/builtins/keychain/index.mjs +41 -43
  33. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  34. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  35. package/dist/builtins/local-auth/local-auth.addon.js +24 -40
  36. package/dist/builtins/local-auth/local-auth.addon.mjs +24 -40
  37. package/dist/builtins/local-network/local-network.addon.js +2 -2
  38. package/dist/builtins/local-network/local-network.addon.mjs +2 -2
  39. package/dist/builtins/loki-logging/index.js +1 -1
  40. package/dist/builtins/loki-logging/index.mjs +1 -1
  41. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  42. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  43. package/dist/builtins/native-metrics/node-metrics-history-recorder.d.ts +1 -2
  44. package/dist/builtins/platform-probe/index.js +1 -1
  45. package/dist/builtins/platform-probe/index.mjs +1 -1
  46. package/dist/builtins/record-entries/index.js +1 -1
  47. package/dist/builtins/record-entries/index.mjs +1 -1
  48. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  49. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  50. package/dist/builtins/snapshot/index.js +1 -1
  51. package/dist/builtins/snapshot/index.mjs +1 -1
  52. package/dist/builtins/sqlite-storage/file-host-protocol.d.ts +0 -15
  53. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  54. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  55. package/dist/builtins/sqlite-storage/index.js +1 -1
  56. package/dist/builtins/sqlite-storage/index.mjs +1 -1
  57. package/dist/builtins/sqlite-storage/owned-sqlite-file.d.ts +0 -44
  58. package/dist/builtins/sqlite-storage/records/records-catalog.d.ts +0 -2
  59. package/dist/builtins/sqlite-storage/records/records-engine-types.d.ts +0 -21
  60. package/dist/builtins/sqlite-storage/records/records-engine.d.ts +3 -20
  61. package/dist/builtins/sqlite-storage/records/records-provider.d.ts +4 -18
  62. package/dist/builtins/sqlite-storage/records/records-sql.d.ts +1 -1
  63. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +0 -17
  64. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +21 -196
  65. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +21 -196
  66. package/dist/builtins/sqlite-storage/storage-admin-provider.d.ts +6 -14
  67. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +2 -2
  68. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +7 -9
  69. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +7 -9
  70. package/dist/builtins/system-config/system-config.addon.js +667 -40
  71. package/dist/builtins/system-config/system-config.addon.mjs +625 -15
  72. package/dist/builtins/winston-logging/index.js +1 -1
  73. package/dist/builtins/winston-logging/index.mjs +1 -1
  74. package/dist/{composition-sources-BVguN7VV.mjs → composition-sources-DNRZWR1j.mjs} +1 -1
  75. package/dist/{composition-sources-DURQNDJ4.js → composition-sources-b0e_2I-D.js} +1 -1
  76. package/dist/{constants-Njka8Cv6.js → constants-6OeJiZgi.js} +1 -1
  77. package/dist/{constants-FGjnsE2x.mjs → constants-BnkOdj9Q.mjs} +1 -1
  78. package/dist/{device-ca-lEaAQ9Xi.mjs → device-ca-Bnkw8GyU.mjs} +1 -1
  79. package/dist/{device-ca-BrVK_5s3.js → device-ca-CPTDs--d.js} +1 -1
  80. package/dist/{dist-BZQjLPiz.js → dist-Bn-RNanh.js} +29 -130
  81. package/dist/{dist-B_GRPhnY.mjs → dist-Wy8cTxg6.mjs} +30 -113
  82. package/dist/file-host-worker.js +1 -1
  83. package/dist/file-host-worker.mjs +1 -1
  84. package/dist/{hub-mdns-ciao-Bg2HfTwP.mjs → hub-mdns-ciao-CJu0nhla.mjs} +2 -2
  85. package/dist/{hub-mdns-ciao-nce3TXs_.js → hub-mdns-ciao-CTBTlia4.js} +2 -2
  86. package/dist/index.js +27 -30
  87. package/dist/index.mjs +11 -14
  88. package/dist/{restore-archive-C7kLDI_0.mjs → restore-archive-CmP-iiG9.mjs} +84 -331
  89. package/dist/{restore-archive-FyfZ8YMC.js → restore-archive-DM1OBYq4.js} +89 -342
  90. package/dist/{wal-maintenance-DfSIOj24.js → wal-maintenance-DUHEp_09.js} +0 -0
  91. package/dist/{wal-maintenance-Duejh7Lx.mjs → wal-maintenance-NKbwWovZ.mjs} +0 -0
  92. package/package.json +1 -1
  93. package/dist/builtins/records/legacy-table-row-count.d.ts +0 -5
  94. package/dist/builtins/records/phase6-declare-gate.d.ts +0 -28
  95. package/dist/builtins/sqlite-storage/records/count-settings-array-legacy.d.ts +0 -5
  96. package/dist/builtins/sqlite-storage/records/count-settings-brokers-legacy.d.ts +0 -6
  97. package/dist/phase6-declare-gate-Dag1_WR2.js +0 -98
  98. package/dist/phase6-declare-gate-Lb-mrVvz.mjs +0 -93
@@ -1,4 +1,4 @@
1
- import { Ki as defineRecordKinds, Pt as calendarsCapability, _ as CalendarPreferencesSchema, ni as BaseAddon } from "../../dist-B_GRPhnY.mjs";
1
+ import { Gi as defineRecordKinds, Pt as calendarsCapability, _ as CalendarPreferencesSchema, ni as BaseAddon } from "../../dist-Wy8cTxg6.mjs";
2
2
  import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
3
3
  import { z } from "zod";
4
4
  //#region src/builtins/calendars/calendar-color.ts
@@ -39,8 +39,7 @@ var _calendarsRecordKinds = defineRecordKinds({ "user-prefs": {
39
39
  name: "updated_at",
40
40
  fields: ["updatedAt"]
41
41
  }],
42
- retention: { none: "a missing row reads as empty prefs (all visible, system colours)" },
43
- adoptsFrom: "calendars:user-prefs"
42
+ retention: { none: "a missing row reads as empty prefs (all visible, system colours)" }
44
43
  } });
45
44
  var calendarsRecordKinds = _calendarsRecordKinds;
46
45
  _calendarsRecordKinds["user-prefs"];
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { CalendarPreferencesSchema, type DefinedRecordKind } from "@camstack/types";
5
5
  import { z } from "zod";
6
- /** Legacy collection / adoptsFrom target. */
6
+ /** The legacy collection the kind replaced; read only without records. */
7
7
  export declare const CALENDARS_USER_PREFS_COLLECTION = "calendars:user-prefs";
8
8
  export type CalendarUserPrefsBody = {
9
9
  readonly calendars: z.infer<typeof CalendarPreferencesSchema.shape.calendars>;
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BZQjLPiz.js");
6
+ const require_dist = require("../../dist-Bn-RNanh.js");
7
7
  let zod = require("zod");
8
8
  let _camstack_types_node = require("@camstack/types/node");
9
9
  let node_path = require("node:path");
@@ -1,4 +1,4 @@
1
- import { Ar as streamCatalogCapability, Cr as snapshotCapability, E as DERIVED_CAMERA_SILENCED_CAP_NAMES, Ft as cameraGridLayoutCapability, Hi as createEvent, Oa as EventCategory, P as DeclaredDevices, Qr as DeviceFeature, Vr as buildFfmpegArgs, Wn as memoizePinnedFfmpeg, X as MOTION_CLOSE_AFTER_MS, Yt as declarationOwnerNodeId, Zi as hydrateSchema, ei as DeviceType, ni as BaseAddon, o as BaseDevice, qn as motionCapability, ti as errMsg } from "../../dist-B_GRPhnY.mjs";
1
+ import { Ar as streamCatalogCapability, Cr as snapshotCapability, E as DERIVED_CAMERA_SILENCED_CAP_NAMES, Ft as cameraGridLayoutCapability, Hi as createEvent, P as DeclaredDevices, Qr as DeviceFeature, Ta as EventCategory, Vr as buildFfmpegArgs, Wn as memoizePinnedFfmpeg, X as MOTION_CLOSE_AFTER_MS, Xi as hydrateSchema, Yt as declarationOwnerNodeId, ei as DeviceType, ni as BaseAddon, o as BaseDevice, qn as motionCapability, ti as errMsg } from "../../dist-Wy8cTxg6.mjs";
2
2
  import { z } from "zod";
3
3
  import { FfmpegProcess } from "@camstack/types/node";
4
4
  import { join } from "node:path";
@@ -3,8 +3,8 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BZQjLPiz.js");
7
- const require_composition_sources = require("../../composition-sources-DURQNDJ4.js");
6
+ const require_dist = require("../../dist-Bn-RNanh.js");
7
+ const require_composition_sources = require("../../composition-sources-b0e_2I-D.js");
8
8
  let zod = require("zod");
9
9
  //#region src/builtins/shared/device-state-changed.ts
10
10
  /** Structural narrowing helper for untrusted bus payloads. */
@@ -1,5 +1,5 @@
1
- import { At as buildCapabilityLookup, Br as COMPOSER_ADDON_ID, Gr as compositionFeatureEnabled, Hi as createEvent, Hr as cloneStatefulExpressionMemory, Jr as compositionSourceKey, Kr as compositionItemFieldPath, Oa as EventCategory, P as DeclaredDevices, Rt as composerCapability, Ur as composedDeviceRef, Wr as composedDeviceStableId, Xr as disarmRoseMemory, Yr as createStatefulExpressionMemory, Zr as toExpressionValue, ei as DeviceType, er as planComposition, f as COMPOSED_ITEM_FIXED_FIELDS, ni as BaseAddon, o as BaseDevice, pn as expressionContainsBuiltinCall, qr as compositionSliceKey, r as ALL_CAPABILITY_DEFINITIONS, ti as errMsg, un as evaluateCompositionField, zt as compositionFieldKey } from "../../dist-B_GRPhnY.mjs";
2
- import { n as normalizedNativeOwner } from "../../composition-sources-BVguN7VV.mjs";
1
+ import { At as buildCapabilityLookup, Br as COMPOSER_ADDON_ID, Gr as compositionFeatureEnabled, Hi as createEvent, Hr as cloneStatefulExpressionMemory, Jr as compositionSourceKey, Kr as compositionItemFieldPath, P as DeclaredDevices, Rt as composerCapability, Ta as EventCategory, Ur as composedDeviceRef, Wr as composedDeviceStableId, Xr as disarmRoseMemory, Yr as createStatefulExpressionMemory, Zr as toExpressionValue, ei as DeviceType, er as planComposition, f as COMPOSED_ITEM_FIXED_FIELDS, ni as BaseAddon, o as BaseDevice, pn as expressionContainsBuiltinCall, qr as compositionSliceKey, r as ALL_CAPABILITY_DEFINITIONS, ti as errMsg, un as evaluateCompositionField, zt as compositionFieldKey } from "../../dist-Wy8cTxg6.mjs";
2
+ import { n as normalizedNativeOwner } from "../../composition-sources-DNRZWR1j.mjs";
3
3
  import { z } from "zod";
4
4
  //#region src/builtins/shared/device-state-changed.ts
5
5
  /** Structural narrowing helper for untrusted bus payloads. */
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BZQjLPiz.js");
6
+ const require_dist = require("../../dist-Bn-RNanh.js");
7
7
  const require_formatter = require("../../formatter-DqAKDlvN.js");
8
8
  //#region src/builtins/console-logging/console-destination.ts
9
9
  var LEVEL_RANK = {
@@ -1,4 +1,4 @@
1
- import { ni as BaseAddon, zn as logDestinationCapability } from "../../dist-B_GRPhnY.mjs";
1
+ import { ni as BaseAddon, zn as logDestinationCapability } from "../../dist-Wy8cTxg6.mjs";
2
2
  import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
3
3
  //#region src/builtins/console-logging/console-destination.ts
4
4
  var LEVEL_RANK = {
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_chunk = require("../../chunk-Cek0wNdY.js");
3
- const require_dist = require("../../dist-BZQjLPiz.js");
3
+ const require_dist = require("../../dist-Bn-RNanh.js");
4
4
  const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
5
- const require_composition_sources = require("../../composition-sources-DURQNDJ4.js");
5
+ const require_composition_sources = require("../../composition-sources-b0e_2I-D.js");
6
6
  const require_prefix_range = require("../../prefix-range-D_KueXbQ.js");
7
7
  const require_prefix_walk = require("../../prefix-walk-Dv6MLZlM.js");
8
8
  let zod = require("zod");
@@ -531,8 +531,7 @@ var _coreBlocksRecordKinds = require_dist.defineRecordKinds({
531
531
  fields: ["enabled"]
532
532
  }],
533
533
  retention: { none: "operator delete only" },
534
- maxDataBytes: 256 * 1024,
535
- adoptsFrom: CORE_BLOCKS_COLLECTION
534
+ maxDataBytes: 256 * 1024
536
535
  },
537
536
  settings: {
538
537
  schema: CoreBlockSettingsBodySchema,
@@ -540,8 +539,7 @@ var _coreBlocksRecordKinds = require_dist.defineRecordKinds({
540
539
  writeTrigger: "legacy only — migrateRawSecrets reads then deletes rows (D880)",
541
540
  device: "none",
542
541
  at: "none",
543
- retention: { none: "rows deleted by migrateRawSecrets" },
544
- adoptsFrom: CORE_BLOCK_SETTINGS_COLLECTION
542
+ retention: { none: "rows deleted by migrateRawSecrets" }
545
543
  }
546
544
  });
547
545
  var coreBlocksRecordKinds = _coreBlocksRecordKinds;
@@ -1,6 +1,6 @@
1
- import { $t as describeComposableCaps, At as buildCapabilityLookup, Bi as collectSecretMarkerRefs, Bt as compositionSourceRefs, Gt as coreBlocksCapability, Ht as coreBlockComposition, Jn as normalizeCoreBlockWrite, Jr as compositionSourceKey, Ki as defineRecordKinds, P as DeclaredDevices, Pr as validateComposition, Ta as transformSecretWrite, Ur as composedDeviceRef, Ut as coreBlockIdFromAddonId, Vt as coreBlockAddonId, Wt as coreBlockSourceKind, Zi as hydrateSchema, dr as resolveCoreBlockFiles, er as planComposition, h as CORE_BLOCK_ADDON_PREFIX, ia as isSecretRefOwnedBy, m as CORE_BLOCKS_ADDON_ID, na as isSecretMarker, ni as BaseAddon, p as COMPOSER_RUNNER_ID, r as ALL_CAPABILITY_DEFINITIONS, sr as replacedFieldKeys, ti as errMsg, ur as resolveCoreBlockEntry, va as resolveSecretMarkers, xa as secretTreeFromSchema, y as CoreBlockSchema } from "../../dist-B_GRPhnY.mjs";
1
+ import { $t as describeComposableCaps, At as buildCapabilityLookup, Bi as collectSecretMarkerRefs, Bt as compositionSourceRefs, Gi as defineRecordKinds, Gt as coreBlocksCapability, Ht as coreBlockComposition, Jn as normalizeCoreBlockWrite, Jr as compositionSourceKey, P as DeclaredDevices, Pr as validateComposition, Sa as transformSecretWrite, Ur as composedDeviceRef, Ut as coreBlockIdFromAddonId, Vt as coreBlockAddonId, Wt as coreBlockSourceKind, Xi as hydrateSchema, dr as resolveCoreBlockFiles, er as planComposition, h as CORE_BLOCK_ADDON_PREFIX, ha as resolveSecretMarkers, m as CORE_BLOCKS_ADDON_ID, ni as BaseAddon, p as COMPOSER_RUNNER_ID, r as ALL_CAPABILITY_DEFINITIONS, ra as isSecretRefOwnedBy, sr as replacedFieldKeys, ta as isSecretMarker, ti as errMsg, ur as resolveCoreBlockEntry, va as secretTreeFromSchema, y as CoreBlockSchema } from "../../dist-Wy8cTxg6.mjs";
2
2
  import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
3
- import { t as describeCompositionSources } from "../../composition-sources-BVguN7VV.mjs";
3
+ import { t as describeCompositionSources } from "../../composition-sources-DNRZWR1j.mjs";
4
4
  import { t as prefixRange } from "../../prefix-range-Dl0znowN.mjs";
5
5
  import { n as unwrapStoredValue, t as loadPrefixed } from "../../prefix-walk-DAOBSyH1.mjs";
6
6
  import { createRequire } from "node:module";
@@ -526,8 +526,7 @@ var _coreBlocksRecordKinds = defineRecordKinds({
526
526
  fields: ["enabled"]
527
527
  }],
528
528
  retention: { none: "operator delete only" },
529
- maxDataBytes: 256 * 1024,
530
- adoptsFrom: CORE_BLOCKS_COLLECTION
529
+ maxDataBytes: 256 * 1024
531
530
  },
532
531
  settings: {
533
532
  schema: CoreBlockSettingsBodySchema,
@@ -535,8 +534,7 @@ var _coreBlocksRecordKinds = defineRecordKinds({
535
534
  writeTrigger: "legacy only — migrateRawSecrets reads then deletes rows (D880)",
536
535
  device: "none",
537
536
  at: "none",
538
- retention: { none: "rows deleted by migrateRawSecrets" },
539
- adoptsFrom: CORE_BLOCK_SETTINGS_COLLECTION
537
+ retention: { none: "rows deleted by migrateRawSecrets" }
540
538
  }
541
539
  });
542
540
  var coreBlocksRecordKinds = _coreBlocksRecordKinds;
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BZQjLPiz.js");
6
+ const require_dist = require("../../dist-Bn-RNanh.js");
7
7
  //#region src/builtins/device-history/time/bucket-time.ts
8
8
  /**
9
9
  * Bucket arithmetic for the three rollup tiers (D850, plan §4/§5.5).
@@ -1,4 +1,4 @@
1
- import { B as HISTORY_CATALOG, Ji as emitReadiness, O as DEVICE_HISTORY_ENERGY_KEY, Oa as EventCategory, Tt as armRemovalReconcile, di as HISTORY_DEFAULT_MIN_INTERVAL_MS, ei as DeviceType, in as deviceRemovalHookCapability, ni as BaseAddon, nn as deviceHistoryCapability } from "../../dist-B_GRPhnY.mjs";
1
+ import { B as HISTORY_CATALOG, O as DEVICE_HISTORY_ENERGY_KEY, Ta as EventCategory, Tt as armRemovalReconcile, di as HISTORY_DEFAULT_MIN_INTERVAL_MS, ei as DeviceType, in as deviceRemovalHookCapability, ni as BaseAddon, nn as deviceHistoryCapability, qi as emitReadiness } from "../../dist-Wy8cTxg6.mjs";
2
2
  //#region src/builtins/device-history/time/bucket-time.ts
3
3
  /**
4
4
  * Bucket arithmetic for the three rollup tiers (D850, plan §4/§5.5).
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BZQjLPiz.js");
6
+ const require_dist = require("../../dist-Bn-RNanh.js");
7
7
  const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
8
8
  const require_prefix_range = require("../../prefix-range-D_KueXbQ.js");
9
9
  const require_prefix_walk = require("../../prefix-walk-Dv6MLZlM.js");
@@ -7894,8 +7894,7 @@ var _deviceManagerRecordKinds = require_dist.defineRecordKinds({ tombstones: {
7894
7894
  retention: {
7895
7895
  owner: "device-manager",
7896
7896
  reason: "90 days (`DEVICE_TOMBSTONE_RETENTION_MS`), pruned whenever a tombstone is written or the list is read"
7897
- },
7898
- adoptsFrom: DEVICE_TOMBSTONES_COLLECTION
7897
+ }
7899
7898
  } });
7900
7899
  var deviceManagerRecordKinds = _deviceManagerRecordKinds;
7901
7900
  _deviceManagerRecordKinds.tombstones;
@@ -7904,7 +7903,6 @@ _deviceManagerRecordKinds.tombstones;
7904
7903
  /**
7905
7904
  * The tombstones of deleted devices (D865) — `tombstones` record kind (phase 4).
7906
7905
  */
7907
- var DEVICE_TOMBSTONES_COLLECTION = "device-manager:tombstones";
7908
7906
  /** More than the engine's default row cap, so a read is never silently truncated. */
7909
7907
  var TOMBSTONE_READ_LIMIT = 2e4;
7910
7908
  function rowToTombstone(id, body) {
@@ -1,4 +1,4 @@
1
- import { $r as DeviceRole, Ea as userError, F as DeviceStatusSchema, I as DeviceTombstoneSchema, It as canonicalIconKey, Ki as defineRecordKinds, Kt as createDeviceExtensionProvider, Mi as WELL_KNOWN_TAB_MAP, Nt as buildStreamParamsConfigSchema, Oa as EventCategory, Pn as legacyAutoLinkIds, Qi as isDeviceConfigCap, Qn as parseStreamParamsFormPatch, Qr as DeviceFeature, R as FieldClaimModeSchema, Rn as locationIconKey, Sa as sleep$1, Sr as siteZoneKey, T as DAY_NAMES, Ta as transformSecretWrite, Vi as collectZodSecretPaths, Y as MINUTES_PER_DAY, Yn as normalizeUnit, Zt as defineExtensionSlotProvider, an as deviceStateCapability, ba as secretTreeFromPaths, c as CAMERA_SWITCH_ORDER, cn as enumerateItemArrayFields, ct as STREAM_PROFILE_META, ea as isKeychainStoredField, ei as DeviceType, fn as expandContainer, gr as runtimeStatePolicyFor, ki as SECRET_CLEAR, ln as enumerateSchemaFields, na as isSecretMarker, ni as BaseAddon, on as deviceStatusCapability, r as ALL_CAPABILITY_DEFINITIONS, ra as isSecretMarkerLike, rn as deviceManagerCapability, ta as isSecretClear, ti as errMsg, tn as deviceExtensionCapability, u as CAP_NAMES_WITH_STATUS, va as resolveSecretMarkers, vn as formatMinutes, wa as toSecretFieldView, z as FieldClaimSchema } from "../../dist-B_GRPhnY.mjs";
1
+ import { $i as isKeychainStoredField, $r as DeviceRole, Ca as userError, F as DeviceStatusSchema, Gi as defineRecordKinds, I as DeviceTombstoneSchema, It as canonicalIconKey, Kt as createDeviceExtensionProvider, Mi as WELL_KNOWN_TAB_MAP, Nt as buildStreamParamsConfigSchema, Pn as legacyAutoLinkIds, Qn as parseStreamParamsFormPatch, Qr as DeviceFeature, R as FieldClaimModeSchema, Rn as locationIconKey, Sa as transformSecretWrite, Sr as siteZoneKey, T as DAY_NAMES, Ta as EventCategory, Vi as collectZodSecretPaths, Y as MINUTES_PER_DAY, Yn as normalizeUnit, Zi as isDeviceConfigCap, Zt as defineExtensionSlotProvider, _a as secretTreeFromPaths, an as deviceStateCapability, c as CAMERA_SWITCH_ORDER, cn as enumerateItemArrayFields, ct as STREAM_PROFILE_META, ea as isSecretClear, ei as DeviceType, fn as expandContainer, gr as runtimeStatePolicyFor, ha as resolveSecretMarkers, ki as SECRET_CLEAR, ln as enumerateSchemaFields, na as isSecretMarkerLike, ni as BaseAddon, on as deviceStatusCapability, r as ALL_CAPABILITY_DEFINITIONS, rn as deviceManagerCapability, ta as isSecretMarker, ti as errMsg, tn as deviceExtensionCapability, u as CAP_NAMES_WITH_STATUS, vn as formatMinutes, xa as toSecretFieldView, ya as sleep$1, z as FieldClaimSchema } from "../../dist-Wy8cTxg6.mjs";
2
2
  import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
3
3
  import { t as prefixRange } from "../../prefix-range-Dl0znowN.mjs";
4
4
  import { t as loadPrefixed } from "../../prefix-walk-DAOBSyH1.mjs";
@@ -7888,8 +7888,7 @@ var _deviceManagerRecordKinds = defineRecordKinds({ tombstones: {
7888
7888
  retention: {
7889
7889
  owner: "device-manager",
7890
7890
  reason: "90 days (`DEVICE_TOMBSTONE_RETENTION_MS`), pruned whenever a tombstone is written or the list is read"
7891
- },
7892
- adoptsFrom: DEVICE_TOMBSTONES_COLLECTION
7891
+ }
7893
7892
  } });
7894
7893
  var deviceManagerRecordKinds = _deviceManagerRecordKinds;
7895
7894
  _deviceManagerRecordKinds.tombstones;
@@ -7898,7 +7897,6 @@ _deviceManagerRecordKinds.tombstones;
7898
7897
  /**
7899
7898
  * The tombstones of deleted devices (D865) — `tombstones` record kind (phase 4).
7900
7899
  */
7901
- var DEVICE_TOMBSTONES_COLLECTION = "device-manager:tombstones";
7902
7900
  /** More than the engine's default row cap, so a read is never silently truncated. */
7903
7901
  var TOMBSTONE_READ_LIMIT = 2e4;
7904
7902
  function rowToTombstone(id, body) {
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BZQjLPiz.js");
6
+ const require_dist = require("../../dist-Bn-RNanh.js");
7
7
  const require_formatter = require("../../formatter-DqAKDlvN.js");
8
8
  //#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
9
9
  var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
@@ -1,4 +1,4 @@
1
- import { ni as BaseAddon, zn as logDestinationCapability } from "../../dist-B_GRPhnY.mjs";
1
+ import { ni as BaseAddon, zn as logDestinationCapability } from "../../dist-Wy8cTxg6.mjs";
2
2
  import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
3
3
  //#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
4
4
  var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
@@ -3,11 +3,10 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BZQjLPiz.js");
6
+ const require_dist = require("../../dist-Bn-RNanh.js");
7
7
  const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
8
- const require_device_ca = require("../../device-ca-BrVK_5s3.js");
9
- const require_phase6_declare_gate = require("../../phase6-declare-gate-Dag1_WR2.js");
10
- const require_constants = require("../../constants-Njka8Cv6.js");
8
+ const require_device_ca = require("../../device-ca-CPTDs--d.js");
9
+ const require_constants = require("../../constants-6OeJiZgi.js");
11
10
  const require_platform_key_source = require("../../platform-key-source-Di7HrlGR.js");
12
11
  let node_crypto = require("node:crypto");
13
12
  let _camstack_types_node = require("@camstack/types/node");
@@ -1072,6 +1071,42 @@ function errMsg(err) {
1072
1071
  return err instanceof Error ? err.message : String(err);
1073
1072
  }
1074
1073
  require_dist.EventCategory.KeychainChanged;
1074
+ var KeychainAuditBodySchema = require_dist.KeychainAuditEntrySchema.omit({
1075
+ id: true,
1076
+ at: true
1077
+ });
1078
+ var KeychainResetBodySchema = require_dist.KeychainResetRecordSchema.omit({
1079
+ id: true,
1080
+ at: true
1081
+ });
1082
+ var _keychainRecordKinds = require_dist.defineRecordKinds({
1083
+ audit: {
1084
+ schema: KeychainAuditBodySchema,
1085
+ class: "audit",
1086
+ writeTrigger: "one row per write / delete / rotation / reveal / recovery download",
1087
+ device: "none",
1088
+ at: "required",
1089
+ indexes: [{
1090
+ name: "audit_at",
1091
+ fields: ["at"]
1092
+ }],
1093
+ retention: {
1094
+ owner: "keychain",
1095
+ reason: "90 days and at most 20_000 rows, pruned at boot and daily"
1096
+ }
1097
+ },
1098
+ resets: {
1099
+ schema: KeychainResetBodySchema,
1100
+ class: "config",
1101
+ writeTrigger: "one row per keychain reset (System → Secrets, or the RESET_KEYCHAIN trigger file); acknowledgeReset stamps acknowledgedAt",
1102
+ device: "none",
1103
+ at: "required",
1104
+ retention: { none: "a handful of rows over a hub life; they name archive tables a reset left behind" }
1105
+ }
1106
+ });
1107
+ var keychainRecordKinds = _keychainRecordKinds;
1108
+ _keychainRecordKinds.audit;
1109
+ _keychainRecordKinds.resets;
1075
1110
  //#endregion
1076
1111
  //#region src/builtins/keychain/keychain-store.ts
1077
1112
  var import_read_all_rows = require_read_all_rows$1.require_read_all_rows();
@@ -1718,44 +1753,6 @@ var KeychainRepository = class {
1718
1753
  return row === void 0 ? null : toResetRecord(row.id, row.data);
1719
1754
  }
1720
1755
  };
1721
- var KeychainAuditBodySchema = require_dist.KeychainAuditEntrySchema.omit({
1722
- id: true,
1723
- at: true
1724
- });
1725
- var KeychainResetBodySchema = require_dist.KeychainResetRecordSchema.omit({
1726
- id: true,
1727
- at: true
1728
- });
1729
- var _keychainRecordKinds = require_dist.defineRecordKinds({
1730
- audit: {
1731
- schema: KeychainAuditBodySchema,
1732
- class: "audit",
1733
- writeTrigger: "one row per write / delete / rotation / reveal / recovery download",
1734
- device: "none",
1735
- at: "required",
1736
- indexes: [{
1737
- name: "audit_at",
1738
- fields: ["at"]
1739
- }],
1740
- retention: {
1741
- owner: "keychain",
1742
- reason: "90 days and at most 20_000 rows, pruned at boot and daily"
1743
- },
1744
- adoptsFrom: KEYCHAIN_AUDIT_COLLECTION
1745
- },
1746
- resets: {
1747
- schema: KeychainResetBodySchema,
1748
- class: "config",
1749
- writeTrigger: "one row per keychain reset (System → Secrets, or the RESET_KEYCHAIN trigger file); acknowledgeReset stamps acknowledgedAt",
1750
- device: "none",
1751
- at: "required",
1752
- retention: { none: "a handful of rows over a hub life; they name archive tables a reset left behind" },
1753
- adoptsFrom: KEYCHAIN_RESETS_COLLECTION
1754
- }
1755
- });
1756
- var keychainRecordKinds = _keychainRecordKinds;
1757
- _keychainRecordKinds.audit;
1758
- _keychainRecordKinds.resets;
1759
1756
  //#endregion
1760
1757
  //#region src/builtins/keychain/keychain-usage.ts
1761
1758
  /**
@@ -1953,8 +1950,9 @@ var KeychainAddon = class extends require_dist.BaseAddon {
1953
1950
  error: (message, meta) => ctx.logger.error(message, meta ? { meta } : void 0)
1954
1951
  };
1955
1952
  const records = ctx.records;
1953
+ if (records !== void 0) await records.declare(keychainRecordKinds);
1956
1954
  const service = new KeychainService({
1957
- repo: new KeychainRepository(door, records !== void 0 && await require_phase6_declare_gate.resolvePhase6UseRecordsPathForHub(ctx, "keychain", keychainRecordKinds, ["keychain:audit", "keychain:resets"]) && records !== void 0 ? KeychainRepository.recordStoresOf(records) : void 0),
1955
+ repo: new KeychainRepository(door, records !== void 0 ? KeychainRepository.recordStoresOf(records) : void 0),
1958
1956
  candidates: async () => {
1959
1957
  return buildKeySourceCandidates({
1960
1958
  config: readKeyConfig(await ctx.settings?.getSection("keychain") ?? {}),
@@ -1,8 +1,7 @@
1
- import { G as KeychainResetRecordSchema, Ki as defineRecordKinds, Mn as keychainAdminCapability, Nn as keychainCapability, Oa as EventCategory, U as KEYCHAIN_RESET_TRIGGER_ACTOR, W as KeychainAuditEntrySchema, Xi as formatSecretScope, fa as parseSecretRef, la as normalizeSecretOwner, ni as BaseAddon } from "../../dist-B_GRPhnY.mjs";
1
+ import { G as KeychainResetRecordSchema, Gi as defineRecordKinds, Mn as keychainAdminCapability, Nn as keychainCapability, Ta as EventCategory, U as KEYCHAIN_RESET_TRIGGER_ACTOR, W as KeychainAuditEntrySchema, Yi as formatSecretScope, ca as normalizeSecretOwner, da as parseSecretRef, ni as BaseAddon } from "../../dist-Wy8cTxg6.mjs";
2
2
  import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
3
- import { d as JWT_SIGNING_KEY_REF, n as DEVICE_CA_KEY_REF, p as SYSTEM_SECRET_OWNER } from "../../device-ca-lEaAQ9Xi.mjs";
4
- import { t as resolvePhase6UseRecordsPathForHub } from "../../phase6-declare-gate-Lb-mrVvz.mjs";
5
- import { a as MESH_CA_KEY_REF } from "../../constants-FGjnsE2x.mjs";
3
+ import { d as JWT_SIGNING_KEY_REF, n as DEVICE_CA_KEY_REF, p as SYSTEM_SECRET_OWNER } from "../../device-ca-Bnkw8GyU.mjs";
4
+ import { a as MESH_CA_KEY_REF } from "../../constants-BnkOdj9Q.mjs";
6
5
  import { n as getPlatformKeychainKey } from "../../platform-key-source-BWlq0jjn.mjs";
7
6
  import { createCipheriv, createDecipheriv, createHmac, randomBytes, randomUUID, timingSafeEqual } from "node:crypto";
8
7
  import { restrictDirToOwnerSync, restrictFileToOwnerSync, writeOwnerOnlyFileSync } from "@camstack/types/node";
@@ -1066,6 +1065,42 @@ function errMsg(err) {
1066
1065
  return err instanceof Error ? err.message : String(err);
1067
1066
  }
1068
1067
  EventCategory.KeychainChanged;
1068
+ var KeychainAuditBodySchema = KeychainAuditEntrySchema.omit({
1069
+ id: true,
1070
+ at: true
1071
+ });
1072
+ var KeychainResetBodySchema = KeychainResetRecordSchema.omit({
1073
+ id: true,
1074
+ at: true
1075
+ });
1076
+ var _keychainRecordKinds = defineRecordKinds({
1077
+ audit: {
1078
+ schema: KeychainAuditBodySchema,
1079
+ class: "audit",
1080
+ writeTrigger: "one row per write / delete / rotation / reveal / recovery download",
1081
+ device: "none",
1082
+ at: "required",
1083
+ indexes: [{
1084
+ name: "audit_at",
1085
+ fields: ["at"]
1086
+ }],
1087
+ retention: {
1088
+ owner: "keychain",
1089
+ reason: "90 days and at most 20_000 rows, pruned at boot and daily"
1090
+ }
1091
+ },
1092
+ resets: {
1093
+ schema: KeychainResetBodySchema,
1094
+ class: "config",
1095
+ writeTrigger: "one row per keychain reset (System → Secrets, or the RESET_KEYCHAIN trigger file); acknowledgeReset stamps acknowledgedAt",
1096
+ device: "none",
1097
+ at: "required",
1098
+ retention: { none: "a handful of rows over a hub life; they name archive tables a reset left behind" }
1099
+ }
1100
+ });
1101
+ var keychainRecordKinds = _keychainRecordKinds;
1102
+ _keychainRecordKinds.audit;
1103
+ _keychainRecordKinds.resets;
1069
1104
  //#endregion
1070
1105
  //#region src/builtins/keychain/keychain-store.ts
1071
1106
  var import_read_all_rows = require_read_all_rows();
@@ -1712,44 +1747,6 @@ var KeychainRepository = class {
1712
1747
  return row === void 0 ? null : toResetRecord(row.id, row.data);
1713
1748
  }
1714
1749
  };
1715
- var KeychainAuditBodySchema = KeychainAuditEntrySchema.omit({
1716
- id: true,
1717
- at: true
1718
- });
1719
- var KeychainResetBodySchema = KeychainResetRecordSchema.omit({
1720
- id: true,
1721
- at: true
1722
- });
1723
- var _keychainRecordKinds = defineRecordKinds({
1724
- audit: {
1725
- schema: KeychainAuditBodySchema,
1726
- class: "audit",
1727
- writeTrigger: "one row per write / delete / rotation / reveal / recovery download",
1728
- device: "none",
1729
- at: "required",
1730
- indexes: [{
1731
- name: "audit_at",
1732
- fields: ["at"]
1733
- }],
1734
- retention: {
1735
- owner: "keychain",
1736
- reason: "90 days and at most 20_000 rows, pruned at boot and daily"
1737
- },
1738
- adoptsFrom: KEYCHAIN_AUDIT_COLLECTION
1739
- },
1740
- resets: {
1741
- schema: KeychainResetBodySchema,
1742
- class: "config",
1743
- writeTrigger: "one row per keychain reset (System → Secrets, or the RESET_KEYCHAIN trigger file); acknowledgeReset stamps acknowledgedAt",
1744
- device: "none",
1745
- at: "required",
1746
- retention: { none: "a handful of rows over a hub life; they name archive tables a reset left behind" },
1747
- adoptsFrom: KEYCHAIN_RESETS_COLLECTION
1748
- }
1749
- });
1750
- var keychainRecordKinds = _keychainRecordKinds;
1751
- _keychainRecordKinds.audit;
1752
- _keychainRecordKinds.resets;
1753
1750
  //#endregion
1754
1751
  //#region src/builtins/keychain/keychain-usage.ts
1755
1752
  /**
@@ -1947,8 +1944,9 @@ var KeychainAddon = class extends BaseAddon {
1947
1944
  error: (message, meta) => ctx.logger.error(message, meta ? { meta } : void 0)
1948
1945
  };
1949
1946
  const records = ctx.records;
1947
+ if (records !== void 0) await records.declare(keychainRecordKinds);
1950
1948
  const service = new KeychainService({
1951
- repo: new KeychainRepository(door, records !== void 0 && await resolvePhase6UseRecordsPathForHub(ctx, "keychain", keychainRecordKinds, ["keychain:audit", "keychain:resets"]) && records !== void 0 ? KeychainRepository.recordStoresOf(records) : void 0),
1949
+ repo: new KeychainRepository(door, records !== void 0 ? KeychainRepository.recordStoresOf(records) : void 0),
1952
1950
  candidates: async () => {
1953
1951
  return buildKeySourceCandidates({
1954
1952
  config: readKeyConfig(await ctx.settings?.getSection("keychain") ?? {}),
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../chunk-Cek0wNdY.js");
3
- const require_dist = require("../../dist-BZQjLPiz.js");
3
+ const require_dist = require("../../dist-Bn-RNanh.js");
4
4
  //#region src/builtins/liveness-monitor/liveness-checks.ts
5
5
  var NO_DEVICES = "liveness:no-devices";
6
6
  var ALL_OFFLINE = "liveness:all-devices-offline";
@@ -1,4 +1,4 @@
1
- import { Hi as createEvent, Oa as EventCategory, it as RecordingStatusSchema, ni as BaseAddon, nt as RECORDING_SOURCE_CAMSTACK_ADDON, ti as errMsg } from "../../dist-B_GRPhnY.mjs";
1
+ import { Hi as createEvent, Ta as EventCategory, it as RecordingStatusSchema, ni as BaseAddon, nt as RECORDING_SOURCE_CAMSTACK_ADDON, ti as errMsg } from "../../dist-Wy8cTxg6.mjs";
2
2
  //#region src/builtins/liveness-monitor/liveness-checks.ts
3
3
  var NO_DEVICES = "liveness:no-devices";
4
4
  var ALL_OFFLINE = "liveness:all-devices-offline";