@camstack/system 1.2.390 → 1.2.391
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/addon/addon-api-factory.d.ts +30 -30
- package/dist/addon-routes/addon-route-registry.d.ts +31 -31
- package/dist/addon-runner.js +1 -1
- package/dist/addon-runner.mjs +1 -1
- package/dist/addon-utils.d.ts +22 -22
- package/dist/auth/admin-token-manager.d.ts +37 -67
- package/dist/auth/api-key-manager.d.ts +8 -8
- package/dist/auth/auth-audit-log.d.ts +29 -49
- package/dist/auth/auth-manager.d.ts +127 -126
- package/dist/auth/cidr.d.ts +8 -8
- package/dist/auth/external-identity-manager.d.ts +46 -34
- package/dist/auth/jwt-signing-key.d.ts +14 -14
- package/dist/auth/login-session-manager.d.ts +95 -135
- package/dist/auth/parse-record.d.ts +13 -13
- package/dist/auth/scope-matcher.d.ts +7 -7
- package/dist/auth/scoped-token-manager.d.ts +62 -62
- package/dist/auth/token-expiry.d.ts +49 -26
- package/dist/auth/totp-manager.d.ts +48 -48
- package/dist/auth/user-management-internal.d.ts +67 -52
- package/dist/auth/user-manager.d.ts +58 -58
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
- package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
- package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
- package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
- package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
- package/dist/builtins/alerts/device-label.d.ts +6 -6
- package/dist/builtins/alerts/index.d.ts +1 -1
- package/dist/builtins/alerts/prune-policy.d.ts +36 -36
- package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
- package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
- package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
- package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
- package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
- package/dist/builtins/autotrack/frame-error.d.ts +38 -38
- package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
- package/dist/builtins/autotrack/index.d.ts +2 -2
- package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
- package/dist/builtins/autotrack/target-selection.d.ts +33 -47
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
- package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
- package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
- package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
- package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
- package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
- package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
- package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
- package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
- package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
- package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
- package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
- package/dist/builtins/calendars/calendar-color.d.ts +5 -1
- package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
- package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
- package/dist/builtins/calendars/index.d.ts +1 -1
- package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
- package/dist/builtins/camera-grid/addon.d.ts +200 -174
- package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
- package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
- package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
- package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
- package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
- package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
- package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
- package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
- package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
- package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
- package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
- package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
- package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
- package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
- package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
- package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
- package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
- package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
- package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
- package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
- package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
- package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
- package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
- package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
- package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
- package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
- package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
- package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
- package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
- package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
- package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
- package/dist/builtins/camera-grid/index.d.ts +44 -44
- package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
- package/dist/builtins/composer/claim-gate.d.ts +54 -27
- package/dist/builtins/composer/composed-device-set.d.ts +40 -26
- package/dist/builtins/composer/composed-device.d.ts +39 -17
- package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
- package/dist/builtins/composer/composer-grafts.d.ts +57 -38
- package/dist/builtins/composer/composer-live-set.d.ts +15 -15
- package/dist/builtins/composer/composer-plan.d.ts +76 -60
- package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
- package/dist/builtins/composer/composer-seeds.d.ts +20 -14
- package/dist/builtins/composer/composer-verdict.d.ts +28 -14
- package/dist/builtins/composer/composer.addon.d.ts +23 -9
- package/dist/builtins/composer/composer.d.ts +145 -100
- package/dist/builtins/composer/composition-declarations.d.ts +50 -39
- package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
- package/dist/builtins/composer/composition-runtime.d.ts +178 -125
- package/dist/builtins/composer/composition-target.d.ts +38 -34
- package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
- package/dist/builtins/composer/deadline-timer.d.ts +13 -13
- package/dist/builtins/composer/existing-target.d.ts +90 -73
- package/dist/builtins/composer/field-record.d.ts +26 -19
- package/dist/builtins/composer/graft-host.d.ts +56 -32
- package/dist/builtins/composer/held-claims.d.ts +26 -9
- package/dist/builtins/composer/index.d.ts +1 -1
- package/dist/builtins/composer/own-field-reads.d.ts +26 -15
- package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
- package/dist/builtins/composer/slice-assembler.d.ts +19 -3
- package/dist/builtins/composer/source-readings.d.ts +67 -61
- package/dist/builtins/composer/source-tracker.d.ts +133 -69
- package/dist/builtins/console-logging/console-destination.d.ts +15 -8
- package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
- package/dist/builtins/console-logging/index.d.ts +3 -3
- package/dist/builtins/core-blocks/block-package.d.ts +37 -37
- package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
- package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
- package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
- package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
- package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
- package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
- package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
- package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
- package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
- package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
- package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
- package/dist/builtins/core-blocks/index.d.ts +8 -8
- package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
- package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
- package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
- package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
- package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
- package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
- package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
- package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
- package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
- package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
- package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
- package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
- package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
- package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
- package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
- package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
- package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
- package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
- package/dist/builtins/device-manager/device-projection.d.ts +53 -67
- package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
- package/dist/builtins/device-manager/device-queries.d.ts +63 -63
- package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
- package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
- package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
- package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
- package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
- package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
- package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
- package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
- package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
- package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
- package/dist/builtins/device-manager/index.d.ts +2 -2
- package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
- package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
- package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
- package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
- package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
- package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
- package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
- package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
- package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
- package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
- package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
- package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
- package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
- package/dist/builtins/device-manager/write-lock.d.ts +13 -13
- package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
- package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
- package/dist/builtins/hub-forwarder/index.d.ts +3 -3
- package/dist/builtins/keychain/index.d.ts +1 -1
- package/dist/builtins/keychain/key-sources.d.ts +19 -19
- package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
- package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
- package/dist/builtins/keychain/keychain-service.d.ts +128 -128
- package/dist/builtins/keychain/keychain-store.d.ts +96 -87
- package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
- package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
- package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
- package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
- package/dist/builtins/liveness-monitor/index.d.ts +2 -2
- package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
- package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
- package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
- package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
- package/dist/builtins/local-auth/index.d.ts +1 -1
- package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
- package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
- package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
- package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
- package/dist/builtins/local-network/address-book.d.ts +61 -36
- package/dist/builtins/local-network/index.d.ts +2 -2
- package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
- package/dist/builtins/local-network/local-hostname.d.ts +10 -10
- package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
- package/dist/builtins/loki-logging/index.d.ts +4 -4
- package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
- package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
- package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
- package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
- package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
- package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
- package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
- package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
- package/dist/builtins/native-metrics/index.d.ts +2 -2
- package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
- package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
- package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
- package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
- package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
- package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
- package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
- package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
- package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
- package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
- package/dist/builtins/platform-probe/index.d.ts +38 -30
- package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
- package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
- package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
- package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
- package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
- package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
- package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
- package/dist/builtins/shared/device-state-changed.d.ts +9 -9
- package/dist/builtins/shared/settle-sources.d.ts +16 -16
- package/dist/builtins/snapshot/index.d.ts +2 -2
- package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
- package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
- package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
- package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
- package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
- package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
- package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
- package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
- package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
- package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
- package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
- package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
- package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
- package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
- package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
- package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
- package/dist/builtins/sqlite-storage/index.d.ts +12 -12
- package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
- package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
- package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
- package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
- package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
- package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
- package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
- package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
- package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
- package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
- package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
- package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
- package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
- package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
- package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
- package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
- package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
- package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
- package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
- package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
- package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
- package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
- package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
- package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
- package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
- package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
- package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
- package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
- package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
- package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
- package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
- package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
- package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
- package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
- package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
- package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
- package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
- package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
- package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
- package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
- package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
- package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
- package/dist/builtins/system-config/index.d.ts +2 -2
- package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
- package/dist/builtins/system-config/system-config.addon.d.ts +57 -100
- package/dist/builtins/system-config/system-config.addon.js +37 -33
- package/dist/builtins/system-config/system-config.addon.mjs +37 -33
- package/dist/builtins/winston-logging/index.d.ts +3 -3
- package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
- package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
- package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Bnr8brru.js} +18 -0
- package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-mHO_6r0G.mjs} +1 -1
- package/dist/download/hosted-model-revisions.d.ts +8 -8
- package/dist/download/model-download-service.d.ts +32 -32
- package/dist/download/model-downloader.d.ts +88 -88
- package/dist/events/event-bus.d.ts +6 -6
- package/dist/events/system-event-bus.d.ts +11 -11
- package/dist/feature/feature-manager.d.ts +6 -6
- package/dist/http/asset-compression.d.ts +35 -73
- package/dist/http/authenticated-file-server.d.ts +32 -32
- package/dist/http/data-plane-registry.d.ts +49 -39
- package/dist/http/file-data-plane.d.ts +14 -14
- package/dist/http/lan-http-bind.d.ts +24 -13
- package/dist/http/reverse-proxy.d.ts +36 -24
- package/dist/index.d.ts +137 -137
- package/dist/index.js +4 -3
- package/dist/index.mjs +2 -4
- package/dist/kernel/addon-class-resolver.d.ts +1 -1
- package/dist/kernel/addon-engine-manager.d.ts +20 -20
- package/dist/kernel/addon-health-monitor.d.ts +151 -151
- package/dist/kernel/addon-installer.d.ts +609 -609
- package/dist/kernel/addon-loader.d.ts +133 -133
- package/dist/kernel/addon-manifest.d.ts +118 -118
- package/dist/kernel/addon-residue.d.ts +28 -32
- package/dist/kernel/array-buffer-census.d.ts +84 -88
- package/dist/kernel/bootstrap-config.d.ts +3 -3
- package/dist/kernel/cap-router-builder.d.ts +145 -101
- package/dist/kernel/capability-handle.d.ts +41 -41
- package/dist/kernel/capability-registry.d.ts +588 -576
- package/dist/kernel/config-manager.d.ts +199 -199
- package/dist/kernel/config-schema.d.ts +132 -128
- package/dist/kernel/custom-action-registry.d.ts +25 -25
- package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
- package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
- package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
- package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
- package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
- package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
- package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
- package/dist/kernel/deps/npm-command.d.ts +45 -45
- package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
- package/dist/kernel/deps/system-package-broker.d.ts +20 -20
- package/dist/kernel/deps/system-package-client.d.ts +3 -3
- package/dist/kernel/device-registry.d.ts +27 -27
- package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
- package/dist/kernel/event-plane-report.d.ts +174 -174
- package/dist/kernel/fs-utils.d.ts +70 -70
- package/dist/kernel/gc-census.d.ts +119 -119
- package/dist/kernel/heap-spaces.d.ts +87 -87
- package/dist/kernel/heap-watch.d.ts +706 -706
- package/dist/kernel/host-externals.d.ts +8 -8
- package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
- package/dist/kernel/index.d.ts +115 -113
- package/dist/kernel/inference/inference-resolver.d.ts +13 -13
- package/dist/kernel/infra-capabilities.d.ts +7 -7
- package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
- package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
- package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
- package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
- package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
- package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
- package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
- package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
- package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
- package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
- package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
- package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
- package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
- package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
- package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
- package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
- package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
- package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
- package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
- package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
- package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
- package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
- package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
- package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
- package/dist/kernel/moleculer/event-bus.d.ts +73 -73
- package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
- package/dist/kernel/moleculer/hub-service.d.ts +42 -42
- package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
- package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
- package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
- package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
- package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
- package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
- package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
- package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
- package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
- package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
- package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
- package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
- package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
- package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
- package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
- package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
- package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
- package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
- package/dist/kernel/moleculer/node-registry.d.ts +120 -120
- package/dist/kernel/moleculer/process-context.d.ts +2 -2
- package/dist/kernel/moleculer/process-service.d.ts +168 -168
- package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
- package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
- package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
- package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
- package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
- package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
- package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
- package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
- package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
- package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
- package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
- package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
- package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
- package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
- package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
- package/dist/kernel/outbound-queue-watch.d.ts +74 -74
- package/dist/kernel/process-cpu-census.d.ts +55 -55
- package/dist/kernel/provider-kind-drift.d.ts +17 -8
- package/dist/kernel/restart-coordinator.d.ts +71 -71
- package/dist/kernel/settings-door-view.d.ts +36 -25
- package/dist/kernel/settings-read-error.d.ts +29 -31
- package/dist/kernel/settings-view-types.d.ts +100 -95
- package/dist/kernel/socket-plane-report.d.ts +214 -153
- package/dist/kernel/status-overlay.d.ts +31 -11
- package/dist/kernel/storage-location-registry.d.ts +50 -50
- package/dist/kernel/store-settings-view.d.ts +13 -13
- package/dist/kernel/system-settings-mirror.d.ts +40 -28
- package/dist/kernel/system-settings-policy.d.ts +15 -34
- package/dist/kernel/transport/cap-action-census.d.ts +183 -183
- package/dist/kernel/transport/cap-action-name.d.ts +84 -84
- package/dist/kernel/transport/cap-child-index.d.ts +41 -41
- package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
- package/dist/kernel/transport/cap-route.d.ts +139 -139
- package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
- package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
- package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
- package/dist/kernel/transport/create-local-transport.d.ts +5 -5
- package/dist/kernel/transport/frame-codec.d.ts +109 -109
- package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
- package/dist/kernel/transport/index.d.ts +36 -36
- package/dist/kernel/transport/local-child-client.d.ts +184 -184
- package/dist/kernel/transport/local-child-registry.d.ts +592 -592
- package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
- package/dist/kernel/transport/local-transport.d.ts +92 -92
- package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
- package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
- package/dist/kernel/transport/socket-channel.d.ts +110 -110
- package/dist/kernel/transport/socket-traffic.d.ts +96 -96
- package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
- package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
- package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
- package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
- package/dist/kernel/transport/uds-logger.d.ts +33 -33
- package/dist/kernel/utils/ring-buffer.d.ts +12 -12
- package/dist/kernel/workspace-detect.d.ts +7 -7
- package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
- package/dist/logging/formatter.d.ts +52 -25
- package/dist/logging/log-manager.d.ts +133 -133
- package/dist/logging/log-redactor.d.ts +22 -1
- package/dist/logging/log-ring-buffer.d.ts +57 -57
- package/dist/logging/logging-gate.d.ts +69 -25
- package/dist/logging/logging-gate.singleton.d.ts +12 -1
- package/dist/logging/partitioned-log-buffer.d.ts +161 -161
- package/dist/logging/scoped-logger.d.ts +14 -14
- package/dist/network/network-quality.d.ts +8 -8
- package/dist/notification/notification-service.d.ts +37 -37
- package/dist/notification/toast-service.d.ts +18 -18
- package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
- package/dist/pipeline/pipeline-runner.d.ts +6 -6
- package/dist/pipeline/pipeline-validator.d.ts +8 -8
- package/dist/process/proc-stat.d.ts +51 -51
- package/dist/process/resource-monitor.d.ts +19 -19
- package/dist/python/python-env-manager.d.ts +10 -10
- package/dist/repl/interfaces.d.ts +21 -21
- package/dist/repl/repl-engine.d.ts +6 -6
- package/dist/storage/fs-storage-backend.d.ts +35 -35
- package/dist/storage/storage-location-manager.d.ts +21 -21
- package/dist/storage/storage-manager.d.ts +68 -68
- package/dist/tls/boot-tls.d.ts +24 -24
- package/dist/tls/cert-evaluation.d.ts +25 -25
- package/dist/tls/cert-identity.d.ts +39 -39
- package/dist/tls/cert-issue.d.ts +37 -17
- package/dist/tls/cert-manager.d.ts +86 -84
- package/dist/tls/https-listener.d.ts +16 -16
- package/dist/tls/index.d.ts +8 -8
- package/dist/tls/tls-actions.d.ts +18 -18
- package/dist/tls/tls-status.d.ts +15 -15
- package/dist/tls/uploaded-cert.d.ts +9 -9
- package/package.json +9 -3
|
@@ -1,88 +1,105 @@
|
|
|
1
|
-
import { CollectionColumn, ISettingsStoreProvider } from '@camstack/types';
|
|
2
1
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
2
|
+
* Per-destination policy storage for the backup orchestrator
|
|
3
|
+
* (Task 9 of the storage-unification refactor — backup arch carry-over).
|
|
4
|
+
*
|
|
5
|
+
* Each row is keyed by `locationId` (the `<type>:<slug>` id of a
|
|
6
|
+
* `backups`-typed `StorageLocation`). The orchestrator now reads the
|
|
7
|
+
* authoritative list of destinations from the storage cap
|
|
8
|
+
* (`api.storage.listLocations({ type: 'backups' })`) and joins it with
|
|
9
|
+
* this table to produce the wire-shape `BackupDestinationInfo` consumed
|
|
10
|
+
* by the admin UI. There is no longer a `backup-destination` cap call
|
|
11
|
+
* in the path.
|
|
12
|
+
*
|
|
13
|
+
* Contract mirror of `SqliteLocationStore` (storage-orchestrator): lazy
|
|
14
|
+
* `declareCollection` so the constructor stays sync, and every read/write on
|
|
15
|
+
* the `settings-store` collection surface. Callers obtain the provider via
|
|
16
|
+
* `kernel.capabilityRegistry.getSingleton<ISettingsStoreProvider>('settings-store')`.
|
|
17
|
+
*/
|
|
18
|
+
import type { CollectionColumn, ISettingsStoreProvider } from "@camstack/types";
|
|
19
|
+
/**
|
|
20
|
+
* Per-`backups`-location policy. `locationId` is the foreign-key into
|
|
21
|
+
* the storage orchestrator's `storage_locations` table.
|
|
22
|
+
*
|
|
23
|
+
* `enabled` gates whether scheduled / unspecified-target backups fan out
|
|
24
|
+
* to this destination; operators can disable a destination temporarily
|
|
25
|
+
* without deleting the underlying `StorageLocation`.
|
|
26
|
+
*
|
|
27
|
+
* `retentionCount` is independent per destination — destination A may
|
|
28
|
+
* keep 3 archives while B keeps 30.
|
|
29
|
+
*
|
|
30
|
+
* `label` is an optional operator-defined display string. When omitted
|
|
31
|
+
* the orchestrator falls back to the `StorageLocation.displayName`.
|
|
32
|
+
*/
|
|
16
33
|
export interface BackupDestinationPolicy {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
readonly locationId: string;
|
|
35
|
+
readonly enabled: boolean;
|
|
36
|
+
readonly retentionCount: number;
|
|
37
|
+
readonly label?: string;
|
|
38
|
+
/**
|
|
39
|
+
* ms-epoch of the last time a run ATTEMPTED to write an archive here,
|
|
40
|
+
* whatever the outcome. Never a success stamp — `lastError` says whether
|
|
41
|
+
* the attempt landed, and the newest manifest entry says when one last
|
|
42
|
+
* did. Rows written before 2026-07-28 carry the old per-location
|
|
43
|
+
* scheduler's stamp, which had exactly this meaning.
|
|
44
|
+
*/
|
|
45
|
+
readonly lastAttemptAt?: number;
|
|
46
|
+
/**
|
|
47
|
+
* Why the last attempt failed, verbatim from the provider. Cleared on the
|
|
48
|
+
* next attempt that lands. A destination that has never been written to
|
|
49
|
+
* has neither field, and that is REPORTED as never — D384.
|
|
50
|
+
*/
|
|
51
|
+
readonly lastError?: string;
|
|
35
52
|
}
|
|
36
53
|
export declare const BACKUP_DESTINATION_POLICIES_COLUMNS: readonly CollectionColumn[];
|
|
37
54
|
export declare class BackupDestinationPolicyService {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
55
|
+
private readonly store;
|
|
56
|
+
private declared;
|
|
57
|
+
constructor(store: ISettingsStoreProvider);
|
|
58
|
+
/**
|
|
59
|
+
* Lazy `declareCollection` — called from every read/write path.
|
|
60
|
+
* `declareCollection` is idempotent, so repeated calls collapse to a no-op
|
|
61
|
+
* after the first. This keeps the constructor synchronous and avoids a
|
|
62
|
+
* separate `initialize()` step that callers could forget.
|
|
63
|
+
*/
|
|
64
|
+
initialize(): Promise<void>;
|
|
65
|
+
private ensureDeclared;
|
|
66
|
+
list(): Promise<readonly BackupDestinationPolicy[]>;
|
|
67
|
+
get(locationId: string): Promise<BackupDestinationPolicy | null>;
|
|
68
|
+
/**
|
|
69
|
+
* Replace-or-insert. Implemented as delete + insert, mirroring the
|
|
70
|
+
* `SqliteLocationStore` contract.
|
|
71
|
+
*/
|
|
72
|
+
upsert(p: BackupDestinationPolicy): Promise<void>;
|
|
73
|
+
delete(locationId: string): Promise<void>;
|
|
74
|
+
/**
|
|
75
|
+
* Auto-create a default policy for a `backups` location seen for the
|
|
76
|
+
* first time (returns the existing policy unchanged when present).
|
|
77
|
+
* The orchestrator calls this lazily on the first `listDestinations`
|
|
78
|
+
* pass so newly-added storage locations are surfaced as enabled
|
|
79
|
+
* destinations without an explicit configuration step.
|
|
80
|
+
*
|
|
81
|
+
* Defaults are passed by the orchestrator (currently `retentionCount=7`).
|
|
82
|
+
* A fresh destination is enabled and keeps 7 archives; it gets NO cadence
|
|
83
|
+
* of its own — a destination runs when a schedule fans out to it, and
|
|
84
|
+
* seeding a cron here would advertise a nightly run nothing performs
|
|
85
|
+
* (D384).
|
|
86
|
+
*/
|
|
87
|
+
ensureDefault(locationId: string, defaults: {
|
|
88
|
+
retentionCount: number;
|
|
89
|
+
}): Promise<BackupDestinationPolicy>;
|
|
90
|
+
/**
|
|
91
|
+
* Stamp the outcome of ONE attempted write to this destination.
|
|
92
|
+
*
|
|
93
|
+
* Read-modify-write on the policy row so the operator's `enabled`,
|
|
94
|
+
* `retentionCount` and `label` survive. A destination with no row yet
|
|
95
|
+
* gets one — an attempt on an unseen location must still be recorded, or
|
|
96
|
+
* the failure disappears with the process (which is exactly how a 03:00
|
|
97
|
+
* SMB refusal stayed invisible until the operator went looking).
|
|
98
|
+
*/
|
|
99
|
+
recordAttempt(locationId: string, outcome: {
|
|
100
|
+
attemptAt: number;
|
|
101
|
+
error?: string;
|
|
102
|
+
}, defaults: {
|
|
103
|
+
retentionCount: number;
|
|
104
|
+
}): Promise<void>;
|
|
88
105
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { IScopedLogger } from
|
|
2
|
-
import { ChunkedDownloadApi } from
|
|
1
|
+
import type { IScopedLogger } from "@camstack/types";
|
|
2
|
+
import type { ChunkedDownloadApi } from "./manifest-store.js";
|
|
3
3
|
export interface DownloadArchiveInput {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
readonly api: ChunkedDownloadApi;
|
|
5
|
+
readonly locationId: string;
|
|
6
|
+
readonly filename: string;
|
|
7
|
+
readonly cachePath: string;
|
|
8
|
+
/** Per-chunk byte budget. Matches the upload helper's 8 MiB. */
|
|
9
|
+
readonly chunkBytes: number;
|
|
10
|
+
readonly logger: IScopedLogger;
|
|
11
11
|
}
|
|
12
12
|
export declare function downloadArchiveToCache(input: DownloadArchiveInput): Promise<void>;
|
|
@@ -1,36 +1,47 @@
|
|
|
1
|
-
import { ISettingsStoreProvider } from '@camstack/types';
|
|
2
1
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
* The backup encryption setting (operator decision 2026-10-09): which backup
|
|
3
|
+
* PUBLIC key new archives are encrypted to, and the keys used before.
|
|
4
|
+
*
|
|
5
|
+
* The secret key is never here — it is shown once at setup and kept by the
|
|
6
|
+
* operator (see `system-backup/backup-encryption.ts` for why). A retired key
|
|
7
|
+
* stays listed so the Backup page can say which key an older archive needs.
|
|
8
|
+
*
|
|
9
|
+
* A read that fails THROWS: a backup run must never take "could not read the
|
|
10
|
+
* setting" for "encryption is off" and ship a plain archive.
|
|
11
|
+
*/
|
|
12
|
+
import type { ISettingsStoreProvider } from "@camstack/types";
|
|
13
|
+
/**
|
|
14
|
+
* @durable class=config owner=backup-orchestrator
|
|
15
|
+
* write="`setupEncryption` inserts one row per generated key and retires the
|
|
16
|
+
* previous active row; `disableEncryption` retires the active row"
|
|
17
|
+
* retention="none — one small row per key ever generated; a retired row
|
|
18
|
+
* names the key older archives need"
|
|
19
|
+
*/
|
|
9
20
|
export declare const BACKUP_ENCRYPTION_KEYS_COLLECTION = "backup_encryption_keys";
|
|
10
21
|
export interface BackupEncryptionKeyRecord {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
22
|
+
readonly keyId: string;
|
|
23
|
+
readonly publicKey: string;
|
|
24
|
+
readonly createdAt: number;
|
|
25
|
+
readonly retiredAt: number | null;
|
|
15
26
|
}
|
|
16
|
-
type Store = Pick<ISettingsStoreProvider,
|
|
27
|
+
type Store = Pick<ISettingsStoreProvider, "declareCollection" | "query" | "insert" | "deleteWhere">;
|
|
17
28
|
export declare class BackupEncryptionKeyStore {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
29
|
+
private readonly store;
|
|
30
|
+
private readonly now;
|
|
31
|
+
private declared;
|
|
32
|
+
constructor(store: Store, now?: () => number);
|
|
33
|
+
private ensureDeclared;
|
|
34
|
+
/** Every key, newest first. */
|
|
35
|
+
list(): Promise<readonly BackupEncryptionKeyRecord[]>;
|
|
36
|
+
/** The key new archives are encrypted to; `null` = encryption off. */
|
|
37
|
+
active(): Promise<BackupEncryptionKeyRecord | null>;
|
|
38
|
+
/** Make `publicKey` the active key; the previous one is retired, kept listed. */
|
|
39
|
+
activate(input: {
|
|
40
|
+
readonly publicKey: string;
|
|
41
|
+
}): Promise<BackupEncryptionKeyRecord>;
|
|
42
|
+
/** Encryption off: the active key is retired. Archives already made keep needing it. */
|
|
43
|
+
disable(): Promise<void>;
|
|
44
|
+
private retireActive;
|
|
45
|
+
private write;
|
|
35
46
|
}
|
|
36
47
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { BackupOrchestratorAddon } from
|
|
2
|
-
export { BackupOrchestratorAddon as default } from
|
|
1
|
+
export { BackupOrchestratorAddon } from "./backup-orchestrator.addon.js";
|
|
2
|
+
export { BackupOrchestratorAddon as default } from "./backup-orchestrator.addon.js";
|
|
@@ -1,95 +1,114 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Per-location backup manifest persistence (Task 10 of the storage-
|
|
3
|
+
* unification refactor).
|
|
4
|
+
*
|
|
5
|
+
* Each `backups`-typed `StorageLocation` carries a single
|
|
6
|
+
* `manifests.json` file at its root. The orchestrator reads/appends/
|
|
7
|
+
* writes this file via the consumer-facing `storage` cap — there is
|
|
8
|
+
* no on-disk path coupling, the storage provider (filesystem, SFTP,
|
|
9
|
+
* S3, …) handles dispatch.
|
|
10
|
+
*
|
|
11
|
+
* Concurrency: the orchestrator serializes per-location reads/writes
|
|
12
|
+
* through `withLocationLock` so a fan-out of N parallel destination
|
|
13
|
+
* uploads can't interleave manifest mutations within the same
|
|
14
|
+
* location. Across locations, mutations run in parallel.
|
|
15
|
+
*
|
|
16
|
+
* Wire shape mirrors the spec: each archive entry carries an inline
|
|
17
|
+
* snapshot of the embedded `ArchiveManifest` so `getEntries` can
|
|
18
|
+
* serve the contents preview without re-reading the tarball.
|
|
19
|
+
*/
|
|
20
|
+
import type { AddonApi } from "@camstack/types";
|
|
21
|
+
import type { ArchiveManifest } from "../system-backup/system-backup.service.js";
|
|
3
22
|
/** File path (relative to the location root) where the index lives. */
|
|
4
23
|
export declare const MANIFESTS_FILENAME = "manifests.json";
|
|
5
24
|
export interface ManifestArchiveEntry {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
25
|
+
readonly id: string;
|
|
26
|
+
/** Filename inside the location (e.g. `<id>.tar.gz`). */
|
|
27
|
+
readonly filename: string;
|
|
28
|
+
readonly createdAt: number;
|
|
29
|
+
readonly sizeBytes: number;
|
|
30
|
+
readonly label?: string;
|
|
31
|
+
/**
|
|
32
|
+
* Snapshot of the embedded `.camstack-backup-manifest.json`. For an
|
|
33
|
+
* ENCRYPTED archive only its outline (locations, totals, no file list): the
|
|
34
|
+
* destination holds this index in clear, and the file list stays inside the
|
|
35
|
+
* ciphertext.
|
|
36
|
+
*/
|
|
37
|
+
readonly manifest: ArchiveManifest;
|
|
38
|
+
/** Present when the archive is encrypted to a backup key. */
|
|
39
|
+
readonly encryption?: ManifestArchiveEncryption;
|
|
21
40
|
}
|
|
22
41
|
export interface ManifestArchiveEncryption {
|
|
23
|
-
|
|
24
|
-
|
|
42
|
+
readonly scheme: string;
|
|
43
|
+
readonly keyId: string;
|
|
25
44
|
}
|
|
26
45
|
export interface LocationBackupManifest {
|
|
27
|
-
|
|
28
|
-
|
|
46
|
+
readonly version: 1;
|
|
47
|
+
readonly archives: readonly ManifestArchiveEntry[];
|
|
29
48
|
}
|
|
30
49
|
/** Subset of `AddonApi['storage']` the manifest store consumes. */
|
|
31
|
-
export type ManifestStorageApi = Pick<AddonApi[
|
|
50
|
+
export type ManifestStorageApi = Pick<AddonApi["storage"], "read" | "write" | "exists">;
|
|
32
51
|
/**
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
export type ChunkedDownloadApi = Pick<AddonApi[
|
|
52
|
+
* Subset of `AddonApi['storage']` consumed by the chunked-download
|
|
53
|
+
* helper. Sourced from the same generated type so the contract stays
|
|
54
|
+
* in lockstep with the live cap surface.
|
|
55
|
+
*/
|
|
56
|
+
export type ChunkedDownloadApi = Pick<AddonApi["storage"], "beginDownload" | "readChunk" | "endDownload">;
|
|
38
57
|
/**
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
58
|
+
* Read the per-location manifest. Returns an empty manifest on first
|
|
59
|
+
* use (when `manifests.json` doesn't exist) or when the file is
|
|
60
|
+
* unreadable / corrupt — operators see destination state degrade
|
|
61
|
+
* gracefully rather than the orchestrator crashing.
|
|
62
|
+
*/
|
|
44
63
|
export declare function readLocationManifest(api: ManifestStorageApi, locationId: string): Promise<LocationBackupManifest>;
|
|
45
64
|
export declare function writeLocationManifest(api: ManifestStorageApi, locationId: string, manifest: LocationBackupManifest): Promise<void>;
|
|
46
65
|
/**
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
66
|
+
* Decode the raw bytes of `manifests.json`. Falls back to an empty
|
|
67
|
+
* manifest on JSON-parse / shape-validation failure — same defensive
|
|
68
|
+
* stance as the legacy `LocalBackupService.ensureManifestsLoaded`.
|
|
69
|
+
*/
|
|
51
70
|
export declare function parseManifestBytes(bytes: Uint8Array): LocationBackupManifest;
|
|
52
71
|
/**
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
72
|
+
* What the destination's clear-text index may say about an encrypted archive:
|
|
73
|
+
* the outline a restore needs (locations, sizes, the snapshot promise) — not
|
|
74
|
+
* the list of files, which stays inside the ciphertext.
|
|
75
|
+
*/
|
|
57
76
|
export declare function outlineOfManifest(manifest: ArchiveManifest): ArchiveManifest;
|
|
58
77
|
/**
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
78
|
+
* Build a `ManifestArchiveEntry` from the raw inputs collected during
|
|
79
|
+
* a successful upload. Pure transform — no I/O — kept here so the
|
|
80
|
+
* triggerBackup path stays terse.
|
|
81
|
+
*/
|
|
63
82
|
export declare function buildArchiveEntry(input: {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
83
|
+
id: string;
|
|
84
|
+
filename: string;
|
|
85
|
+
createdAt: number;
|
|
86
|
+
sizeBytes: number;
|
|
87
|
+
label?: string;
|
|
88
|
+
manifest: ArchiveManifest;
|
|
89
|
+
encryption?: ManifestArchiveEncryption;
|
|
71
90
|
}): ManifestArchiveEntry;
|
|
72
91
|
/**
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
92
|
+
* Pure retention split: given an archive list and the operator's
|
|
93
|
+
* `retentionCount`, return `{ keep, drop }` where `keep` is the most-
|
|
94
|
+
* recent N archives (newest first) and `drop` is the older overflow.
|
|
95
|
+
*
|
|
96
|
+
* `retentionCount <= 0` is treated as "no pruning" — defensive against
|
|
97
|
+
* a config value that would otherwise wipe every archive on the next
|
|
98
|
+
* write.
|
|
99
|
+
*/
|
|
81
100
|
export declare function applyRetention(archives: readonly ManifestArchiveEntry[], retentionCount: number): {
|
|
82
|
-
|
|
83
|
-
|
|
101
|
+
readonly keep: readonly ManifestArchiveEntry[];
|
|
102
|
+
readonly drop: readonly ManifestArchiveEntry[];
|
|
84
103
|
};
|
|
85
104
|
/**
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
105
|
+
* Per-location async mutex. The orchestrator owns one instance and
|
|
106
|
+
* funnels every read-modify-write of `manifests.json` through it so
|
|
107
|
+
* parallel destination uploads (within the same location) commit in
|
|
108
|
+
* arrival order. Across locations the operations run in parallel —
|
|
109
|
+
* each location keys its own promise chain.
|
|
110
|
+
*/
|
|
92
111
|
export declare class LocationManifestLock {
|
|
93
|
-
|
|
94
|
-
|
|
112
|
+
private readonly chains;
|
|
113
|
+
run<T>(locationId: string, fn: () => Promise<T>): Promise<T>;
|
|
95
114
|
}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
/** An encrypted backup was asked to restore without its key. */
|
|
2
2
|
export declare class BackupKeyRequiredError extends Error {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
readonly keyId: string;
|
|
4
|
+
constructor(keyId: string);
|
|
5
5
|
}
|
|
6
6
|
/**
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
* Before downloading gigabytes: does the operator's key fit what the
|
|
8
|
+
* destination's manifest says the archive needs? `archiveKeyId` undefined =
|
|
9
|
+
* the manifest records no encryption (the header check after the download
|
|
10
|
+
* remains the authority).
|
|
11
|
+
*/
|
|
12
12
|
export declare function precheckRestoreKey(archiveKeyId: string | undefined, secretKey: string | undefined): void;
|
|
13
13
|
export interface PrepareRestoreInput {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
/** The archive as downloaded from the destination. Consumed (deleted or renamed). */
|
|
15
|
+
readonly downloaded: string;
|
|
16
|
+
/** Where the restore marker will point: a plain `.tar.gz`. */
|
|
17
|
+
readonly target: string;
|
|
18
|
+
readonly secretKey?: string;
|
|
19
19
|
}
|
|
20
20
|
export interface PreparedRestore {
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
readonly encrypted: boolean;
|
|
22
|
+
readonly keyId?: string;
|
|
23
23
|
}
|
|
24
24
|
export declare function prepareRestoreArchive(input: PrepareRestoreInput): Promise<PreparedRestore>;
|